Форум Сообщества Аналитиков

×


Проектирование ИИ бота(Прочитано 42916 раз)
Проектирование ИИ бота : 30 Января 2011, 15:12:09
Бот (англ. bot, от англ. robot — робот) — программа, выполняющая автоматически и/или по заданному расписанию какие-либо действия, и имеющая в этом некое сходство с человеком.

Суть вопроса/предложения = давайте спроектируем младенца-бота "программу с ии" начального уровня в Visual Paradigm?

Обучение кого бы то ни было, возможно лишь в случае, если этот кто то хочет учиться, т.е. воспринимать информацию. Если он не хочет , если у него нет потребности в обучении, то научить человека невозможно.

При Попытке обучить чему то программу, обязательно нужно помнить про написанное выше и задать себе вопрос: А ХОЧЕТ ли программа получить знания? Если не хочет, то какого ... тратить усилия на ввод в нее данных?

Когда хотят что то узнать, задают вопрос.

1. Программа должна задавать вопросы - Самообучение.

Если программа не задает их, значит программа не хочет ничего получать. Самообучающаяся программа должна задавать вопросы самостоятельно! Самообучение - это когда вопросы задаются себе, это же следует из самого термина самообучение!

Ребенок в начале своего развития, познает мир именно ломая и разбирая по составу. Дети в нежном возрасте РАЗБИРАЮТ игрушки, а не собирают?
Это потому, что на вопрос "что это такое"? находится ответ только при разбирании предмета на запчасти, от сложного к простому.
Далее, дети с математическими генами, уже не любят разбирать игрушки, они любят собирать игрушки из ЛЕГО, причем копируя какие то известные конструкции (обычно в ЛЕГО приводится схема собирания той или иной конструкции). Дети с гуманитарными генами продолжают разбирать игрушки и конструировать из них новую игрушку (в стиле фантасмогории), а еще лучше, собирать новую игрушку из огромного количества уже разобранных.

Ребенок с математическим типом мышления любит восстанавливать то, что сломал в максимальном приближении.
Ребенок с гуманитарным типом мышления не любит конструировать из ЛЕГО то, что показано в схемах сборки.

Но вернемся к самообучающимся программам. Что нужно, чтобы программа задавала вопрос?
Нужно заложить в нее автоматический алгоритм РАЗБИВАНИЯ входной информации на составляющие. Тогда любое понятие, которое ЕИ получает из ощупывания, просматривания и т.д (А в случае ИИ, лишенного манипуляторов и возможности получать сведения извне и потому нуждающегося в вводе информации конструктором) самообучающаяся система должна РАЗБИТЬ на части.

Как это запрограммировать? Очень просто. Нужно свойства каждого объекта (понятия) делить на 2 сразу после того, как этот объект вы ввели в программу в виде набора определителей этого понятия. Т.е. все численные значения, характеристики понятия, вы по умолчанию делите на 2.

Например: Ввели исходное понятие "день" и определили его как максимально возможную интенсивность освещения в некоторых условных единицах, например 255.
Что делает самообучающийся алгоритм? Он делит 255 на 2 и получает НОВОЕ понятие. СИНТЕЗИРУЕТ его САМОСТОЯТЕЛЬНО!!! Это понятие эквивалентно понятию "половина дня", если не поправить машину, то в ее памяти это понятие так и будет называться "половина дня".
Поэтому, чтобы конкретизировать новое понятие так, чтобы оно соответствовало человеческому, алгоритм должен выдать вопрос: - синтезировано новое понятие "половина дня".
Параметры:
интенсивность освещения 127,5
введите синоним...
вы вводите синонимы: "полдень", "12 часов дня"

т.е. машина сама разродилась новым понятием, без вас, и назвала его правильно. Далее. программа делит на 2 уже 127,5, а также 12 часов дня и получает еще 2 новых понятия, а если бы вы ввели больше синонимов, то и их бы она начала делить.
И так происходит разветвление и увеличение числа синтезированных понятий, пока вам не покажется, что уже достаточно и вы не поставите предел.
Машина быстро расчленит любое сложное понятие до атомов и до квантовой физики, где вы ни бум бум, так что придется поставить пределы и сказать машине:

"ДОСТАТОЧНО горшочек, больше не вари, займись чем-нибудь другим"...

Так можно поставить предел понятием "ночь" и пр.

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

В этом случае, машина опять должна задавать вам вопросы, касательно обозначения синтезированных уже по другому алгоритму понятий. К этому алгоритму нужно приходить с уже имеющейся БД, полученной описанным способом.

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

И вопрос теперь машина должна задавать такой:
- Синтезировано новое понятие "печатающая машинка"
введите синонимы.
вы вводите: "принтер", epson 3102, HP 1510 ...

а меж тем, алгоритм может выдать и такое:
- Синтезировано новое понятие: "смеющийся кирпич"
введите синонимы: ...

Можно, конечно, попытаться быть креативным и представить себе смайлик смеющегося кирпича или карикатуру дорожного знака, но я рекомендую поставить предел в абстракциях, обрубая подобные комбинаторные ветви или просто пропуская данную позицию, оставляя в БД пробел по этому вопросу. Подобная детализация несвоевременна, так скажем, это дело будущего.

Главное не допустить ошибки: не браться за создание БД понятийного множества по второму алгоритму, минуя первую стадию "ребенка"...

Примерно, изложил "начало" программы... Предлагаю обсудить проектирование этого Бота-ЕИ



Re: Проектирование ИИ бота Ответ #1 : 30 Января 2011, 22:46:10
Что, никому не интересно?



Re: Проектирование ИИ бота Ответ #2 : 30 Января 2011, 23:06:34
Minona, уж больно Вы быстры.

Тут читать не перечитать, понять не перепонять. Однако...

1. какова цель проекта? Зачем проектировать бот с искусственным интеллектом?
2. Что такое искусственный интеллект:
3. Что такое сокращение ЕА?
4. Зачем проектировать на Visual Paradigm?

Впрочем тема интересна не тем, что ее следует проектировать на UML, а тем как создать программу, которая бы могла обучаться и самообучаться! Т.е. предел членения определенных понятий она определяла сама. Правда не каждое входное понятие следует подвергать членению, есть понятия неделимые ...



Re: Проектирование ИИ бота Ответ #3 : 01 Февраля 2011, 18:35:50
Тут читать не перечитать, понять не перепонять. Однако...

2. Что такое искусственный интеллект:
3. Что такое сокращение ЕА?
4. Зачем проектировать на Visual Paradigm?
Впрочем тема интересна не тем, что ее следует проектировать на UML, а тем как создать программу, которая бы могла обучаться и самообучаться! Т.е. предел членения определенных понятий она определяла сама. Правда не каждое входное понятие следует подвергать членению, есть понятия неделимые ...

1. какова цель проекта? Зачем проектировать бот с искусственным интеллектом?

Цель проекта: создать "виртуального помощника" напарника и товарища!

2. Что такое ИИ?

Свойство интеллектуальных систем выполнять функции (творческие), которые традиционно считаются прерогативой человека. При этом интеллектуальная система — это техническая или программная система, способная решать задачи, традиционно считающиеся творческими, принадлежащие конкретной предметной области, знания о которой хранятся в памяти такой системы. Структура интеллектуальной системы включает три основных блока — базу знаний, решатель и интеллектуальный интерфейс.

3. Что такое сокращение ЕА?

Естественный интеллект... (очепятка)

4. Зачем проектировать на Visual Paradigm?

Просто это единственное, что я знаю (хоть чуть чуть) + он умеет генерировать начальный код.

=======
Естественно, программа должна самообучаться! Это очень важное условие. К тому же, она должна "с нуля" ничего не знать о себе... НЕ БАЙТА! - Ребенок рождаясь - ничего не знает о себе... Так и эта программа - нужно сделать так, чтобы обучить ее "с нуля" - даже представлению... и самоопределению... ;-)



Re: Проектирование ИИ бота Ответ #4 : 01 Февраля 2011, 18:53:24
Говорить о создании ИИ как такового - сейчас не приходится. Это по сути (и основываясь на "данных из интернет") не возможно. )))
По-этому, нужно идти по другому пути - отталкиваться от сути - с самого начала. Вот рождается ребенок. У него есть мозк. ... Наша задача - научить этого ребенка говорить. Для начала, нужно заложить какие-то минимальные данные и пусть в процессе "общения" он сам к ним доберется.
Вот в чем суть. Начать сначала. Научить его "общаться" - спрашивать и анализировать сказанное.



