Поскольку это лишь первая часть, в которой мы поймем что такое ИИ, в чем заключается одна из его главных слабостей - начнем, как полагается айтишникам, издалека, с мемчиками и максимальным осуждением, а далее углубимся в тему и будем смотреть живые примеры и код с красивыми графиками. Людям знакомым с машинным обучением можно этот этап пропустить, вы уже не самые маленькие :).
Искусственный интеллект в понимании среднестатистического обывателя, эта такая штука, которая делает что хочет, ведет себя как ей нравится, никого не слушает и обязательно захватит мир, если мы его будем развивать.
Естественно, ни о какой достоверности или близости таких рассуждений к реальности, как и во всем среднестатистическом, речь идти не может. Искусственный интеллект, на базовом своем уровне, это некоторое количество условий, представляющих собой, в совокупности алгоритм принятия решений, работающий по принципу "Если идёт дождь, стоит взять с собой зонт", или другими словами - ищет закономерности. Звучит не так страшно? А мы ведь только начали.
С точки зрения мира, машинное обучение как подход к решению задач, очень молод. Первые шаги в этом направлении были проделаны только в 1950-ых, и имели "под капотом" чистую статистику. Решали такие алгоритмы простые, с точки зрения людей, задачи. Если спуститься еще ниже, можно сказать, что применение корреляционного анализа (это там, где "Если бьют беги, если дают - бери") уже можно назвать машинным обучением, а сам метод, между прочим, был придуман в далеком 19-ом веке. И да, я незаметно перешел на какой-то сухой и неинтересный термин "Машинное обучение".
"Как понять, занимаетесь вы искусственным интеллектом или машинным обучением? Если у вас открыта среда разработки, то это машинное обучение. Если вы нажимаете кнопки в Power Point, то это искусственный интеллект."
Так повелось, что в новостные сводки и речи политиков попадают лишь самые громкие, самые провокационные термины, которые призваны продать, но не объяснить "с чем это едят". Мы видели это уже много раз, специалисты по BIG DATA и Сloud computing точно поймут, про что я говорю. Но мы отвлеклись, поговорить мы хотели про другое.
Для понимания проблемы, необходимо сначала понять, что же такое машинное обучение, как оно работает. Если на пальцах, процесс выглядит следующим образом:
Собрать данные из области, где мы хотим нашу
машинумодель заставить решать задачи.Выбрать тип модели, которая будет искать в данных зависимости.
Запихнуть в алгоритм собранные ранее данные, значение которых мы осознали, поскольку последствия событий мы уже пережили.
Запихивать данные по мере их поступления и получать ответ нашей модели, когда мы еще не знаем, что именно они означают, рассчитывая, что так оно и будет, когда время дойдет до последствий.
Исходя из этого, можно с уверенностью сказать, что:
А еще можно сказать, что нам остается только надеяться на то, что модель действительно ответит на наш вопрос правильно. И все бы ничего, когда речь идет о ценах на жилье, ценах на машины, голосовом помощнике, где обычный сценарий использования - прикинуть сколько мы заработаем в следующем году или типичное "Сири позови Алису". А что делать, когда мы захотим ответить на вопрос о том, есть ли у человека рак и сколько ему осталось жить? Что будет, когда к нам придет врач, которому надо назначить лечение и спросит о том, почему наша модель сказала, что человек болен? В такой ситуации мы "сядем в лужу", и останется лишь промямлить "ну искусственный интеллект же".
И тут (примерно в 70-ых) умные дяди мира сего пришли ко мнению, что просто все бросить, отгородиться этикой и игнорировать такие области - не вариант, нужно придумать что-то, что позволит нам сказать, почему модель дала именно такой результат, и отвечать на вопрос "Почему?", помимо привычного нам "Что?".
Давайте для примера рассмотрим простейший случай, когда у нас есть данные о динамике стоимости квартиры за прошедшие несколько лет (Рис. 1, слева). Мы хотели бы на основании этих данных сказать, сколько эта квартира будет стоить в следующем году(Рис. 1, справа), и для этого построили такую линию, которая минимизирует сумму расстояний от прямой до всех точек (наблюдений). Такой прием называется Линейной регрессией, и строится по простейшей формуле прямой, которая всем нам известная:
Где m — наклон линии, а b — его y-сдвиг
Можно поиграться тут - https://colab.research.google.com/drive/1_hr2-CQIb5gpBlMnQYI-U_QIDB9L9-tT#scrollTo=6KtWO4tvQD33 меняем random state, запускаем и радуемся.
Путем простейших действий, мы уже можем сказать, что же там, в следующем году у нас случится. Да, точность такого предсказания будет сомнительна, но если нас спросят, почему мы дали тот или иной ответ, мы ткнем на график и с умным видом скажем "Тренд видишь?". Это и будет объяснением нашего решения, т.е. мы уже сможем худо-бедно обосновать его.
И если в случае простейшего алгоритма, объяснить что-то еще можно, поскольку вся информация удобно размещается на одном рисунке, то что сказать, когда признаков у нас не один (год), а сотня? А если качество решения нас не устраивает и нам нужна модель серьезнее, вроде этого ... "нечто"(Рис. 2)?
К 90-ым, подходов, методов, алгоритмов и способов придумали массу. За основу брали, как статистические законы, так и алгоритмические свойства, но цель у всех была одна - сказать, что же там, в этой "черной коробке" происходит.
Вот мы и подошли к концу первой части. Мы разобрались, что такое машинное обучение и с чем его едят, какая проблема нас ожидает при его использовании и готовы перейти к изучению подходов, которые откроют нам глаза на то, как видит наш мир ИИ. Следующая часть нашего маленького сериала выйдет в ближайшее время и ссылка будет где-то в комментариях, не теряйтесь.
Комментарии (17)
Asiia_Thabet
09.12.2022 03:06+2Стоило бы классифицировать алгоритмы и определить, что рассматривается только supervised learning .
Eugeny_Kats Автор
09.12.2022 22:19Да, согласен. Не очень пока понимаю, как это сделать с точки зрения технической, чтоб прям видно было, что это xai, но пока на уровне тегов остается. Думаю по этому поводу
Exchan-ge
09.12.2022 04:32Исходя из этого, можно с уверенностью сказать, что:
Машина не может Убить всех людей
Может. Первый шаг уже был сделан (шаг вперед и шаг назад :)
В Сан-Франциско, где роботам дали право на убийство (правда, потом притормозили, на время)
Ну и далее: прогресс ИИ и, опа — «Военные игры» (WarGames, 1983) в натуре.
(прости-прощай три закона роботехники, вы были славным заблуждением всего прогрессивного человечества...)tarielr
09.12.2022 22:28Ну, если уж быть точным, не право на убийство, а возможность его совершить, когда находится под полным управлением оператора. Это как право на убийство у пистолета.
Во вторых, закон не принят, а на сколько отложили, неизвестно.
Ну и в третьих, речь идет о целых трех роботах, которые могли так работать (не забываем, что об автономной работе речь изначально не шла)
Exchan-ge
09.12.2022 23:01а возможность его совершить, когда находится под полным управлением оператора. Это как право на убийство у пистолета.
«Лиха беда начало» (с)
Автопилот Теслы тоже под полным управлением человека.
Пока.закон не принят, а на сколько отложили, неизвестно.
Процесс, как говорится, пошел (с)
Первый шаг уже сделан, следующие на очереди.
Тут главное — сам принцип, подход к решению вопроса со стороны заинтересованной структуры.идет о целых трех роботах
Любая новая технология начинается с малого.Eugeny_Kats Автор
10.12.2022 00:04Мне кажется, что вы преувеличиваете. Машине пока не дают решений серьезных принимать никаких, ни в медицине, ни в праве. Машинное обучение, это пока лишь маленький инструмент, как калькулятор, а то, о чем вы говорите - "Сильный" искусственный интеллект, и это больше пока научпоп, чем что-то серьезное.Даже в научной среде. Объяснимость ИИ это шажочек в сторону нашей счастливой совместной жизни, но сколько лет пройдет перед тем, как машинное обучение войдет в критические области нашей жизни, пока сказать очень сложно. Единственное, что можно сказать - это произойдет не скоро.
DGN
09.12.2022 05:08+2Критерии так себе. Создать новое? Да не вопрос, функция RND. Резко поумнеть - альфазеро достаточно резко умнела? Часто ли люди "резкоумнеют", кстати говоря? Выйти за рамки задачи, да не вопрос, вот "Жигули" к примеру, при задаче перевезти нас из точки А в точку Б, норовят развить нам навыки автослесаря.
Человек, в общем, та же машина. Только антропоцентричное мышление человека выделяет человека особым обьектом. Очень сложно нам будет принять машинный разум, будем докапываться... Мол не может полюбить, нет интуиции, души и божественной искры.
iamAnton
09.12.2022 10:35А вы готовы принять машинный разум, без докапываний? У меня стиральная машина интуиции не имеет, но вполне разумно стирает, и разные программы можно включать. Это уже разум, принимаете? Или все-таки она полюбить должна?
Kanut
09.12.2022 10:43+1Критерии так себе. Создать новое? Да не вопрос, функция RND.
Тоже немного смутила категоричность заявления. У нас вон эволюция кучу чего нового "насоздавала", в том числе и человека. Непонятно почему ИИ не сможет это сделать если поставить ему такую задачу и создать условия.
Eugeny_Kats Автор
10.12.2022 00:14Машина сможет и любить, и интуиция у нее будет, как только мы поймем, что это такое и как физически это протекает в теле. Поймем так хорошо, что сможем повторить, ну а пока, машина может только имитировать, и имитирует она, к слову, очень неплохо.
Что касается AlphaZero, то она не "умная", в прямом понимании этого слова. У нее память очень хорошая скорее. Как и было сказано, она не может придумать новые партии и новые ходы со стратегиями, она лишь повторяет те ходы, которые уже делали человеки, выбирая оптимальный в каждой ситуации. Если не ошибаюсь, она после каждого хода строит дерево возможнных вариантов развития событий, и сводит все к ветке, которая имеет наименьшую вероятность привести к негативному исходу. К слову сказать, ее недавно переиграли с помощью стратегии "противоположность логике", когда ходили таким образом, что машина подумала что она побеждает, а на самом деле, ее паттерны просто не покрывали такой случай. Это называется "состязательная атака" и я про это тоже скажу пару слов ;)
Ну и RND, не даром называется "псевдорандом", там все тоже не так просто, и настоящей случайности там нет) Если интересно, вот хорошая статейка по теме - https://habr.com/ru/post/137864/
AzIdeaL
09.12.2022 17:29Было б неплохо, замутить СантуБарбару, например, введение из частей так надувать.
Интересно же пишете
AzIdeaL
09.12.2022 17:35Упс, ... из частей так -надцать)
Eugeny_Kats Автор
10.12.2022 00:28Рад, что нравится. Приятно когда люди хотят что-то узнать, и еще приятнее это что-то им дать. Частей планируется пока 7, как оно пойдет, пока сказать сложно) Может быстрее управимся, может растянется это все на долго. Может так хорошо пойдет, что еще и устойчивость затронем, пока не хочу загадывать)
thevlad
09.12.2022 19:09+1Очень поверхностно. Как минимум стоит разделить классический статистический ML(все эти линейные регрессии, SVM, случайные деревья, бустинги). И более "современные"(более 8 лет как им уже) подходы основанные на глубоких нейронных сетях. С классическим статистическим ML все уже понятно, как с точки зрения теории и практики, на данный момент это commodity tech. То вот с глубоким обучением все ни так ясно, и область активно развивается...
Eugeny_Kats Автор
10.12.2022 00:26Да, поверхностно, я с вами согласен, но тут нет цели рассказать именно про мл, это необходимый базис того, что надо понимать "перед", на мой взгляд. Касаемо классификации алгоритмов и разбора "современных подходов", типа трансформеров, то тут не про это я хочу писать. Мы будем смотреть на машобуч как на черную коробку, которая нам что то дает, и пытаться в эту коробку влезть различными способами. Где-то, как с нейронками, влезть не выйдет и мы будет иметь дело с Post-hoc объяснимостью. Где-то, как с деревьями решений и прочим, мы будем залезать внутрь, потому что их можно объяснять алгоритмически, помимо post-hoc. Планируется рассматривать "Модель + подход объяснимости" в каждой части, чтоб и на мл посмотреть, и подходов разных узнать, и кейсы разные разобрать.
Eugeny_Kats Автор
10.12.2022 00:36Ссылка на следующую статью будет тут: <url>
Товарищи-друзья, скажите пожалуйста, получилось ли у вас с коллабом разобраться и позапускать что-то. Хотелось бы понять, стоит ли этому внимание уделять далее, или все "пучком" :)
Можно поиграться тут - https://colab.research.google.com/drive/1_hr2-CQIb5gpBlMnQYI-U_QIDB9L9-tT#scrollTo=6KtWO4tvQD33 меняем random state, запускаем и радуемся.
Ну и пожелания-хотелки, тоже неплохо было бы услышать.
ЗЫ - https://habr.com/ru/post/704608/ неплохой разбор инструментария начинающего датасаентолога, налетай. Если что-то непонятно, спрашивайте в тележке или в ВК, отвечу по возможности. Да и вообще, любые вопросы можете писать, пообщаемся :)
0pauc0
10.12.2022 11:32Вот же сказочка какая опять. Ну где же ссылки хоть на какую нибудь, ну хоть малюсенькую теоретическую основу, с математически доказанной погрешностью/непогрешимостью этих ваших искусственных интеллектов.
Все ведь уже давно придумано, обосновано - и передаточные функции, и наборы фильтров, и критерии устойчивости.
Eugeny_Kats Автор
Ссылка на следующую статью будет тут: <url>
Товарищи-друзья, скажите пожалуйста, получилось ли у вас с коллабом разобраться и позапускать что-то. Хотелось бы понять, стоит ли этому внимание уделять далее, или все "пучком" :)
Ну и пожелания-хотелки, тоже неплохо было бы услышать.
ЗЫ - https://habr.com/ru/post/704608/ неплохой разбор инструментария начинающего датасаентолога, налетай. Если что-то непонятно, спрашивайте в тележке или в ВК, отвечу по возможности. Да и вообще, любые вопросы можете писать, пообщаемся :)