По наблюдениям на небольшой выборке, мой вариант обладает отличной различаемостью. Даже аллофоны одной фонемы различаются. Единственный вариант — это запихнуть разные аллофоны в один распознаваемый класс, тогда ИНС «сечёт» что это одно и тоже.
и ещё, по поводу двойных срабатываний. Во-первых, не везде ИНСетью будет выдана одинаковая вероятность. Во-вторых, это задача контекстного анализа, а данная ИНС позволяет высококлассный контекстный анализ, вообще заглядение.
По поводу слов одной длины — я не слова подавал, а звуки, ручным способом извлечённые из слов.
Длина звуков (даже в рамках одного аллофона) иногда различалась четырёхкратно.
Да и один и тот же звук подавался на ИНС со всеми возможными вариантами сдвигов, включая варианты, обрезающие начало и конец. Так что гипотезу о том, что ИНС использует расстояние как признак чего-нибудь, считаю сомнительным.
3.1.1 «На выходе на рис. 2 — степень принадлежности буквам «б», «а», и «к». Так вот — сколько этих букв всего было? Какова полная размерность выхода понятно, это не принципиально. Важно именно число букв.»
одна инс — одна буковка. для ИНС труЪ с парллельным режимом работы самое оно.
з.ы. лично мне кажется намного важнее, какая эта буковка)))
Согласные сложнее распознавать. разница в точности — на порядки.
3.1.2 «Если у вас нигде нет ошибки — то это исчерпывающее решение задачи распознавания речи, причем очень простым способом. Соответственно, у меня есть вполне естественные сомнения на этот счет :)»
может и да, а может и нет. надо собраться с силами, построить«боевой» распознаватель и посмотреть))
насчёт слов — а какая разница, поясните пожалуйста.
3.1.1. Я имею в виду размерность выхода системы классификации: ей на вход дают звук, на выходе она говорит, какая именно это фонема (или звук, или набор фонем — не суть важно). Так вот, сколько «вариантов ответа» есть у системы?
«на выходе она говорит, какая именно это фонема» Не совсем так, на выходе — сигнал с рисунка 2, в виде системы отсчётов.
А уже по этому сигналу можно легко определить, какая эта фонема.
размерность зависит от числа отсчётов, описывающих выходной сигнал с рисунка два. Это то, что я назвал «выходным окном». Размер выходного окна — прозвольный, но меньше двух смысла нет. Система тестировалась на размерностях выходного сигнала 4,8,12,16,32
Поясню на примере.Вот допустим, у нас ИНС с 32 вЫходами. Допустим, её надо обучить распознавать второй (красный) сигнал с рис. 2. Значит, мы бьём этот сигнал на 32 отсчёта и подаём при обучении на выход нейронной сети (а далее — Backpropagation и т.п.). При этом смещаем его по окну (вместе с входным кепстром) от -31 до +31 отсчёта/сегмента(так это обычно в забугорной литературе кличут)
3.1.2 «Ну, это конечно очень мало. Даже ошибка в 20% может спокойно пройти незамеченной при таком числе контрольных образов.»
А сколько надо?
У меня есть сомнение, что 20% ошибки может пройти мимо. Из-за размерности выходной классификации.
Смотрим. Мы «скормили» 5 разных аллофонов ИНС при обучении, по 5 вариаций на каждый аллофон. И ещё по одной вариации оставили на проверку.
Если бы ИНС на выходе выдавала вероятность того, что данный звук принадлежит такому-то классу, то нужна контрольная выборка в сотни примеров, чтобы оценить точность, согласен. При этом точность пропорциональна количеству контрольных примеров.
Но мы здесь имеем ИНС, которая реагиует образом на образ. Практически, преобразует высоковариативный речевой образ в низковариативный.
Когда я говорю, что добился запредельной точности, я имею в виду, что выходной образ соответствует ожиданию с погрешностью не более 10^7%
Перцептрон в этом смысле меньше 9% погрешности не даёт.
В данном случае просто невероятно, чтобы плохо обученная нейросеть среагировала на абсолютно незнакомый образ нужной комбинацией выходных сигналов с такой высокой точностью.
Если бы вариативность речевого сигнала была бы маленькой, можно было бы предположить, что ИНС просто запомнила нужные образы. Но перцептрон (а моё решение чуть изменённый перцептрон, и обладает всеми его недостатками) очень чувствителен к изменению размеров образа, так как при изменении масштаба происходит сдвиг отсчётов по входам, на что перцептронные конструкции реагируют очень плохо.
3.1.3 «Точность отнюдь не запредельная. Собственно, к решению основной задачи вы еще не подошли, это только подготовительный этап. И да — точность кореллирует, но, боюсь, в реальных условиях она будет порядка 50%, если не меньше.»
Это имеет смысл обсуждать только после ваших комментариев пунктов 3.1.1 и 3.1.2.
3.1.1. Я имею в виду размерность выхода системы классификации: ей на вход дают звук, на выходе она говорит, какая именно это фонема (или звук, или набор фонем — не суть важно). Так вот, сколько «вариантов ответа» есть у системы?
«на выходе она говорит, какая именно это фонема» Не совсем так, на выходе — сигнал с рисунка 2, в виде системы отсчётов.
А уже по этому сигналу можно легко определить, какая эта фонема.
размерность зависит от числа отсчётов, описывающих выходной сигнал с рисунка два. Это то, что я назвал «выходным окном». Размер выходного окна — прозвольный, но меньше двух смысла нет. Система тестировалась на размерностях выходного сигнала 4,8,12,16,32
Поясню на примере.Вот допустим, у нас ИНС с 32 вЫходами. Допустим, её надо обучить распознавать второй (красный) сигнал с рис. 2. Значит, мы бьём этот сигнал на 32 отсчёта и подаём при обучении на выход нейронной сети (а далее — Backpropagation и т.п.). При этом смещаем его по окну (вместе с входным кепстром) от -31 до +31 отсчёта/сегмента(так это обычно в забугорной литературе кличут)
3.1.2 «Ну, это конечно очень мало. Даже ошибка в 20% может спокойно пройти незамеченной при таком числе контрольных образов.»
А сколько надо?
У меня есть сомнение, что 20% ошибки может пройти мимо. Из-за размерности выходной классификации.
Смотрим. Мы «скормили» 5 разных аллофонов ИНС при обучении, по 5 вариаций на каждый аллофон. И ещё по одной вариации оставили на проверку.
Если бы ИНС на выходе выдавала вероятность того, что данный звук принадлежит такому-то классу, то нужна контрольная выборка в сотни примеров, чтобы оценить точность, согласен. При этом точность пропорциональна количеству контрольных примеров.
Но мы здесь имеем ИНС, которая реагиует образом на образ. Практически, преобразует высоковариативный речевой образ в низковариативный.
Когда я говорю, что добился запредельной точности, я имею в виду, что выходной образ соответствует ожиданию с погрешностью не более 10^7%
Перцептрон в этом смысле меньше 9% погрешности не даёт.
В данном случае просто невероятно, чтобы плохо обученная нейросеть среагировала на абсолютно незнакомый образ нужной комбинацией выходных сигналов с такой высокой точностью.
Если бы вариативность речевого сигнала была бы маленькой, можно было бы предположить, что ИНС просто запомнила нужные образы. Но перцептрон (а моё решение чуть изменённый перцептрон, и обладает всеми его недостатками) очень чувствителен к изменению размеров образа, так как при изменении масштаба происходит сдвиг отсчётов по входам, на что перцептронные конструкции реагируют очень плохо.
3.1.3 «Точность отнюдь не запредельная. Собственно, к решению основной задачи вы еще не подошли, это только подготовительный этап. И да — точность кореллирует, но, боюсь, в реальных условиях она будет порядка 50%, если не меньше.»
Это имеет смысл обсуждать только после ваших комментариев пунктов 3.1.1 и 3.1.2.
3.1. «При каком количестве классов, на которые может быть разделен тестируемый участок?»
Не очень понял. Вы имеете в виду размер окна? А если окна, то входного или выходного? Не забывайте, что выход при этой схеме — это вектор. Система отсчётов синала.
Если речь о выходном окне, то тестировал от 4 до 32 выходов. На каких-то лучше, на каких-то хуже, но работает на всех
Если речь идёт о входном окне, то я тоже разные размеры перепробовал.
Но, как вы верно заметили, чёртик есть:
3.2 И какой был размер обучающей выборки, какой размер валидационной?
Небольшой. пять примеров на аллофон, порядка двадцати аллофонов одного типа.
валидационная выборка — ещё по одному-по два примера на аллофон, плюс ещё пяток «левых» аллофонов, другого типа, для контроля переобучения.
Ещё один минус — проверял на гласных, гласные вообще лучше распознаются.
Ну дык это ж научная работа, а не попытка построить коммерческий распознаватель речи.
3.3. Тут фокус не в том, что я использовал именно такую схему с векторным выходом ИНС, а в том, какую ИНС для этой задачи подобрать. Обычный перцептрон погрешность меньше 20 процентов не даёт, при хорошем варианте — 40, и то, нужно десяток перцептронов обучить, чтобы один из них дал приличный результат.
А я добился запредельных показателей точности. Конечно, в реальных условиях результат может быть хуже, но есть предположение, что точность в «тепличных» условиях кореллирует с точностью в «боевых». Но это уже тема другой статьи :)
2. На изолированных звуках (т.е. при предварительной сегментации вручную) я добивался нулевого числа ложных распознаваний. При этом сегментрованый звук я в обязательном порядке двигал по окну. Это даёт основания предполагать, что и в речевом потоке всё будет ок:)
1. согласен, идея, представленная в статье, этого не исключает, даже подразумевает
3. по моим наблюдениям, нейросети довольно хорошо с этим справляются
2. Собственно, об этом и статья. Я плохо объясняю? Смысл предлагаемой схемы именно в том, что можно вообще не определять, где занчивается один звук и начинается второй.
Я имел в виду, что есть масса научных статей. Очень многие учёные публикуют идеи и технологии, способные стать частью патента и принести прибли, только для того, чтобы застолбить за собой приоритет. Такая уж это особая каста. И вовсе не обязательно кидать ссылки именно на коммерчески применимые идеи — ссылки на обычное научное графоманство тоже «катят».
и ещё, по поводу двойных срабатываний. Во-первых, не везде ИНСетью будет выдана одинаковая вероятность. Во-вторых, это задача контекстного анализа, а данная ИНС позволяет высококлассный контекстный анализ, вообще заглядение.
По поводу слов одной длины — я не слова подавал, а звуки, ручным способом извлечённые из слов.
Длина звуков (даже в рамках одного аллофона) иногда различалась четырёхкратно.
Да и один и тот же звук подавался на ИНС со всеми возможными вариантами сдвигов, включая варианты, обрезающие начало и конец. Так что гипотезу о том, что ИНС использует расстояние как признак чего-нибудь, считаю сомнительным.
одна инс — одна буковка. для ИНС труЪ с парллельным режимом работы самое оно.
з.ы. лично мне кажется намного важнее, какая эта буковка)))
Согласные сложнее распознавать. разница в точности — на порядки.
3.1.2 «Если у вас нигде нет ошибки — то это исчерпывающее решение задачи распознавания речи, причем очень простым способом. Соответственно, у меня есть вполне естественные сомнения на этот счет :)»
может и да, а может и нет. надо собраться с силами, построить«боевой» распознаватель и посмотреть))
насчёт слов — а какая разница, поясните пожалуйста.
«на выходе она говорит, какая именно это фонема» Не совсем так, на выходе — сигнал с рисунка 2, в виде системы отсчётов.
А уже по этому сигналу можно легко определить, какая эта фонема.
размерность зависит от числа отсчётов, описывающих выходной сигнал с рисунка два. Это то, что я назвал «выходным окном». Размер выходного окна — прозвольный, но меньше двух смысла нет. Система тестировалась на размерностях выходного сигнала 4,8,12,16,32
Поясню на примере.Вот допустим, у нас ИНС с 32 вЫходами. Допустим, её надо обучить распознавать второй (красный) сигнал с рис. 2. Значит, мы бьём этот сигнал на 32 отсчёта и подаём при обучении на выход нейронной сети (а далее — Backpropagation и т.п.). При этом смещаем его по окну (вместе с входным кепстром) от -31 до +31 отсчёта/сегмента(так это обычно в забугорной литературе кличут)
3.1.2 «Ну, это конечно очень мало. Даже ошибка в 20% может спокойно пройти незамеченной при таком числе контрольных образов.»
А сколько надо?
У меня есть сомнение, что 20% ошибки может пройти мимо. Из-за размерности выходной классификации.
Смотрим. Мы «скормили» 5 разных аллофонов ИНС при обучении, по 5 вариаций на каждый аллофон. И ещё по одной вариации оставили на проверку.
Если бы ИНС на выходе выдавала вероятность того, что данный звук принадлежит такому-то классу, то нужна контрольная выборка в сотни примеров, чтобы оценить точность, согласен. При этом точность пропорциональна количеству контрольных примеров.
Но мы здесь имеем ИНС, которая реагиует образом на образ. Практически, преобразует высоковариативный речевой образ в низковариативный.
Когда я говорю, что добился запредельной точности, я имею в виду, что выходной образ соответствует ожиданию с погрешностью не более 10^7%
Перцептрон в этом смысле меньше 9% погрешности не даёт.
В данном случае просто невероятно, чтобы плохо обученная нейросеть среагировала на абсолютно незнакомый образ нужной комбинацией выходных сигналов с такой высокой точностью.
Если бы вариативность речевого сигнала была бы маленькой, можно было бы предположить, что ИНС просто запомнила нужные образы. Но перцептрон (а моё решение чуть изменённый перцептрон, и обладает всеми его недостатками) очень чувствителен к изменению размеров образа, так как при изменении масштаба происходит сдвиг отсчётов по входам, на что перцептронные конструкции реагируют очень плохо.
3.1.3 «Точность отнюдь не запредельная. Собственно, к решению основной задачи вы еще не подошли, это только подготовительный этап. И да — точность кореллирует, но, боюсь, в реальных условиях она будет порядка 50%, если не меньше.»
Это имеет смысл обсуждать только после ваших комментариев пунктов 3.1.1 и 3.1.2.
«на выходе она говорит, какая именно это фонема» Не совсем так, на выходе — сигнал с рисунка 2, в виде системы отсчётов.
А уже по этому сигналу можно легко определить, какая эта фонема.
размерность зависит от числа отсчётов, описывающих выходной сигнал с рисунка два. Это то, что я назвал «выходным окном». Размер выходного окна — прозвольный, но меньше двух смысла нет. Система тестировалась на размерностях выходного сигнала 4,8,12,16,32
Поясню на примере.Вот допустим, у нас ИНС с 32 вЫходами. Допустим, её надо обучить распознавать второй (красный) сигнал с рис. 2. Значит, мы бьём этот сигнал на 32 отсчёта и подаём при обучении на выход нейронной сети (а далее — Backpropagation и т.п.). При этом смещаем его по окну (вместе с входным кепстром) от -31 до +31 отсчёта/сегмента(так это обычно в забугорной литературе кличут)
3.1.2 «Ну, это конечно очень мало. Даже ошибка в 20% может спокойно пройти незамеченной при таком числе контрольных образов.»
А сколько надо?
У меня есть сомнение, что 20% ошибки может пройти мимо. Из-за размерности выходной классификации.
Смотрим. Мы «скормили» 5 разных аллофонов ИНС при обучении, по 5 вариаций на каждый аллофон. И ещё по одной вариации оставили на проверку.
Если бы ИНС на выходе выдавала вероятность того, что данный звук принадлежит такому-то классу, то нужна контрольная выборка в сотни примеров, чтобы оценить точность, согласен. При этом точность пропорциональна количеству контрольных примеров.
Но мы здесь имеем ИНС, которая реагиует образом на образ. Практически, преобразует высоковариативный речевой образ в низковариативный.
Когда я говорю, что добился запредельной точности, я имею в виду, что выходной образ соответствует ожиданию с погрешностью не более 10^7%
Перцептрон в этом смысле меньше 9% погрешности не даёт.
В данном случае просто невероятно, чтобы плохо обученная нейросеть среагировала на абсолютно незнакомый образ нужной комбинацией выходных сигналов с такой высокой точностью.
Если бы вариативность речевого сигнала была бы маленькой, можно было бы предположить, что ИНС просто запомнила нужные образы. Но перцептрон (а моё решение чуть изменённый перцептрон, и обладает всеми его недостатками) очень чувствителен к изменению размеров образа, так как при изменении масштаба происходит сдвиг отсчётов по входам, на что перцептронные конструкции реагируют очень плохо.
3.1.3 «Точность отнюдь не запредельная. Собственно, к решению основной задачи вы еще не подошли, это только подготовительный этап. И да — точность кореллирует, но, боюсь, в реальных условиях она будет порядка 50%, если не меньше.»
Это имеет смысл обсуждать только после ваших комментариев пунктов 3.1.1 и 3.1.2.
Не очень понял. Вы имеете в виду размер окна? А если окна, то входного или выходного? Не забывайте, что выход при этой схеме — это вектор. Система отсчётов синала.
Если речь о выходном окне, то тестировал от 4 до 32 выходов. На каких-то лучше, на каких-то хуже, но работает на всех
Если речь идёт о входном окне, то я тоже разные размеры перепробовал.
Но, как вы верно заметили, чёртик есть:
3.2 И какой был размер обучающей выборки, какой размер валидационной?
Небольшой. пять примеров на аллофон, порядка двадцати аллофонов одного типа.
валидационная выборка — ещё по одному-по два примера на аллофон, плюс ещё пяток «левых» аллофонов, другого типа, для контроля переобучения.
Ещё один минус — проверял на гласных, гласные вообще лучше распознаются.
Ну дык это ж научная работа, а не попытка построить коммерческий распознаватель речи.
3.3. Тут фокус не в том, что я использовал именно такую схему с векторным выходом ИНС, а в том, какую ИНС для этой задачи подобрать. Обычный перцептрон погрешность меньше 20 процентов не даёт, при хорошем варианте — 40, и то, нужно десяток перцептронов обучить, чтобы один из них дал приличный результат.
А я добился запредельных показателей точности. Конечно, в реальных условиях результат может быть хуже, но есть предположение, что точность в «тепличных» условиях кореллирует с точностью в «боевых». Но это уже тема другой статьи :)
2. На изолированных звуках (т.е. при предварительной сегментации вручную) я добивался нулевого числа ложных распознаваний. При этом сегментрованый звук я в обязательном порядке двигал по окну. Это даёт основания предполагать, что и в речевом потоке всё будет ок:)
3. по моим наблюдениям, нейросети довольно хорошо с этим справляются
2. Собственно, об этом и статья. Я плохо объясняю? Смысл предлагаемой схемы именно в том, что можно вообще не определять, где занчивается один звук и начинается второй.
А что конкретно не понравилсь? что можно сделать лучше?
Да и потом, ссылка на патент тоже сойдёт.