Искусственный интеллект и Машинное обучение. Основы программирования на Python
Шрифт:
По этим же причинам, ГО является достаточно дорогим. Потому что, во-первых, сложно собрать большие данные по определенным признакам и, во-вторых, серьезные вычислительные способности компьютеров – тоже достаточно дорогое удовольствие.
Если вкратце, то каким образом работает ГО. Предположим, наша задача вычислить сколько единиц транспорта и какой именно транспорт (то есть автобусы, грузовики, машины или велосипеды) проходит через определенную трассу в день,
Для этой цели нам надо научить наш компьютер распознавать виды транспорта. Если бы мы решали эту задачу с помощью МО, мы бы написали алгоритм, в котором указывали бы характеристики машин, автобусов, грузовиков и велосипедов, например, если количество колес 2, то мотоцикл, если длина движущегося средства более 5 метров, то грузовик либо автобус, если много окон, то автобус, и т.д. Но как понимаете, здесь много подводных камней. Например, автобус может быть затонированным и будет трудно понять, где там окна, либо грузовик может выглядеть как автобус или наоборот, да и крупные машины пикапы выглядят как некоторые небольшие грузовики.
Поэтому другой вариант решения этой задачи, это загрузить большое количество изображений с разными видами транспорта в наш компьютер и просто указать ему, на каких изображениях изображен мотоцикл, автомобиль, грузовик или автобус. Компьютер сам начнет подбирать характеристики, по которым можно определить, что за вид транспорта изображен и как их можно отличить друг от друга. После этого мы загрузим еще некоторое количество изображений и протестируем насколько хорошо компьютер справляется с задачей. Если он будет ошибаться, мы укажем ему, что вот здесь ты ошибся, здесь не грузовик, а автобус. Компьютер, в свою очередь, вернется назад к своим алгоритмам (это называется backpropagation) и внесет туда какие-то изменения, и мы начнем заново по кругу до тех пор, пока компьютер не начнет угадывать, что изображено на картинке с очень большой долей вероятности. Это и называется глубокое обучение на основе нейронных сетей. Как вы понимаете, это может занимать достаточно долгое время, может быть несколько недель, в зависимости от сложности поставленной задачи, также требует наличия большого количества данных, желательно, чтобы было от миллиона изображений и выше, и все эти изображения должны либо быть промаркированы, либо это должен делать человек, но это будет очень затратно по времени.
Давайте еще раз сравним МО и ГО по разным параметрам.
Если суммировать:
ГО является подобластью МО, и они оба подпадают под более широкое определение ИИ.
МО использует алгоритмы, чтобы разбирать данные, обучаться на их основе, и принимать взвешенные решения на основе обученного.
ГО делает то же самое, так как оно тоже является разновидностью МО, но специфика ГО в том, что при нем алгоритмы структурируются в несколько слоев, чтобы создать искусственную нейронную сеть, которая может тоже обучаться и принимать умные решения.
МО может использоваться при небольших наборах данных. И на маленьких объемах данных, МО и ГО имеют примерно одинаковую эффективность, но при возрастании объемов данных, ГО намного выигрывает по эффективности.
В МО мы сами задаем характеристики, на которые будут опираться наши алгоритмы. В примере с определением цены квартиры, мы сами указываем параметры, от которых будет зависеть цена, например, метраж, расстояние от метро, возраст дома, район и т.д. А в ГО, компьютер или можно сказать нейронная сеть сама методом проб и ошибок выводит определенные параметры и их вес, от которых зависят наши выходные данные.
По времени обучения алгоритмов, ГО как правило занимает больше времени чем МО.
Расшифровка или интерпретация алгоритмов МО легче, потому что мы видим какой параметр играет важную роль для определения выходных данных. Например, в вопросе определения цены квартиры, мы можем увидеть, что вес метража в цене составляет, скажем, 60%. В ГО же, расшифровать что именно привело к такому результату порой бывает очень сложно, потому что там несколько слоев нейронных сетей и много параметров, которые компьютер выводит сам и которые он может посчитать важными. Поэтому, использование ГО или МО будет также зависеть от целей ваших задач. Например, если вам надо понимать, почему компьютер принял то или иное решение, какой фактор сыграл важную роль, то вам надо будет выбрать использование МО вместо ГО.
Вследствие того, что ГО требует большего объема данных, а также более мощных вычислительных способностей компьютера, и занимает больше времени для обучения, оно также является более дорогим по сравнению с МО.
Таким образом, если суммировать всю данную главу, то везде, где применяется распознавание речи или изображений, робототехника, устный или письменный перевод, чат-боты, беспилотное вождение транспортных средств, предсказание каких-то параметров на основе имеющихся данных, во всех этих примерах присутствуют элементы ИИ, потому что ИИ – это очень широкое понятие, которое охватывает все эти направления, когда компьютер имитирует мышление и поведение человека.
Случаи, когда мы вместо того, чтобы давать компьютеру написанные инструкции и правила для решения вопроса, даем ему набор данных и он сам учится на них и находит необходимые алгоритмы и закономерности самостоятельно, такие случаи называются Машинным обучением. И одним из вариантов нахождения компьютером таких закономерностей является глубокое обучение, в котором используется несколько слоев нейронных сетей, что делает такие вычисления с одной стороны, более эффективными, с другой стороны, более трудными для расшифровки.
Примеры использования ИИ, МО и ГО
Давайте посмотрим несколько примеров использования Искусственного интеллекта, машинного и глубокого обучения в нашей повседневной жизни.
Искусственный интеллект
Все лунные модули, которые бороздят поверхность Луны, используют алгоритмы ИИ. Их не надо контролировать каждую секунду, они сами принимают решения как объезжать препятствия и как собрать грунт в том или ином труднодоступном месте.
ИИ применяется и в беспилотных автомобилях. С помощью множества сенсоров, такие автомобили анализируют находящуюся вокруг них обстановку, определяют другие движущиеся машины, пешеходов, знаки дорожного движения, разметку, выбирают кратчайший путь и т.д.
Наше взаимодействие с голосовыми помощниками. Когда мы просим Алексу, Сири, или Алису от Яндекса сделать или найти что-то, они конвертируют наш голос в команды, обрабатывают их и выдают то, что нам необходимо.
Кроме голосовых помощников, очень развиты сейчас чат-боты, когда вы можете переписываться с компьютером, и он будет отвечать на ваши запросы. А в последнее время участились и звонки роботов на наши мобильные телефоны. Они могут предлагать какие-то рекламные акции или даже расспрашивать у вас информацию, например, когда вы планируете погасить кредитную задолженность. Такие роботы уже заменили многих сотрудников колл-центров.