Что такое машинное обучение?
Машинное обучение (ML) является частью более широкой области искусственного интеллекта (ИИ). Искусственный интеллект — это теория и разработка компьютерной системы, способной выполнять такие задачи, как принятие решений, распознавание изображений и другие вещи, обычно считающиеся «когнитивными» задачами, которые обычно требуют человеческого интеллекта. Термин «искусственный интеллект» был впервые использован в качестве термина в 1956 году Джоном Маккарти, но первая работа, которая теперь общепризнанна как ИИ. был в 1943 году для полных по Тьюрингу «искусственных нейронов» Маккалуша и Питтса.
Машинное обучение — это лишь часть искусственного интеллекта. Это большая часть того, что A.I. стал. ML берет данные и учится на этой информации. Это позволяет системе узнавать что-то новое из вводимых данных. В то время как А.И. является лицом, принимающим решения по этим данным. А.И. всегда будет искать оптимальное решение, тогда как ML будет искать единственное решение, независимо от того, оптимально оно или нет. AI пытается увеличить шанс на успех, а ML пытается увеличить шанс на точность. Машинное обучение действительно делится на две основные подкатегории: обучение с учителем и обучение без учителя. Есть и другие, но это основные. Я разобью их для вас отдельно.
контролируемое обучение
Обучение под наблюдением заключается в том, что вы просто даете машине ответы на данные и позволяете ей учиться на этих данных (т. е. вы даете ей изображение собаки и говорите, что это собака, а затем даете ей множество изображений, помеченных как собака, пока она не сможет правильно идентифицировать собака). Обучение под наблюдением считается более быстрым из двух, но может иметь предвзятость, вызванную людьми. Скажем, вы дадите ему массу изображений птиц, и большинство людей выберет стандартных птиц, которых вы видите каждый день, таких как зяблики и кардиналы, даже некоторые орлы, но что, если он увидит изображение пингвина, он, вероятно, не классифицирует его как птицу, поскольку он это делает. не похожи на птиц, которые были предоставлены. Эти человеческие предубеждения могут проявиться в предоставленных данных. Поэтому постарайтесь не быть человеком при работе с машинным обучением. Это подводит меня к типам вещей, для которых может быть полезно контролируемое обучение. Первый набор применений, на который я хотел бы обратить внимание, — это классификация. Некоторые из вещей, которые попадают под дерево классификации, включают обнаружение мошенничества, фильтрацию спама и классификацию изображений.

Вы видите, что обнаружение мошенничества выполняется машиной, которая берет все данные от пользователя и анализирует их, чтобы увидеть, соответствует ли она шаблону нормального использования. Он отслеживает все использование пользователями и создает профиль того, что является нормальным, и если что-то выходит за пределы нормы, оно помечает это как аномалию и может быть мошеннической покупкой. Например, вы покупаете бензин в каком-то случайном маленьком городке в двух штатах от вас, когда вы не покупали бензин до того момента, когда вам обычно нужно было бы получить газ, чтобы добраться туда, и вы никогда ничего там не покупали раньше.
Фильтрация спама отслеживает ваши электронные письма на наличие вещей, которые, как известно, содержат спам. Допустим, у вас есть электронное письмо, в котором говорится «вы выиграли», или «наследство», или «лотерея», оно, вероятно, будет помечено как спам, поскольку большинство спам-писем содержат тот или иной вариант этих слов. В машинном обучении вы продолжаете позволять ему узнавать, что такое спам-сообщение, нажимая кнопку «Это спам» и обновляя его способности к обучению. Когда вы нажимаете кнопку, это версия контролируемого обучения, потому что вы маркируете данные.
Классификация изображений также является контролируемым обучением, которое подпадает под вариант использования классификации. Как и раньше, путем маркировки данных о том, что такое птица, и включения всех форм птиц в профиль маркировки, чтобы включить пингвинов и орлов и даже DO-DO, когда вы просите машину классифицировать, какие изображения являются птицами, а какие нет, она сможет к. Реальный пример этого — те капчи изображений, которые просят вас выбрать, на каких изображениях есть уличные фонари, и вы нажимаете на изображения, вы фактически помечаете изображения для более точного машинного обучения… бесплатный труд Ура!
Другие виды использования контролируемого обучения попадают в другую категорию регрессии. Регрессия — это статистическая взаимосвязь между двумя переменными и прогнозирование результата на основе взаимосвязи. Использование, подпадающее под этот тип варианта использования, — это оценка рисков и прогнозирование результатов. Оценка риска использует регрессию на основе переменных, предоставленных системе, например, когда кто-то подает заявку на кредит. У банков есть масса данных о том, по каким кредитам произошел дефолт и какие типы кредитов были выплачены вовремя, а также другие переменные, связанные с обоими результатами. Поэтому, когда кто-то подает заявку на этот кредит, он может ввести информацию в машину, и она может задать некоторые странные вопросы, которые люди не понимают как уместные, например «Есть ли у заявителя машина», чтобы составить наиболее точный профиль оценки рисков. Возможно, система узнала, что если заявитель зарабатывает более 100 тысяч в год и владеет домом, это кредит с низким уровнем риска, но если заявитель не владеет автомобилем с такими же данными, риск фактически повышается на 15%. Итак, что-то, что кажется нам странным, машина поняла, что тот факт, что владение автомобилями играет большую роль в определении риска, чем аренда или владение домом. Это полностью выдуманный сценарий, он просто иллюстрирует, как оценка рисков может работать с машинным обучением.
Алгоритмы контролируемого обучения
Существует множество различных алгоритмов, которые можно использовать в машинном обучении. Это одни из наиболее распространенных методов обучения с учителем. Не в каком-либо конкретном порядке это линейная регрессия, нейронная сеть, наивный байесовский алгоритм, дерево решений, случайный лес и метод опорных векторов (SVM). Я не буду вдаваться в подробности каждого из них, но просто знайте, что каждый из них имеет свое собственное применение и лучше подходит для разных ситуаций. Я расскажу о линейной регрессии, поскольку она используется в ряде случаев и настолько популярна, что Microsoft Excel включает ее в свое программное обеспечение. Линейная регрессия — это простая связь двух переменных, где переменная y может быть предсказана вводом переменной x. Наиболее полные алгоритмы представлены в виде нейронных сетей. Они основаны на том, как работает человеческий мозг, поскольку некоторая информация принимается, а затем передается другому «нейрону» для обработки, а затем передается на другой этап для обработки множество раз. Когда вы накладываете много слоев друг на друга в этом типе нейронной сети, у вас есть глубокая нейронная сеть (DNN), есть и другие, такие как сверточные нейронные сети. Для получения дополнительной информации о различных типах алгоритмов используйте фреймворк и Google.

Неконтролируемое обучение.
Теперь это подводит нас к другому типу машинного обучения. Неконтролируемое обучение — это когда вы не маркируете входные данные и позволяете машине сортировать данные в соответствии с сходствами и различиями, когда вы не накладываете ограничений на классификации. Например, когда вы ребенок, вы можете сгруппировать всех животных с 4 ногами в одну категорию и назвать их собаками. Хотя некоторые из них могут быть лошадьми, у них у всех по четыре ноги, и вы группируете их вместе, потому что это все, что вы знаете, потому что никто не сказал вам, что одна была собакой, а другая — лошадью. В этом типе обучения это может привести к пониманию, которое вы, возможно, не видели в данных раньше. Скажем, у вас есть группа людей, которые купили лосьон для рук, а некоторые из этих людей также купили ароматические свечи. Если бы вы классифицировали клиентов по тому, что они купили, вы, возможно, не поместили бы их в одну и ту же категорию, но с помощью неконтролируемого обучения вы могли бы узнать, что люди, купившие и то, и другое, были на самом деле беременны, и теперь у вас есть новое понимание того, как продавать этим людям. клиенты.
Уменьшение размерности и кластеризация являются сегментами неконтролируемого обучения. В каждом из этих разделов я могу предложить некоторые варианты использования каждого из них. При уменьшении размерности у вас есть распознавание лиц, анализ текста и распознавание изображений. На стороне кластеризации вы видите примеры из биологии, планирования и маркетинга. Кластеризация — это маркетинг, который я приводил в качестве примера ранее, он группирует клиентов по группам в зависимости от возраста, пола, образа жизни и ситуаций (например, беременных, женатых, одиноких). Вы также можете поместить ввод в другую сторону и отсортировать покупки и посмотреть, кто попадает в какие категории. Я не совсем уверен, но я полагаю, что специалисты по профилированию преступников также выиграют от этого типа обучения, поместив в него все данные о преступлении и позволив ему сортировать, какие детали связаны друг с другом и какие типы людей могут совершить эти типы. преступлений Теперь, когда мы узнали о типах машинного обучения, давайте перейдем к некоторым распространенным реализациям машинного обучения.
Другие формы обучения
Есть также две другие формы обучения, которые выделяются: полуконтролируемое и обучение с подкреплением. Во-первых, вы помечаете некоторые данные для алгоритма, чтобы получить базу, и позволяете ему вычислять остальные немаркированные данные. Что само по себе быстрее, чем неконтролируемое обучение, но может создавать предубеждения. И обучение с подкреплением позволяет ИИ учиться в окружающей среде, принимая решения и измеряя результат и повторяя решения до тех пор, пока не будет достигнут правильный результат. Это обычно используется в играх. Три компонента обучения с подкреплением — это агент (ИИ, обучающийся или принимающий решения), среда и действия.
ТензорФлоу
TensorFlow — это программная библиотека с открытым исходным кодом для машинного обучения, созданная мозговой командой Google. Он работает как с языком программирования Python, так и с другими, и запускает язык программирования C++ в серверной части. Это очень хорошо работает в ML с реализацией нейронных сетей, которые я ранее упоминал как алгоритм. С помощью TensorFlow можно обучать системы машинного обучения рукописным символам, распознаванию голоса и даже языковым переводам. Недавно они интегрировали функциональность Keras, что означает более простые способы работы с библиотеками.
Надеюсь, вы поняли немного больше о том, как работает машинное обучение, и пришли к пониманию того, как компьютер пришел к пониманию людей.