Детектор символов, слов и фраз

Распознаватель слов и фраз по типу зоны Вернике в мозге.
Для распознавания слов используется дерево слов, ветки которого состоят из символов слова.
Для распознавания фраз используется дерево фраз, ветки которого состоят из отдельных распознанных слов.
Память о воспринятых фразах в текущем активном контексте (Vernike_detector.go): var MemoryDetectedArr []MemoryDetected
Распознавание фраз начинается в main.go с word_sensor.VerbalDetection(text_dlg, is_input_rejim, moodID)
С ПУльта приходит текст, который в VerbalDetection() разбирается на фрзацы (\r\n):
абзацы в PhraseSeparator() разбираются на фразы по разделителям (знаки препинания) фразы в WordDetection() разбиваются на слова. Распознанные (и нераспознанные) последовательности сохраняются в оперативной памяти Beast MemoryDetectedArr, где распознанный текст представлен в виде уникального laslID фразы
ОПИСКИ при вводе слова. Если слово не распознается и оно имеет более 3-х символов, то делается предположение об описке внутренних символов (в природном распознавателе слово узнается если точно совпали первая и последняя буквы, а внутренние буквы могут быть как угодно перемешаны)
Если слово распознается, то подставляется ID слова.
Тон фразы можно задать 1) с помощью знаков ! и ? в конце фразы или задать преимущественно - выбрав Тон под окном ввода фразы.

  • SetNewTextBlock - Новая порция текста для формирования дерева слов
  • addNewtempArr - добавляются как целиком фраза, так и все слова во фразе. Тут же дозаполняется дерево слов уже многократно повторяющимися элементами.
  • createNewNodeWordTree - создать новый узел дерева слов
  • loadWordTree - загрузить дерево слов из файла
  • SaveWordTree - сохранить дерево слов
  • SetNewWordTreeNode - вставить новое слово в дерево слов
  • WordDetection - распознаватель слова
  • getAlternative - попробовать найти подходящее слово с альтрнативными ID. Первые буквы должны совпадать, а остальные, кроме последней (разные окончания), быть перемешаны, но в наличии >80%
  • addNewMemoryDetected - добавить строку в массив памяти о воспринятых фразах в текущем активном контексте
  • VerbalDetection - распознаватель образов фраз
  • updateWordTreeFromTempArr - переносим в дерево слов достаточно повторяющиеся
  • createNewNodePhraseTree - создать новый узел дерева фраз
  • loadPhraseTree - Загрузка дерева фраз из файла
  • SavePhraseTree - Сохранить дерево фраз
  • SetNewPhraseTreeNode - вставка новой фразы со вставкой новых слов фразы, так что фраза будет распознана всегда.
  • PhraseDetection - проход одной фразы - распознавание ID слов фразы
  • GetPhraseStringsFromPhraseID - строка из ID фразы дерева фраз