Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Распознавание речи, Алгоритмы распознавания речи 
:(
    Опции темы
Step
Дата 23.1.2003, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: нет
Всего: 25



http://www.swd.nnov.ru/deep.htm
Там есть ссылки по распазнованию речи


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
Гость
  Дата 26.1.2003, 13:01 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата
НО! У них очень низкое быстродействие при большой размерности задачи. Даже если считать на сверхбыстром процессоре, все равно мое мнение - нельзя в хорошую железяку закладывать плохую математику.


А если я скажу, что ещё в СССР серийно производилась плата с ДП-алгоритмом? Всё ещё будете считать это плохой математикой??
  Вверх
podval
Дата 27.1.2003, 04:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Цитата
А если я скажу, что ещё в СССР серийно производилась плата с ДП-алгоритмом? Всё ещё будете считать это плохой математикой??

Ну и что? Я вот когда-то придумал устройство для решения задач целочисленного линейного программирования.
Все зависит от того, какую задачу надо решить. Если задачу удалось формализовать только так, что возможно применить только метод ДП, то куда деваться? Здесь надо выбирать, чем можно поступиться: быстродействием, точностью, требуемой памятью и т.д.
PM WWW ICQ   Вверх
val
Дата 28.1.2003, 03:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Program developer
**


Профиль
Группа: Участник Клуба
Сообщений: 992
Регистрация: 14.1.2003
Где: г. Киев

Репутация: 1
Всего: 7



Абсолютно согласен с Вами, PODVAL. ДП - это достаточно сложный и медленный алгоритм для распознавания с большим словарём, но вместе с тем и самый надёжный. Тут уж против этого ничего не скажешь... Правда и вевлет анализ во времена СССР еще не был распространён... У меня просьба... не могли бы Вы более детально описать мне структуру алгоритма распознавания путём вейвлетов...


--------------------
Терпимость - величайшее благо человечества...
Ярчайший признак интеллекта – постоянно хорошее настроение…
PM MAIL ICQ   Вверх
podval
Дата 28.1.2003, 07:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



ОК, только попозже. Полно работы.
Немного терпения! smile.gif
PM WWW ICQ   Вверх
val
Дата 29.1.2003, 23:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Program developer
**


Профиль
Группа: Участник Клуба
Сообщений: 992
Регистрация: 14.1.2003
Где: г. Киев

Репутация: 1
Всего: 7



Уважаемые участники обсуждения! Я немного сменил свой аватар... Теперь у меня пирамида... вместо солнца. Но в общем это неважно...
Продолжая данную тему... На сайте http://www.datacompression.info я обнаружил небольшую статью под названием:
"How can I build a simple speech recogniser?" В общем, в статье говорится, что простой распознаватель речи можно постройть используя следующий алгоритм:
Цитирую:
1. Find the begining and end of the utterance.
2.Filter the raw signal into frequency bands.
3.Cut the utterance into a fixed number of segments.
4.Average data for each band in each segment.
5.Store this pattern with its name.
6.Collect training set of about 3 repetitions of each pattern (word).
7.Recognize unknown by comparing its pattern against all patterns in the training set and returning the name of the pattern closest to the unknown.

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



--------------------
Терпимость - величайшее благо человечества...
Ярчайший признак интеллекта – постоянно хорошее настроение…
PM MAIL ICQ   Вверх
stab
Дата 30.1.2003, 06:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

Репутация: нет
Всего: 48



интересно было бы реализовать вышеописанное. Что посоветуете для частотного анализа? БПФ?


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
stab
Дата 30.1.2003, 06:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

Репутация: нет
Всего: 48



Step ты что увлекся Deeptown'ом ?


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
val
Дата 30.1.2003, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Program developer
**


Профиль
Группа: Участник Клуба
Сообщений: 992
Регистрация: 14.1.2003
Где: г. Киев

Репутация: 1
Всего: 7



Цитата
интересно было бы реализовать вышеописанное. Что посоветуете для частотного анализа? БПФ?


На самом деле это абсолютно неважно... Сейчас не стоит вопрос о способах вычисления Фурье... Бери простое ДПФ и не засоряй алгоритм. Самое интересное - структура и способ задания эталонных элементов... Я уже пробовал реализовывать этот алгоритм, но наткнулся на непонимание того, что из себя в конечном счете должен представлять эталон...


--------------------
Терпимость - величайшее благо человечества...
Ярчайший признак интеллекта – постоянно хорошее настроение…
PM MAIL ICQ   Вверх
stab
Дата 31.1.2003, 02:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

Репутация: нет
Всего: 48



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

Это сообщение отредактировал(а) cully - 31.1.2003, 02:15


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
podval
Дата 31.1.2003, 05:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



КОММЕНТАРИИ

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


Цитата
1. Find the begining and end of the utterance.
2.Filter the raw signal into frequency bands.
3.Cut the utterance into a fixed number of segments.
4.Average data for each band in each segment.
5.Store this pattern with its name.

Вот после выполнения этих шагов и получим эталон. Эти шаги повторяем для всех классов, подлежащих распознаванию.

Цитата
Collect training set of about 3 repetitions of each pattern (word).

Это попытка так сказать "усреднить" каждый из эталонов, улучшить их свойства стационарности.

Цитата
.Recognize unknown by comparing its pattern against all patterns in the training set and returning the name of the pattern closest to the unknown.

Будьте внимательными! "Неизвестный" означает, что мы не знаем заранее, какому из эталонов он наиболее близок. Но это не значит, что на вход можно подать абы какой сигнал. Он обязательно должен принадлежать одному из известных (образцы которых у нас хранятся) классов.

Последнее замечание можно завернуть и таким образом. Ввести в систему распознавания некий элемент самообучения. Допустим, что действительно на вход пришел сигнал, образец которого в базе отсутствует. Это можно обнаружить, например, по достижению некоторого порогового (экстремально возможного) значения критерия близости. Тогда необходимо составить новое эталонное описание для принятого сигнала и записать его в базу эталонов.
PM WWW ICQ   Вверх
val
Дата 31.1.2003, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Program developer
**


Профиль
Группа: Участник Клуба
Сообщений: 992
Регистрация: 14.1.2003
Где: г. Киев

Репутация: 1
Всего: 7



Хорошо, а теперь давайте посмотрим внимательнее...
1. Find the begining and end of the utterance.
Да, это действительно просто. Найти начало и конец слова можно по установленному порогу амплитуды...
2.Filter the raw signal into frequency bands.
Первые непонятные моменты... Каким окном мы будем "идти" по сигналу? Но ладно... Предположим, что идём мы окном по 80 дискрет. Итого, получили линейку из 80 амплитуд частот.
3.Cut the utterance into a fixed number of segments.
Непонятно, по какому критерию происходит сегментация частот. Каково количество сегментов, каковы их длины.
4.Average data for each band in each segment.
Усреднить значения частот в каждом сегменте, как это?
5.Store this pattern with its name.
Тут уже по обстоятельствам...




--------------------
Терпимость - величайшее благо человечества...
Ярчайший признак интеллекта – постоянно хорошее настроение…
PM MAIL ICQ   Вверх
podval
Дата 2.2.2003, 06:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Дело в том, что здесь надо провести кое-какую экспериментальную работу.
Цитата
Каким окном мы будем "идти" по сигналу?

Это как сам решишь. Подбирай.

Цитата
Непонятно, по какому критерию происходит сегментация частот. Каково количество сегментов, каковы их длины.

Я бы выбрал те сегменты, где концентрируется основная энергия сигнала. А как иначе?
Какое их количество - опять смотри, думай и подбирай. Возьми несколько примеров, тогда сможешь определить примерное количество сегментов, достаточное для работы.
А вот каковы их длины - видно на частотной диаграмме. Можешь сортировать по пороговому значению амплитуды, а если не хочешь - сломай в себе привычное Фурье-представление о спектрах. В вейвлет-пакетах такой вопрос просто не возникает.

Цитата
Усреднить значения частот в каждом сегменте, как это?

Скорее всего, речь идет о том, чтобы отнормировать значения амплитуд спектральных компонент к максимальному значению. Это для того, чтобы все эталоны имели как бы одну шкалу (от 0 до 1). А то получатся одни эталоны "громкие", другие "тихие" - это лажа, так низя smile.gif .
PM WWW ICQ   Вверх
val
Дата 5.2.2003, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Program developer
**


Профиль
Группа: Участник Клуба
Сообщений: 992
Регистрация: 14.1.2003
Где: г. Киев

Репутация: 1
Всего: 7



Большое спасибо, podval, за ценные ответы...
А если подходить к проблеме, используя аппарат вейвлет анализа... Как я понимаю, вейвлеты - это базисные функции, сжатие и растяжение которых обеспечивает аппроксимацию входного сигнала. Тогда, в рамках вейвлетов, как можно трансформировать этот алгоритм... Какие параметры (эталоны) нам дают вейвлеты?



--------------------
Терпимость - величайшее благо человечества...
Ярчайший признак интеллекта – постоянно хорошее настроение…
PM MAIL ICQ   Вверх
val
Дата 5.2.2003, 01:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Program developer
**


Профиль
Группа: Участник Клуба
Сообщений: 992
Регистрация: 14.1.2003
Где: г. Киев

Репутация: 1
Всего: 7



Еще одна проблема... Непонятно, как использовать Расстояние Махаланобиса в рамках решения задачи классификации сигналов.

Кратко дам теорию:

В общем, расстояние Махаланобиса является мерой расстояния между двумя точками в пространстве, определяемым двумя или более коррелированными переменными. Например, если имеются всего две некоррелированных переменные, то вы можете нанести точки (образцы) на стандартную 2М диаграмму рассеяния. Расстояние Махаланобиса между точками будет в этом случае равно расстоянию Евклида, т.е. расстоянию, измеренному, например, рулеткой. Если имеются три некоррелированные переменные, то для определения расстояния вы можете по-прежнему использовать рулетку (на 3М диаграмме). При наличии более трех переменных вы не можете более представить расстояние на диаграмме. Также и в случае, когда переменные коррелированы, то оси на графике могут рассматриваться как неортогональные (они уже не направлены под прямыми углами друг к другу). В этом случае простое определение расстояния Евклида не подходит, в то время как расстояние Махаланобиса является адекватно определенным в случае наличия корреляций.

Расстояние Махаланобиса и классификация. Для каждой совокупности в выборке вы можете определить положение точки, представляющей средние для всех переменных в многомерном пространстве, определенном переменными рассматриваемой модели. Эти точки называются центроидами группы. Для каждого наблюдения вы можете затем вычислить его расстояние Махаланобиса от каждого центроида группы. Снова, вы признаете наблюдение принадлежащим к той группе, к которой он ближе, т.е. когда расстояние Махаланобиса до нее минимально.





--------------------
Терпимость - величайшее благо человечества...
Ярчайший признак интеллекта – постоянно хорошее настроение…
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0991 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.