Машинное обучение 101

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

Что такое алгоритм?

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

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

Что такое искусственный интеллект?

Когда кто-то говорит об искусственном интеллекте, мы иногда думаем о терминаторе или каком-то футуристическом роботе, который собирается завоевать мир, но нет ничего более далекого от реальности, определение искусственного интеллекта таково:

Способность цифрового компьютера или управляемого компьютером робота выполнять задачи, обычно связанные с разумными существами.

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

На данный момент существует 3 больших подразделения искусственного интеллекта:

Слабый искусственный интеллект:этот тип ИИ специализируется на выполнении однойспецифической задачи.

Сильный искусственный интеллект: для этого требуется, чтобы ИИ мог применить интеллект к любой проблеме.

Суперискусственный интеллект: этот суперИИ должен превзойти самых умных людей в мире благодаря самосовершенствованию.

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

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

Что такое машинное обучение?

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

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

контролируемое обучение

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

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

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

Неконтролируемое обучение

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

Один тип обучения без учителя называется кластеризация,этот класс алгоритмов будет обрабатывать входные данные и находить кластеры (группы) в данных.

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

Обучение с подкреплением

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

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

Самым большим примером в этой области является Alpha Go, программа, которая использует обучение с подкреплением, чтобы играть в GO, древнюю китайскую настольную игру. Эта программа смогла победить игрока номер один в мире.

Реальные приложения включают робототехнику, управление светофором и химию.

Нейронные сети

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

Некоторыми примерами использования нейронных сетей являются распознавание рукописного ввода (распознавание того, что написано на картинке), прогнозирование финансовых рынков и распознавание лиц.

Глубокое обучение

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

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

Некоторые проблемы алгоритмов глубокого обучения связаны с объемом информации, необходимой им для создания модели, пределом доступной вычислительной мощности и тем фактом, что эти алгоритмы могут выполнять только конкретную задачу.

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

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

Источники:

Группа экспертов (7 марта 2017 г.):

https://expertsystem.com/machine-learning-definition/

Джейсон Браунли. (16 марта 2016 г.):

https://machinelearningmastery.com/supervised-and-unsupervised-machine-learning-algorithms/

Майкл Нильсен (декабрь 2019 г.):

http://neuralnetworksanddeeplearning.com/chap1.html