GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.10 (37)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Конкурс по написанию эволюционной программы.
Андрей
Сообщений: 3943
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 12:21
Цитата:
Автор: Анатоль
самообучается без учителя
Мысли о "самообучении без учителя" возникают при непонимании, что такое "обучение с учителем", что такое "учитель" и в чём его функция.

Функция учителя очень проста и фундаментальна - учитель показывает примеры того, что есть "правильно". В таком определении "учителя" совершенно понятно, что обучения без учителя не может быть в принципе. Потому что сразу возникает вопрос - обучение чему? Как можно узнать, что нечто "правильно", если эта информация не поступает от какого-либо учителя? Учителя надо понимать в широком смысле, как источника, носителя "правильности". Он может быть врождён, приобретён, выбран, назначен - но он должен быть всенепременно! Без этого понимания "учителя как носителя правильности" в алгоритмах обучения далеко не продвинуться.

Цитата:
Автор: Анатоль
Единственным "путеводителем" является цель
То есть какой-то учитель всё-таки есть.
Q.E.D.

Цитата:
Автор: Анатоль
смысл самообучения - найти способы эффективного достижения этого состояния
Да, и это означает поиск суб-учителей, суб-правильностей. В итоге суб-задач.

P.S. К сожалению, в общенародной терминологии закрепилось это неумное представление о, якобы, возможности обучения без учителя (свадьбы без невесты, похорон без трупа, кока-колы без воды, мышления без интеллекта) но ведь это не значит, что нужно учиться у плохих учителей.
[Ответ][Цитата]
Luarvik.
Сообщений: 17287
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 15:24
Цитата:
Автор: Андрей
Функция учителя очень проста и фундаментальна - учитель показывает примеры того, что есть "правильно".

Это у "простого" (и "простейшего") учителя такая функция.
А у хорошего - другая, прямо противоположная - показывать то, что есть не-правильно.

"Простой" учитель говорит куда идти надо и делает все сам.

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

"Учителя надо понимать в широком смысле, как источника..." "не-правильности".

(Как в боксе: не туда сунешься - морда в лепешку, а куда соваться - смотри по обстоятельствам. Очень быстро доходит. Момент очень тонкий, словами практически не объяснимый, его можно только... почувствовать )

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

Это значит, что нужно учиться у хороших учителей, чтобы не сравнивать "обучение без учителя" с "похоронами без трупа"...
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 20:35
Цитата:
Автор: Андрей
учитель показывает примеры того, что есть "правильно".


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

Цитата:
Как можно узнать, что нечто "правильно", если эта информация не поступает от какого-либо учителя?


Например что солнце, луна и звёзды закреплены на Тверди Небесной?
Ясно как. Прочитать что Учитель в Святом Писании написал.
Иначе - никак.


Цитата:
Учителя надо понимать в широком смысле


Хорошо. Что же Вы не признаёте учителем естественный отбор?
А если признаёте то почему тогда отрицаете эволюцию? Ведь это тогда обучение с учителем.

Цитата:
Да, и это означает поиск суб-учителей, суб-правильностей. В итоге суб-задач.

Ну вот. Есть и в Вашем посте что-то правильное! (Учитель).
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 21:20
Итак, подведём предварительный итог конкретизации задания.

Что нужно для построении саморазвивающейся программы (ИИ)?
В чём задача программы (ИИ)?

0.Игры только не переборные (практически). Т.е. вариантов игры (различных партий) много больше чем может перебрать компутер за данное время на самообучение (пол часа).

1.Задачей программы НЕ является учиться понимать что такое игра, что такое мир, что такое фигура, соперник, ход, правила игры...
Программа изначально умеет совершать ходы по правилам игры (Первый постулат ИИ).

2.Задачей программы НЕ является знать что такое цель игры, зачем она нужна, что такое выигрыш, что такое проигрыш, зачем стремиться к выигрышу, зачем вообще к чему-то стремиться...
Программа изначально стремиться достичь цели, выиграть, не проиграть. (Второй постулат ИИ).
(Программа знает цель игры. Это часть правил игры).
А что должна делать программа после достижения цели (или проигрыша)?
Проанализировать партию, сделать выводы, поправки и начинать новую.

Если пункты 1. и 2. НЕ являются задачей программы (ИИ), то чьи это задачи?
Это задачи творца ИИ (программиста, эволюции...).

3.Задачей ПРОГРАММЫ является научиться эффективно достигать цели (выигрывать).
Вот как она должна этому научиться (сама), какие для этого у неё должны быть инструменты, методы - в этом и есть суть.

Что эволюционирует?
Эвристики.
Т.е. алгоритмы оценки ситуации и выбора целесообразного хода.
Вот на генерации (создании, мутациях, объединении...) эвристик и их отборе и нужно концентрировать внимание.
[Ответ][Цитата]
rrr3
Сообщений: 11857
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 22:03
Цитата:
Автор: Андрей
Мысли о "самообучении без учителя" возникают при непонимании, что такое "обучение с учителем", что такое "учитель" и в чём его функция.
...
Функция учителя очень проста и фундаментальна - учитель показывает примеры того, что есть "правильно".

Правильностей может быть много.
1. Если учитель показывает что есть правильно и при этом вмешивается в "логику" обучаемого - это одно (это то, что чаще всего понимают под учительством).
2. Если учитель отметает все неправильное оставляя только правильности не вмешиваясь в "логику" обучаемого, то это удобнее было бы назвать мутным определением цели. Если же цель определена не мутно, то это уже готовое решение.

p.s. Оказывается об этом уже было написано, я просто повторил. Ну да ладно, повторение мать чья-то...
[Ответ][Цитата]
rrr3
Сообщений: 11857
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 22:19
Цитата:
Автор: Анатоль
Что эволюционирует?
Эвристики.
Т.е. алгоритмы оценки ситуации и выбора целесообразного хода.
Вот на генерации (создании, мутациях, объединении...) эвристик и их отборе и нужно концентрировать внимание.

Все хорошо, только оценить эффективность такой программы (ИИ) за пол часа игры не получится, наверное. Кроме того скорость "решения" одних задач и скорость решения других не может быть пропорциональна "эффективности" ИИ. Эйнштейн, говорят сильно отставал в развитии... в детстве.

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

Плохо сформулировал мысль, но надеюсь все равно интуитивно-понятно.
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 22:38
Цитата:
Автор: rrr3
оценить эффективность такой программы (ИИ) за пол часа игры не получится, наверное.

Пол часа - это на самообучение.
А для тестирования и секунд хватит (и за секунды компутер миллион партий сыграет).

Цитата:

Кроме того было ранее заявлено о "секретности" задания.


Что это значит? Не помню такого.

Цитата:

И определить кто как реализовал без открытого кода будет сложно. А открытый код - дорогого стоит, не каждый захочет открывать...


Да ничего открытый код таких задач не стоит, не фантазируйте.
Но если найдутся такие партизаны, что не захотят открывать свои алгоритмы (код), то их программы могут соревноваться отдельно, просто как специализированные программы, а не как эволюционные.
Поскольку проверить, что они демонстрируют именно способность самообучаться, эволюционировать, а не заложенные в них готовые эвристики, будет невозможно.
(Это касательно программ на конкретную игру (первый этап конкурса), а программы второго этапа (универсальные) вряд ли можно сделать не эволюционными, ведь они не знают наперёд на каких играх будут соревноваться. Да и соревноваться будут на нескольких очень различных играх).
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 22:53
Ранее было сказано, что оцениваться программы будут как по динамике, скорости эволюции, так и по достигнутому потолку.
Как будут проходить эти тесты?

1.Тест по потолку.
Программам дается пол часа на самообучение.
После этого обученные программы соревнуются между собой (играют друг с другом 1000 партий). Кто больше партий выиграл - тот победитель (по потолку).

2.Тест на скорость эволюции.
Начинают играть между собой НЕобученные программы.
Обучаются они в процессе соревнования.
Через каждые 100 сыгранных партий отмечается результат (кто сколько выиграл).
По этим данным строится график (относительной) скорости эволюции программ.
[Ответ][Цитата]
rrr3
Сообщений: 11857
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 23:05
Цитата:
Автор: Анатоль
Пол часа - это на самообучение.

Да ничего открытый код таких задач не стоит, не фантазируйте.

Я видимо не так выразил свою мысль. Но я имел ввиду именно на обучение 30 минут может оказаться очень мало, потому и предлагал дать такую задачу ребенку и посмотреть, что из этого получится.
Если Вам для оценки нужен открытый код, то сама игра уже и не нужна, она подобна тесту Тьюринга (если не ошибаюсь).
(Отвлекусь малость. Есть такая замануха на форекс. Соревнования игроков. Так вот победители этих соревнований - первые претенденты на банкротство в реальной торговле за длительный период времени. Обясняльщиков того что отчего и почему и когда и т.д. - пруд пруди. Реальных игроков - которые могут надежно предсказать, даже среди маркетмейкеров - практически НЕТ)
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 23:18
Цитата:
Автор: rrr3
на обучение 30 минут может оказаться очень мало


Если окажется, что мало - добавим, но для определённости берём 30 минут.
За это время программа может сыграть десятки миллионов партий.
Думаю на таком количестве можно чему-то обучиться.

Цитата:
Если Вам для оценки нужен открытый код

Это не для оценки программы, а для уверенности, что она построена на эволюционных принципах.
Для оценки программы нужна только её игра.

[Ответ][Цитата]
rrr3
Сообщений: 11857
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 23:24
Цитата:
Автор: Анатоль
Это не для оценки программы, а для уверенности, что она построена на эволюционных принципах.
Для оценки программы нужна только её игра.

Мы не слышим друг друга, ну да ладно... (есть идеи реализации "эволюционных принципов", а есть мастерство программиста по оптимизации кода для быстрой работы, а есть моделирование природного ЕИ; есть оценка сказанного, а есть тест Тьюринга)
[Ответ][Цитата]
Fractaler
Сообщений: 2490
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 23:36
Цитата:
Автор: Luarvik_Luarvik
Это у "простого" (и "простейшего") учителя такая функция.
А у хорошего - другая, прямо противоположная - показывать то, что есть не-правильно.

"Простой" учитель говорит куда идти надо и делает все сам.

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

"Учителя надо понимать в широком смысле, как источника..." "не-правильности".

(Как в боксе: не туда сунешься - морда в лепешку, а куда соваться - смотри по обстоятельствам. Очень быстро доходит. Момент очень тонкий, словами практически не объяснимый, его можно только... почувствовать )

Напоминает "пессимистически/оптимистическую" классификации 0,5-водного стакана (полупустой или полуполный), получения твёрдых шедевров (убрать всё лишнее с глыбы или добавлять только нужное) и т.д. и т.п. Модель/картина мира может формироваться 1, 2, или обоими способами (по обстоятельствам).
[Ответ][Цитата]
Fractaler
Сообщений: 2490
На: Конкурс по написанию эволюционной программы.
Добавлено: 09 апр 13 0:00
Цитата:
Автор: Анатоль
Итак, подведём предварительный итог конкретизации задания.
Что нужно для построении саморазвивающейся программы (ИИ)?
В чём задача программы (ИИ)?
0.Игры только не переборные (практически). Т.е. вариантов игры (различных партий) много больше чем может перебрать компутер за данное время на самообучение (пол часа).

Если на каком то шаге у программы не было информации (имеется такая комбинация/состояние автомата, для достижения цели ходить туда то), то о том, выигрышный/проигрышный был очередной шаг в очередной игре, программа получает от учителя-результата ("цели"). Вы не считаете это перебором? Чем перебор в одной игре будет отличаться от перебора, "размазанного" по множеству игр (при обучении)?



Самообучающаяся "доска Гальтона". Цель - найти кратчайший путь. Находит его сама ("без учителя"). Достоинства: не требует питания, навыков программирования.
[Ответ][Цитата]
Luarvik.
Сообщений: 17287
На: Конкурс по написанию эволюционной программы.
Добавлено: 09 апр 13 0:15
Цитата:
Автор: Fractaler
Напоминает "пессимистически/оптимистическую" классификации 0,5-водного стакана...

По форме - да, к этому и стремился, чтобы было максимально похоже. Но если присмотреться - содержимое разное: одно - для тех кого учат, другое - для тех кто учится.
[Ответ][Цитата]
rrr3
Сообщений: 11857
На: Конкурс по написанию эволюционной программы.
Добавлено: 09 апр 13 0:27
Цитата:
Автор: Fractaler


Если на каком то шаге у программы не было информации (имеется такая комбинация/состояние автомата, для достижения цели ходить туда то), то о том, выигрышный/проигрышный был очередной шаг в очередной игре, программа получает от учителя-результата ("цели"). Вы не считаете это перебором? Чем перебор в одной игре будет отличаться от перебора, "размазанного" по множеству игр (при обучении)?



Самообучающаяся "доска Гальтона". Цель - найти кратчайший путь. Находит его сама ("без учителя"). Достоинства: не требует питания, навыков программирования.

Сам перебор - только затравка для разговора (для наглядности, одна из сторон вопроса интуитивно ощущаемая и отличаемая ее от простого алгоритма). На самом деле вопрос в детерминированности (или нет) перебора.
[Ответ][Цитата]
 Стр.10 (37)1  ...  6  7  8  9  [10]  11  12  13  14  ...  37<< < Пред. | След. > >>