![]() |
[php] Работа с "Русским языком"
Занялся я тут значит, изучением ИИ(искусственный разум),ну и естественно натолкнулся на НС(нейронные сети),покопав в ту сторону,я понял, что тема - аху#$%^& и интересная.начал думать,на чем бы проводить свои "испытания", создал однослойную нейронную сеть(есесно на php), и начал ей разгадывать судоку.ну шикарно просто, 80% из 100% отгаданы верно.Но времени требуется ууууууу.
Мне это быстро надоело,я же уже обучил своего питомца распознавать линии,квадаратики и буковки в матрице,и мне захотелось чего то умнее,связанного с ИИ. Ну и пришло мне в голову, что проще всего будет испытывать ICQ-бота. Нарисовал план работ,что и как,и тут,проблема гигантская. Подумав,я понял,что мой бот не должен работать по принципу "only regexp@",а должен распознавать предложения на основе их строения,морфологии.И самой первой задачей,является поиск подлежащего и сказуемого.Сколько я бился над этой проблемой....Как же найти основу любого предложения? Как это реализовать? Какой алгоритм придумать? Ничего я не придумал,кроме как, работать с гиганскими словарями,и искать там слова,смотреть что это,существительное,прилаг ательное,и на основе этих данных выносить процентный коэф. важности слов.Но это уже больше обычная рутинная работа скрипта,а хочется ума. Собственно,основной вопрос я поставлю немного иначе: Как найти в предложении существительное? Как узнать,что слово существительное? Жду ваших идей,какими бы методами пользовались вы? Есть жжелание отказаться полность от работы с интернетом, во время разбора предложения,то есть никаких "ЯндексСловарей" быть не должно.Онли то,что лежит на харде.Ваши мнения. |
падежные окончания + обычно существительные заканчиваются на "а,я"(но могут попасться и деепричастия) и окончание на согласную.
мб проканает в нескольких случаях |
Словарный запас твоему боту полюбому понадобится, ещё можно покопать разбор слов на составляющие: приставка, корень, суффикс, окончание. В общем без учебника тут никуда.
|
Цитата:
|
ничего себе задался вопросом) лучшие умы не могут решить эти вопросы как ИИ сделать, а ты на php решил) ещё и просишь помощи у ачатовцев) имхо, масштабно очень.. тут думать надо.. и много).
|
Цитата:
|
Цитата:
Есть куча словарей,ожигов,даль,,и вообще большая куча готового материала.Предложение будет собираться на лету,и писать в бд,ну и выдаваться пользователю.оесть,бот будет определять,что ха предложение,какие виды речи в нем дминируют,выносить процентный коэф. важности слов,относительно предложения и кол-ва их в словаре,и собираться предложение.Но для этого необходимо хотя самое простое,найти все существительные,затем прилагательные,затем выделить ГЛАВНЫЕ слова(подл.,сказуемое).В мыслях - все работает отлично,на практике - нехватает ума,для организации таких алгоритмов,а точнее их выдумки. |
Цитата:
И я совершенно не претендую на прохождение теста Тьюринга. |
классная идея)
мб сделать мега базу по существительным,глаголам и прочим... сделать типа вики,чтобы клиенты сами помогали или исправляли,а так врятли получится чтобы по алгоритму определял часть речи( |
Цитата:
|
Может быть попробовать разбирать предложение по частям? А затем отсеивать невозможные варианты пстановки сущствительного, а уже из оставшихся пытаться выковыривать существительные (методом исключения к примеру). И может заюзать это http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_% D1%81_%D0%BF%D0%BE%D0%B4%D0%BA%D1%80%D0%B5%D0%BF%D 0%BB%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC
------------------------------------------------------------------ Вечно меня маразм навещает на унитазе: а что если попробовать взять всевозможные окончания существительных и от них генерировать слова, а затем уже вести обучение системы. |
нахождение сказуемого в большинстве случаев можно сделать так:
поиск окончания (ть, ти) - 100% глагол если окончание другое, то рядом с ним должен быть глагольный суффикс а Цитата:
|
ть, ти - рать, мать
суффикс а - жгло, летел, лечит Это не решение |
другого варианта нет.. надо чтобы была база корней и по базе в слове корень искать, а потом от этого остальную морфологию
|
Цитата:
Вопрос другой,это все конечно хорошо,но вот переписывать все правила рус.яз на php некошерно будет. Но я все записываю в файлик. И по поводу ЯП на котором это организовывать.Я знаю еще по крайней мере 2 яп,и стараюсь выучить 4,но проще всего на данном этапе,для меня реализация на php. |
Нет, тс, надо поговорить. Принцип работы нашего мозга в помощь
|
Я всегда в аське :)
|
мы в универе на ПРОЛОГе программировали) Примитив, правда.. но тем не менее, в нем содержатся алгоритмы именно ИИ. И копать надо в эту сторону, имхо.
|
кроме словарной базы попробуй использовать шаблоны предложений.
к примеру такие: %сущ% %прил% %глагол% %прил% %сущ% что при переводе в текстовый вид получается так: спгпс чтоб не хранить стопицот миллиардов шаблонов, из шаблонов надо делать регэкспы. такие к примеру: сп?гпс но ещё есть знаки препинания) попробуй ввести несколько типов данных: буква, слог, слово, словосочетание, предложение и т.д. из типов данных строятся более сложные структуры, по которым определяются типы предложений. чем больше шаблонов и информации в представленных типах данных тем "умнее" твой код - т.е. шанс распознания больше. хоть такой подход и прост, он совсем не подходит даже для слабого ИИ, потому что текстовое представление данных (буква=символ) ОЧЕНЬ ограничит твою программу |
ТС, на PHP??????????
Токо WEB-интерфейс не забудь добавить. пиздец, куда ачат катится... |
Цитата:
|
Тема очень интересная, есть успехи?
|
Цитата:
Пока что - читаю книжки про нейронные сети, но уже не так сильно увлечен темой, как раньше. Есть более приоритетный задачи. |
| Время: 06:16 |