Поиск:

Ответ в темуСоздание новой темы Создание опроса
> распознование слова 
:(
    Опции темы
gambit
Дата 12.5.2007, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

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



Естьли готовые алгоритмы что можно без всяких словарей узнать что word это нормальное слово а kdjghd это просто набор букв??
PM MAIL ICQ Skype   Вверх
W4FhLF
Дата 12.5.2007, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

Репутация: 5
Всего: 121



Ну в том виде в котором ты привёл, достаточно просто поискать в слове гласные smile

А в общем случае ответ нет. Нельзя. Можно конечно насобирать кучу правил слообразования и характерных конструкций. Но язык ведь живая система и если даже сегодня ты учтёшь 90% случаев, на завтра появится ещё несколько не отвечающих никаким правилам. 

Это сообщение отредактировал(а) W4FhLF - 12.5.2007, 11:43


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
drkot
Дата 12.5.2007, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

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



Не полностью согласен с W4FhLF.
Вероятность определения слово или не слово будет не 100%, но всеже высокая. На этом принципе работают авто переключатели клавиатуры.
принцип римерно такой: на основе словаря создается база слогов которые встречаются (присущи) в данном языке, а также база сопоставлений слогов.
В результате получаем систему распознавания слов + примитивную проверку орфографии. ;)



--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
W4FhLF
Дата 12.5.2007, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

Репутация: 5
Всего: 121



drkot, ну если на таком уровне, то можно конечно, но эффективность опять же, по сравнению со словарём, ниже. Но если исходить из здравого смысла, то я бы выбрал этот вариант. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
esperant0
Дата 12.5.2007, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 714
Регистрация: 20.5.2005

Репутация: 4
Всего: 14



Цитата(drkot @ 12.5.2007,  13:53)
Не полностью согласен с W4FhLF.
Вероятность определения слово или не слово будет не 100%, но всеже высокая. На этом принципе работают авто переключатели клавиатуры.
принцип римерно такой: на основе словаря создается база слогов которые встречаются (присущи) в данном языке, а также база сопоставлений слогов.
В результате получаем систему распознавания слов + примитивную проверку орфографии. ;)

W4FhLF. прав на 100%, как он и сказал В ОБЩЕМ СЛУЧАЕ задаче не решаема. А вы взяли и сослались на частность


--------------------
 
 Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer 

Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором  а затем стерто и которое он - пользователь не мог видеть. 
PM MAIL   Вверх
drkot
Дата 12.5.2007, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

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



esperant0, 
Цитата(gambit @  12.5.2007,  11:29 Найти цитируемый пост)
 алгоритмы что можно без всяких словарей узнать

в вопросе было "без словарей". Пожалуйста, укажите, где в моем посте затронуты частности.


Цитата(W4FhLF @  12.5.2007,  15:40 Найти цитируемый пост)
но эффективность опять же, по сравнению со словарём, ниже

не совсем понял "эффективность"? это что, скорость или вероятность правильного распознавания?
При использовании словаря скорость обработки будет очень маленькая, даже при условии структурирования словаря. + в словарь врядли можно занести все возможные словоформы, а вот для метода связанных слогов это не проблема + в слоговом словаре будет порядка 1000 записей и до 500 слоговых связок, что обеспечивает значительный выигрыш в скорости.
Использование даже самого навороченного словаря будет менее эффективно чем простенького семантического анализатора. Не обязательно знать все слова, достаточно знать как они формируются в языке.



--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
W4FhLF
Дата 12.5.2007, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

Репутация: 5
Всего: 121



Цитата(drkot @  12.5.2007,  16:02 Найти цитируемый пост)
не совсем понял "эффективность"? это что, скорость или вероятность правильного распознавания?При использовании словаря скорость обработки будет очень маленькая, даже при условии структурирования словаря. + в словарь врядли можно занести все возможные словоформы, а вот для метода связанных слогов это не проблема + в слоговом словаре будет порядка 1000 записей и до 500 слоговых связок, что обеспечивает значительный выигрыш в скорости.Использование даже самого навороченного словаря будет менее эффективно чем простенького семантического анализатора. Не обязательно знать все слова, достаточно знать как они формируются в языке.


Ну про скорость речи небыло, ибо иногда всё-таки качество важнее. А использование одного лишь семантического анализа неэффективно хотя бы потому, что будет слишком много ложных срабатываний. Слово ведь может быть образовано правильно, а смысла никакого не нести или наоборот слов исключений, сленговых слов и прочих тоже хватает, их под правила не подпишешь. 
Т.о. образом мы пришли к тому, что нужно уточнение критериев отсеивания.

Добавлено через 2 минуты и 45 секунд
Насчёт скорости ты не прав... Поюзай хотя бы тот же lingvo в offline версии, там число словоформ стремиться к миллиону наверное и поиск осуществялется моментально. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Lomir
Дата 13.5.2007, 01:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 30.1.2007
Где: Lithuania::Kaunas

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



Цитата

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

Среднее ожидаемое время O(lg(lg(n)))
При мильиярде слов - всего 5 итераций. Помойму это совсем немного.
Вот тока где памяти взять на такое количество слов...
PM MAIL ICQ Skype   Вверх
Bitter
Дата 13.5.2007, 02:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный лентяй
***


Профиль
Группа: Завсегдатай
Сообщений: 1209
Регистрация: 15.8.2004
Где: Харьков, Ukraine

Репутация: 4
Всего: 27



А как быть со словом "Мкртчан" (фамилия актёра)? Оно попадает под правила словообразования? По-моему нет. Так что без словаря врядли. Как человек распознает слова? Он их просто помнит, а не пытается подогнать под правила. Вот и ответ. 
PM MAIL ICQ Skype   Вверх
drkot
Дата 13.5.2007, 08:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

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



Цитата(Bitter @  13.5.2007,  02:11 Найти цитируемый пост)
Он их просто помнит, а не пытается подогнать под правила.

насколько мне не изменяет память в русском языке более 106 тыс слов. Надеюсь Bitter, Вы помните их все  smile 
Даже  если человек не знает слово (слышит его впервые), он четко понимает является ли этот набор звуков словом, или это просто набор звуков. Данное свойство называется "чувство языка"  smile  Конечно не у всех оно на высоте, но что поделать  smile 

Lomir, не совсем понял откуда происходит ваша формула сложности. (вывод, предпосылки). Теоретически (на мой взгляд) она близка к истине если под итерацией понимать полный цикл поиска одной буквы. Но насколько мне известно сложность поиска в упорядоченном графе равна О(n) где n - глубина графа.
Если Вас известен алгоритм реализующий O(lg(lg(n))) то пожалуйста представте его как доказательство.

Цитата(Bitter @  13.5.2007,  02:11 Найти цитируемый пост)
А как быть со словом "Мкртчан"

Таких слов не много и для них можно построить пользоватетьский набор правил, в данном случае это один слог. Я не уверен, что эта фамилия будет в словаре + фамилия не русская.

Добавлено через 9 минут и 14 секунд
Цитата(W4FhLF @  12.5.2007,  16:11 Найти цитируемый пост)
там число словоформ стремиться к миллиону

В словаре Ожогова 53 тыс слов, Даля - ~70 тыс, Орфографический словарь русского языка 106тыс. Милиона нигде нет.
А у лингво как раз применяется симантические правила: слова ищется по корню, а далее его словоформа.
Никогда не задавался вопросом: почему лингво столько весит? Поиск ведется не по словарю, а по специальным структурированным индексам, но это память.

Добавлено через 14 минут и 16 секунд
Вобщем то выбор метода зависит от цели. 
Но в любом случае использование словаря не позволит учесть все словоформы (падежи, склонения, времена, числа).






--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
W4FhLF
Дата 13.5.2007, 09:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

Репутация: 5
Всего: 121



Цитата(drkot @  13.5.2007,  08:54 Найти цитируемый пост)
В словаре Ожогова 53 тыс слов, Даля - ~70 тыс, Орфографический словарь русского языка 106тыс. Милиона нигде нет.А у лингво как раз применяется симантические правила: слова ищется по корню, а далее его словоформа.Никогда не задавался вопросом: почему лингво столько весит? Поиск ведется не по словарю, а по специальным структурированным индексам, но это память.


Не слов конечно, это просто я неправильно выразился, в моей версии 1.5 миллиона словарных статей. 
Ясное дело, что поиск происходит по корню, но суть одна, работа идёт со словарём. Lingvo работает со словарём очень быстро - это факт. И факт этот говорит о том, что утверждение:
Цитата

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

Неверно smile 

Сколько весит? Сама программа весит 17 Мб. Словарь - 100 мб и озвучка 100 мегабайт. 


Цитата(drkot @  13.5.2007,  08:54 Найти цитируемый пост)
насколько мне не изменяет память в русском языке более 106 тыс слов.


Это ты только что подсчитал?smile

Добавлено через 2 минуты и 31 секунду
Цитата(drkot @  13.5.2007,  08:54 Найти цитируемый пост)
Но в любом случае использование словаря не позволит учесть все словоформы (падежи, склонения, времена, числа).


Английский совсем другой язык и там со всем этим гораздо проще. А по сабжу, я так понял, именно English и нужен. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
drkot
Дата 13.5.2007, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

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



Цитата(W4FhLF @  13.5.2007,  09:19 Найти цитируемый пост)
Это ты только что подсчитал?

Сарказм не понятен. Внимательно читай написанное и математика не пригодится.

Цитата(W4FhLF @  13.5.2007,  09:19 Найти цитируемый пост)
Словарь - 100 мб

ну и сколько кб на одно слово?

Цитата(W4FhLF @  13.5.2007,  09:19 Найти цитируемый пост)
Английский совсем другой язык

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

Цитата(W4FhLF @  13.5.2007,  09:19 Найти цитируемый пост)
А по сабжу, я так понял, именно English и нужен

А я не понял  smile 


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
W4FhLF
Дата 13.5.2007, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

Репутация: 5
Всего: 121



Цитата(drkot @  13.5.2007,  09:33 Найти цитируемый пост)
Сарказм не понятен. Внимательно читай написанное и математика не пригодится.


Тогда мне непонятен сарказм в отношении Bitter'a. Ибо он был абсолютно прав, если человек не знает слова, то он может только сказать насколько корректно оно составлено, поэтому я и говорю, что при простом анализе словообразования будет слишком много ложных срабатываний и пока мы не знаем конечную цель данной задачи мы не можем утверждать, что эффективней, вот и всё. 

Цитата(drkot @  13.5.2007,  09:33 Найти цитируемый пост)
ну и сколько кб на одно слово?


Ну если учитывать, что одно слово иногда имеет 50 значений(чаще около 7 в среднем) + Объяснения терминов и общепринятых сокращений + связи(синонимы, антонимы) и многое другое. Вот учитывая, что это всё хранится в одной базе, не так-то много получается. 

Цитата(drkot @  13.5.2007,  09:33 Найти цитируемый пост)
Английский точно такой же язык как и русский и правила словообразования очень сходны.


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

Добавлено через 32 секунды
Цитата(drkot @  13.5.2007,  09:33 Найти цитируемый пост)
А я не понял


Цитата(gambit @  12.5.2007,  11:29 Найти цитируемый пост)
word это нормальное слово а kdjghd




--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Lomir
Дата 13.5.2007, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 30.1.2007
Где: Lithuania::Kaunas

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



Цитата

Если Вас известен алгоритм реализующий O(lg(lg(n))) то пожалуйста представте его как доказательство.

Интерполяционный поиск
Для более успешного поиска, можно еще и кофиценты для букв вычилять и хранить.
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

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


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

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


 




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


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

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