Комментарии 179
Задача мозга — координировать жизненные процессы с целью выживания в окружающей среде средствами, которыми располагает тот или иной организм. Закусывая же пирожными, пытаться понять его очевидно простые алгоритмы бесперспективно. За это «нужно лишать научных степеней», ибо это «подрывает боевой дух» улитки.

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


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


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


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


Можно взять для экспериментов, ну скажем Венеру, заселить туда наноботов, которые будут конкурировать за энергию, и подождать, поиграть так сказать в Бога (глядя на РНК у меня, например, складывается подозрение, что мы все на Земле получились именно так, но наши создатели до нас похоже не дожили). Но вот вопрос — ЗАЧЕМ ЭТО? Кроме как "жить" и "умирать" эти боты ничего больше уметь не будут (полезного нам).


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

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

Если вам надо достать что-то с высокой полки, то следует взять стремянку, а не строить ракету. Но если цель — добраться до Луны, то тысячи и миллионы стремянок (ака «частные решения частных задач частными архитектурами») бесполезны.

Маленькая подзадача. Ей не нужна биология для решения
«Маленькие» и частные задачи не конечная цель. Чтобы долететь до Луны, нужно начинать с постройки маленьких ракет, даже если уже есть высокие и удобные стремянки.
На мой взгляд всё наоборот, и маленькими задачами являются занятия постройки стремянок (пусть даже с превосходным финансированием), они всего лишь временный период с частным (хоть сейчас и с широким и иногда эффективным) применением.
Любая аналогия есть ложь.
В жизни бывает так, что череда частных решений в итоге приводит к общей теории. Я бы сказал что обычно так и бывает, ибо тяжело строить сразу общую теорию, если не на что опереться.
Пока что за более полвека эти частные решения ни во что значимое не сложились — как не было, так и нет ни теории мозга, ни тем более теории сознания. До искуственного разума по прежнему как пешком до Луны. И к сожалению, никто практически общей теорией и не занимается, так как всё финансирование идёт на частные решения бизнес задач.

Просто чтобы решать любую задачу нужно иметь ее четкую постановку. До Луны — это задача. А искусственный разум — это что? Ответы на все вопросы? Готово — google. Бешеные затраты на обработку чего-то? Готово — bitcoin. Распознавание "как у человека" и даже лучше? Готово — сверточные нейросети. Быть суперполиглотом — машина Больцмана. Играть в Go — AlphaGo. И т.д.


Если не будет постановки в подобном ключе, то известно, что в итоге получится: 42. Мне кажется, что топикстартер имеет как раз где-то такой вектор исследований. И будет обидно когда получится именно 42.


Я уже делал такое. ИНС+ГА как раз. 5 лет потратил. И мне было больно и обидно, но ровно до того момента, пока не была сформулирована четкая постановка задачи. Ответ всегда в ней, а не в идеях. Идеи — средство, а не цель. Запилить нейроны как в голове — это идея. Без четкой задачи — пустая трата времени. Уж поверьте ;)


P.S. А финансирование — это вообще ничего не гарантирует (боюсь, что даже ничего не значит). Оно нужно для кластера, это да. Но не определит пути исследований. Пути определит постановка задачи. И да, тест Тьюринга на эту роль не годится.

Ок, как решается задача Reinforcement Learning?
Вот список сред:
github.com/openai/gym/wiki/Table-of-environments
Нужен единый алгоритм, который… Допустим, у него на train выборке одна половина сред, на test выборке другая, и надо научиться проходить тестовые среды хотя бы на уровне человека. То есть, скажем, за десять партий в каждую из игр выбивать не меньше очков, чем человек, который эту игру видит в первый раз

Единым алгоритмом — долго. Дорого. Как именно — не знаю. А вот по отдельности — просто, дешево, и понятно как.

Судя по моим данным, сейчас такого решения просто нет. Либо есть как чистая теория, требующая нереалистичного числа вычислений. А мотивация сделать такую систему есть.
Так что… Вот чёткая цель, и всё ещё не готово

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

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

Взрослого… Да, придётся как-то опыт добывать, но его можно добывать в виртуальной реальности. Ну и… Если ИИ будет обучаться, скажем, 3 года реального времени, это не кажется плохой ценой. Если есть какая-то уверенность, что он реально обучится и будет работать именно так, как надо

Даже такого решения пока что нет

Лично я думаю, что ИИ — это база данных моделей наблюдаемого мира. Ассоциативный поиск этих моделей в базе похож на решение вашей задачи. Смешение результатов ассоциативной машиной еще больше похоже. Но начинать нужно все равно с моделей. Чем их больше, тем сильнее ИИ. Но он все равно не будет сильным. Человек кроме этих задач еще вагон решает от дыхания и равновесия до языка. Вот язык — это и есть определение сильного ИИ. До этого как до небес.

Что такое ИИ — это вопрос определения.
Есть люди, занимающиеся разработкой ИИ именно в смысле «машины результатов». Как яндекс-навигатор: в неё заряжаешь цель, а она последовательность поворотов выдаёт. А так как маршрут слишком огромный и из слишком мелких шагов и будет много перестраиваться по ходу дела, то ИИ выдаёт его сразу на исполнительные органы.

База прогнозных моделей реальности плюс механика, позволяющая на лету строить свои модели из алгоритмически полного пространства, плюс планировщик — это уже был бы ИИ в смысле «машины результатов». Получится ли он «сильным» — вопрос терминологии. Если под «сильным» мы подразумеваем «похож на человека» или «обладает квалиа», то наверное, нет. Если же подразумеваем «может достигать любых корректно поставленных целей (в терминах максимизации наград, например), со скоростью/экономностью как у человека», то не вижу причин, почему нет. А вы видите?

Да, здесь есть волшебные слова про умение строить модели, а нынешний ML… Некоторые задачи решать не умеет. Хотя они имеют решение.

Мое понимание сильного ИИ от wiki не отличается. Ключевым, как я написал выше, считаю наличие языка, как инструмента сохранения и передачи знений. Люди от животных по сути только этим и отличаются.

Системы связи есть у многих видов. Чем так примечателен человеческий язык?
И почему именно язык с такими особенностями является необходимым для решения прикладных задач? Допустим, мы делаем ИИ, где на всех агентов единая синхронизированная память, то есть связь реализована не через язык. Люди так не могут. Какие задачи, уверенно решаемые человечеством/отдельным человеком такой ИИ принципиально не сможет решить?

На планете инженерить что-то пока умеем только мы. Причем сначала нас нужно учить. Для этого нужен язык. У машин он вполне может быть свой, но он должен быть.

Я согласен, что инженерить могут только люди. Ну, то есть явно лучше других видов инженерят. Я согласен, что люди не смогли бы инженерить, не имея языка.

Но что у машин должен быть именно язык… Я вижу, что без какого-то способа накапливать кучу опыта им не обойтись (инженерить как люди не смогут).
Вы под языком подразумеваете именно любой способ реализации этого «общего опыта», пусть даже он будет захардкожен и по логике похож на распределённый RAID-массив или довольно сложную систему связи как у людей/китов/врановых/шимпанзе? Если вы полагаете второй вариант, то можете обосновать?

И я согласен, что задачи вида «получить от человека то-то и то-то» часто проще решать, умея в языки, но с остальными задачами — не факт

Под языком я понимаю систему реализации гипотез моделей мира с возможностью их накопления и трансляции между отдельными машинами. Кроме того мы думаем именно на своем языке, все наши гипотезы и обсуждения на нем. Форма при этом при наверное не играет. Файлы с кодом софта или весов ИНС на raid — вполне, почему нет. Наверное важно, чтобы код и веса были изменяемыми. "Жили". Но технически до этого ещё настолько далеко, что все утверждения теряют смысл из-за невозможности эксперимента. Т.е. ненаучны.

Ну…
То, что вы описали, делается как раз технически довольно просто. Я сейчас обучаю нескольких ботов одной игре. Или это один бот в виде множества инкарнаций. У них всех единая база опыта, единая гипотеза мира. Они все вместе пишут в базу, кроме того, иногда они пересчитывают модель мира в хранилище и иногда они скачивают из хранилища последнюю версию модели.
Да, у меня физически все эти агенты на одной машине, но если бы было несколько машин и настоящее облачное хранилище — суть бы не изменилась.
Но само по себе это не делает ИИ сильным, потому что человек его всё ещё обыгрывает

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

Мне кажется, то, что вы предлагаете, получается весьма тривиально и больших преимуществ не даёт… Поправьте, пожалуйста, если я не прав.

«Когда боты начнут „думать“ в этих терминах» — они «думают» в терминах приходящих им на вход векторов и максимальной ожидаемой полезности. И чуть-чуть в терминах исследования мира. В базе как раз лежат эти вектора. Боты думают «в этих» терминах или нет?)
Спорить друг с другом — а в чём ценность? Один из ботов берёт все данные и выводит наилучшую возможную картину мира. Наилучшую, какую позволяют его (уродские и несовершенные, зато быстрые) инструменты. Потом, когда срабатывает таймер, он удаляет модель и считает с нуля — на уже увеличенном наборе данных. Можно убрать таймер и пересчитывать модель каждую секунду, но будут лаги. Можно сделать модель, которая включает в себя множество гипотез, и даёт на выходе усреднённый результат по всем гипотезам.
А в чём смысл споров между агентами? Если бы люди могли вот так просто обменяться опытом, построить модели и явным образом посчитать их качество — я не вижу, о чём они могли бы спорить.
«Ну-ка, склеим датасеты… О, моя модель даёт Mean_Squared_Error=0.1 на валидационной подвыборке, а твоя 0.05. Ну, ок, беру твою. А если построить новую модель по обоим датасетам? MSE=0.03. Ну ок, беру её.»
«Экспонентциально наращивать число моделей мира» — ну есть у меня система, которая построена принципиально на мультимодели. Строит кучу гипотез, 99% из них выкидывает на помойку, от остальных рассчитывает «вероятность быть наилучшей моделью». На выходе даёт взвешенное среднее (За какое время упадёт мячик? По теории Эйнштейна за 10 секунд, по Ньютону за 9, по квантмеху за 8.5. Ок, выдадём среднее: 9,17). Можно этот вид Machine Learning засунуть в тот мультиагентный ИИ, но… Что это принципиально изменит? Вообще, в чём смысл иметь много моделей, особенно — экспонентциально много? Существует формализм AIXI, который говорит, что если перебрать все возможные модели (коих бесконечно), измерить их «вероятность быть наилучшим описанием мира» взять выходные данные этих моделей и взять их взвешенную сумму, то это будет наилучший возможный прогноз. Тут проблема в том, что много моделей — это много процессорных ресурсов. Если я возьму вот это: github.com/Kilorad/aixi_booster, затем выкручу пару циферок в бесконечность, у меня будет сколько угодно моделей мира. Только смысл так делать, всё равно никакой комп это не потянет. Не лучше ли генерить не кучу моделей, а несколько по-настоящему хороших?

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


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

А ваш вопрос можно переформулировать так, что лучше — много пробовать обучать разных людей и разному, или всего несколько, но реально предельно умному, точному, нужному и важному.
— не совсем. Если мы строим модель мира, мы можем посчитать её качество. Тут же. Есть нюансы, но в подавляющем большинстве случаев мы можем сказать «эта модель получше, а эта похуже». Модель мира — это прогнозная функция, в неё подаётся текущее наблюдение (или ряд наблюдений), а возвращает она следующий «кадр», цепочку «кадров» или суммарное значение функции полезности за следующие N кадров.
У нас нет способа гарантированно находить очень хорошую модель, но есть способ делать сказать, какая модель лучше, причём даже эксперимент для этого не всегда нужен.
И тот вариант, что я описываю — это скорее «взять одного человека и обучить его всему, и модель у него пусть будет одна». Или несколько чуть-чуть разных моделей.