Re: Проектирование ИИ бота Ответ #5 : 01 Февраля 2011, 19:35:04
http://ru.wikipedia.org/wiki/Искусственный_интеллект
http://www.raai.org/



Re: Проектирование ИИ бота Ответ #6 : 01 Февраля 2011, 21:36:38
1. какова цель проекта? Зачем проектировать бот с искусственным интеллектом?

Цель проекта: создать "виртуального помощника" напарника и товарища!
Простите за занудство, а в чем цель цели проекта? Можно, кстати, подискутировать и о самой цели проекта. Ибо это не цель, это средство. Цель она бинарна, измерима. Как мы проверим, что цель достигнута?
Частично вы ответили:
Цитировать
Научить его "общаться" - спрашивать и анализировать сказанное
Однако давайте определимся с понятиями, что значит "общаться" и "анализировать" сказанное.

Ведь этого можно добиться и без создания искусственного интеллекта..


Цитировать
Естественно, программа должна самообучаться! Это очень важное условие. К тому же, она должна "с нуля" ничего не знать о себе... НЕ БАЙТА! - Ребенок рождаясь - ничего не знает о себе... Так и эта программа - нужно сделать так, чтобы обучить ее "с нуля" - даже представлению... и самоопределению... ;-)
Интересно, откуда Вы знаете, что ребенок ничего не знает о себе? И что значит - знать о себе? Сознавать себя личностью? А что это значит, как происходит это самое осознавание себя личностью?

Цитировать
Свойство интеллектуальных систем выполнять функции (творческие), которые традиционно считаются прерогативой человека.

А что есть творчество? Каков его алгоритм? Насколько мне известно любая современная "интеллектуальная" система - суть квинтэссенции гигантского труда многих людей, которые выделили модель и построили алгоритм. И дальше этого алгоритма эта система шагнуть не может. Да она может быстро проанализировать заложенными в нее методами, формулами, алгоритмами большое количество входной информации, да она может сгенерировать массу альтернативных решений и "взвесить" их на своих заложенных в нее математических весах, даже выбрать одну из них, следуя определенной логике. Неужели вы полагаете, что это творчество?

Может начать с малого и поставить задачу поскромнее? Может Вы более точно и детально опишете, какой результат Вы готовы увидеть, что будет считаться успехом начинания?



Re: Проектирование ИИ бота Ответ #7 : 02 Февраля 2011, 06:06:09
А что есть творчество? Каков его алгоритм? Насколько мне известно любая современная "интеллектуальная" система - суть квинтэссенции гигантского труда многих людей, которые выделили модель и построили алгоритм. И дальше этого алгоритма эта система шагнуть не может. Да она может быстро проанализировать заложенными в нее методами, формулами, алгоритмами большое количество входной информации, да она может сгенерировать массу альтернативных решений и "взвесить" их на своих заложенных в нее математических весах, даже выбрать одну из них, следуя определенной логике. Неужели вы полагаете, что это творчество?

Если бы людям был известен алгоритм "творчества" уверен, завалили бы нас "произведениями" ))
Основная проблема всех систем, именно в этом: любая современная "интеллектуальная" система - суть квинтэссенции гигантского труда многих людей, которые выделили модель и построили алгоритм отсюда, как результат: И дальше этого алгоритма эта система шагнуть не может

Я предлагаю сделать алгоритм, который на первом этапе, будет способен именно "получать" - он должен научиться получать. А потом уже - анализировать!
Правильно получать - вот старт.

Может начать с малого и поставить задачу поскромнее? Может Вы более точно и детально опишете, какой результат Вы готовы увидеть, что будет считаться успехом начинания?

ДА. Для начала, нужно понять, чего собственно мы хотим от системы на первом этапе. Собственно для этого я и здесь )))
Первый этап, думаю будет заключаться в том, чтобы систему научить самостоятельно получать информацию (от кого? Как?)



Re: Проектирование ИИ бота Ответ #8 : 02 Февраля 2011, 18:27:23
ДА. Для начала, нужно понять, чего собственно мы хотим от системы на первом этапе. Собственно для этого я и здесь )))
Для начала давайте определимся чего вы хотите. И вы аналитик и вы проектировщик. А мы (хотя кроме меня никто не поддерживает с вами дискуссию) поможем, если поймем



Re: Проектирование ИИ бота Ответ #9 : 03 Февраля 2011, 06:18:25
Вот мне не понятно, почему никто не поддерживает дискуссию? Не интересно?
На первом этапе - нужно добиться:
0. Запрос на ввод данных в систему.
1. Ввод данных в систему
2. Получение данных и их "обработка"
3. Классификация обработанной информации
4. Упорядочивание классифицированной информации
5. Анализ упорядоченной информации
 5.1 Сохранение полученной информации
6. Поиск (видимо по внутреннему алгоритму) "сходных" понятий и отождествление
7. Запрос на ввод новых данных или объяснение полученных
=============================
Что еще возможно?
проводим аналогии с человеческим мозгом...



Re: Проектирование ИИ бота Ответ #10 : 03 Февраля 2011, 09:58:21
Вот мне не понятно, почему никто не поддерживает дискуссию? Не интересно?
На первом этапе - нужно добиться:
0. Запрос на ввод данных в систему.
Если следовать модели новорожденного, то трудно представить себе запрос от него на ввод данных.

Цитировать
1. Ввод данных в систему
Какие данные мы будем вводить, видимо текстовые, но самоорганизующая система получает сначала информацию, котороую она постепенно научается понимать. Как вы предлагаете это обыгрывать

Цитировать
2. Получение данных и их "обработка"
давайте уточним, что есть обработка и что есть данные в нашем случае?

Цитировать
3. Классификация обработанной информации
классификация какая? по заданным классам эквивалентности, с расширением классов, какие подходы и алгоритмы предлагаются?
Цитировать
4. Упорядочивание классифицированной информации
Что понимается под упорядочиванием?
Цитировать
5. Анализ упорядоченной информации
Что понимается под анализом?
 
Цитировать
проводим аналогии с человеческим мозгом...
включайте вербальные и невербальные каналы восприятия, эмоции, инстинкты и прочее



Re: Проектирование ИИ бота Ответ #11 : 03 Февраля 2011, 18:17:19
Вот мне не понятно, почему никто не поддерживает дискуссию? Не интересно?
На первом этапе - нужно добиться:
0. Запрос на ввод данных в систему.
1. Ввод данных в систему
2. Получение данных и их "обработка"
3. Классификация обработанной информации
4. Упорядочивание классифицированной информации
5. Анализ упорядоченной информации
 5.1 Сохранение полученной информации
6. Поиск (видимо по внутреннему алгоритму) "сходных" понятий и отождествление
7. Запрос на ввод новых данных или объяснение полученных
=============================
Что еще возможно?
проводим аналогии с человеческим мозгом...

Если проводить аналогии с человеческим мозгом, то лучше заняться нейросетями, а не последовательными алгоритмами.

"Голова - предмет тёмный и исследованию не подлежит."
greesha.ru

Реальность - это убийство прекрасной теории бандой мерзких фактов. (Роберт Гласс)



Re: Проектирование ИИ бота Ответ #12 : 06 Февраля 2011, 07:36:02
Galogen, Как Вы лично классифицируете информацию у себя в голове? ;-)
greesha, причем тут нейросети? Точнее сказать, к ним мы должны подвести робота - чтобы он сам начал их изучать. Это получится гораздо лучше у него, чем у меня, у Вас, или любого другого индивида...



Re: Проектирование ИИ бота Ответ #13 : 06 Февраля 2011, 16:32:28
Galogen, Как Вы лично классифицируете информацию у себя в голове? ;-)
А причем тут я? Как это происходит? Да всегда по-разному. И зависит от разных моментов, которые зачастую и формализовать-то не возможно. Однако мы ведь не мою модель пытаемся строить, а модель некоего ИИ-бота.

А я пока не очень понимаю, что и зачем вы хотите получить.



Re: Проектирование ИИ бота Ответ #14 : 06 Февраля 2011, 23:11:10
Зачем нужен ИИ-бот?
Кто и какой полезный результат будет от него получать?




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19