All streams
Search
Write a publication
Pull to refresh
22
0

AI preacher

Send message
Все это красиво в теории, но на практике не работает.

Верю. Но пока не понимаю почему… Может мы немного о разном?

Я имею ввиду, что для движения гуманоида, будь там 17 или 67 степеней свободы переход от модели к движению должен проходить через понятия даже не идти/бежать прямо/налево/направо и уж тем более не через прямое управление отдельными мышцами, а через «мы здесь, надо — туда, чем быстрее, тем лучше!». Не должно быть прямой связи раздражитель-действие — это действительно слишком сложно. Раздражители должны актуализировать модель, которая должна достраивать действия (в весьма высоком уровне абстракции), как часть модели, а ДРУГАЯ система должна исполнять обратный переход — от абстракции к конкретным мышцам…

Эти системы не обязаны в первом приближении учится в виде единой системы по методу того же RL — вовсе нет. Они вполне могут быть предобучены отдельно или даже запрограммированы в лоб. Вполне вероятно, что использовать обучение нужно только там, где без этого никак… Хотя это сложная тема.
Основная проблема в том, что наличие бэкдора снижает стойкость шифрования по определению. К нему могут получить доступ третьи лица, не относящиеся к спецслужбам (в результате утечки/слива или грамотного анализа), и тогда скомпрометированной станет вся система шифрования, а не один ключ, который можно заменить… Причем не факт, что о доступе третьих лиц (например спецслужб, но других ;) ) станет известно хоть сколько-нибудь оперативно.

Беда всех подобных кейсов со спецслужбами, что они считают себя самыми умными, а это далеко не всегда так. Можно быть честным гражданином и скрепя сердцем соглашаться с тем, что кто надо имеет доступ к чему-то такому, что составляет личную либо коммерческую (а то и страшно подумать — государственную!) тайну. Но вот доверия к их непогрешимости, а главное — компетентности что-то нет… В том числе из-за вот таких вот казусов. (
Ну… Собственно об этом и статья. ;) Фактически я разделяю ваши выводы.

Но только это не совсем алгоритмы… Хотя — смотря что понимать под алгоритмами!
Ну да, я понимаю… Собственно тут не т противоречия — я не говорю, что знаю как построить ИИ, я говорю лишь о своем понимании, что такое интеллект вообще. А вы не отрицаете этого понимания, но говорите, что пока не понятно, как его на практике реализовать… Но! Есть нюансы. ;)

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

Т.е. если в ситуации миллиард возможных путей, значит вы недостаточно ее конкретизировали. В интеллектуальной системе бесполезные ходы/варианты не отбрасываются — их просто нет…

В случае с магазином. Ситуация для неокортекса не выглядит как «какой из 700 мышц мне шевельнуть в конкретный момент времени?»! Ситуация «мне нужно в магазин, их тут несколько, но по ряду показателей 76% за тот, что у дома, погнали!». Для двигательной системы вариантов нет вообще — задача(я бы даже сказал план действий) поставлена, опыт перемещения в пространстве наработан — активируем мышцы в нужной последовательности…

Еще раз: система не ищет ответ на вопрос. Система пытается классифицировать ситуацию таким образом, что бы ответ как минимум был! Ну или их было несколько и там возможны варианты с RL и SP.
Сразу скажу, что для меня на текущий момент ваши комментарии выглядят ценнее, чем моя статья, особенно учитывая количество пруфов. ;) Так что я просто провоцирую вас развивать мысль дальше, а не «упорствую в своих заблуждениях»!

Первое, что приходит на ум — некоторое противоречие. Сначала вы сказали, что сеть не умеет делать выбор из большого числа возможных вариантов, теперь — что умеет, но варианты задает разработчик. Хотя признаете что то самое «ранжирование по полезности» таки возможно за счет обучения с подкреплением. ;)

Второе. Счас будет сложная мысль (сложная для меня — в плане сформулировать сложно): проблема не найти новый ответ. Проблема так классифицировать вопрос/ситуацию/проблему, что бы ответ оказался очевиден! ;) Т.е. вы говорите, что сеть не может найти ответ, которого не было (нечто новое). Ок — пусть не может. А я говорю — человек тоже не может! Что бы найти ответ ему нужно свести ситуацию/вопрос к чему-то, что ответ имеет. Т.е. классифицировать/опознать/найти место в модели. Этому помогает высокий уровень обобщения (читай свертки), когда ситуации не имеющие в первом приближении ничего общего с опытом, позволяют таки найти это общее при все большем и большем повышении абстракции. Есть такая задача про лампочки: есть три «лампочки Ильича» в подвале, есть три выключателя наверху. Спускаться в подвал и подниматься обратно более одного раза — лень. Как выяснить какой выключатель от какой лампочки за один раз? ;) Решение этой задачи не требует чего-то нового, но…

Третье. Да почему же вы не хотите применить логику сверточных сетей к другим областям той же науки! ;) Почему вы считаете, что должен быть прямой путь от «спастись от хищника» до прямого управления 700 мышцами? Вы же свернули чертову уйму сигналов в «спастись от хищника», так сверните 700 мышц в «бежать»! В моем понимании неокортекс не взаимодействует ни с зрительными нейронами (где-то мне попадалась информация, что непосредственно в глазу происходит довольно приличная часть свертки и на вход мозгу уже подается далеко не bitmap), ни с двигательными мышцами! Неокортекс дает команду бежать (а я бы пошел дальше и сказал, что он просто создает модель в которой «я бегу» — данность), а «старый мозг» уже занимается реализацией. И так оно с первых лет жизни:
  • неокортекс: вот в том направлении что-то интересное! Нам туда.
  • старый (как он там? Рептильный?): ок, идем/ползем/хаотично двигаем всем-чем-можем, авось получится (в зависимости от уровня развития).


Статью я читал, но… Нужно еще читать. Вдумчиво. Пока мне кажется, что у Дипмайнда хорошо получается именно в силу комбинации подходов. Т.е. чуть ли не все уже есть, нужно немного изменить подход и собрать все вместе! Но это без сомнения просто следствие моей недостаточной компетенции в вопросе… Однако иногда это может помочь взглянуть на проблему с неожиданной стороны.
Во-первых, для задач распознавания и классификации мы тоже можем использовать предобученные сети — чем мы хуже природы" ;)
С анализом процессов (то есть задач, связанных со временем) совсем беда…
Потому, что мы пытаемся взять со входа сигналы и анализировать их в развертке по времени! Это та же ошибка, что была до сверточных сетей в распознавании образов.

Нужно все, что приходит извне свернуть в модель. Модель, где не наборы пикселей и даже не объекты в кадре, а где иерархия процессов в континуме пространство-время. И их уже подавать на вход сети, принимающей решения. Цель которой — полная, непротиворечивая и т.д. ;)
Ограниченный мир, с четко прописанными правилами, все основано на бесконечном анализе партий.


Только ограниченный мир можно описать полностью… Однако в ограниченном мире Го существуют определенные понятия, которые весьма сложно даже сформулировать! Люди играли в эту игру тысячелетиями, что бы выделить и сформулировать эти понятия. По заверениям опытных игроков — АльфаЗеро пришел к ним же, а так же похоже еще к нескольким, которые среди людей пока не имеют даже названий (с ходу не нашел пруфов — найду, кину).
Вот… Тут есть нюансы из-за которых все плохо. ;)

Даже в вашем примере про магазин. Это для вас хорошо, что магазинов много. А для слабенькой модели/плохо обученной сети (ребенка, или человека, с особенностями развития, например) — это будет проблемой.

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

Вы же сами всегда говорите, что большое количество вариантов — проблема! ;) Но при этом ставите (ну или не вы ставите, а Soft-Acto-Critic) их «во главу угла».

Идея в том, что вариантов в идеале должно быть столько, что бы выбор из них был не сложен. Что бы задача отсеивания лишних не была проблемой.
Я сейчас попробую как-то свормулировать, а вы следите за руками за мыслью: обычная сверточная сеть на вход получает картинку а на выход несколько возможных паттернов (что бы это могло быть) с определенной вероятностью, так? Можно считать, что сеть делает выбор что изображено на картинке?

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

Я не знаю как это сделать, я знаю, куда мне было бы интересно, если бы развитие завернуло!
Не могу сказать, что я именно это имел ввиду, но…

Ведь вот нейронная сеть. Ее устройство, с точки зрения концепции — понятно. Однако, обученная нейронная сеть со всеми своими весами выдает результат, который крайне сложно объяснить исходя только лишь из устройства…

Т.е. тут скорее дуализм некий — принципы понятны, но именно принципы. Но накопленный опыт (будь то веса нейронов или еще каким-то образом организованная «модель») — он не… Ну как минимум он сформирован самостоятельно, а не под действием заранее заложенных инструкций. Поэтому — не тривиален…

Мне просто не очень нравятся термины «не понятен» и «не предсказуем». ;) Больше «не предопределен» или что-то вроде.
Кстати, это интересно! Прогнать человеческую музыку через нейронную сеть, с целью разработать для нее систему нотификации… И если на выходе получим те же ноты, то это не совсем будет значить, что изобретатели нот были гениями, а возможно, что наша музыка безнадежно застряла в прокрустовом ложе «нотной грамоты»…
Доказать? ;) Да я даже спорить с этим не буду! Разве что мне не нравится понятие «скриптовый» применительно к разуму, да и то, только потому, что он работает иначе.

Я же сказал, что не верю в свободу выбора.
Avia мне не особенно интересна, т.к. здесь вы где-то правы — она обучалась на примере человеческого искусства и это не то.

Пример создания по вашему образцу: от мета языка google translate до стратегий игры в го, когда система не училась играть с людьми, а только сама с собой.

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

Который показывал бы разницу между созданием и воссозданием.

Тогда и поспорим! ;)
Я не верю в свободу выбора! ;) Свобода от чего, в чем? Выбор определяется обстоятельствами и опытом.
Как бы оно могло быть: «Огромный жизненный опыт» — это выходы «анализатора процессов». Используя сверточные сети весь опыт разложится на счетное число довольно сильно абстрактных кейсов, применимость которых с данной ситуации определяется поданными на вход «признаками процесса», которые в свою очередь извлекла другая сверточная сеть…
Способность «творить» в данном определении — это способность воссоздавать элементы модели в физическом воплощении. Причем это могут быть не только и не столько существующие в природе в чистом виде… Ну скажем так — «формы», сколько… Вещи более абстрактные, выраженные через форму/цвет/звук/слово и тп.

Я думаю, что творить ИИ начнет даже раньше, чем полноценно мыслить. Кто-то считает, что уже начал
Как раз тут и кроется проблема, которую я пытаюсь объяснить. Вы подразумеваете, что построенная модель как-то автоматически даст ответ какой путь будет оптимальным.
Не совсем. Она не даст ответ. Она вообще ответ не дает. Она просто есть. Она — строится. Просто сам по себе вопрос — это нестыковка в модели. Ее надо устранить. Скорее всего определенно комбинаторным путем, но сугубо из подходящих элементов.
Модель мира не может ответить на вопрос «как оптимально двигаться, чтобы не врезаться в стены?».
Чтобы не врезаться в стены — надо просто не двигаться. Это не так работает. В модели есть робот. Он находится в точке А. В модели есть карта пространства. В модели есть результат — обход карты за конечное время. Обход — это очевидно движение. Образ движения в модели тоже есть…

Хорошо, я понимаю о чем вы. Но вот скажите: есть механизм предположений? Есть же бэктрекинг, есть рекурентные сети… Я согласен, что это вероятно не нейронная сеть в чистом виде, но ведь по большому счету и сверточная сеть — сетью является только условно! Это по факту три «сети», т.к. каждый слой натаскивается на свои задачи…
И вот это самое удивительное в разуме — как он из огромного жизненного опыта выделяет эти несколько наиболее подходящих вещей?
Так-то да — это удивительно. Но механизмы поиска решений — это первое, что начали строить в ИИ! И тот факт, что это не нейронная сеть, еще не значит, что это не работает!
Знаете, чего я понять не могу… Вы ведь так хорошо в теме нейронных сетей, откуда вот это вот:
«а входе мозга электрические сигналы от 100 млрд. нервных клеток. Как из них выделить эти информационные элементы?»
Ведь именно этим занимается сверточная нейронная сеть — выделяет эти информационные элементы. В чем проблема то?

Вот смотрите — первый этап: берем растровую картинку — скармливаем сети. Пытаемся заставить находить котиков. Получается, но так себе.

Этап второй: берем три сети друг за другом. Первая ищет примитивы, вторая элементы, третья объекты. Выход первой на вход второй, выход второй на вход третьей. Стало сильно лучше — котиков находит уже почти как человек.

Наверное не ошибусь, если скажу, что можно как обобщать котиков с собачками до зверушек, так и различать пару тройку разных котиков.

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

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity