Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.25 KB | None | 0 0
  1. Postřehy do textu
  2.  
  3. * Úvod / Zadání
  4. * chatbot pro studenty Univerzity Palackého zvaný UPolák
  5. * získává data ze studijní agendy STAG
  6. * rozhraní postaveno na existující platformě FB Messenger
  7. * komunikace probíhá v přírozeném českém jazyce
  8. * text-based, domain specific, NLU (Nature Language Understanding) – zvládne porozumět, neobsahuje NLG (Natural Language Generative) model, odpovědi předdefinované
  9. * Proč chatbot?
  10. * charakteristiky rozhraní chatbota a způsob komunikace s ním
  11. * porovnání konverzačního rozhraní (conversational interface) s konvenčním grafickým rozhraním (graphical interface)
  12. * z jednoho místa lze dostat informaci odkudkoliv
  13. * porovnání s existujícím řešení UPlikace
  14. * Messenger Platform
  15. * stručný přehled existujících chatbot platforem
  16. * Proč Messenger?
  17. * přístup do platformy v rámci existujích řešení FB Messengeru (webové desktopové nebo nativní mobilní aplikace) – web, Android, iOS
  18. * řešení primárně mobilní
  19. * student tráví na FB spoustu času
  20. * lze předpokládat, že téměř všichni studenta mají FB resp. mají přímý přístup k mému chatbotu
  21. * nemusí stahovat žádnou jinou specializovanou aplikaci
  22. * schválení Facebookem
  23. * Jaké informace umí UPolák zjistit
  24. * přehled odpovědí na všechny podporované dotazy (počet zbývajících kreditů, rozvrh na dnešní den, jestli je sudý nebo lichý týden atd.)
  25. * etický chatbot (zachycení sprostých slov)
  26. * https://cs.wiktionary.org/wiki/Kategorie:Vulgárn%C3%AD_výrazy/čeština
  27. * Programátorská dokumentace
  28. * podobná jako v bakalářské práci?
  29. * zdokumentování a okomentování struktury složek, skriptů a funkcí
  30. * předhled použitých externích Node.js knihoven
  31. * Architektura Messenger aplikace
  32. * webview
  33. * formulář na příhlášení do STAG
  34. * help (seznam dostupných příkazů)
  35. * menu chatbota
  36. * STAG autentizace
  37. * account linking (spárování page-scoped ID se loginem do STAG) – možnost získání PSID přes
  38. * (nutné) uložení (AES šifry) hesla do databáze
  39. * fronta požadavků (při vícenásobné shodě jmen)
  40. * Architektura NLP klasifikátoru (popis a diagram)
  41. * tokenizace / lexikální analýza
  42. * vyhledáním hranice slova (koncový bod slova)
  43. * co jsou tokeny
  44. * použita slovní tokenizace, předpoklad jedné věty
  45. * white-space tokenizace nestačí
  46. * tečka jako konec věty vs. tečka jako separátor data, času nebo uvnitř zkratky
  47. * volitelná (podle způsobu použití) redukce slov
  48. * odstranění morfologických koncovek (stemming)
  49. * redukce slov na kmen, nikoliv kořen
  50. * výhody a nevýhody stemmingu
  51. * https://cs.wikipedia.org/wiki/Stematizace
  52. * lowercase
  53. * odstranění akcentu
  54. * odstranění stop slov (slova bez významu – spojky, citoslovce)
  55. * seznam stop slov
  56. * https://nlp.fi.muni.cz/cs/StopList
  57. * https://www.ranks.nl/stopwords/czech
  58. * odstranění interpunkce
  59. * klasifikace intentu
  60. * co je intent
  61. * jak je intent zadefinován a obsluhován v systému
  62. * Multinomial Naive Bayes
  63. * popis toerému
  64. * https://en.wikipedia.org/wiki/Naive_Bayes_classifier#Multinomial_naive_Bayes
  65. * https://medium.com/@gk_/how-chat-bots-work-dfff656a35e2
  66. * Given a set of sentences, each belonging to a class, and a new input sentence, we can count the occurrence of each word in each class, account for its commonality and assign each class a score. Factoring for commonality is important: matching the word “it” is considerably less meaningful than a match for the word “cheese”. The class with the highest score is the one most likely to belong to the input sentence. This is a slight oversimplification as words need to be reduced to their stems, but you get the basic idea.
  67. * Algorithm doesn’t account for what a sentence is not, it only counts what it is like
  68. * A naive Bayes classifier considers each of these features to contribute independently to the probability that this fruit is an apple, regardless of any possible correlations between the color, roundness, and diameter features.
  69. * commonality
  70. * P(word|class)=(word_count_in_class + 1)/(total_words_in_class+total_unique_words_in_all_classes(basically vocabulary of words in the entire training set))
  71. * model
  72. * trénování modelu
  73. * corpus words
  74. * class words
  75. * trénovací množina
  76. * popis aplikace teorému na zadefinovaných datech (trénovací množině)
  77. * https://chatbotslife.com/text-classification-using-algorithms-e4d50dcba45
  78. * žádná shoda řešena noMatch intentem
  79. * výhody
  80. * jednoduchá implementace
  81. * stačí malá trénovací množina
  82. * nevýhody
  83. * počítá pravděpodobnost shody s každým intentem, ale nepočítá s tím, jak moc se věta danému intentu nepodobá
  84. * vylepšení
  85. * generování validních slovních bigramů z tokenů
  86. * použití neuronové sítě
  87. * Vícevrstvý Průměrovaný Perceptron
  88. * popis činnosti
  89. * For every word in an input text, Morče selects one morphological interpretation from all possibilities. The algorithm is statistical, based on an idea of so-called "Averaged Perceptron" published by Michael Collins in 2002.
  90. * https://explosion.ai/blog/part-of-speech-pos-tagger-in-python#learning-the-weights
  91. * http://www.ciml.info/dl/v0_8/ciml-v0_8-ch03.pdf
  92. * https://svn.spraakdata.gu.se/repos/richard/pub/ml2014_web/m7.pdf
  93. * probabilistický model
  94. * co je (un)supervised learning
  95. * využívá morfologické struktury věty
  96. * formát vstupu (CoNLL)
  97. * výhoda oproti XML-like
  98. * popis sloupců
  99. * formát výstupu (JSON model neuronové sítě)
  100. * klasifikace slovních druhů
  101. * odstranění dvojsmyslů (disambiguation)
  102. * nelze mít pro všechna slova databázi s přiřazením jednoznačného slovního druhu, v některých případech se stejná slova můžou lišit slovním druhem v závislosti na pozici ve větě
  103. * některá některý mužský příjmení zní jako slovesa (např Vychodil) a všechna ženská příjmení zní jako přídavná jména (koncovka -ová), na začátku věty jsou vlastní jména?
  104. * použitý korpus
  105. * 10k vět z Leipzig Corpora otagovaná nástrojem MorphoDiTa
  106. * popis předpokládaných značek v korpusu
  107. * https://wiki.korpus.cz/doku.php/seznamy:tagy#popis_jednotlivych_pozic_znacky
  108. * použité rysy
  109. * popis významu použití jednotlivých rysů
  110. * klasifikace jmenných entit
  111. * použitý korpus
  112. * CNEC2, zřejmě jedinný dostupný v češtině
  113. * popis značek použitých v korpusu
  114. * http://ufal.mff.cuni.cz/~strakova/cnec2.0/ne-type-hierarchy.pdf
  115. * IOB formát tagů (B-P, I–P, O atd.) vs. použitý specifičtější
  116. * https://en.wikipedia.org/wiki/Inside–outside–beginning_(tagging)
  117. * použité rysy
  118. * normalizace časových výrazů
  119. * temporal tagging
  120. * nejednoznačnost např.: pátek (tento nebo příští)
  121. * dice-coeff
  122.  
  123. Reference
  124.  
  125. * MorhoDiTa
  126. * http://ufal.mff.cuni.cz/morphodita#bibtex_for_referencing
  127. * Leipzig Corpora Collection
  128. * http://wortschatz.uni-leipzig.de/en/download/
  129. * český korpus 10 tisíc vět z náhodných webů z roku 2014
  130. * ces-eu_web_2014_10K.tar.gz
  131. * CNEC 2 (not extended!)
  132. * http://home.zcu.cz/~konkol/cnec2.0.php
  133. * korpus 8 tisíc vět s ručně označkovanými jmennými entitami
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement