Как стать автором
Обновить

Комментарии 27

Всё быстро развивается, многие разработки засекречены, кто знает, возможно всё вышесказанное вовсе и не миф, а реальность. Касательно древнегреческих математиков не соглашусь, Греция внесла наибольший вклад в развитие человечества, математики тех времён продвинулись в своих знаниях на столько, на сколько это было возможно.
Согласен со всем вышеперечисленным. Что касается Греции, то я нисколько не хотел умалить их вклад. Он огромен. Я хотел подчеркнуть ту мысль, что мы сегодня, пусть и в публичной сфере, в области ИИ на той же стадии. Есть логика, есть инновации, но нет достойного мат. аппарата. Нет качественного перехода. По крайней мере, мне не разу не попадалось опровержение моей гипотезы. Если есть такое — с удовольствием ознакомлюсь. И внесу корректировки.

"Многие разработки засекречены" — вздор, люди, которые занимаются нейросетями в разных предметных областях, известны пофамильно и их работы можно найти на Google Scholar и arXiv.org. Весь софт сейчас тоже доступен. Все кто "засекречивают" свои разработки на практике отстают от state-of-the-art в лучшем случае на пару лет.

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

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

1. Нейронные сети
2. Генетические алгоритмы
3. Методы вероятностного программирования и т.д.

Возможно, что кому-то покажется, что здесь «в одну кучу» свалены совершенно различные технологии.
Честно говоря, мне кажется именно так. Пройдемся по вашим общим чертам:
1. Предполагают обучение системы.
Генетический алгоритм (кстати, почему вы его все время называете во множественном числе?) — это алгоритм безусловной оптимизации нулевого порядка, логичное обобщение метода стохастического покоординатного спуска. Если я решаю задачу «x^2 + y^2 -> min», тут не предполагается никакой системы, которую можно обучать. Да, при решении задач машинного обучения используются алгоритмы оптимизации, но никто в здравом уме не будет обучать хоть сколько-нибудь гибкую модель генетическим алгоритмом. И даже если вы именно это имели в виду, это далеко не самое частое его применение. То же самое с вероятностным программированием: оно позволяет манипулировать распределениями вероятностей для каких-либо расчетов, наверняка это очень удобно, например, при моделировании квантовых эффектов. При чем тут обучение и что тут обучается — не очень понятно. Да, очень многие модели машинного обучения по своей сути вероятностны, и, наверное, их будет удобно реализовать в рамках вероятностной парадигмы программирования, но зачем ограничивать эту парадигму только этим применением?
2. Основа базы знаний — совокупность образцов в рамках классифицирующих признаков.
Вы говорите об обучении с учителем или без учителя? Стоило бы отметить, что верные ответы для объектов обучающей выборки тоже могут быть известны (а могут и не быть). А еще есть алгоритмы машинного обучения (широко применимые), работающие без признаков или с признаками, принадлежащими совсем другому пространству посредством ядерных функций. Ну и, опять же, к генетическому алгоритму и вероятностному программированию пункт неприменим. Ну и лучше использовать распространенную терминологию, чтобы читатель вас понял («обучающая выборка»).
3. Предполагают наличие избыточных конкурирующих вычислений до достижения одним из потоков заданного порога достоверности.
Вы имеете в виду, что в генетическом алгоритме все точки, кроме ответа, не используются после завершения работы алгоритма? Так это очевидно и так работают все алгоритмы оптимизации, ибо мы не можем взять и угадать экстремум на первой же итерации. Вообще, из этой фразы складывается впечатление, что обучаем столько нейросетей, сколько у нас ядер доступно, а потом оставляем только лучшую, но так никто не делает. Надеюсь, вы поясните этот пункт.
4. Результатом вычисления являются как правило какие-либо прецеденты из заранее установленного списка.
«прецеденты из заранее установленного списка» — это объекты обучающей выборки, что ли? Это неверно. Если же вы лишь имели в виду, что у алгоритма есть какая-то заранее известная область значений, то это у любого алгоритма так, зачем об этом писать?

Вывод по этим пунктам: лишь части пунктов, и лишь в некотором смысле удовлетворяет ИНС, остальные алгоритмы не удовлетворяют ни одному пункту. Кроме того, это алгоритмы из совершенно разных областей, и непонятно, почему были взяты именно они.
  1. ИНС — один из алгоритмов машинного обучения. Почему вы объединяете его с чем-то сильно непохожим, игнорируя другие алгоритмы (логистическая регрессия, обобщением которой является ИНС, или тот же MatrixNet, который вы цитируете в начале статьи («формулу ранжирования пишет машина») — это, вообще-то, градиентный бустинг решающих деревьев)?
  2. Генетический алгоритм — это метод оптимизации. Почему вы выбрали именно его, а не, скажем, отжиг? Никто в здравом уме не будет обучать модель машинного обучения генетическим алгоритмом, в отличие от, скажем, стохастического градиентного метода, метода сопряженных градиентов, BFGS, не логичнее ли в контексте машинного обучения сказать пару слов об этих методах?
  3. При чем тут вероятностное программирование, вообще непонятно, ведь это парадигма разработки ПО, такая же, как объектно-ориентированное, функциональное, логическое или квантовое программирование.

Про «выводы» сразу после определений и без какого-то тела статьи тут уже высказались.

Далее, мне не видна аналогия с древней Грецией. Мы уже умеем решать задачи формальными математическими методами — для того, чтобы написать «A+B» или решить любую олимпиадную задачу, нам не нужно машинное обучение. Более того, оно будет лишь вредно в такой задаче, ибо даст приближенный (а иногда и совсем неверный) ответ. Но, увы, далеко не все задачи в нашем мире имеют строгое формальное решение, и даже там, где решение есть, оно может работать очень долго или требовать информации, которой у нас нет. В этом случае можно получить приближенный ответ с помощью машинного обучения, и это будет лучше, чем ничего. Мое мнение: машинное обучение — последнее средство, если задачу можно решить иначе, она должна быть решена иначе. Так что машинное обучение едва ли в будущем позволит получить математически доказанный верный ответ, оно просто для других задач.

Итог: берутся три модных понятия из совершенно разных сфер и пихаются в одну кучу, потом даются их определения и разводится философия на пустом месте. При этом игнорируется общепринятая терминология, а очевидные фразы пишутся тяжелым для понимания языком. Если бы это была статья в желтой газете, я бы решил, что таким образом автор набивает себе уважения, затрудняя понимание текста читателем, но, учитывая, что статья на хабре, не склонен никого ни в чем обвинять. Статья нуждается в глубокой переработке, и крайне желательно это сделать ДО выхода новых статей цикла.
Большое спасибо за комментарий!
Готов согласится с частью замечаний и с тем, что статья нуждается в доработке, я уже писал об этом в предыдущих комментариях. Слог тоже оказался слишком тяжеловат. Соглашусь с тем, что слишком сильно урезал статью.
Что касается замечаний по сути:
1.Генетические алгоритмы во множественном числе потому, что реализаций несколько. Хотя можно и в единственном. Не принципиально.
2.Что касается «обучения» ГА — тут я бы не сказал, что все так однозначно. Как я писал в статье — выбор целевой функции как раз и может выступать в качестве объекта обучения. Например, при использовании ГА для распознавания текста. Что касается вопроса: «Да, очень многие модели машинного обучения по своей сути вероятностны, и, наверное, их будет удобно реализовать в рамках вероятностной парадигмы программирования, но зачем ограничивать эту парадигму только этим применением?» — я не ограничивал, я анализировал применение этих алгоритмов именно в раках задач ИИ. Я ни в коем разе, не посягал на другие области, где они являются достаточно привлекательными.
3.Я намеренно использовал термин «база знаний», а не «обучающая выборка». Тем самым я хотел подчеркнуть факт априорности знаний, их внешний характер. Кроме того, желательно, что бы «обучающая выборка» была заранее проклассифицирована по n-измерениям, которые необходимо заранее сформировать экспертами в предметной области. Что касается замечания про "… алгоритмы… работающие без признаков", то область их применения весьма ограничена. Я же старался рассматривать более общий случай. Таким образом, мне показалось, что термин «обучающая выборка» недостаточно точен. Мы имеем дело именно с базой, обладающей внутренними связями. Хотя соглашусь — на будущее буду давать пояснения.
4. Я не вижу смысла в рамках статьи разделять «обучение с учителем» и «обучение без учителя». На мой взгляд, реального обучения без учителя не существует. Под этим термином следует понимать не более чем задачи аппроксимации/кластеризации.
5.Что касается «избыточных конкурирующих вычислений», то я ни в коей мере не имел ввиду «обучаем столько нейросетей, сколько у нас ядер доступно». Не понимаю почему Вы так решили. Я имел ввиду, что сам по себе вероятностный подход не оптимален с точки зрения использования ресурсов. И согласитесь, что параллельная проверка множества гипотез не в задачах обучения, а в задачах распознавания — довольно распространенное явление.
6."«прецеденты из заранее установленного списка» — это объекты обучающей выборки, что ли? Это неверно." Вот тут не соглашусь. Каким образом «родится» новый объект? Собственно, одна из целей статьи показать, что как раз этого и не происходит. ИИ может диагностировать болезнь и методами аппроксимации выявить новые закономерности. Но она не в состоянии «открыть» и проклассифицировать новую болезнь или хотя бы букву алфавита.
7.Что касается греков. Аналоги с греками была о другом. Аналогия в том, что сегодняшнее состояние дел в области ИИ похоже на состояние дел с математикой в Древней Греции. Существующий мат. аппарат громоздок, но примитивен. Причина примитивности, по моему частному мнению, как раз в том что не определены и не сформированы сими базовые понятия о том что такое «объект», «похожесть», «качество», «предложение», «образ» и т.д. с точки зрения философии логики и математической теории. Статья именно об этом.
8.«Модные понятия» взяты осознанно и об этом прямо написано в самом начале статьи. Это и не скрывается, а наооборот — подчеркивается. Взято это для наглядности. Не соглашусь с всеобъемлемостью утверждения:«При этом игнорируется общепринятая терминология». Хотя в отдельных моментах — признаю факт того, что необходимо более тщательно раскрывать мысль.
9.Очень жаль, что Вам увиделись философствования «на пустом месте». Впрочем этот упрек полностью принимаю на свой счет. Раз есть такое мнение, значит тема мной раскрыта недостаточно ясно. Буду работать над ошибками.

Хотел еще раз поблагодарить за столь развернутый комментарий и критику статьи, это был очень полезно для меня и выводы будут извлечены в обязательном порядке.
Большое спасибо за эти уточнения. После прочтения комментария пришлось читать статью заново, поскольку ее смысл для меня полностью поменялся. Думаю, многие из проголосовавших отрицательно сейчас бы поставили плюс.
5. Ну так вроде нам все равно эти все гипотезы придется проверить, так что они не избыточны? Допускаю, что мы с вами имели дело с несколько разными областями или способами приложения машинного обучения, если сможете рассказать подробнее, что вы имеете в виду, буду премного благодарен.
6. Если я решаю задачу восстановления регрессии, каждый новый ответ будет, скорее всего, отличаться от всех предыдущих, просто потому, что он вещественнозначный. С классификацией новой болезни средствами машинного обучения тоже не вижу каких-то принципиальных проблем: при обучении добавляем в выборку не только описания объектов с метками болезней, но и белый шум с меткой «неизвестная болезнь». По мере накопления объектов, классифицированных как шум, кластеризуем их, все достаточно большие и легко отделимые кластеры объявляем новыми классами, присваиваем им метки и обучаем нашу классифицирующую сеть заново. Если подумать над задачей больше 5 минут, думаю, можно и получше идею придумать. Конечно, это все будет выдавать худшее качество, чем если бы работал человек.
7. Не согласен с отсутствием формальных определений: например, Воронцов в своих лекциях многие из них вводит: http://www.machinelearning.ru/wiki/images/6/6d/Voron-ML-1.pdf (стр 4-6 и далее). Вы имеете в виду, что с этими определениями что-то не так?
8. Да, теперь понятно, зачем нужны именно эти «модные понятия» и видно, что они применены верно. Да и с игнорированием терминологии я явно погорячился, учитывая, что в некоторых местах (та же «база знаний») вы имели в виду не то, что я думал. Приношу извинения.
9. Ну и, с учетом этого комментария, философствования теперь уже совсем не на пустом месте =)
Да, все верно. Не только Вы, но и другие вне хабра, также посетовали на недостаточную ясность изложения. Думаю как с этим справится, но при этом не впасть в «умствования».
5.Вот это тот вопрос, который мне совсем не удалось раскрыть. Я попробую раскрыть это в новой статье. Пока попробую объяснить пусть и криво пока: Если абстрагироваться от ИИ и оперировать «бытовыми понятиями», то есть две всем известные противопроложности. Метод «проб и ошибок» и «чистой логики абстрактных выводов». Определения сырые. И на мой взгляд ИИ может стать ИИ в «нормальном человеческом понимании», когда удасться реализовать «порождающую» логику, способную раздвигать границы известного системе мира. И оперировать именно логическими выводами на уровне абстракций. Сегодня же перебор гипотиз — неизбежность. А должна быть именно проверка гипотезы, сформированной логикой. Хотя не везде и большой класс задач, которые я б назвал «Павловскими задачами» (по аналогии с инстинктами, рефлексами — «тигр — бежать» ) не требуют такой логики. Решаются они уже сейчас в той или иной форме. Например, распознавание образов. Мало того, такая логика там будет только мешать. Следующую статью я хочу посвятить именно этому аспекту с учетом полученных ошибок.
6.Все верно. Но верно на уровне «человеческой логики». Вопрос как раз в том — как эти метки ставить? И как выделить тот факт, что вот тут есть подозрение на новый объект, а тут только на свойство, а тут шум? Кластеризация только частично отвечает на этот вопрос, она дает скорее «сырье» для выводов. А вот есть ли математика способная это сделать? Как учесть, но не «тупо» аппроксимировать регрессионные колебания? У меня пока нет ответа. Я то ладно. Но, судя по всему, нет даже у таких корифеев как Хинтон, который (поправьте меня если ошибаюсь) не ушел дальше экспериментов с векторами.
7.Да, я думаю что с определениями много что «не так». И в этом одна из базовых проблем. Если нет базовой аксиоматики — то нет и науки.
8.Повторюсь, моя вина.
9.Спсибо.
То есть, я правильно вас понял, что вы предлагаете считать ИИ только систему, способную на проведение самостоятельных научных исследований? (не обязательно любую такую систему)
Не думаю. ИИ — это термин, который определяет уже даже не класс задач, а отрасль знаний. Я думаю надо вводить классификацию задач ИИ. Определится с целями и т.д…
Например:
1.Низкоуровневые «задачи Павлова» (распознавание образов и т.д.)
2.Поисковые задачи дедуктивного анализа, связанные с ограниченным выбором — например, «задачи автопилота»
3.Задачи классификационные (рождение новых измерений, умение формировать предметную область т.д.) Каталогизация текста, выявление новых болезней. Тут все же не 4.
4.«Задачи абстрактной логики» или индуктивные. Это прежде всего задачи прогнозирования.