Да, это идейно совпадает тем, как сейчас делают ИИ (в смысле машины достижения целей в заранее неизвестной среде).
Можете раскрыть, почему, по-вашему, современные reinforcement learning неустойчивы и узкоспециализированы? Я правильно понимаю, что вы в курсе основных архитектур и DQN, Policy Gradient и Model Based вы в целом понимаете?
Просто разные люди говорят разное: кто-то говорит, проблема на уровне некоторых RL-архитектур, кто-то — что на уровне низового ML (нейронки, грубо говоря, отстойные), кто-то — что у нас плохая постановка задачи, и «машина результатов» чем-то плоха.

RL — это тема, да, слежу, да нравится, но мы же тут немного про другое. Вопрос поиска хороших моделей в частности и построения ИИ в целом он скорее философский, чем технический. Интенсивно — да, можно искать модели на основе математики. И да, они будут найдены, но что? Частные случаи решения конкретных задач. Экстенсивно же можно нагенерировать максимально возможное нейро- или даже моделе-разообразие. Пространство поиска вырастет неимоверно, но и покрытие пространства поиска тоже вырастет так же. Давайте на примере — RL в целом от начала до конца определяется все-таки данными для обучения, а подкрепление дает лишь близость модели к наблюдаемому объекту, но не "угадывание заранее". Т.е. это сугубо техническая система — автомат. Сильный ИИ же подразумевает как бы два мира, реальный и модельный. Редкие (далеко не все) модели будут близки к миру реальному. Систему построившую (даже придумавшую) такую модель нужно пустить на следующий уровень познания, а иные отсеять. И вот тут самый сложный момент. Если нечего будет осеивать, то теряется, или сужается разнообразие решений. Эйнштейн построил СТО без данных по сути. Тысячи физиков пытались сделать то же самое. Повезло (и это ключевое слово) именно ему. Это повторяется. Всегда. Десятки тысяч народа нейронками занимались. Но у Лекуна взлетело чуть лучше и чуть раньше. Поэтому интеллект это все-таки игра. В ней должно быть много проигравших и мало выигравших, переходящих на следующий уровень. Если вы следите за идеей, то это момент получения знания, что имхо и есть сильный ИИ. Или даже просто любой интеллект. А далее все о чем мы говорили выше. Язык для передачи и фильтрации, тест Тьюринга как частная проверка, что это именно интеллект, и т. д.

Наверное, надо пару слов сказать о том, почему я так привязался именно к RL.
Я читаю статью о том, что ИИ может (теоретически) решать инженерные задачи лучше человека. Отлично, надо заняться. Делаю пару опытов в генетическим программированием — да, правда, за день получаю программу, с которой до этого возился… Долго. Дальше думаю: если мне нужен ИИ, как ставить ему задачи? Я же не могу с ним поговорить — он как эволюция, как градиентный спуск, он не как человек. Тут же появляются две идеи: либо явно задать ему цель/цели в терминах его сенсоров. Либо задать метрику качества и давать только сигнал подкрепления. Вариант с подкреплением показался мне наиболее универсальным (хотя как я теперь вижу, он недостаточно информативен и плохо влияет на sample-efficiency).
Поэтому я считаю, что если мы делаем ИИ для практических нужд и ожидаем, что он будет проворачивать какие-то хитрые планы, то этот ИИ можно описать в терминах RL.

Давайте на примере — RL в целом от начала до конца определяется все-таки данными для обучения, а подкрепление дает лишь близость модели к наблюдаемому объекту, но не «угадывание заранее».
— вы имеете в виду, что RL приниципиально плох в экстраполяции? То есть если у нас в датасете есть x=1, x=2, x=3, то RL плохо посчитает y для x=5? Я видел такую проблему у нейронок и деревьев. Но у каких-то моделей такой проблемы нет — у линейной регрессии, например, у символьной регрессии. Или это какая-то особенная проблема именно для RL?

Систему построившую (даже придумавшую) такую модель нужно пустить на следующий уровень познания, а иные отсеять. И вот тут самый сложный момент. Если нечего будет осеивать, то теряется, или сужается разнообразие решений
— можете пояснить на примере? Вот у меня есть штука, которая генерит случайные алгоритмы. Она их генерит много, и некоторые алгоритмы выдают на выходе что-то похожее на то, выглядят Y в датасете. Допустим, система сгенерила 10000 рандомных моделей, из них у 10 оказалась ошибка меньше некоторого порога, то есть они как бы адекватные. Ииии что дальше? Кого пустить на следующий уровень познания в такой ситуации и как бы это выглядело?
Или так. Мы берём весь наш датасет и строим модели. Символьные регрессии (10000 отстоя, 10 нормальных), бустинги (100 отстоя, 100 относительно нормальных), нейросети (50 отстоя, 2 нормальных). И какие дальнейшие действия?

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

Я имею ввиду что линейки, бустинги, нейронки, knn-ки, символьные регрессии — это десятки, или максимум сотни видов моделей. А нужно чтобы их были миллиарды. Видов моделей, а не просто их параметров. В том числе и неизвестные нам сейчас. Ибо никто из нас не знает какой вариант верный в универсальности решаемых задач. Это реально похоже на жизнь. Технически сейчас — сильный ИИ просто утопия. Как если бы обезьяна человека изобретала. Но мы то от них все-таки произошли. И разница не потрясающая в количестве нейронов. Но в качестве — потрясающая. У нас модели мира лучше. Гибче. Точнее. И их больше на порядки.


Отвечая на вторую часть вопроса про ииии, что дальше. Дальше удачная модель, нет… не так, удачный генератор удачной модели, должен самовоспроизводиться с мутацией. ГА. У меня был fail с этим. Но кто-то когда-то нащупает, нас же миллиарды на планете, и это ключ.

Окей, есть пространство моделей, которое точно полное, полнее человечеству неизвестно (судя по моим данным). Это пространство алгоритмов, которые крутятся в бесконечном цикле и принимают-выдают какие-то данные. Цикл — это расширяющее требование, при наличии цикла от него можно отказаться.
В этом множестве точно есть все модели ML, которые люди применяли.
Ну короче множество всех программ.
И есть тезис Тьюринга-Чёрча, кажется, что если мы будем генерить код на, скажем, ассемблере, то мы можем воспроизвести любую логику, что может быть выражена на Си или на Питоне.
Так что у нас есть множество всех моделей — я именно это называл символьной регрессией. Что дальше? Ну вот взяли мы перебор с парой эвристик и нашли несколько годных моделей — и кучу негодных.
И как дальше будет работать ваша логика насчёт вот этого:
Систему построившую (даже придумавшую) такую модель нужно пустить на следующий уровень познания, а иные отсеять. И вот тут самый сложный момент. Если нечего будет осеивать, то теряется, или сужается разнообразие решений.

?

У нас модели мира лучше. Гибче. Точнее. И их больше на порядки.
— может быть… А может, у нас поисковые эвристики лучше, и мы лучше умеем выдёргивать нужные модели из пространства всех моделей. Или ещё что-то, что не сводится напрямую к различиям в пространстве поиска. Но да, в итоге это выглядит так, что конечные модели у людей лучше

Вообще, вам интересно обсуждать со мной тему сильного ИИ?) Есть вариант перейти в личку, а то и созвониться. Мне кажется, вы довольно глубоко вникли в тему, я тоже довольно много думал/экспериментировал/читал умные книжки. Может оказаться продуктивно

Спасибо, но я боюсь, что ничего нового вам не сообщу. Если внимательно посмотреть все мои посты в ветке, то все они сводятся к первому посту, с небольшими вариациями. Включая этот.


Механизм валидации моделей должен иметь какие-то последствия. Для живых организмов это выживаемость. Один организм формирует, хранит и пробует миллионы моделей и умирает, чтобы попробовать другой их набор в потомках. Если для ботов сделать то же самое, то наверное пропадает смысл. От AI все ожидают бесконечный рост сложности системы знаний, а убивая бота и начиная каждый раз сначала легко теряется достигнутый прогресс. Что предложить взамен смерти бота — то даже тут у меня идей нет, не говоря о более тонких моментах реализации.


С учётом того, что вид модели — это инструмент, то снова приходим к вопросу постановки задачи. В вашей формулировке — решить вот этот пул примеров. В моей — выжить в любой предложенной среде. Отличий немного, но выжить это постоянный reset, если жизнь это один эксперимент, то дорого получается. Ресурсов не хватит.


Я не вижу пока тут выхода, и видел эту проблему на своем примере выше ИНС+ГА. Закончилось просто исчерпанием выч. ресурсов. Не решив даже такую простую задачу не вижу перспективы браться за более сложную. Нужно что-то вместо смерти бота. Что-то не приводящее в тупик. Что — вопрос открыт.

И не просто язык, а язык как орудие, т.е материальное средство воздействия или преобразования состояния объекта, как знак например. И тогда язык становится подобен руке или другому органу взаимодействия со средой. См Пиаже Ж. «Усвоение ребенком математических объектов и операций над ними»

Люди, которые не знают язык, на котором задаются вопросы, тоже не пройдут.


Тест Тьюринга по своему принципу направлен не на определение сильного интеллекта, а на отличие человека от машины, он изначально человеко-ориентирован.

Предложите свой вариант ;).


Сильного ИИ нет. Каким он будет — неизвестно. Но пилить его будем именно мы. Поэтому, он более вероятно будет подобен нам, чем скажем дельфинам. А раз так, то "чисто" пройденный тест Тьюринга был бы огромным достижением. Тест не мой, он Тьюринга. Но я с Тьюрингом согласен.
Что касается ремарки о языке, то это уже софистика. Добавьте переводчика.

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


Добавьте переводчика.

А если человек немой или глухой? Некоторые обезьяны умеют общаться языком жестов например. Собаки знают команду "Голос". Дело-то не в этом, а как раз в том, что у животных сильный интеллект, а пройти тест Тьюринга они не смогут, значит это не показатель. Животные не смогут его пройти потому что языка не знают, а не потому что не могут решать интеллектуальные задачи. Просто язык это слишком сложная интеллектуальная задача для них. А распознавание образов или управление 4 лапами достаточно простая.

Мне не очень нравится вариант с тестом Тьюринга, потому что он завязан на человека.

Я бы предложил своим вариантом прохождение кучи задач вида «достигни цели такой-то в виртуальном мире таком-то», при условии, что ИИ не знаком с этим виртуальным миром, а мы откуда-то знаем, что задача в принципе решаема, даже с учётом этого незнания.
Задачки такого типа: пройти уровень из Doom, припарковать машину, добыть алмазы в Minecraft, собрать максимально скоростной автомобиль в инженерном симуляторе, выиграть в Цивилизацию.

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

Недостаток подхода — нет никаких гарантий, что такой ИИ сможет именно общаться с людьми, а это, кажется, довольно важная ступенька в решении многих задач.

Представьте, что мы встретили инопланетян. Как понять, что они разумны? Это все же будет, наверное, довольно близко к тесту Тьюринга. Мы будем пробовать общаться, и если не получится, то точно не будем считать их проявлением интеллекта.


Если сильный ИИ умеет играть в ЛЮБЫЕ игры лучше нас, но нас, придумавших эти игры не в состоянии понимать, то это как минимум странно. А скорее всего невозможно. Мы же понимаем как дрессировать животных, как с ними общаться. А они понимают нас. Вот и сильный ИИ должен нас так же понимать, а мы его.

Как понять, что они разумны? Это все же будет, наверное, довольно близко к тесту Тьюринга. Мы будем пробовать общаться, и если не получится, то точно не будем считать их проявлением интеллекта.

Нет. Вернее даже "Нет!". Ни в коем случае нельзя завязываться на тест Тьюринга для определения уровня интеллекта живых существ. Он придуман 70 лет назад для теоретического отличения человека от машины. Ни для чего другого он не задумывался, и использовать его для этого нельзя.


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


Собаки, обезьяны и дельфины тоже достаточно разумны, чтобы выполнять некоторые задачи. Более того, они даже понимают человеческую речь, различают слова, например команды "Сидеть/Лежать", просто сами говорить не могут. Проверять нужно распознавание окружающих объектов и процессов, а не уровень владения речью. Речь по своей природе это просто обозначение для распознанных объектов.

Ок. Как? Мы поняли что собака понимает команду. Это все? Ну тогда ИИ готов. Окей Гугл.

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


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

Я с вами могу что-то обсудить. Т.е. у человека часть рефлекторного, но есть и систематизированное логическое мышление. На языке. С собакой я так обсудить что-то не могу, у нее в основном рефлекторное. Страх. Голод. Радость. С инопланетянином, если они общаются телепатически тоже не могу, но потому, что мне неизвестен их канал передачи информации, т.е. я языка не знаю, нужен переводчик на телепатический, а с собакой причина другая.


Если вы считаете, что двигать лапами и ловить мячик это все что нужно от ИИ, то я соглашаюсь, но этот ИИ не сильный. Сильный ИИ — это возможность генерации, и последующего обмена моделями и идеями. Тест Тьюринга — он для проверки возможности такого обмена, а не для проверки знания языка. Отладчик изначально подразумевает, что мы сильнее исследуемого ИИ. А было бы интересно получить хотя бы такой же по сложности, или выше человеческого. Если эта задача не стоит, то обсуждать нечего. ИИ готов. Это Boston Dynamics или просто банальный робот-пылесос.

Я с вами могу что-то обсудить. Т.е. у человека часть рефлекторного, но есть и систематизированное логическое мышление. На языке.

А с немым человеком не можете. Или с маленьким ребенком. По-вашему, у них интеллекта нет?


С собакой я так обсудить что-то не могу, у нее в основном рефлекторное.

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


Если вы считаете, что двигать лапами и ловить мячик это все что нужно от ИИ

Нет, я сказал, что если вы сделаете нейросеть, которая этому обучится, это будет ИИ. Потому что там будут нужные принципы обучения. Если вы напишете программу специально для этого, то это конечно не будет ИИ. Она ведь не сама обучилась, а вы в нее эти знания заложили.


Тест Тьюринга — он для проверки возможности такого обмена

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


Отладчик изначально подразумевает, что мы сильнее исследуемого ИИ.

Ничуть. Любой ИИ должен наблюдать как минимум те же объекты вокруг, что и мы. Если он натыкается на столбы, какой же он тогда сильный. "Сильный" ИИ не означает "сильнее человеческого", если мы сделаем аналогичный человеческому, это тоже будет сильный ИИ.

Если мы сделаем ИИ уровня собаки без возможности как-то улучшить, то он будет очень ограниченно выполнять задачи. Одна из важных мотиваций делать сильный ИИ — это сделать штуку, которая будет делать что-то, на что нам самим мозгов не хватает.
«ИИ, сделай мне звездолёт до Альфы Центавра»
«ИИ, вылечи вот этого человека от терминальной стадии рака»
«ИИ, заработай мне миллиард»
Как ИИ уровня собаки, по-вашему, поможет с решением задач такого уровня?
Если мы сделаем ИИ уровня собаки без возможности как-то улучшить

Суть в том, что это собаку мы не можем улучшить, а в случае ИИ у нас есть полный доступ ко всем информационным элементам. Можно добавить или изменить какой-то слой обработки. Если ИИ будет содержать принципы, которые позволят правильно распознавать объекты (в том числе мячик) и оптимально управлять лапами (а не шагать на месте, как в видео Boston Dynamics), то добавить к этому речь будет крайне несложно, речь ведь это просто звуковые обозначения наблюдаемых объектов.


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

Если у вас этот ИИ будет на 95% чёрным ящиком, типа нейросети или AIXI или бустинг или любой другой большой модели ML, как вы будете прикручивать туда язык? Координацию, положим, мы можем "передрать", но язык?

У меня есть мнение, что если нейросети будут для нас черным ящиком, никакой ИИ мы не получим. Само по себе ничего не появляется.

Вы идете в известный парадокс. Система не может сама себя полностью познать, так как ее ёмкость меньше ее же компонентов. Следовательно, даже если допустить, что получить более сильный, чем человек ИИ мы можем, то отлаживать его, увы, не получится. Тьюринг не есть хороший тест, он неполон, но лучше пока никто ничего не предложил. Попробуйте. Ваши позиции близки к савельевским, поэтому я вряд ли вас смогу переубедить в чем либо.


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


Было интересно, спасибо. Хоть и не очень продуктивно.

Следовательно, даже если допустить, что получить более сильный, чем человек ИИ мы можем, то отлаживать его, увы, не получится.

Что может помешать отлаживать, видит ли ИИ столб или мячик? Это даже сейчас в нейросетях отлаживают. Неважно, насколько сильный ИИ, простые окружающие вещи он все равно будет наблюдать, на них и можно отлаживать.


Тьюринг не есть хороший тест, он неполон, но лучше пока никто ничего не предложил. Попробуйте.

Я уже 2 способа предложил — отладчик и расскажите своими словами. Сводятся они впрочем к одному и тому же, к отслеживанию объектов, физических или логических. Проблема всех текущих реализаций теста Тьюринга в том, что они проверяют просто знание каких-то вещей, а надо проверять анализ новой неизвестной ранее информации.


Ваши позиции близки к савельевским

Не знаю, кто такой Савельев и о чем он говорил.

Система не может сама себя полностью познать, так как ее ёмкость меньше ее же компонентов.

Я не знаю, почему вы так решили, но это неправда. Условный миллион нейронов может вместить и понятие "миллион" и принцип действия одного нейрона. Компьютер может вмещать в себя полное устройство всех деталей компьютера и управлять процессом производства компьютеров. Хранить информацию о каждой молекуле или другом повторяющемся элементе конечно не получится, но это и не нужно.

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


Ошибка в рассуждениях по ссылке, которую вы привели, появляется в этом предложении:
"Дело в том, что первые N битов Ω нельзя вычислить с помощью программы, которая была бы существенно короче N битов."


Первоначально возможно вычислить и нельзя, но Ω там определяется таким образом, что может иметь любую последовательность битов, например все нули или чередование A нулей и B единиц. И вот когда часть числа уже вычислена, эти закономерности можно сжать, то есть вычислять более коротким алгоритмом. И начинать сжимать можно даже не вычисляя число до конца.


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

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

Да я вроде не утверждал обратного. Я отвечал на конкретное утверждение про емкость системы.


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


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

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


Если вы станете это исследовать методами статистики, вы увидите… Ну, например, что робот зовёт помощь, если груз тяжелее 90 кг. Это и есть истинное правило? Нет, правило с 30% вероятностью ошибается. Ок, улучшаем правило
Примерно так, по моему опыту, выглядит отладка нейросети/решающего дерева.

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


Только прочитать это правило глазами не получится — оно само будет сложным, как нейросеть. Оно не будет умещаться в памяти.

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


У вас есть методология, которая позволяла бы отлаживать что-нибудь типа закольцованной нейросети или автоматически сгенерённого низкоуровневого кода объёмом в сотни мегабайт?

У меня нет такой методологии, и как я сказал выше, я считаю, что она не нужна, потому что методом черного ящика сильный ИИ получить не удастся. Надо четко понимать, что происходит на каждом уровне и как этим управлять, тогда и отладчик можно написать, который эти данные будет представлять в наглядном виде. Так же как сетевые снифферы показывают назначение каждого байта в TCP пакете.

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

Собственно, это главная проблема. Я не знаю, как можно делать ИИ без ML, а ML без чёрных ящиков. Но если у вас есть понимание, как повторить успехи computer vision без ML — то это другой вопрос
и у других людей уже есть эти высокоуровневые абстрактные термины

Вот и у сильного ИИ они должны быть.


А вот попробуйте-ка написать правило, как на картинке различить кошку

А зачем? Нам надо написать отладчик, который будет показывать, различает ли ИИ на картинке кошку. Это просто активность информационных элементов. Есть кошка — есть активность, нет кошки — нет активности.

Вот и у сильного ИИ они должны быть.
— все высокоуровневые абстракции, что есть в мозгу человека? Не то, чтобы этого нельзя сделать. Но это выглядит ощутимо сложнее, чем сделать просто ИИ, который достигает цели, даже сложной цели. У нас нет списка этих абстракций и нет их перевода на низкоуровневый язык.
И ещё эти абстракции существуют не в отрыве друг от друга, а как элементы языка, и эту логику тоже надо будет как-то вшивать в ИИ.
Может, так и можно, но выглядит очень трудно в реализации в сравнении с другими концепциями ИИ, и само по себе не решает другие проблемы ИИ (типа как сделать горизонт планирования побольше, планы похитрее, чтобы меньше данных надо было для обучения)
все высокоуровневые абстракции, что есть в мозгу человека?

Все высокоуровневые абстракции, которые ему нужны для выполнения задачи.


У нас нет списка этих абстракций и нет их перевода на низкоуровневый язык.

А зачем? Они появляются в процессе обучения ИИ, так же как при обучении человека.

Они появляются в процессе обучения ИИ, так же как при обучении человека.
— у человека довольно специфический процесс обучения. Вы в курсе, как учится ИИ? Например, как решается задача supervised learning, и какие там появляются абстракции. Как сделать, чтобы у ИИ не просто возникали абстракции, а возникали те же самые, что у человека… Есть понимание, как такое сделать?
Вы в курсе, как учится ИИ?

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


Да и методы собственно неважны, важно чтобы в результате появились эти абстракции.

Да и методы собственно неважны, важно чтобы в результате появились эти абстракции.
— ну, пока что все известные методы, кроме хардкода к этому результату не приводят. Несколько тормозит тот факт, что с людьми нельзя общаться достаточно много и быстро, чтобы тестировать столько гипотез, сколько обычно есть у ML…

michael_vostrikov, с теорией информации у вас совсем плохо, надо вам учиться. "Пример который опровергает" — прямо вишенка на торте. "недостоверность этого источника, либо на ваше неправильное понимание" меркнет на его фоне. Хотя может троллите? Если так — то не смешно и очень тупо.


Давайте я тоже в таком ключе побеседую. Любая последовательность битов является информацией. Любую, согласно вашей же гениальной идее, можно "сжать". Вы не читаете всякие там глупости, пошел он этот Гильберт, а знаете все сразу и сами. Ок, вперед — сожмите RAR. А потом сожмите его еще раз. И т. д. До одного бита. Все же возможно ))). Бред же чистейший. Надеюсь донёс. На примере, как вы любите.


Не нравится RAR — понимаю. Но то, что несжимаемые последовательности существуют надеюсь понятно? То что ИНС с точки зрения данных чистый random, надеюсь тоже понятно? Сожмите веса сети если слова rar и random вас смущают. А потом положите полученное в эту же сеть.


Если вы в школе теоремы доказывали, то наверняка знаете, что означает означает чтд. На этом откланиваюсь, ибо ваш ответ я уже знаю.

Любую, согласно вашей же гениальной идее, можно "сжать".

Предоставьте цитату, где я такое говорил, тогда продолжим. Спорить с вашими выдумками мне неинтересно.


Также можете попробовать доказать невозможность создания компьютера, который управляет производством таких же компьютеров, либо что оно не попадает под определение "Система не может сама себя полностью познать, так как ее ёмкость меньше ее же компонентов."


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

Также можете попробовать доказать невозможность создания компьютера, который управляет производством таких же компьютеров, либо что оно не попадает под определение «Система не может сама себя полностью познать, так как ее ёмкость меньше ее же компонентов.»
— а где вы такой компьютер видели? Что конкретно находится внутри его моделей? Компьютер может делать другие компьютеры и без полного понимания, что там внутри. Полное понимание — это возможность предсказать каждый следующий кадр, то есть поднятая виртуалка. А иначе он не вполне знает, что там в памяти лежит, и как содержимое памяти меняется при исполнении кода.
Для практических нужд обычно хватает и частичной, упрощённой модели, с потерей точности
а где вы такой компьютер видели? Что конкретно находится внутри его моделей?
с потерей точности

Там находится достаточно информации, чтобы точно вопроизвести компьютер.


Компьютер может делать другие компьютеры и без полного понимания, что там внутри.

Да вроде про понимание разговора не было, был разговор про емкость системы. Что такое понимание вообще еще строго не определено.


Полное понимание — это возможность предсказать каждый следующий кадр

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


Про эмуляцию кадра с точностью до молекул я уже писал, в контексте возможности отладчика для ИИ это не нужно. Впрочем, не вижу никаких причин, почему отладчик не может сохранить состояние ИИ, а потом загрузить его и продолжить с этой же точки с повторением результатов.

Я достаточно легко могу представить себе программу, которая способна создавать свои копии почти без привлечения дополнительной памяти. Пусть программа 1 МБ, ещё 1 МБ займёт копия и всё, оперативу мы расходуем по минимуму, так как производим копирование побайтово. Это достаточно хорошая аналогия копированию компа?

При этом та же самая программа наверное, может оттестировать себя, если создаст свою копию. И тестировать будет копию. Ещё программа может создать модель от этой копии — с потерей точности и за дополнительную память. И отлаживать модель, если по какой-то причине отлаживать копию не вариант. Но это, похоже, ограниченный «самоанализ». Если нас устраивает его неполнота — то ок. Это как отладчик, который отлаживает отладчик, который отлаживает «блокнот». В итоге мы увидим внутреннее состояние отладчика, изучающего блокнот.
Впрочем, я немного потерял мысль, насколько серьёзный самоанализ требуется. Абсолютно подробного, видимо, не выйдет, ограниченный можно

Зачем тут вообще самоанализ? В отладчике нужны только принципы работы ИИ, а не веса нейронов. То есть как из входной информации по связям между нейронами добраться до слова или понятия "мячик".

По-моему, чтобы такая отладка работала, нам нужен какой-то процесс, который будет выделять эти понятия из человека, именовать, как в человеке, и затем создавать их внутри ИИ. И размечать куски кода/группы нейронов, где эти понятия находятся.
Наверное, как-то это можно…

Зачем их создавать-то внутри ИИ? Это алгоритм ИИ должен их создавать, а не отладчик, отладчиком нам надо определить, есть ли они там и правильно ли они создаются. Смотрите, если у вас есть сильный ИИ, значит он умеет владеть речью, а значит должны быть механизмы, которыми он сопоставляет реакцию своих внутренних информационных элементов конкретному слову. Вот отладчик должен делать то же самое, просто слово будет выводиться на экран.

Так. Как мне видится ИИ. Тут есть 2 основных варианта. Либо мы создаём тесты для ИИ, а затем подбираем программу, которая эти тесту проходит. И она будет чёрным ящиком, в котором разобраться можно разве что очень теоретически. Либо бы создаём правило подкрепления и инструмент для предсказания будущего — и делаем схему, которая перебирает планы в поисках того, для которого будущее «наилучшее» с точки зрения подкреплений. В этом случае чёрным ящиком будет инструмент предсказания (тоже некая программа, выдернутая из множества всех программ так, чтобы соответствовала тестам). Я других схем не знаю.
Если мы то или другое сделаем на уровне Сильного ИИ, это не значит, что оно будет разговаривать с людьми и классно рефлексировать. Это значит, что оно научится общаться поверхностно — достаточно для минимальной торговли и убеждения. Чтобы система стала общаться, как вы описываете, это должно быть чем-то, что значимо для достижения целей. То есть у нас должен быть способ проверить, а не врёт ли нам ИИ.
Либо у нас этот отладчик должен быть базовым элементом ИИ с самого начала. Отладчик, который может вытащить у людей из головы их терминологию, которую люди сами не могут формализовать до пикселей. И найти эквивалентные термины у ИИ. Здесь даже сложность скорее не в том, что он должен отлаживать ИИ — он должен отлаживать человека. И это пока классно звучит на словах, но как это будет выглядеть на деле?
Вот у нас допустим есть нейросеть, распознающая картинки. У неё пусть 2 класса: лица и не лица. Для человека лица состоят из… бровей, носа, глаз, рта, ушей, волос и кучи других деталей, что мы видим, но о которых не задумываемся.
Как сделать, чтобы отладчик составлял этот список человеческих абстракций (люди его составят очень ограниченно и неполно) и для каждой абстракции подбирал соответствующее ей правило обнаружения (тут у людей всё совсем плохо — люди даже правило обнаружения кошки на картинке явно назвать не могут, хотя очень пытались)?
А потом делал то же, но не для анализа графики, а где reinforcement learning, где модель ML пытается предсказывать окружающую реальность?
Если мы то или другое сделаем на уровне Сильного ИИ, это не значит, что оно будет разговаривать с людьми и классно рефлексировать.

Ну тогда это не будет сильным ИИ. Просто по определению.
Artificial general intelligence is the hypothetical intelligence of a machine that has the capacity to understand or learn any intellectual task that a human being can.


Отладчик, который может вытащить у людей из головы их терминологию, которую люди сами не могут формализовать до пикселей.

Зачем? В самом простом варианте нам надо определить, видит ли ИИ мячик. И всё. Если сильный ИИ не распознает мячик, значит он не работает, дальше проверять нет смысла. Зачем вам формализовывать понятие мячика до пикселей?


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

Опять же, зачем? Нам не нужны правила обнаружения, их должен составлять сам ИИ при обучении, нам надо проверить только результат.


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

Artificial general intelligence is the hypothetical intelligence of a machine that has the capacity to understand or learn any intellectual task that a human being can.
— это ж не значит, что он фактически это будет делать. Вот делаю я RL. Он может собирать бонусы на уровне в игре? Да, может. А будет? Да, если я смогу правильно сформулировать цель. Так и здесь. Вроде может, но как его заставить?

В самом простом варианте это вообще можно делать чисто статистически — показываем мячик, активируется нейрон №123456, убираем мячик, нейрон не активируется.
— показываем мячик — как-то меняются активации всех нейронов. Показываем по-другому — ещё как-то меняются активации всех нейронов. Наверное, если показать много разных мячиков и не-мячиков, можно выявить, где именно у нейросети находится представление мячика, в каких нейронах. Ну или понять, что представление размазано на пол-сети… Наверное, это будет означать, что у сети нет термина «мячик», но это не точно) Да, и термин «мячик» у сети может быть закодирован в виде «вот у примерно этого списка нейронов активация на 5% больше, а у примерно этого списка на 5% меньше».
И как дальше действовать? Допустим, мы поняли, что ИИ в каком-то смысле видит мячик. Некоторые нейроны принимают другие значения. Влияет ли это на принимаемые решения? Может быть. А может, нет. А может, влияет, но редко.
А потом мы дообучим нейросеть и эта карта поедет — нейронка станет в другом множестве нейронов хранить концепцию мячика.

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

А потом что делаем? Делаем эту базу побольше, чтобы когда работает нейронка, у нас отладчик говорил всякие промежуточные штуки вида «наклон, 90%», «блик, 80%», «граница светотени, 90%», «круг, 20%», «мячик, 60%», «мяч футбольный, 50%»
А будет? Да, если я смогу правильно сформулировать цель.

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


Вроде может, но как его заставить?

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


Наверное, если показать много разных мячиков и не-мячиков, можно выявить, где именно у нейросети находится представление мячика

Вы знаете, как работает ArtMoney?)


Ну или понять, что представление размазано на пол-сети…

А вы считаете, что у людей термины размазаны на пол-сети? Если бы это было так, на работу с абстракциями никакой энергии бы не хватило.
Я считаю, что если у вас в программе так происходит, значит там просто свалено все в кучу.


Наверное, это будет означать, что у сети нет термина «мячик», но это не точно)

Да, я об этом и говорю. Именно поэтому ИИ так изобрести нельзя. Может у вас есть ИИ, может нету, кто его знает)


А потом мы дообучим нейросеть и эта карта поедет — нейронка станет в другом множестве нейронов хранить концепцию мячика.

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


«круг, 20%», «мячик, 60%»

Ну вы же точно знаете, что видите мячик, а не круг. Вероятность близка к 100%. Неопределенность длится только первые несколько миллисекунд, пока вы рассматриваете объекты на сцене. Вот и сильный ИИ должен работать так же.


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

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


Давайте попробую объяснить на более простых уровнях. Имеется слой рецепторов, слой on-off клеток, и слой наклона линии. Эти слои появляются даже в обычных нейросетях при обучении с учителем. То есть все происходит как вы говорите, веса распределены по сети, и все такое, но если знать формулу активации нейрона и проанализировать веса конкретного нейрона из 3 слоя, то можно с уверенностью сказать "этот нейрон больше всего реагирует на угол наклона 10%".

michael_vostrikov


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


Про где я такое говорил. Вы утверждали, что мозг система которую можно изучить и сжать в силу его конечности — это спорно, но допустим возможно. Но сохранить это добытое знание в этот же мозг без потери данных вы не сможете. Емкости не хватит. Сможете лишь некое упрощение сохранить, а следовательно какая-то часть останется пропущенной, т.е. непознанной. Причем речь о сохранении, а не о познании, когнитивную сторону вопроса если рассматривать, то все еще усугубится. Второй момент — после сохранения мозг неизбежно усложнится, что не было описано в сохранении. И первый, и второй факт значат, что система сама себя познать не в состоянии. Анализ даже части знаний, а именно математики это явно доказывает. Пруф выше.


Вам должен быть по идее близок кодинг, ну так вот: напишите программу, которая без чтения себя из памяти/диска (т.е. алгоритмически) выведет свой же код на консоль — вот о чем идет речь в пруфе.


Наконец про компьютеры. Давайте без теорий. Амёба тоже прекрасно сама себя воспроизводит, на мой взгляд, это живое идеальное совпадение с вашим примером. Она интеллектуальна? Все про себя знает? Может других амеб инженерить? Не может. Не имеет даже в организме памяти для хранения и анализа моделей себя. Допустим на планете только амебы. На ней нет интеллекта. Но дальше веселее — после гугола итераций амеба может эволюционировать до, скажем, человека. Он будет точно сложнее в силу энтропии Шеннона. И внимание, после самоосознания в нем просыпается интеллект и когнитивная деятельность. А что там наша амеба — увы, она уж точно не будет дебажить человека. Причина все та же.


Но допустим амебу придумали мы. Что-то про полученный в итоге интеллект мы сможем сказать? Сможем его дебажить? Опять нет. Причина все та же.


Прочтите же, пожалуйста, статью серьезно, т.е. не с целью поспорить, а с целью уловить идею. Это важная идея. Она доказательно определяет границы познания, как бы пафосно это не звучало.


Поэтому-то у нас и нет шансов "дебажить" и полностью понимать сильный ИИ, хотя некий скайнет в ближайшие столетия при этом практически неизбежен. Это довольно печальный факт.

