Menu

Выборка слов из всего словаря

Dima
2015-01-22
2015-01-30
  • Dima

    Dima - 2015-01-22

    Здравствуйте, меня интересует вопрос, можно ли как то сделать, чтобы при произношении слова, поиск его осуществлялся ни в .gram, а из всего словаря, то есть сделать как бы выборку слов из словаря. Я хочу сделать свободный набор текста, а не ограничиваться грамматикой и есть ли смысл такое делать ? Ведь вероятность правильного результата значительно уменьшиться. Тогда, альтернатива это набирать по буквам ?)

     
    • Nickolay V. Shmyrev

      поиск его осуществлялся ни в .gram, а из всего словаря, то есть сделать как бы выборку слов из словаря.

      Можно внести все слова из словаря в грамматику

      Я хочу сделать свободный набор текста, а не ограничиваться грамматикой и есть ли смысл такое делать ?

      Для свободного набора текста служат статистические модели языка, они описаны в руководстве

      http://cmusphinx.sourceforge.net/wiki/tutorial

       
      • Dima

        Dima - 2015-01-22

        Вы написали "Можно внести все слова из словаря в грамматику", это каким образом? Там же тысячи слов в словаре. Можно как то импортировать словарь или как ?

         
        • Nickolay V. Shmyrev

          Можно как то импортировать словарь или как ?

          Можно написать программку на простом скриптовом языке (Python, например). На входе словарь, на выходе - грамматика со всем словами.

           
  • Dima

    Dima - 2015-01-23

    а на счет статической модели языка я бы с радостью это использовал если бы не было проблем с английским языком ) в плане, что туториалы мне тяжело понимать и разобраться как создать модель не получается.

     
    • Nickolay V. Shmyrev

      Если что-то непонятно, спрашивайте. Google Translate сейчас сносно переводит.

       
  • Dima

    Dima - 2015-01-23

    я так понимаю мне нужен раздел, там где написано Building a Statistical Language Model Using CMUCLMTK ? я скачал cmuclmtk-0.7-win32.zip, распаковал в папку и что дальше ? я создал текстовый файл где строки выделены как в примере , а 2 пункт не получается выполнить, я открываю text2wfreq(открывается консоль), пишу как в примере, только подставляю свое имя файла, а дальше нажимаю ctrl+z и enter и ничего не создается, что я не так делаю?

     
    • Nickolay V. Shmyrev

      Все команды нужно запускать из консоли (cmd.exe) с указанием необходимых аргументов, как в руководстве. Сначала открываете консоль, переходите в нужный каталог, затем выполняете команды.

       
  • Dima

    Dima - 2015-01-23

    попробовал вариант с переносом слов в грамматику, там было около 1000 слов, в целом выдавало то что я говорил, но можно сказать 70% правильный результат и 30% нет, это нормально?

     
    • Nickolay V. Shmyrev

      да

       
  • Dima

    Dima - 2015-01-25

    ну у меня получилось сделать то, что указано в руководстве, а как теперь это использовать ? у меня получается есть файл с расширением dmp и arpa, я смотрел есть пример в папке Dialog, там где используются языковая модель wheather.lm, пробовал подключить вместо него, но компилятор ругается на формат arpa

     
  • Dima

    Dima - 2015-01-25

    я конвертировал dmp в lm, подключил (у меня там русские слова) и в итоге ошибок нету, но выдает пустые строчки, а когда захочу в сам файл lm,там вопросительные знаки вместо русских символов

     
  • Nickolay V. Shmyrev

    я смотрел есть пример в папке Dialog, там где используются языковая модель wheather.lm, пробовал подключить вместо него, но компилятор ругается на формат arpa

    Нужно переименовать расширение arpa в расширение lm. Также можно использовать модель в бинарном формате с расширением dmp

    я конвертировал dmp в lm, подключил (у меня там русские слова) и в итоге ошибок нету, но выдает пустые строчки, а когда захочу в сам файл lm,там вопросительные знаки вместо русских символов

    Кодировка словаря и исходных текстовых файлов и моделей должна совпадать. Лучше использовать кодировку UTF-8.

     
  • Dima

    Dima - 2015-01-25

    уже настроил, вроде распознает, но некоторые слова не определяет так как я так понимаю они не добавлены в общий словарь, как их туда добавить ? у меня есть файл vocab, там есть слова но там просто слова без разбиения их на части.

     
    • Nickolay V. Shmyrev

      Словарь русской модели имеет расширение .dic

       
      • Dima

        Dima - 2015-01-25

        я знаю, но мне новые слова туда нужно вручную добавлять ? или есть какие то средства, которые помогут сразу разбить слова на части.

         
  • Dima

    Dima - 2015-01-25

    и еще обьясните пожалуйста 1 пункт в ARPA model training, по каким критериям нужно создавать текстовый файл, туда нужно просто писать предложения которые может сказать пользователь ? я не совсем просто понимаю, для чего в виде предложений писать и для чего в конечном файле есть такие строки \1-grams: \2-grams: \3-grams:. Спасибо!

     
    • Nickolay V. Shmyrev

      я знаю, но мне новые слова туда нужно вручную добавлять ? или есть какие то средства, которые помогут сразу разбить слова на части.

      Для zero модели есть https://github.com/zamiron/ru4sphinx

      и еще обьясните пожалуйста 1 пункт в ARPA model training, по каким критериям нужно создавать текстовый файл, туда нужно просто писать предложения которые может сказать пользователь ?

      Да, чем больше, тем лучше.

      я не совсем просто понимаю, для чего в виде предложений писать и для чего в конечном файле есть такие строки \1-grams: \2-grams: \3-grams:.

      Формат ARPA файла описан здесь:

      http://www.speech.sri.com/projects/srilm/manpages/ngram-format.5.html

      Теория n-gram моделей например здесь:

      http://maslinsky.spb.ru/courses/cmta2014/slides/04sequences.pdf

       
      • Dima

        Dima - 2015-01-25

        Спасибо большое.

         
  • Dima

    Dima - 2015-01-25

    При распознавании достаточно большая чувствительность или мне кажется, распознает хорошо, но когда я не говорю, а есть посторонние звуки, то распознавании продолжается это тоже нормально ?

     
  • Dima

    Dima - 2015-01-25

    и еще хотел уточнить что значит цифра справа и слева
    -99.9990 выключи-0.0531

     
  • Nickolay V. Shmyrev

    При распознавании достаточно большая чувствительность или мне кажется, распознает хорошо, но когда я не говорю, а есть посторонние звуки, то распознавании продолжается это тоже нормально ?

    Система не заточена на распознавание посторонних звуков, лучше выключать распознавание, если оно не используется. В последних версиях при распознавании грамматики должно выдавать '<unk>' для неизвестных слов. Для моделей языка такая возможность не поддерживается.

    -99.9990 выключи-0.0531

    Цифра слева - логарифм вероятности слова. Справа - логарифм сглаживания (backoff). Структура модели подробно описана по ссылке выше.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.