![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Анализ текста - общение с компом
Arbin © (2002-10-02 11:02:00)
Никто не пробовал писать интеллектуальный анализ текста под Делфи? То есть научить составлять разумную фразу на основании обработанной информации (например, реализация беседы человека и компа).
--------------------------------------------------------------------------------
Asteroid (2003-07-11 04:10:00) [21]
> K.o.Z © (10.07.03 23:52)
Не очеловечить, а лишь преобразовать человеческое мышление в машинное. Причем не все мышление, а лишь его малую (хотя и немаловажную) часть - речь. Никакой эволюцией, и уж тем более Матрицей, здесь и не пахнет. Это "всего лишь" написать алгоритм и предоставить данные для его работы.
K.o.Z (2003-07-10 23:52:00) [22]
а не выйдет ли тоже самое, что в Матрице?? Вы решили очеловечить железяку, что само собой явл. очень тяжелым процессом, схожим с эволюцией
а вот самообучение это реальность - как-то читал на компьюленте.ру, что учёные сделали робота с крыльями и он через опред. время самостоятельно научился летать перепробовав множество вариантов управления своими крыльями - "выучился на ошибка" ....
Fenik (2003-07-10 19:54:00) [23]
> west © (10.07.03 16:29)
Базар закончился в феврале. А вот вы как-то откопали его :))
west (2003-07-10 16:29:00) [24]
Народ кончайте пустой базар вы только человека запутали а толку маловато
Nikolas van rain (2003-02-10 00:54:00) [25]
Наконец наткнулся на нормальных людей, Пиплы! я жуткил ламер, и в Делфих и в ИИ, но идей очень много.. Вот бы кто помог разобратся с сетями.. а то я скачивал пару продуктов.. и наших и забугорны.. но там хрен поймешь чего.. у наших тест на тесте, без каких то обозначений. У тех куча леваго базара..
Буду длагодарен если кто то откликнется и еще лучше скинет простенький примечик реализации однослойной сети, мне просто не от чего отталкнутся..
Заранее благодарен!
Mihey (2003-01-14 22:24:00) [26]
У меня уже всё готово. Очень простой пример. Качайте отсюдова:
http://www.hot.ee/mvps2/files/Obsiralka.zip
А вообще, сейчас я делаю другой проект с анализом слов - там уже настоящая речь. Однако что-либо серьёзное делать - так это народ нужен.
Урб (2003-01-14 15:43:00) [27]
+ еще есть такая запарка с сохранением контекста...
Дмитрий К.К. (2003-01-14 14:32:00) [28]
Хотя с другой стороны... Не слишком ли мы много требуем от железяки? Вспомните людоедку Эллочку :)
Pardus (2003-01-12 15:06:00) [29]
Генерировать, а тем более распознавать фразу на естественном языке нейронными сетями не удасться RTFM! (Как бы вы или кто другой не старался).
Есть проработанная теория в области ИИ и ЭС построения диалоговых компонет (решают именно вашу задачу).
Для анализа следующие этапы:
(Входная Фраза) - Морфологический анализ - Синтаксический анализ - Семантический анализ - (Внутреннее представление)
Для синтеза всё в обратном порядке.
Но это ОЧЕНЬ серьёзная программа получится. Кроме того, с русским языком у неё возникнут большие проблемы (из-за богатого словообразования). Для таких задач предпочтительнее взять какой-нибудь "бедный" язык вроде английского...
Asteroid (2003-01-11 22:12:00) [30]
> TButton © (11.01.03 19:54)
Неплохо было бы еще и систему аргументации и смены темы...но об этом позже.
Я видел новость про то, что русские программисты разработали типа базы данных новостей на нейросетях. Как раз там и использовался метод анализа сочетаний слов. Вроде им даже удалось сделать ее независящей от языка новостей.
Только как создавать из слов/фраз предложения, да еще и "в кассу"? Можно попробовать повозиться с нейронной сетью...слоев этак с пять...тот же мехянизм анализа сочетаний фраз в предложении в рамках одной темы...еще больше исходная база текстов...теоретически может сработать...тормознуто, очень сложно, но если сработает - будет более, чем здорово!
Список - проблемы с добавлением/удалением новых слов/фраз. У нейросети с этим, имхо, попроще.
В общем, думать надо, думать долго и упорно; а потом так же долго и упорно писать + искать исходные тексты и пр...работа не из простых даже для команды специалистов. Или надо искать другие пути...
TButton (2003-01-11 19:54:00) [31]
2Asteroid
База фактов ето правильно, загнать в него пару енциклопедий, школьный курс литературы... да и вообще школьный курс всего и пару раз в неделю новости ему давать, да и доступ к метеорологическим серверам, чтоб погоду знал.
Контекст фразы определяется по контексту слов которые ее составляют, например если основной контекст принадлежит теме Х то и ответ будет построен из набора слова темы Х.
Asteroid (2003-01-11 18:29:00) [32]
Можно поступить так:
1) Начальное накопление знаний из огромного массива текстов не-разговоров:
Анализировать массив на вхождения слов и словосочетаний, записывать частоту/число вхождений.
Редко встречающиеся слова/фразы выкидывать (они специальные, с опечатками или не сочетаются). Затем расставить фразы по темам. Возможно придется вручную обозначить темы, затем уже под них подгонять слова/выражения
Т.е.:
если некая фраза часто встречается только в теме Т, она встретилась в новом тексте -> новые фразы из нового текста добавлять в список фраз Т.
2) переход к разговору
Обязательно наличие БОЛЬШОГО контекста, понятий "та/тот/то", "эта/этот/это", "он/она/оно" и прочих местоимений.
Возможно, нужен пополняемый словарь начальных фраз, типа "привет", "пирвет", "здарово", "как жисть?" и пр. вариаций. Неэффективно, но ничего другого пока нет.
Обязательно: прога должна уметь отвечать на собственные вопросы, распознавать длинные предложения. Должна быть большая база данных фактов (типа: гора - Эверест; Джомолунгма=Эверест) - или поиск по инету.
Лучше делать для одного языка (русского), поскольку в английском до фига заморочек наподобие артиклей - и уже фиг прога разберет, когда нужно использовать какой артикль.
Нейросеть сложно и долго, но эффективно.
Список - слишком много места займет (с учетом того, что некоторые фразы входят во много тем сразу)
TButton (2003-01-10 15:33:00) [33]
требо сделать движок, способный разбивать фразу на составляющие категоризировать, анализировать их и соответственно реагировать, либо не реагировать (т.е. пусть лучши по тупит чем ответит не в тему). Потом етот движок подсаживается на чат либо на эмуляцию чата и начинает поглощать инфу, анализирует разговор других юзеров, учится общаться. строить движок лучше на сети, хотя если никуда не спешишь, можно и на словаре (емуляция ввода с клавиатуры), а лучше конечно на сети расщиреной словарем, в котором каждому слову присвоено условное смысловое значение и список категорий (опять же условных). И потом чтоб общение с машиной больше походило на общение с человеком ИИ следует прежде всего персоонализировать, т.е. ИИ должен иметь четкое представление о том кто он есть такое (имя, рост, пол, вес, возраст, цвет глаз, род занятий). И конечно всем робо-чатерам не хватает "зашумления" речи, все они говорят слишком правильно, надо добавить опечатки, а еще лучше жаргон и сокращения.
Вот... в принципе если развить мысль в нужном направлении может получиться что-нить стоящее...
Alek Aaz (2002-12-13 06:55:00) [34]
ИМХО кажется нужно скрестить оба метода. И словарный и Сети. Вообще можно попробовать.
Bones (2002-12-13 06:15:00) [35]
На самом деле есть множество программ распознавающих человеческие фразы. Но насколько мне известно - даже ученые не могут реализовать настоящей "беседы" человека с компом. Если и делать такую пагу, то только на основе ее самообучения, т.е. накопления опыта. Ведь люди общаются друг с другом благодаря их жизненому опыту и словарному запасу. И вообще, по-моему, тут еще надо хорошо знать психологию человека. А так я бы может чем-нибуди и помог бы. Пишите!
Дмитрий К.К. (2002-12-12 20:14:00) [36]
Пора бы веточку перенести в раздел "Потрепаться". Потому что идут пустые разговоры.
Silentor (2002-12-12 19:36:00) [37]
Сложность реализации распознавания текста зависит и от языка общения. Грамматика того же русского VS английского (подлежащее+ сказуемое+...) сложнее.
Ru (2002-12-11 15:32:00) [38]
Проблема: компьютер должен вести разумный диалог с юзером.
Решение:
1. нейросеть
достоинства: обучаемость
недостаток: сложность
2. словарь
достоинства: простота реализации
недостаток: не обучается
Берем реализацию 2.
Проблема: составление словаря.
Решение:
1. разделить словарь по предметным областям
2. плюнуть на это дело
Берем реализацию 2.1
Проблема: разделение предметных областей
Решение:
1. жесткое ограничение проблем
2. возможность расширения
MRB_SPB (2002-12-11 10:22:00) [39]
Впринципи если решать задачу для конкретной прикладной области она переходит из разряда искуственного интелекта в разряд базы знаний и довольно несложно реализуется многими алгоритмами, но если имеется ввиду более широкие понятия, то тут тебе понадобится маленькое НИИ и 10 лет напряжённой работы.
Art (2002-12-10 23:07:00) [40]
4Arbin
Можно твою задачу решить при помощи теории черного ящика - т.е. человек это черный ящик, мы лишь наблюдаем как он реагирует на внешние события, запоминаем и когда с компом происходят такие же события он вываливает то что делал на его месте человек. Но это беспантовый алгоритм но зато легко реализуется и создает впечатление внешнее. В нейроные сети лучше не лезь все равно они не эффективны (я так считаю, сперва программить а потом еще и обучать ...) хотя на их основе возможно создание механических систем (например ракета которая находит самолет среди ловушек опираясь лишь на то что у него крылья торчать должны).