Вы говорите, что я не понимаю прочитанное, затем приводите для чего-то ужасающий пример собственного непонимания прочитанного.

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


Вы утверждали, что мозг система которую можно изучить и сжать в силу его конечности

В предыдущем сообщении я просил вас приводить цитаты. Раз вы это проигнорировали, я приведу сам.


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


мозг система которую можно изучить и сжать
допустим возможно
Но сохранить это добытое знание в этот же мозг без потери данных вы не сможете. Емкости не хватит.

Как вы из возможности сжатия делаете вывод, что емкости не хватит?
Я уже писал, давайте еще раз повторю. В биологической системе есть повторяющиеся элементы. В контексте обсуждения рассматриваем только нейроны. Многие нейроны похожи по принципу действия. Поэтому можно подробно описать только один нейрон каждого типа и указать их количество. Имея эту информацию и одни и те же входные данные для обучения, можно получить воспроизводимые результаты обучения. Если эта инфомрация хранится в самой системе, где находятся эти нейроны, значит система полностью знает свое устройство, то есть то, что вы назвали словами "познать себя". Если у вас слова "познать себя" означают что-то другое, я не вижу, каким образом это доказывает невозможность написать отладчик для ИИ. Отлачик должен знать принципы функционирования нейронов ИИ, а не данные в них. Данные он может и так прочитать.


Второй момент — после сохранения мозг неизбежно усложнится, что не было описано в сохранении.

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


Амёба тоже прекрасно сама себя воспроизводит, на мой взгляд, это живое идеальное совпадение с вашим примером. Она интеллектуальна?

Компьютер производит другие компьютеры по модели внутри него, а не посредством химических реакций. Он имеет информационную модель процесса производства на каждом шаге, и может по ней точно воспроизвести другой компьютер. Мы же говорим про информацию про устройство сисетмы, а не про размножение. Размножение компьютеров в моем примере доказывает правильность и полноту модели, а не ее наличие.
В амебе впрочем механизм для воспроизводства тоже называется генетическая информация. И там тоже закодировано полное устройство амебы.
Откуда взялось требование интеллектуальности, мне непонятно. Утверждение было про емкость системы, а не про то, как в нее поступают данные.


Поэтому-то у нас и нет шансов "дебажить" и полностью понимать сильный ИИ

  1. ИИ уровня человека это тоже сильный ИИ. Его вполне можно понимать, так же как мы понимаем других людей.
  2. Есть программы, которые пишутся силами команды из десятков человек. При этом один человек все равно может ее отлаживать. Подумайте, как такое возможно, и примените это к ИИ.
  3. Даже если мы сделаем ИИ сильнее человека, "дебажить" не то же самое "полностью понимать".

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

и не просто язык /синтаксис/ а прагматика языка. До фазы конвергенции речи и мышления в 3 летнем возрасте homo s.s. функционально схож с высшими приматами
как раз человека и не нужно. Практичнее — модель животного. Наблюдая референтные сигналы с живой модели воспроизводимой с контролируемым геномом и возможностью инвазивного управления нащупать изоморфную ИНС технически проще
Как вовремя я нашел Ваш комментарий))
ИНС+ГА — не работает? Значит не буду так делать.
Про Цели — согласен на все 100500!
А еще надо не забыть их прописать.

Не совсем так, ИНС+ГА работает, и весьма неплохо, но класс задач должен быть очень существенно ограничен.


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


Дело было еще на третьих пентиумах, и их нужна была хотя бы сотня. Сейчас возможно получится что-то посложнее. Вот вам моя идея одной картинкой, может натолкнет вас на какие-то мысли.

Спасибо Вам огромное!)
В 2009 действительно не было DeepLearning как такового из-за слабых и доступных мощностей.
А сейчас мейстрим backpropagation в DL. А мощность и скорость вычислений как то влияет на ГА? Больше эпох если запустить?

Я пробовал решить эту проблему так. Запускал на день. Запускал на месяц. Вариация — эпохи и емкость популяции. Качественных отличий не получил. ГА увы, не очень сильно выигрывает у случайного поиска. Особенно на длинных геномах. У меня руками всегда получалось лучше и быстрее оттюнить ИНС, чем это делал ГА. ГА хорошо заменит переборщика, но не заменит DS с опытом.

Скажу больше. Я даже делал так. Решал перебором простую задачу. Находил оптимальные параметры сети и алгоритма обучения. Запускал потом ГА. Он оптимальное решение не находил. Ни разу. Хорошие были, но оптимальное — никогда.

Хорошие были, но оптимальное — никогда.

А кто сказал, что мы (люди) находим оптимальные решения?
На простой задаче — да.
А на задачах с высокой комбинаторикой — лучшие умы веками вязнут.

Кто сказал что машина с 4-мя колесами оптимальный вариант?
Самолет с пропеллером. Кнопочный телефон. Деревянный забор да и вообще забор. Кто сказал, что это оптимальное решение?)

Оптимум — термин математический и строгий. Минимум функции потерь на тестовой выборке в данном случае. Читайте его лучше так: экстремум. Вопросы отпадут.

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

arxiv.org/abs/2003.08165 Neuroevolution of Self-Interpretable Agents
Вот статья о том, как эволюция нейронок таки привела к чему-то стоящему. Но это не очень частое явление

Даже скорее это исключения. Иначе такой специальности — DS просто не существовало бы.

что говорить об ИИ, когда мы не способны даже предсказывать траектории насекомого в условиях тестового поля.
именно. то что планета Земля не предсказывает свою траекторию не мешает нам это делать с высокой точностью. В этом и задача нейронаук узнать как работает нервная система животных и человека в т.ч. Но даже насекомое для нас пока черный ящик
Я думаю создатели симуляции нашей вселенной ранее уже перепробовали все попытки сделать искусственный разум «в лоб». Похоже, что единственный способ это создать окружение, где частицы самоорганизуются и будут бороться за жизнь.

Я бы так и сделал. Только подождал бы несколько млрд лет, чтобы осталась только одна доминантная форма жизни, а потом начал бы ее исследовать и лучшие её экземпляры установил бы в своих роботов убираться по дому или готовить жрачку.
Был гениальным физиком, помер, очнулся в роботе-пылесосе. )
Не совсем в тему, но не мог не вспомнить «Голубой период Займы (Зимы?)» Аластора Рейнольдса :)
Обратное распространение ошибки – это чистый Анализ, это процесс ранжирования входов нейронов по результатам работы всей нейронной сети.

А можно этот момент раскрыть? Backpropagation это же про определение того, как каждый вес влияет на результат. И обновляют все веса сразу, никакого ранжирования не происходит, как я помню.

Может мозг — это всего лишь теминал, подключаемый к некому «облачному» вычислителю, и поэтому вся сложность скрыта от нас? ) Поэтому мы видим кажущуюся простоту реализации, и не понимаем, где же тот мощный «вычислитель»? ) И поэтому нейросети — это всего лишь протокол? .) Как с помощью HTTP не описать всей сложности WWW? )
Обычный человек в процессе логического мышления одновременно может использовать не более 4-7 информационных сущностей. Думаю невозможность осмыслить работу мозга происходит именно по этой причине и требуется инструмент для увеличения этого числа. Современная вычислительная техника таким инструментом не является из-за разнице в парадигме построения вычислительного процесса. Современные нейронные сети вычислительным инструментом тоже не являются (скорее это адаптивный фильтр), думаю в их «идее» нет даже половины от функционала работы мозга.
Как пример: Для обучения нейронных сетей требуется море примеров с известным ответом. Мозг обучается просто на потоке данных без явных подсказок.
Ну вот я тоже прихожу к такой же мысли, что да, нейронные сети при всей их… инновационности подхода, оценочно порождают чудовищно сложный и мощный вычислитель. Где он? У каждого в черепной коробке? Может это терминал доступа к некому масштабному вычислителю вне нашего измерения? ) (ну так, субботний полет мысли, но я чет все чаще склоняюсь к этой идее)
Если хотите — упрощенно: весь мир и есть тот самый квантовый компьютер. Не молекулы, атомы, квантовая структура. А сама суть. А у нас у каждого в голове — способ доступа к нему. Что прикольно, даже у червяка, инфузории, простой клетки даже. 42 .) Разница между мной и червяком — в сложности API, я могу ставить сложнее задачи, и получать оттуда сложнее ответы.
Если взять в расчет Библию, то не совсем) Все вычисления происходят именно в головном мозге, но сознание бэкапится, и да за пределами наших измерений. Человеческая жизнь слишком ценна, чтобы ее не бэкапить, и наш разработчик это прекрасно понимает.
Обычный человек в процессе логического мышления одновременно может использовать не более 4-7 информационных сущностей.

По исследованиям Бэддели все-же примерно 4 элемента за 1 такт, а 7 получается за два такта, путем сжатия 4 элементов первого такта в 1 единицу и заполнение оставшихся 3 на втором такте.
И тактовая частота у нас всего лишь единицы герц, в отличие от гигагерц компьютеров.
Поэтому попытки осознать сознание с помощью вербального анализа подобны попыткам пересчитать количество элементарных частиц во вселенной на деревянных счетах (абаке)
Тактовая частота (спайков) 10 Гц. Но мозг не только спайками общается. Там выходит больше 100Гц.
Но у на 100 триллионов аксонов (шина данных), а не 64 как в компах.
В итоге выходит петафлопс и выше.
Не говоря уже об 3D самоорганизации. А это уже иные порядки скоростей.
Почему может? Так и есть.
Нейросети это не протокол, а приемопередатчик)
Мозг это должно быть просто
полностью согласен. Более того можно утверждать, что если объяснение чего либо (любого явления) запутанное и громоздкое, то с большой вероятностью можно утверждать, оно или ошибочно или не доработано.

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

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

Про
никогда не постичь сложность
, тоже согласен. Думаю не так радикально, но считать признаком смерти как исследователя вполне можно.
Кажется, вы забыли упомянуть главное: в мозге связи между нейронами постоянно создаются и разрушаются. И еще о много другом. Вот лекция, где биолог объясняет различия биологического и искусственного подхода к ИИ
Так и знал, что там Савельев окажется. ))

Он любит про это говорить, но давайте посчитаем значимость этого факта для нейрона. У нейронов от 50 тысяч синапсов, каждый день появляется/теряется 1-3 синапса. Изменения: 1/50000. Это ничто. Даже за год набегает всего лишь — 0,73%.

И ещё, «профессор» на полном серьёзе утверждает, что связь может быть только материальная — буквально, припаянными «проводочками», а, соответственно, все программные модели по его мнению «чушь собачья».

Насколько я понимаю, у детей гораздо больше, но не суть. Из электротехники можно сказать, что в цепи соединение двух различных потенциалов может привести к качественной смене проходящих токов. Можно обьяснить по-другому: пространство всех функций с n входами больше пространства конкретной функции в m^n, где m означает m-ичную логику (для компьютеров m=2, для нейронов значительно больше). Это означает, что сложная система в которой связи перестраиваются, практически в бесконечное количество раз сложнее статической нейронной сети.

сложная система в которой связи перестраиваются, практически в бесконечное количество раз сложнее статической нейронной сети

Она сложнее с математической точки зрения, если принимать, что каждый синапс важен, что не так. Нейрон не процессор, где малейшее отклонение сказывается на работе. Вариативность параметров очень высокая, удивительно что он вообще работает.
  1. Вы не принимаете всю сложность бытия, представьте как сложно выживать улиткам в этом мире всего лишь с этим количеством нейронов.
  2. Вы говорили, что результат не должен быть похож на источник, как самолёты, так модель глубокого обучения вроде хорошо заменяет крылья на крыло.
  3. Ваши ссылки немного устарели, сейчас рассматривается частотный подход возбудимости и порождение новых связей.
Получается, что в основу компьютерных нейронных сетей положена модель нейрона, у которой акценты расставлены наоборот, нежели чем у биологического нейрона.
Как пресинаптический нейрон может узнать об активации постсинаптического? Физического контакта между клетками нет. Есть только обратный захват медиатора из синаптической щели, но по его наличию нельзя сказать — был ли спайк.

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

Но в обоих вариантах результат один и тот же — усиление связи между клетками. Так какая разница кем инициируется усиление связи: пост- или пресинаптическим нейроном?
На мой взгляд, ученых, которые высказываются о том, что Человечеству никогда не постичь сложность человеческого мозга нужно лишать научных степеней, подобные высказывания только могут подрывать боевой дух людей которые захотят посвятить себя решению этой проблемы.

Что ж так кровожадно? Хорошо, не расстрелять.


Тех, кто захочет, не остановить.

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

Я тоже задумывался о принципах обучения, и мне показались интересными механизмы формирования мышечной памяти и последовательностей движений. Вот лекция по теме https://youtu.be/XNMGhUG3YDA
Если обобщить такой механизм за пределы движений то получатся навыки на подобие чтения, восприятия речи, и математических преобразований. Вначале ты долго учишься, постоянно ошибаешься и вынужден сосредотачивать все свое внимание на решение задачи, а потом всю работу берет на себя более древняя часть мозга, и ты начинаешь делать все без усилий, автоматически.

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

На самом деле это Хаос.

Разные люди смотрят на один и тот же предмет, а видят разные вещи.
Нет двух одинаковых мнений.
Очень высокая комбинаторика… очень.
Каждый видит свой фрагмент Мира и каждый прав. И похоже всё едино.

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

Тема долгосрочной памяти не раскрыта. У меня был друг в 15 лет — он по памяти рассказывал фильмы, со всеми диалогами, хотя смотрел их всего 1 раз

На сегодняшний момент называть все эти аглоритмы ИИ, все равно что называть самолет «стальной птицей», хотя он ни крыльями махать не умеет, ни яйца нести ни птенцов высиживать и кормить. Так что это скорее «Имитация Интеллекта» алгоритмами оптимизации.

Интересовался этим одно время, тоже пришел к выводу, что важны отдельные синапсы. Можно сказать, что каждый синапс обучается отдельно.


Мне кажется, с тем, что описывает правило Хебба, связано и появление мини-колонок. Например, есть мини-колонки, распознающие наклон линии, разные наклоны рапределены по нейронам в ней не хаотично, а идут по порядку, каждый следующий на некоторый угол отличается от предыдущего. Возможно это работает так. Один нейрон обучается реагировать на определенный наклон линии. "Реагировать" означает, что паттерн активности нейронов с предыдущего слоя дает сигнал на выходе этого нейрона больше 1/2. Если уровень сигнала меньше, на этот паттерн начинает реагировать следующий нейрон. Когда я пытался это реализовать, там была сложность при начальном обучении, как отличить, надо ли по незнакомому сигналу продолжать обучать первый нейрон или следующий. Может быть первый нейрон дает маленький сигнал потому что он сам еще не обучен. То есть нужно вводить некий "коэффициент обученности" нейрона. Некоторое время этим занимался, потом стало некогда, на том все и остановилось.

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

На этом уровне еще нет никаких логических концепций. Это третий или четвертый слой после рецепторов.

Да хоть тридцать три уровня постройте — все равно концепции не вычлените. Тем более новой концепции, той которой в разметке обучающего набора не было…
Правильно я понял, что речь о выработке нового обобщения всего по нескольким примерам?
И не только.

Например, человек по стационарной картинке легко найдет на ней признаки изученных концепций: «падение» или «измена» и т.п.
Или обобщит знания и сформулирует новую: «квантовое превосходство» или «Agile».

Автомат, как думается, тоже должен смочь этому научиться сам. Но поскольку мы его сейчас эксплуатируем очень узко, то и знает он только то, чему его научили. Но есть вещи, которым мы не можем научить… да и сможем ли?
Фигню не сочиняйте: если нет данных, то и обучаться нечему. Вы как-то легко упускаете из виду предшествующий опыт в смежных областях как данные для обучения.

То, что человек из ничего придумывает что-то, это либо результат случайного поиска, либо результат действия по предшествующему опыту.

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

Я ничего не говорил про обучающий набор. Зачем вы спорите, если не разбираетесь в теме? Прочитайте о том, как устроен начальный уровень обработки информации в биологических системах. Например, здесь.

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

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

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

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

Но есть несколько проблем. Первая это ограничение по сложности — пока не придумал как оптимизировать это для графических ускорителей, т. к. вычисления происходят не квадратно-гнездовым способом, в отличии от классических нейросетей.

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

Зрение протекает через всю черепную коробку, моторные функции распределены замысловатыми узлами, мозжечок торчит с огромным деревом спинного мозга. И аккуратно отсекая любую часть, никакой вред разуму не наносится.
Только если убрать глаз или руку довольно просто, то глубже уже не подобраться с современными технологиями — слишком все плотно упаковано.

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

Объясните мне, пожалуйста, зачем нужно
искусственно фабриковать Спиноз, когда любая баба может его родить когда
угодно.

Какую задачу вы решали? То если взять две системы, подобных вашей, но чуть-чуть различающихся, то как определить, какая лучше?

"На мой взгляд, ученых, которые высказываются о том, что Человечеству никогда не постичь сложность человеческого мозга нужно лишать научных степеней"
Карательная наука? А если они правы, то чего стоит лишать вас?
Я ни на чьей стороне, но ваше высказывание в высшей степени ненаучно.

Задача учёного — поиск. Поиск — это разрушение ментальных границ, а не их создание. Поэтому учёные, которые применяют слово «никогда» — это люди, подобные тем, что в начале 20 века считали, что «физика почти решена» или, чуть ранее, «камни с неба падать не могут, потому что их там нет».

Насчёт утверждения «Человечеству никогда не постичь сложность человеческого мозга» я могу лишь сказать, что природа каким-то образом «познала и создала» мозг, а всё, что происходит в природе можно повторить и превзойти. Так что те учёные чрезмерно пессимистичны
«НИКОГДА не смогут изобрести вечный двигатель, а Тесла врал что его сделал» — считает официальная наука
Термодинамика — самая-самая основа окружающего нас мира. Нам до понимания механизма её работы ещё нереально много «копать».
Вероятно, когда-то мы сможем это сделать, когда наши ускорители смогут добраться до планковских энергий, когда сможем найти или опровергнуть существование гравитонов, сможем локально разворачивать стрелу времени, создадим Теорию Всего, обретём возможность создавать новые Вселенные либо машину Зенона (что суть одно и то же). Но до этих далёких времен слово «никогда» я считаю бессмысленным, так как без знаний будущего ни у какого учёного нет права делать такие безапелляционные утверждения.

А вместо конкретного утверждения «НИКОГДА не смогут изобрести вечный двигатель», мне кажется правильным применять «на данный момент сумма физических знаний и технологий не предполагает возможности создать вечный двигатель».
Есть разница, не правда ли?
Немного о реальности. А в реальности есть неврологические заболевания. Как знание мозга помогает в их лечении?

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

Или с другой стороны — нейроны размножаются? Если да, то они должны замещать испорченные. Если нет, то как они выживают в течении всей жизни человека?

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

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

(мы потомки простых обезьян и биологически почти ничем от них не отличаемся)

Как раз объемом оперативной памяти и отличаемся. У самых умных обезьян это 3 элемента, а у нас 4. И это небольшое отличие позволяет овладеть языками и абстрактным мышлением, научиться времясвязыванию (помнить прошлый опыт, причем не только свой, и планировать будущую деятельность), коммуникации и управлению себеподобными и созданию весьма сложных систем и структур.
А если бы мы могли оперировать большим количеством информации за один такт и быстрее?
Насколько бы другими были бы возможности?
Но нашим умом с имеющимися ограничениями мы не можем себе этого даже представить. :(
Нужен новый способ мышления и новый язык, снимающий эти ограничения.
Но останемся ли мы тогда людьми?
не не не.
не может обьем памяти влиять на способность обрабатывать информацию.
не надо смотреть на мозг как на компьютер, и машину для расчета. Умение Считать — побочный эффект.
Мозг не имеет Памяти, как отдельного блока для хранения данных. Как скорость распознавания, возможность «помнить многое» всегда работает в «связности» — что как бы намекает — память и процедура суть одно и тоже и формируется как Рефлекс, здесь это «Реагирование на входные данные». Запоминание — связывание данных в процедуры.
Термины так себе но что есть. ))
Эта модель работает от простейших и до наших дней, усложняется конечно но не меняет структуру, просто эволюционирует. Поэтому наше поведение все еще проще описать инстинктами чем логикой. Модель никуда не делась. Человек Разумный — просто надстройка, и чтобы вернуться много не надо )).
Так наш вербальный ум и абстрактное мышление и есть новая надстройка над базовыми информационными уровнями, работающими с восприятием и движением и обрабатывающими на порядки большие массивы информации. Но это все работает на автомате и не обладает свойствами саморефлексии.
Именно наличие следующего уровня абстрагирования, хоть и такого маломощного относительно базы, и дает такие громадные преимущества человеку. Возможность неограниченных уровней абстрагирования позволяет развивать научное знание и технические системы высокой сложности, хоть и не в одиночку.
в моем понимании все Высшие функции которые мы пытаемся приписать/обьяснить в поведении Человека, как «вербальный ум», «абстрактное мышление», и даже «психология» это абстракции Реагирования/рефлекса.
Рефлекс как средство обработки информации нужный для выработки Реакции все время усложняется. Усложняется в силу увеличения количества входящей/учитываемой информации. Что порождает условный рефлекс, Паттерн рефлекс, Эмоциональный рефлекс, Время — как средство описания цепочки последовательных реакций. Отсюда время — последовательность, цепочка событий/реакции, тактирование.
Это все животные уровни.
Дальше — моделирование. Т.е. попытка предсказывать события исходя из известных цепочек/последовательностей входящих сигналов (пример шахматы на несколько ходов вперед). Это подразумевает Расчет, модели, абстракции и прочее.
Модели — порождают Законы природы, которые отражают переход от статистической оценки Реакции и выработке Модели описывающей эту статистику — формулой. Т.е. все физические законы Придуманы Людьми — и поэтому являются неТочными (пример переход от Ньютона к Эйнштейну).
Это кстати может обьяснять уменьшение обьема мозга Человека при усложнении внутренней структуры — раньше хранилась Статистика (буквально таблицы) — теперь только Формулы, с помощью которых можно обсчитать Таблицу на ходу. ))
Рефлекс в пике создает «Картину Мира», буквально рисует ее в башке, детализирует для улучшения Реакции в сложных ситуациях. и вот Картина мира в общем случае и есть нейронная сеть (неокортекса).

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

Как человек, который специально учился контролировать свое абстрагирование и различать его уровни, понимаю те мысли, которые вы хотите передать, хотя слова и термины, которые вы употребляете, для меня имеют немного другие смыслы и содержания.
Просто важно различать рефлексы 1 уровня (в вашей терминологии) — восприятия и движения и 2-го уровня (языки, символы и абстракции) на фоне эмоциональных модификаторов, являющихся отдельной подсистемой.
Т.е. наш вербальный ум работает не с моделями, а моделями моделей.(Формулы, как вы назвали). С одной стороны, это дает огромные преимущества (не нужно хранить все «таблицы»), а с другой стороны содержит опасность утонуть в рекурсии отражений и абстрактной схоластике.
Большинство людей склонно принимать за свойства объективной реальности свойства языка, которым они эту реальность описывают.
Т.е. они считают, что их очень приблизительные и субъективные «формулы» и есть сама объективная реальность.
А с тем, что в основе всех сложных когнитивных функций лежат простые рефлексы, объединенные в системы разных уровней, вполне согласен.

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


  1. Человечеством накоплен целый пласт знаний об устройстве мозга.
  2. Человечество обладает технологиями колоссальных вычислительных мощностей.
  3. Человечество никак не может получить синтез этих двух вещей.

Очевидно, что на основании этого потенциала когда-нибудь должен случиться некий прорыв, проскочить некая искра и — "ой, а разве так можно было?"


А теперь отвлечемся от устройства мозга.


Когда сферичекий студент приходит на свою первую работу в вакуум, первое что он слышит, может выражаться примерно в таких посылах:
— Забудь обо всем, чему тебя там учили и слушай сюда!
— У нас так не принято!©
— Это ты у себя в институтах был отличником, а здесь ты никто!


Как вы думаете, получит ли наука этот прорыв?


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


Верстальщики не читают текст, но иногда глаз все же цепляется за знакомые буквы, и самые частые сочетания букв складывались в такие слова:
"Как писал великий Х"…
"Как указано в статье Y"…
"Исходя из трудов Z"...


Как вы считаете, проскочит ли здесь искра?


Я понимаю, почему для публикации статьи вы выбрали Хабр. Вы уверены в том, что здесь полно незашоренных молодых умов, часть из которых заинтересуется проблемой, придет в вам (или не придет, или не к вам) и организует эти самые искру и прорыв. И — вуаля!


Но увы. Хабр — всего лишь срез общества и подавление инакомыслия здесь находится ровно на том же уровне, что и во "внешнем" обществе. Вот пример: чуть выше по треду кто-то высказал мысль о "мозге-терминале", подключаемом к некоему, неизвестному нам хосту, и поэтому мы ищем не то и не там. Посмотрите, сколько у этого комментария минусов…
Собственно, речь даже не о том, какое именно предположение было высказано. Речь о том, что предположение могло бы заставить думающих над проблемой людей взглянуть на проблему под другим углом. Но нет: общественность, привыкшая мыслить в общепринятой (сорри) системе координат, просто не может допустить такой разброд и шатание в умах и активно (в меру выданных полномочий) ему сопротивляется.


Как вы думаете, есть ли у науки надежда с таким подходом?

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

Про понятие "пруф" и необходимость доказательства своих утверждений верстальщики тоже не слышали?) А про то, что необязательно делать все исследования самому, а можно ссылаться на то, что до этого сделали другие?


Посмотрите, сколько у этого комментария минусов…

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


Речь о том, что предположение могло бы заставить думающих над проблемой людей взглянуть на проблему под другим углом.

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

Наука, хотя и декларирует «научный метод», но во многом продолжает традиции религиозного и даже мифического мышления.
Для значительной части научного сообщества, особенно представителей административно-командной части, «научный метод» всего-лишь прикрытие для довольно догматичной религии со злобной богиней «Мать Ерия» и очень консервативным набором догматов и ритуалов. Особенно плохо дела обстоят там, где в науку начинает вмешиваться политика и идеология.
Поэтому надежда есть, но везде нужна золотая середина.
Нельзя ни безоговорочно верить авторитетам и публикациям, ни кидаться на новые идеи гиков от науки, 99% из которых являются абстрактными моделями, плохо коррелирующими с объективной реальностью.
Доверяй, но проверяй.
Практика — критерий истинности.
Но даже среди ученых не так много людей, которые осознают, что науки работают с научными моделями, а не с реальностью.
И любая модель всегда неполная, неточная и субъективная.
Любой торт можно разрезать на произвольное количество частей произвольным количеством способов. И утверждать, что существует только один, единственно правильный и объективный способ нарезки могут только религиозные догматики, без разницы, верят они в Бога или богиню «Мать Ерию».
Наука более податлива к переменам. Вера это изъян человека, подкреплённый биологией, хотя, в умелых руках она превращается в сильный инструмент для продвижения исследований.
То что старые «бздуны» по типу Эйнштейна, не хотят принимать «случайность» как данность нашей вселенной — это только их проблемы. Свежие идеи, особенно подкрепленные весомыми исследованиями, отлично выталкивают или расширяют старые и заматерелые теории.
Религия не хочет изменяться, особенно нынешние её представители. Ты не можешь просто так взяться и назваться пророком, сказав что «боженька шепчет», но ты можешь выдвинуть научную гипотезу, продвинуть её до теории, получить одобрение на исследование и заткнуть за пояс всех тех кто был против тебя или не верил в твои изложения. И они подвинутся, потому что твоё изложение будет иметь вес исследований, а не просто быть логично красиво (или красиво логично).
Конечно, молодым приходится работать над тем, чтобы гипотезы были восприняты и поняты. В некоторые гипотезы легче поверить, чем в другие, особенно трудно верить в то что было создано на основе твоих данных.
— Чёрные дыры испаряются? Какой вздор. Выкиньте свою докторскую в окно.
— Но они испаряются потому что так говорит не логика, а физика с математикой. Так говорят законы, которые Вы сами лоббируете повсюду.
— Тогда я пересчитаю всё сам.
* ten years later*
— Ваша идея имеет право на жизнь, даже если Вы её 9 лет назад сами доказали. Мне не с чем спорить, давайте подумаем как это работает.

Супер-упёртые личности конечно бывают, но в научной среде это довольно редкие экземпляры, исследования которых давно уже превратились в веру, а не в науку. Их тупик тоже рано или поздно появится за очередным углом.
Научный Вес доказательств — это вес который ты можешь набрать с ручкой и листочком. Понять что эта масса из себя представляет: надутый шарик или гранит — можно добравшись до исследований.
Наука держалась на открытости системы и возможности самостоятельно проверить каждое утверждение и вычисление.
Но все более узкая специализация и увеличение сложности оборудования эту открытость сильно подрезали.
Например, открытие бозона Хиггса на БАК — ненаучное в строгом смысле научного метода, потому что для его подтверждения нужен еще один независимый коллайдер, а вы его сможете построить?
Насчет повторяемости экспериментов в неестественных науках типа психологии или социологии и говорить нечего.
Наука держалась на открытости системы и возможности самостоятельно проверить каждое утверждение и вычисление.


Не было такого. Наука всегда бежала впереди себя. Раньше просто не нужно было строить коллайдеров для проверки своих теорий.
Как бы то ни было. Вопрос свободной науки решился еще в начале цифровой эры, когда на сцену вышло больше теоретиков. Именно эти люди, начали смотреть глубже и разбирать монументальные вопросы на детали. Теоретики быстро заняли нишу и начали генерировать гипотезы, стараясь довести их до теорий.
Нужно понимать, что всякие БАКи, супер-телескопы и мощные исследовательские станции — это исследовательский пик на данный момент. Никто в здравом уме просто не подпустит человека с сомнительной гипотезой до этих инструментов, потому что человек не прошел полный исследовательский круг.
Идеи рождаются в мыслях.
Гипотезы высказываются вслух.
Теории пишутся на бумаге.
Симуляции подарил нам цифровой мир и их проще делать в последнее время, потому что количество супер-компьютер растёт, а так же мощность рабочих станций растёт.
И где то там, на повороте в новую петлю, находится практический эксперимент, который венчает учёного или рушит все его надежды на собранные ранее вычисления.
Львиная доля идеи и гипотез отсеивается на стадии математического вычисления и на это есть веские и объективные причины. Те что доходят до симуляции обычно в таком же проценте идут потом на доработку, ну а практические работы на машинах построенных трудом тысячи людей заслуживают только реально крепких теорий. На такие теории всегда выделялись и будут выделяться огромные средства стараниями научного сообщества и это факт.
Насчет повторяемости экспериментов в неестественных науках типа психологии или социологии и говорить нечего.

Не совсем понимаю о чём вы. Единственное ограничение для этих «наук» — мораль. Мы бы могли уже давно построить сильное социально общество, если бы не были ограничены настолько моралью.
Поэтому Ваши претенции просто беспочвенны. Они логичны, но логика это вопрос восприятия отдельно взятой личности.

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

«Цепочка не более чем ста нейронов» при распознавании — это лишь запутывающее (сбивающее с толку) заблуждение вследствие примитивизации представлений о естественных нейронных сетях. При обучении, скажем так, «реалистичных нейронных сетей» следует учитывать широковещательное распространение выходного «электрического» паттерна нейрона в электропроводящей сети вокруг нейронов. «Нейрон, выступающий как самостоятельный агент, действующий в своих интересах» — это не совсем точная аналогия. Зрелый нейрон просто обладает изначальной естественной способностью распознать некоторую свою совокупность «сетевых» входных «электрических» паттернов и выдать широковещательно в электропроводящую сеть свой «сетевой» выходной паттерн. Нейрон постепенно «усиливает» свои «сработавшие» входные паттерны, но «неиспользуемые» входные паттерны «ослабляются» и «теряются». Выходной паттерн нейрона зависит от «подключённых» к аксону этого нейрона дендритов других нейронов, и потому обладает относительной стабильностью при сформировавшемся сбалансированном наборе своих входных паттернов. Иными словами, «реалистичные нейронные сети» не усложняют представление о работе мозга, а, наоборот, упрощают его понимание…
Большинство такие «мозг прост», а потом бац! и прионная болезнь. Капаем глубже и узнаём что в каждой клетке есть маленький регулятор температуры, который пропускает через себя покосившиеся белки, разбирает и собирает их снова и почему то человеческое мясо заставляет белки пересобираться в прионы (одна из теорий).
Моё мнение, пока мы не разгадаем самые противоречивые вопросы нашего организма, говорить о конкуренции «бездушной машины» с нашим мозгом не стоит.
Пока мы можем неумело копировать ту логику, что считаем (внезапно) логичной.
Нужно не забывать, что мы и наше окружение идёт под руку с хаосом — с кучей входящих и исходящих данных, которые разрушают одну логику и перестраивают её на другу. Чем крупнее мы начинаем видеть мелкие объекты — тем больше мы понимаем их работу. Это касается микробиологии, квантов и дальних звёзд, которые мы можем наблюдать только издалека.
Изнутри, это «просто», и чем больше масштаб структуры — тем больше влияние хаотичного на конечный результат, причём влияют не только такие же большие структуры, но и «простейшие». В итоге: чтобы создать что-то максимально похожее — нужно контролировать как можно больше хаотичных структур.
Но зачем нам создавать что-то похожее на наш мозг, только эффективней и быстрей? Просто чтобы понимать то что мы создали? А кто сказал что эта логика идеальна и способна развиваться дальше нынешних пределов?
Не будет ли более эффективным путём развитие как можно более точных систем наблюдения, чтобы получать более достоверную информацию? А сейчас ограничимся просто более быстрыми алгоритмами обработки и грубой интерпретацией, которой не стать тоньше просто благодаря одной системе получения информации и целого блока только её интерпретации.
Мы гонимся за идеальными системами до конца не умея симулировать всё что нас окружает, грубо убирая изъяны, думая что в хаотичном мире существуют объективные эталоны.

Главное автору не забыть умело использовать наработанные данные в дальнейших исследованиях, если избранный им путь приведёт в тупик.
Капаем глубже и узнаём что в каждой клетке есть маленький регулятор температуры, который пропускает через себя покосившиеся белки,

