Fear finder

1,133 views

Published on

reverse dictionary app

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

Fear finder

  1. 1. FearFinder Android NLP Project Parinita & Ashley Gill Ling 575, CLMA, University of Washington, Seattle June 2nd, 2010
  2. 2. Agenda • Initial Proposal • App Introduction • NLP Techniques • App Walk-through • Possible Applications 2
  3. 3. Initial Proposal • Drug database – still an issue + plus drug suggestions , not a good advice to give, unless you are an MD • For proof of concept – we chose a simpler database • On-board processing – Still holds true – loading the dictionaries can be improved. • Attempts of accessing pre-existing DB not successful – we are using text files3
  4. 4. App Introduction- FearFinder FearFinder ● A reverse dictionary that finds phobia names based on a user's input fear. ● Resources: – A list of phobias and their meanings – A subset of WordNet – created by getting the synonyms of the words that occur in the meaning (a Preprocessing step) 4
  5. 5. NLP Techniques acarophobia- itching; insects that cause itching Synonyms • insects-dirt ball • cause-causal agency • cause-get • itching-itchiness • insects-louse • cause-causal agent • cause-grounds • itching-itching • insects-worm • cause-crusade • cause-have • itching-rub • cause-do • cause-induce • itching-scabies • cause-drive • cause-lawsuit • itching-scratch • cause-effort • cause-movement • itching-spoil • cause-stimulate • cause-reason • itching-urge • cause-suit • WordNet® is a large lexical database of English. • Nouns, verbs, adjectives and adverbs are grouped into sets of cognitive synonyms (synsets), each expressing a distinct concept. • Synsets are interlinked by means of conceptual-semantic and lexical relations. 5
  6. 6. NLP Techniques Extracting Synonyms from WordNet Query for extracting Synonyms • Wordnet30 –SQLite DB " select synsetid, w2.lemma from • The entire Wordnet sense left join word as w2 on 47.5 MB • 47.5 MB w2.wordid=sense.wordid where sense.synsetid in"+ • ANDROID_WN_DB " ( select sense.synsetid from • Only words that we need word as w1"+ 284 KB • 284 KB " left join sense on w1.wordid=sense.wordid"+ " where • ANDROID_WN_TXT (w1.lemma='"+defword+"' or 176KB • 176 KB +18 KB w1.lemma='"+stem+"') )"+ " and (w2.lemma<>'"+defword+"' or w2.lemma<>'"+stem+"') group by w2.lemma having count(*)=1;"); 6
  7. 7. App Walk Through 7
  8. 8. App Walk Through 8
  9. 9. App Walk Through 9
  10. 10. App Walk Through 10
  11. 11. App Walk Through 11
  12. 12. App Walk Through 12
  13. 13. Issues: It is limited by the words that are present in the List. Look up an external site if not found.. On-board Processing is not the best way. Too many condition checks hits performance. Using databases will definitely be better, but their size will still be limited. Read from text file and write into a database, instead of a dictionary ? 13
  14. 14. Possible Applications The same concept can be applied to other domains – all that needs to be changed is the resource list of words and meanings. Install list as requested ..? Mythological Drugs Creatures Scientific Recipes Names ?? 14

×