Искусственный интеллект (ИИ) стал предметом более серьезных споров, чем когда-либо прежде. Многие люди беспокоятся о том, что роботы захватят мир. Концепция ИИ пугает людей, потому что они боятся того факта, что мы создаем ботов, в которых мы не знаем, как они работают. Но что, если бы я сказал вам, что большинство утверждений, которые вы слышали об ИИ, неточны? И когда я говорю "неточно", я не имею в виду "немного неточно"; СМИ ОЧЕНЬ неправы, когда дело касается ИИ. Как можно говорить об ИИ, если вы даже не знаете, как он работает, и не имеете опыта работы с ним? Хуже того, большая часть контента об ИИ, создаваемого СМИ, вряд ли содержит доказательства экспертов в области ИИ. На этом этапе все еще понятно, если вы не доверяете ИИ; Не думаю, что вы сразу со мной согласитесь. Но, надеюсь, к концу этой статьи вы по-новому взглянете на ИИ.

Давайте сначала поговорим о том, как ИИ внедряется в современном мире. Большинство людей думают, что ИИ - это то, что еще предстоит в будущем, но они не осознают, что ИИ на самом деле очень распространен в современном обществе. Gmail использует искусственный интеллект для фильтрации спама. Facebook использует AI, чтобы предлагать друзей. Youtube и Netflix используют AI, чтобы рекомендовать другие видео и фильмы. Вы когда-нибудь слышали об аналитике данных? Во многом это связано с машинным обучением, особой дисциплиной искусственного интеллекта. В распознавании лиц на новых iPhone используется ИИ. В наши дни в большинстве видеоигр используется ИИ. Проще говоря, ИИ уже стал обычным элементом многих технологий, которые мы используем сегодня. По правде говоря, люди очень мало осведомлены об ИИ; мы принимаем это как должное. Я понимаю, что у AI есть определенные недостатки. Например, если его внедрить на заводах по производству товаров, ИИ может заменить несколько сотрудников, что приведет к увеличению безработицы. Но когда было что-то, что не имело бы недостатков? Более того, существует множество сценариев, когда у ИИ практически нет недостатков, а у ИИ есть потенциал для решения многих из самых серьезных проблем, с которыми мы сталкиваемся сегодня. Например, уже было показано, что ИИ диагностирует различные заболевания, в частности рак, с гораздо большей точностью, чем существующие методы. Было даже проведено исследование, в котором 10 разным рентгенологам сделали разные маммограммы опухолей груди. Оказалось, что эти рентгенологи ошиблись в своем диагнозе на 10-55%. По данным Американского онкологического общества, 1 из 5 скрининговых маммограмм ставится неверно. С другой стороны, искусственный интеллект, разработанный профессионалами, может выполнять диагностику с точностью более 85-90%. Однако многие люди говорят, что не доверяют ИИ ...

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

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

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

Существует особый тип машинного обучения, называемый глубоким обучением, который основан на алгоритмах, называемых нейронными сетями. Именно здесь кроется основная полемика, связанная с искусственным интеллектом. Нейронные сети - это алгоритмы, моделирующие мозг; это может сбивать с толку многих людей, потому что они могут предположить, что нейронные сети обладают собственным интеллектом. Их, конечно, намного сложнее понять, но они далеко не близки к человеческому уровню интеллекта. Нейронные сети имеют три типа слоев: входной слой, выходной слой и скрытые слои, лежащие между входным и выходным слоями. Каждый слой состоит из определенного количества нейронов, определенных программистом, и каждый нейрон связан со всеми нейронами в предыдущем слое и со всеми нейронами в следующем слое. Каждый нейрон имеет вес; нейроны, которые не находятся во входном слое, принимают взвешенную сумму весов нейронов в предыдущем слое. У каждого нейрона также есть смещение, которое добавляется к этой взвешенной сумме, чтобы изменить неактивность этого нейрона. Эта взвешенная сумма затем проходит через функцию активации, которая преобразует эту взвешенную сумму в число по шкале от 0 до 1. Этот процесс продолжается с каждым слоем для каждого нейрона до тех пор, пока не будет достигнут выходной слой. Возьмем пример диагностики рака груди, который я использовал ранее. Если бы мы создали нейронную сеть для решения этой проблемы, входными данными были бы параметры, которые, по нашему мнению, связаны со злокачественной опухолью груди, а в выходном слое было бы два нейрона. Один нейрон будет представлять собой доброкачественный, а другой - злокачественный. Допустим, мы вводим параметры опухоли в сеть, и доброкачественный нейрон возвращает 0,02, а злокачественный нейрон возвращает 0,98. Поскольку злокачественный нейрон имеет более высокий вес (1 означает 100% вес), мы можем предсказать, что опухоль является злокачественной.

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

Чтобы объяснить эту неопределенность, давайте смоделируем один ход пула (бильярд) с помощью нейронной сети. Нейроны во входном слое будут представлять по одному мячу каждый. Нейроны в выходном слое будут представлять по одному карману каждый. Каждый скрытый слой может представлять один параметр, который влияет на то, куда летит мяч. Один скрытый слой может представлять другие шары, в которые он может попасть. В обычной игре в пул нам, вероятно, было бы легко предсказать, в какую лузу попадет мяч; необходимо выполнить очень мало вычислений, поскольку единственное, что нам нужно сделать, - это отслеживать, куда летит мяч. Мы можем сказать, как мяч будет отскакивать от стен, если стены плоские, и как мяч отскакивает от других мячей, если шары имеют идеально сферическую форму. Это будет очень простая нейронная сеть. Теперь предположим, что мы добавляем больше мячей. Существует больше переменных, которые могут повлиять на то, куда движется мяч, поэтому может стать немного сложнее предсказать, в какую лунку приземлится мяч. Эта нейронная сеть будет немного более сложной, чем раньше. Но теперь, допустим, мы добавляем еще много скрытых слоев. Один скрытый слой может представлять стены, но на этот раз стены не плоские; они могли быть изогнутыми или иметь шипы. Один скрытый слой может представлять поверхность каждого шара; что, если они не имеют идеально сферической формы и неравномерно изогнуты? Один скрытый слой может представлять землю; Земля теперь не ровная, а изогнутая. На этом этапе вы наверняка не сможете предсказать, куда пойдет мяч. Он слишком сложен, слишком много переменных и слишком много вычислений, чтобы проводить его.

Это как раз та проблема, с которой мы сталкиваемся с нейронными сетями. Большинство используемых нейронных сетей принимают большие наборы данных с множеством различных параметров, поэтому нейронная сеть оказывается слишком сложной для понимания. Мы могли попытаться разбить его на части, чтобы понять, что происходит, но это займет слишком много времени. Обучение самих нейронных сетей может занять от нескольких минут до недели. Нам было бы трудно все организовать, и нам было бы сложно собрать части воедино. Нейронные сети, как и другие алгоритмы машинного обучения, на самом деле не обладают настоящим интеллектом; они настолько сложны, что кажется, будто у них есть собственное мнение. Проблема с нейронными сетями не в том, что мы не можем их контролировать; это их интерпретируемость. Нам очень трудно понять, как алгоритм получил свое предсказание. Тем не менее, проводится множество исследований, посвященных тому, как сделать нейронные сети более точными, интерпретируемыми и эффективными. У нейронных сетей большой потенциал. Они могут достигать высокой точности, иногда превышающей 90%. Их также можно использовать для очень сложных задач, таких как классификация / распознавание изображений и обработка естественного языка (анализ текста). Подумайте о потенциальных приложениях нейронных сетей. Их последствия ОГРОМНЫ. Например, машинное обучение стало популярным для диагностики рака. Внедрение машинного обучения в биоинформатику может помочь пациентам получить лечение на ранней стадии и спасти множество жизней.

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

Чтобы узнать больше обо мне и проделанной мной работе, загляните в мое Портфолио Github и свяжитесь со мной в LinkedIn.