Это все нужно не для мышления, а для поддержания функционирования мозга. Механический мозг может быть устроен гораздо проще.
Кто сказал?
Опять же, я понимаю посыл, но хочется отметить что просто взять логику работы и перенести её на «идеальные» рельсы скорее всего не получится, потому что мы сформированы и функционируем за счёт всего что есть в нашем организме.
Мозг не механика и его логика базируется на каждой клетке, которая отдельно от тела долго не существует и которую трудно скопировать (исключая некоторые группы).
Разве мы не учим нейросеть «мышлению»?
Можно встретить много критических замечаний о том, что биологический мозг или биологические нейронные сети работают совершенно не так как ныне популярные компьютерные нейронные сети. К подобным замечаниям прибегают различные специалисты, как со стороны биологов, нейрофизиологов так и со стороны специалистов по компьютерным наукам и машинному обучению, но при этом очень мало конкретных замечаний и предложений.
Если говорить о взаимоотношении проблематики ИИ и нейробиологии, то они находятся во взаимном влиянии, обогащении друг друга. И это взаимовлияние усиливается по нарастающей, впору говорить о втором этапе когнитивной революции) Связано это со все более широким применением в исследованиях методов нейровизуализации, и приходом в нейробиологию и когнитивные науки нейросетевого моделирования. По своей значимости использование нейросетевого моделирования не уступает введению Галлилеем и Ньютоном математического метода в физику, и науку вообще. До этого матмоделирование в нейробиологии было спорадическим и не особенно эффективным.

Популярно об этой взаимосвязи ИИ и нейробиологии можно почитать в этом переводе, более серьезно в этом обзоре.
А можно чуть подробнее про Синтез? Я пару раз перечитал, что писал Павлов, но у меня это не складывается в математически стройную картинку.
Допустим, мы отбросили нейросети и готовы использовать любой ML — это линейной регрессии до AIXI. У нас есть такие таблицы X и Y:
X:______Y:
1 2 3____1
1 2 3 ___1
0 -1 2 __1
0 0 0 ___0
3 0 1 ___0
9 1 -2 __1
1 1 1 ___1
4 1 -4 __0
1 1 1 ___0
1 1 1 ___1
0 0 1 ___0
2 0 1 ___0

Надо найти правило, порождающее Y. Как бы здесь сработал синтез? Ну и анализ тоже

Сложно дать математическое объяснение явлению в рамках задачи которое это явление не решает. Я попытаюсь объяснить другими образом. Представим систему с тремя рецепторами А, В, С. Это значит наша система будет работать с семью паттернами А, В, С, АВ, АС, ВС, АВС. Но в биологической системе скорее не будет заготовлено детекторов всех комбинаций, их факториал от количества, эти детекторы будут появляться, если это потребуется. Сработали вместе А и В, появилася паттерн АВ. Это и будет Синтез, т.е. создание паттерна. А анализ это обратное распространение ошибки. Если при детекции АВ ответ системы будет ошибкой, а при детекции только А ответ не будет являться ошибкой, то система прекратит ответы на раздражение АВ, а будет реагировать только на А. Это значит, что рецетор А будет иметь высокий вес в паттерне А, и рецепторы А и В будут иметь отрицательный вес в паттерне АВ. Надо понимать, что Анализ-Синтез это не универсальная формула решения задач. Это одни из механизмов протекающих при отработке информации корой, только лишь отдельной частью развитого мозга, это нельзя применить к простейшим или всей нервной системе.

Я правильно понимаю, что синтез — это выходит, что-то типа feature engeneering? То есть есть у нас датчики A и B, а целевой сигнал лучше всего скоррелирован с функцией A&B. И мозг накидывает, может быть, несколько разных функций (A&B, A|B, AxorB), а затем замечает, что именно A&B позволяет быстро построить компактную прогнозную систему.

То есть применительно к моему примеру процесс синтеза выглядел бы так: посчитай скользящие средние с окном 2,3,4, тренды с таким же окном, суммы по строкам и maxpool по строкам, затем скользящие средние и тренды от суммы и maxpool… О, скользящее среднее с окном 2 от суммы прокатило, оно хорошо предсказывает Y, оставим это правило препроцессинга
Да, это уже ближе. Но если вести аналогию с НС, то здесь за каждый паттерн отвечал бы отдельный нейрон. Вес рецепторов А и В положителен в нейроне АВ — это A|B, только сумма весов рецепторов А и В выше порога для активности нейрона АВ — это A&B, веса могут быть и отрицательными соответственно еще можно составить формул. Но прежде создается при Синтезе нейрон с равнозначными положительными весами (A|B), а затем с помощью анализа происходит изменения в весах. В классических НС эти связи определены заранее, если нейронка полносвязная с одним слоем, то есть несколько нейронов-паттернов с одинаковым набором всех рецепторов, поэтому я говорю о полном отсутствии синтеза.
А есть какое-то понимание, как вообще живые нейросети проводят этот синтез — хотя бы функциональная модель процесса?
Я пытался реализовать похожую логику в ML, и она требовала умения быстро примерно оценить, будет ли полезно новое понятие. То есть у нас, допустим, нейронка в 50 слоёв, и можно на один из её входных контактов подать A&B. Или оставить там всё как есть. А как узнать, надо ли? А для этого строится маленькая и простенькая модель (линейная регрессия, например), которая предсказывает Y с наличием A&B и без этой фичи. Если с фичой лучше — подключаем её к большой нейросети.
Но… В живой нейросети довольно сложно представить, чтобы вот так на лету строилось и проверялось несколько простых моделек.
Очень просто, главное единовременность событий. Точнее статистическая единовременность. В биологии есть понятие статистическое обучение, это пассивная форма научения, к примеру, способность реагировать на звуки родного языка у младенцев, за счёт того, что они эти звуки часто слышат. Здесь не требуется вообще никакого внешнего подкрепления, главное это комбинации на входе. В мозге как бы есть два направления обучения снизу вверх и сверху вниз. Снизу верх — это Синтез, достаточно только входов. Сверху вниз — это Анализ, придания рангов признакам. И эти аспекты, естественно, влияют друг на друга.
То есть если у нас условно 10000 входных каналов (например, это кожные рецепторы), то мозг находит среди них попарные корреляции и пробует их использовать как новые фичи?
Или эта механика работает на пространстве с уже пониженной размерностью?
И… Есть какое-то примерное понимание, как быстро перебрать эту кучу попарных корреляций (ну пусть не для 10к входов, а лишь для 100)? Даже если у нас огромная параллельность и мы можем эти корреляции считать аппаратно.
Так, нет. Нет никаких переборов, тем более попарных. Паттерн возникает только тогда когда есть в нём потребность. Есть три рецептора, если эти рецепторы активизировались только все вместе и только так, то будет только одни паттерн АВС, даже не возникнет паттерна просто А. Зачем перебирать все комбинации если мы их никогда не встречали. Только когда возникает комбинация раздражителей АВ может возникнуть новый паттерн АВ, причём он еще должен закрепиться несколькими повторами.
Ну, вот у нас 3 временных ряда:
ABC
100
001
010
000
110
000
000
011
110
Одновременно у нас могут возникать A и B, B и C, плюс каждый сенсор иногда срабатывает не одновременно с другими.
Как должна быть устроена система, чтобы без попарного сравнения понять, что в момент номер 5 одновременно сработали A и B, и хорошо бы построить (или начать строить) паттерн?
Кажется, это правило Хебба (или что-то очень похожее), но я плохо себе представляю систему, которая отслеживает одновременное срабатывание нейронов и как-то на это реагирует
А есть какое-то понимание, как вообще живые нейросети проводят этот синтез — хотя бы функциональная модель процесса?

То, о чём говорит aigame, называется — выделение постоянного паттерна. Рецепторы формируют сенсорную картинку, которая непрерывно меняется:
например, такая последовательность 'кадров'
1QAW
E3RT
A9YU
IO7P
S5AD
6FGH
JA8K
LZX0
4CAV


Здесь есть постоянный паттерн A, который оказывается в разных контекстах.

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

вот примерно так сработал бы фильтр
1QAW
E3RT
A YU
IO7P
5A
6FGH
A
LZX0
A


На самом деле это не только фильтр, но и «сепаратор». Он относит разные паттерны в разные тайм-слоты. Это давно известная синхронизация нейронов, «наблюдающих» общий объект.


После того как паттерн выделен ему можно присвоить идентификатор. Фактически вся сенсорная картина предстаёт в виде описания из идентификаторов присутствующих на ней объектов.

А в основе работы фильтра лежит простая идея: нейрон активируясь, запоминает на синаптических кластерах группу активных соседей. Работают: синаптическая пластичность (Spike-timing-dependent plasticity, STDP) и статистика.

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

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

Надо взять машину с нейронной сетью внутри, с рецепторами и эффекторами снаружи. Поместите эту машину в богатую естественную среду, задайте общие цели, и она станет животным!
И даже от архитектуры нейронной сети зависеть не будет? :):)
да, потому что это мелочь. Утрирую конечно.

Рассуждать надо о данных, а не об алгоритмах. Смотреть на алгоритм и измерять его характеристики бессмысленно, так как мимо глаз проходит самое главное.

Конечно алгоритм совместно с данными определяет выход, но данные — это более важная составляющая.
Автор напрасно делает ссылку на опыты Павлова т.к.:
1. Еще при самом Павлове было продемонстрировано что рефл. дуга является частным случаем кольца /П.К.Анохин 1934 г./.
2. Процесс анализа имел термин — дифференцировка раздражителя. И Было показано опять же школой Анохина что для этого требуется объяснить другой процесс — ТОРМОЖЕНИЕ. который сам Павлов раскрыть не смог. Это сделано было позже.
3. Условные рефлексы != когнитивные /суть познавательные/. Как раз наоборот потребовалось внести последние /Толмен at all 1932/как отдельный объяснительный механизм поведенческих явлений.
4. Ориентировочный рефлекс и ориентировочные реакции — Читаем Е.Соколова /1962/+ ориентировочное подкрепление /Гальперин 1976/ есть фундамент когнитивных явлений.
5. Подкрепление — без него нет даже инстинктивные формы /как цепи без усл рефлексов/ поведения угашаются, по крайней мере пороги активации и вариативность их растут.
Процесс синтеза был раскрыт школой Анохина для чего им и был выделен блок «афферентный синтез». Иваницкий показал его морфологический коррелят в модели «Re-entering stimul».
И автор ошибается. механизм Синтеза присутствует в ВНД. Подробнее А.Н.Бернштейн «О построении движения» /1947/. Без него сложные манипуляторные движения руки /как сочлененный, многошарнирный рычаг / или локомоции были бы не возможны
И да у рано ослепших процессы дегенерации стриарной и экстрастриарной зон неокротекса статистически не отличаются от зрячих. Т.е. депривированные специал на зрении нейроны не гибнут массированно.
Качественная статья, интересно было почитать, но есть пара вопросов:

1) Если мы хотим объяснить сознание нейронной сетью, то как в терминах нейронных сетей задаются алгоритмы поведения?

2) Как происходит первичное накопление образов (объектов) при восприятии? Возьмем ребенка, первый раз увидевшего свет, как в терминах нейронных сетей у него формируется библиотека образов? Как она обновляется? Как определяется то, что нужно добавить еще один образ? Как происходит удаление повторяющихся образов (человек выявил закономерность в каком-то явлении)?

3) Как объясняется восприятие иллюзий, например классической «старуха и девушка»? Как в терминах нейронных сетей объясняется, что человек может сознательно видеть то старуху, то девушку?

4) 300 нейронов кольчатого червя c.elegans это очень мало. Можно использовать безумно сложные модели нейронов чтобы повторить его поведение. Подскажите, удалось ли создать модель нейронной сети, которая бы полностью предсказывала поведение червя?
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.