10. Отдельная этическая тема — а нужно ли все это? К сожалению, не могу найти упоминание о 23 пунктах, подписанных известными людьми о применимости ИИ. Недавно совсем. Среди подписавших Маск и, что хуже, Хокинг. Очень неоднозначный биль.
Мне кажется, «нужно ли все это?» — это не совсем верная постановка вопроса, ибо рано или поздно ИИ человеческого уровня будет создан, даже если научный прогресс вообще запретить, просто потому, что это выгодно. Принципы из статьи, конечно, очень похвальные, но они очень сильно затрудняют разработку в этой сфере, так что сомневаюсь, что тот, кто первым создаст ИИ, будет следовать большому числу из них.
Конечно, это не значит, что не стоит призывать всех следовать всем принципам.
Совершенно согласен.
Нашел, но надо проверить насколько это соответствует действительности. И если это так, то стоит отдельной статьи. https://tproger.ru/articles/hawking-musk-endorsed-23-ai-principles/
Как бы дискуссионно. Но для продуктивного обсуждения сабжа в разрезе «мифы или реальность» мало данных, и я в целом не очень уловил смысл (точнее новизну) изложенного.

То что ИНС — просто неплохой многомерный аппроксиматор/классификатор — это известно почти всем.
То что ИНС и/или ГА не ИИ известно вообще всем.
То, что мы думаем используя НС (вернее даже сеть сетей) тоже известно всем.
То что ИНС != НС человека тоже известно всем.
Поэтому непонятно, что сказать-то вообще хотели?

Вывод «все плохо, экстенсивно, почему до сих пор не изобрели ИИ, ааа, нет перспектив» таковым не является.

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

Я что-то не понял? Или это она (астрология) и есть?
disclaimer Я правда не понял. Буду благодарен за пояснения.
Вы все правильно уловили. Написать статью побудило частое общение в последнее время на эту тему с явным непониманиманием происходящего, бурными восторгами. И, к сожалению, это не очевидно всем, статья в общем-то вынужденная. Многим кажется, что «простое» усложнение размеров и разного рода костылей приведет к созданию «думающих» машин. Собственно, это и побудило к написанию статьи.

Ввиду необходимости избежать излишней «научности» и «раздутости» мне пришлось убрать большую часть выводов. Тут вы тоже правы.

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

Кроме того, я хотел выразить мысль, что в не зависимости от того, что выбрано ИИ, ГА и т.д. тем, кто будет размышлять на тему ИИ следует (по моему частному мнению) озадачится анализом отличия/наличия дедуктивной и индуктивной логики предлагаемого мат аппарата!

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

P.S. ИНС — в общем-то и как классификатор не очень работает. К сожалению, это только аппроксиматор.
akhmelev плюсовать не могу, но +++!
Очень интересная статья. Я прям даже осознал, зачем философию на кандидатский минимум сдавать надо.
Собственно, говоря так и есть.
я так понял из статьи, что существующие тенденции в математическом аппарате хоть и решают часть задач, но неполноценны и сравнение с древнегреческим подходом (уровнем знаний) вполне разумно. Ибо пока все эти направления не приведут к созданию полноценного ИИ. И что задача научить комп философствовать :)
Существуют различные варианты реализации такие как байесовские сети[1], рекуррентные сети[2]

пардон, но нейронные сети и байесовские сети это все-таки разные совсем вещи, не слышал, чтобы кто-нибудь рассматривал байесовские сети как подвид нейронных сетей
Это скорее исторический экскурс. Конечно, их вот прям так никто в живую не использует.
Я примерно о том же думаю — проблема нейронных сетей не только в том, что мы не получили решения задачи, но и в том, что мы не можем строго доказать, что это решение работает хорошо, а значит непонятно насколько можно доверять нейронным сетях ответственные вещи, например вождение транспортного средства.
Другой вопрос — существуют ли вообще строгие решения для таких классов задач, но пока не доказано обратное имеет смысл искать.
Статья — вода, без вкуса, цвета, запаха.
Только Алекс норм пишет\стримит про ИИ, а это — так, х… какая-то.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории