![]() |
![]() |
St@senk@ |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 48 Пол: Мужской Реальное имя: Максим Репутация: ![]() ![]() ![]() |
Здравствуйте, одна из тем форума помогла мне решиться и создать эту тему.
Предлагаю всем вместе, написать Искусственного Собеседника. Я знаю, что такой программы пока нет, поэтому предлагаю сначала написать программу, которая будет разговаривать на уровне 3-4 летнего ребенка. Написать эту программу – мечта всей моей жизни, поэтому я надеюсь, что эту идею кто-то поддержит. Большое спасибо, что прочитали это сообщение. -------------------- Три пути ведут к знанию: путь размышления - это путь самый благородный, путь подражания - это путь самый легкий и путь опыта - это путь самый горький.
Конфуций |
![]() ![]() |
St@senk@ |
![]()
Сообщение
#2
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 48 Пол: Мужской Реальное имя: Максим Репутация: ![]() ![]() ![]() |
Артемий2 , согласен, FPC отлично нам подойдет.
Вот моя идея: Надо каким-то образом заставить компьютер рассуждать. Я попытался проанализировать ход моих мыслей при ответе на некоторые простые вопросы. И как мне показалось, я, когда мне говорят фразу, я воссоздаю картинку, которую мне описывают и дальше сравниваю её с тем, что у меня записано в памяти. Поэтому я предлагаю сделать граф существительных, и к каждому существительному будет идти ребро, весом которого является набор характеристик. (Заяц - длинные, белые, смешные...->уши) Далее идет лингвистический анализ предложения (как его делать идей нет, но почитаю кинутые статейки, может быть, идейки появятся). Дальше мы получаем запрос, что мы делаем мы берем главное существительное и смотрим какие слова к нему относятся на втором уровне, и выделяем подграф, в котором верно: Любое ребро этого графа удовлетворяет следующему утверждению: либо один из параметров ребра содержится в предложении, либо хотя бы одна из вершин этого ребра содержится в предложении. Дальше мы анализируем этот граф на "хорошесть". Например, если граф не связный, то он точно плохой, и если в характеристиках его ребер присутствует "Не бывает" или что-то синонимичное, то граф тоже плохой, а если нет, то граф хороший. Далее мы рассматриваем два случая, хорош ли граф или нет, если хорош, тогда мы составляем ответное предложение (как его составлять у меня пока идеи только смутные) А если нет, то мы на том ребре, на котором написано, не бывает, мы смотрим на эмоцию и выражаем её, правда можно добавить смещение, то есть ввести просто общую эмоцию нашего аппарата и дальше если, например аппарат доволен, а эмоция стоит "бред", то он ответить "Да вы что, я раньше о таком не слушал" или что-то в этом духе, а если аппарат зол, тогда он ответит что-то вроде "не вешайте мне лапшу на уши". Причем обработку эмоций придется делать и на хорошем графе и сумма эмоций всех ребер графа будет влиять общую эмоцию нашего аппарата. Дальше, когда ответ подготовлен должен произойти обратный лингвистический анализ, который из "предпосылок" предложения сконструирует предложение и выдаст его пользователю. Так же нам надо выбирать тему разговора и заносить в память для того, чтобы аппарат понимал, о чем идет речь, если в середине разговора с ним сказать "И конечно развитие этого дела требует больших усилий". Потому что по модели, которую я описал до этого аппарат примет это предложение за бессмысленное. Ну, вот вкратце идея моего алгоритма. Сообщение отредактировано: St@senk@ - 24.03.2007 14:15 -------------------- Три пути ведут к знанию: путь размышления - это путь самый благородный, путь подражания - это путь самый легкий и путь опыта - это путь самый горький.
Конфуций |
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 6:56 |