Простое краткое руководство - для всех.

Искусственный интеллект, машинное обучение, чат-боты, НЛП - все это модные словечки в наши дни. От разработчиков до аналитиков и владельцев бизнеса - все хотят, чтобы их бизнес извлекал выгоду из магии искусственного интеллекта, о которой они все так много слышали. Дошло до того, что разработчики, создающие даже простую компьютерную программу, начали называть ее «искусственный интеллект». (Недавно я наткнулся на «нетрадиционную» шахматную партию, которую окрестили ИИ, но, честно говоря, в 90-х я видел лучшие шахматные алгоритмы.)

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

Во-первых, я не специалист по данным.

Так какого черта я говорю о науке о данных и машинном обучении? И что заставляет меня думать, что я even qualified говорю о вещах, в которых я, очевидно, не разбираюсь?

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

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

ЧТО ТАКОЕ МАШИННОЕ ОБУЧЕНИЕ, ГЛУБОКОЕ ОБУЧЕНИЕ И ИИ?

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

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

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

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

Чем больше данных и сценариев вы вводите в программу, тем лучше ваш ИИ будет реагировать на триггеры.

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

ТАК КАК ЭТО ПРОИСХОДИТ?

Вернемся к игре в шахматы. Как именно были написаны первые шахматные программы? Начнем с простой сетки 3x3.

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

However, I must admit, in that image, a couple of things do not make perfect sense to me. For example, bottom row, third image from the left. It can't or at least shouldn't have the same score as the first two since in that particular scenario, the black rook is at obvious risk. Fifth from the left - same.
But, to drive my point home, that image serves its purpose, so let us ignore the technicalities here. I am sure there is a logic behind it. I have to admit, I didn't read it much; not a techie.

Даже для простого первого шага существует несколько сценариев.

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

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

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

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

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

НОГНУТЬ БОЛЬШЕ

Прежде чем мы поговорим о глубоком обучении, давайте поговорим о нейронной сети или искусственной нейронной сети.

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

Так будет выглядеть нейронная сеть для алгоритма глубокого обучения.

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

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

ПРИМЕР

Раньше я работал с интернет-магазином модной одежды, так что давайте выберем это. Рассмотрим ИИ, который использует глубокое обучение, чтобы предлагать оптимальные цены на продукты. (Да, скидки !!)

Итак, какие входные переменные я бы включил в свой алгоритм? Возможно:

  • Видимость. Насколько широко представлены товары? (Для товаров с невысокой видимостью скидка бессмысленна. Сначала исправьте видимость.)
  • Размеры: основные или нестандартные размеры? (Например, мужские футболки M, L, XL являются основными размерами, S, XXL - меньшими)
  • Процент продаж: исторические данные?
  • Категория
  • Бренд
  • …..

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

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

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

We would skip on Activation function. What does it do? Standardizes output from each neuron, making the model more accurate.

ТЕПЕРЬ ГЛУБОКОЕ ОБУЧЕНИЕ. НА САМОМ ДЕЛЕ ПРИХОДИТ ОБУЧЕНИЕ ВАШЕГО ИИ

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

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

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

Кстати, если вас там завалили, две вещи:

  1. Я фактически пропустил кучу технических терминов - Функция активации, Функция потерь, Градиентный спуск и т. Д. Для простоты.
  2. С появлением все большего количества нестандартных алгоритмов глубокого обучения, выпускаемых техническими специалистами, зависимость систем глубокого обучения ИИ от доступа к огромным наборам данных, прежде чем они смогут работать, с каждым днем ​​уменьшается. (Для улучшения вам по-прежнему понадобятся исторические данные, но зависимость от «массивных данных» уменьшается).

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

На сегодня все. Увидимся завтра!

I am Abhishek. I am here... there.... Everywhere...
Medium | Twitter | Facebook | Quora | LinkedIn | E-mail

Если вы хотите изучить глубокое обучение и нейронные сети, у Майкла Нильсена есть бесплатная книга.