Openbravo-rus.ru

Образование по русски
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Машинное обучение с нуля

Я хочу изучать AI и машинное обучение. С чего мне начать?

Когда-то я работал в Apple Store и мечтал изменить свою жизнь: вместо обслуживания техники Apple, мне хотелось ее создавать.

Я начал изучать машинное обучение (ML) и искусственный интеллект (AI), потому что на этом поприще творятся невероятные вещи. К тому же, эта область активно развивается.

Например, такое ощущение, что Google или Facebook каждую неделю выпускают новую технологию AI, чтобы ускорить работу или улучшить наш с вами пользовательский опыт.

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

Несмотря на все вышеперечисленное, до сих пор не существует согласованного понятия искусственного интеллекта (AI).

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

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

С чего я начал?

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

Я не мог поверить в то, что компьютер может что-то учить для меня.

Через какое-то время я наткнулся на курс от Udacity под названием Deep Learning Nanodegree. На одном из промо-роликов я увидел забавного человека по имени Сирадж Раваль. Он заразил меня своей энергией и я записался на курс, несмотря на то, что совсем не отвечал основным требованиям (я ни разу не писал на Python).

За 3 недели до начала курса, я написал в Службу Поддержки Udacity, с вопросом об их политике возврата средств. Я боялся, что не смогу закончить курс.

Что же, мне не потребовался возврат, так как я закончил курс в установленный срок. Было действительно тяжело. Мои первые проекты были сданы с опозданием на четыре дня. Я шел вперед только из-за гордости от принятия участия в данном проекте.

Окончив Deep Learning Nanodegree, я гарантированно получал доступ к другим курсам Udacity, таким как AI Nanodegree, Self-Driving Car Nanodegree или Robotics Nanodegree.

Но я был растерян. Что делать дальше?

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

Моя собственноручно созданная степень магистра по AI

В мои планы точно не входило возвращаться в университет. К тому же $100,000 на дороге не валяются, чтобы получить степень магистра.

Поэтому я сделал то, что сделал в самом начале своего пути — попросил своего наставника Google о помощи.

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

Просмотрев кучу курсов, я составил список самых интересных в Trello.

Я знал, что онлайн-курсы имеют высокий процент отсева, но я не собирался становиться частью этих отсеявшихся участников. У меня была миссия.

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

Я сделал доску Trello открытой и написал о своих начинаниях в блоге.

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

Получение работы

Я следовал своему учебному плану вот уже более года, настало время на практике применить свои навыки. Поэтому я купил билет на самолет в один конец в США.

Мой план заключался в том, чтобы добраться до США и получить работу.

Однажды, девушка по имени Эшли написала мне на LinkedIn вот такое письмо: “Я видела твои посты и они на самом деле отличные, я думаю, тебе стоит встретиться с Майком”.

Я встретился с Майком и рассказал ему свою историю онлайн-обучения, о том как мне нравится Health Tech и о своих планах по переезду в США. Майк сказал мне: “Тебе лучше остаться тут на год или дольше, и посмотреть, что из этого выйдет. Кроме того, советую тебе встретиться с Кэмероном”.

Я встретился с Кэмероном и у нас был практически такой же диалог, что и с Майком. Health Tech, онлайн-обучение, США. Кэмерон сказал мне: “Мы с командой работаем над некоторыми проблемами в области здравоохранения, почему бы тебе не прийти к нам в четверг?”.

Настал четверг. Мои нервы были на пределе. Чтобы успокоиться, я вспомнил слова какого-то мудрого человека: нервное состояние — это то же самое, что и воодушевленное. Я перестал нервничать и переключился на нужное, в данной ситуации, состояние.

Весь день я знакомился с командой Max Kelsen.

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

“Ты хотел бы присоединиться к команде?” — спросил меня Ник.

“Конечно” — ответил я.

Билет в США мне не понадобился.

Делитесь своей работой

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

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

Во время обучения, я делился своей работой в Интернете. Мой GitHub был заполнен проектами, которые я сделал, профиль на LinkedIn я забросил и стал делиться своими знаниями через YouTube и статьи на Medium.

Я никогда не писал резюме для Max Kelsen, потому что они и так уже все про меня знали из моего профиля на LinkedIn.

Моя публичная деятельность и была моим резюме.

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

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

Создайте себе профиль на GitHub, Kaggle, LinkedIn или просто заведите блог — люди должны о вас как-то узнать. Кроме того, иметь собственный уголок в Интернете — очень весело.

Как начать?

На каких платформах учиться? Какие курсы лучше выбрать?

Однозначного ответа нет. Учебный процесс у всех складывается по-разному. Некоторые люди лучше учатся по книгам, другие по видео.

Важнее не то, как начать, а почему вы это начинаете.

Начните с определения причины.

  • Почему вы хотите изучать эти навыки?
  • Вы хотите много зарабатывать?
  • Вы хотите создавать что-то интересное?
  • Вы хотите что-то изменить в нашем мире?
Читать еще:  Обучение и работа в интернете

Опять же, нет единственно верной причины. Все они верны по-своему.

Наличие “почему” означает, что в трудные времена у вас будет к чему обратиться за помощью, чтобы напомнить себе, почему вы все это затеяли.

Определили свое “почему”? Хорошо. Пришло время перейти к самой трудной части.

Я могу рекомендовать только то, что сам пробовал.

Вот курсы, которые я окончил (по порядку):

  • Treehouse — Введение в Python
  • Udacity —Глубокое обучение и AI
  • Coursera — Глубокое обучение от Andrew Ng
  • fast.ai — Часть 1, скоро будет Часть 2

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

Если вы абсолютный новичок, начните с вводных курсов по Python, а затем, когда станете более уверены в своих знаниях, переходите к data science, машинному обучению и AI.

Нужны ли углубленные знания по математике?

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

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

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

Такие библиотеки, как TensorFlow и PyTorch позволяют создавать, при небольшом знании Python, современные модели, в то время как математика делает основную работу за кулисами.

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

Лично я не собираюсь углубляться в математику и улучшать производительность алгоритма на 10%. Оставлю это людям, которые умнее меня.

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

Что на самом деле делает специалист по машинному обучению?

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

Например, несмотря на распространенный факт, мы не работаем с роботами, у которых красные и страшные глаза.

Вот несколько вопросов, которые ежедневно задает себе специалист по ML:

  • Концепция — как можно использовать ML, чтобы узнать больше о проблеме?
  • Данные —сколько данных вам требуется? В каком формате они должны быть? Что вы делаете, когда данные отсутствуют?
  • Моделирование — какую модель следует использовать? Хорошо ли она работает с данными (переобучение)? Если работает плохо, то почему?
  • Производство — как вы можете использовать свою модель в производстве? Должна ли это быть онлайн-модель или она должна обновляться через определенные промежутки времени?
  • Будущее — что произойдет, если ваша модель сломается? Можно ли улучшить ее с большим количеством данных?

Я позаимствовал эти вопросы из замечательной статьи Рейчел Томас, одной из основательниц fast.ai.

Кроме того, я снял видео о том, чем мы занимаемся по понедельникам в Max Kelsen.

Нет однозначно верного пути

Не существует правильного или неправильного способа попасть в сферу ML или AI.

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

Вы можете начать с изучения Python.

Вы можете начать с изучения исчисления и статистики.

Вы можете начать с изучения философии принятия решений.

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

Чем больше я узнаю, тем больше еще остается узнать. И это подстегивает меня двигаться вперед.

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

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

Компьютеры умны, но они все еще не могут учиться самостоятельно. Им нужна ваша помощь.

Программа «Введение в машинное обучение»

ОНЛАЙН

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

Основные темы курса:

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

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

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

Мы ожидаем, что слушатели владеют языком Python, который является де-факто стандартным инструментом для анализа данных: знают про условные операторы, циклы, функции, разбираются в числовых и строковых типах данных, умеют работать со списками и словарями, знают встроенные функции языка.

академических часов, включая 40 часов онлайн-работы с преподавателем.

рублей.
Оплату можно разбить на две части.
Для студентов, выпускников и слушателей основных и дополнительных программ НИУ ВШЭ предусмотрены скидки.

Начальные требования

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

Документы для зачисления

  1. паспорта (3-4 страница, а также страница с адресом регистрации);
  2. диплома о высшем или среднем профессиональном образовании (первые две страницы);
  3. актуальной справки из вуза (если вы являетесь студентом);
  4. свидетельства о смене фамилии (если в паспорте и дипломе фамилия не совпадает).

Расписание занятий

Общий период обучения: 16 мая 22 июля 2020 г.

Один раз в неделю, онлайн

16 мая — 4 июля 2020 г. по субботам с 15:30 до 18:30.

8 июля — 22 июля 2020 г. по средам с 19:00 до 22:00.

Для прохождения курса вам понадобятся основы программирования на Python и знание базовых разделов высшей математики.

Преподаватели

Елена Кантонистова

Кандидат физико-математических наук, ведущий Data Scientist в консалтинговой компании UCG. Приглашенный преподаватель факультета компьютерных наук НИУ ВШЭ.

Окончила механико-математический факультет МГУ им. М.В. Ломоносова и Школу анализа данных Яндекса, направление «Компьютерные науки».

Как устроено обучение

Занятия проходят раз в неделю. Каждое занятие состоит из лекции и семинара. На лекции преподаватель объясняет, как работают методы машинного обучения, какие математика и алгоритмы за ними стоят. На семинаре слушатели работают с данными и решают реальные задачи с помощью Python и его библиотек. После каждого занятия выдаётся домашнее задание, которое поможет закрепить навыки.

Читать еще:  Тестировщик обучение спб

15 книг по машинному обучению для начинающих

Data Science — оверхайповое направление IT. Мы сделали подборку книг по Machine Learning для тех, кто хочет разобраться, что да как.

IT стали толчком развития новых профессиональных областей: Data Mining, машинного обучения (Machine Learning) и других. Чтобы погрузиться в тему, читайте книги из нашей подборки.

Книги по машинному обучению на русском

Наталья Березовская

Автор в сфере IT, digital, экономики и финансов. Ведет некоммерческий проект для начинающих писателей «ЛитЦех».

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

О чем

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

Педро Домингос.
«Верховный алгоритм»

О чем

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

Хенрик Бринк, Джозеф Ричардс, Марк Феверолф.
«Машинное обучение»

О чем

Эта книга 2017 года издания доступно рассказывает о Machine Learning — для тех, кто ничего не слышал об этих технологиях. В ней нет заумной статистики, математики или углубленного и подробного объяснения, как использовать тот или иной алгоритм. Авторы с легкостью объясняют, что такое машинное обучение и как его применять в повседневной жизни. Примеры в книге приводятся на языке программирования Python, который используется в том числе и в этой сфере.

Бастиан Шарден, Лука Массарон, Альберто Боскетти.
«Крупномасштабное машинное обучение вместе с Python»

О чем

Еще одна отличная книга для начинающих свой путь в программировании и анализе больших данных. Авторы утверждают, что благодаря ей читатель научится самостоятельно строить модели машинного обучения и развертывать крупномасштабные приложения для прогнозирования. В книге рассказывается о том, какие алгоритмы входят в семейство масштабируемых, что они из себя представляют и как с их помощью обрабатывать большие файлы. Также вы узнаете, что такое вычислительная парадигма MapReduce и как работать с машинными алгоритмами на платформах Hadoop и Spark на языке Python.

Себастьян Рашка.
«Python и машинное обучение»

О чем

Книга для новичков, осваивающих Python и машинное обучение. Издание содержит подробные мануалы даже по таким нюансам, как установка специализированного приложения Jupyter Notebook.

В книге рассматриваются основы Machine Learning, возможности самых мощных библиотек Python для анализа данных и дается ответ на вопрос, почему этот язык — один из лидеров в Data Science.

Георгий Кухарев, Екатерина Каменская, Юрий Матвеев, Надежда Щеголева.
«Методы обработки и распознавания изображений лиц в задачах биометрии»

О чем

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

Петер Флах.
«Машинное обучение. Наука и искусство построения алгоритмов, которые извлекают знания из данных»

О чем

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

Что такое машинное обучение простыми словами

Искусственный интеллект

Лет 5 назад искусственный интеллект (он же ИИ) ассоциировался с фантастическими фильмами, где роботы спасали мир, а суперкомпьютеры пытались его поработить. Сегодня про ИИ говорят все. Давайте попробуем разобраться, что за магия скрывается за человекоподобными машинами, как они думают и зачем нужно машинное обучение.

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

ИИ вовсю принимает участие в медицине, помогая врачам выявить болезнь Альцгеймера по речи пациента, определить предрасположенность к заболеваниям, и творит многие другие удивительные вещи. Умные машины применяются почти во всех возможных отраслях. Например, компания LG планирует в 2023 году открыть завод по производству техники, на котором все процессы, начиная от закупки сырья, заканчивая контролем качества выпускаемой продукции, будут полностью автоматизированы.

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

Чтобы ИИ научился принимать правильные решение, его нужно обучить, этот процесс и называется машинным обучением (machine learning).

Machine learning — что нужно?

Выделяют три составляющие машинного обучения (ML):

Данные. Если мы хотим предсказывать погоду, необходима сводка погоды за последние несколько лет (чем больше, тем лучше). Хотим определять спам, нужны примеры таких писем. Чем качественнее данные, тем эффективнее будет работать программа.

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

Алгоритм. Тут всё просто. Каждую задачу можно решить разными способами. Для разных целей можно подобрать разные алгоритмы.

Но всё же главное в ML — это данные. Каким бы совершенным не был бы алгоритм работы, если качество данных не очень, то результат будет соответствующим.

Методы машинного обучения

Как работает машинное обучение? Искусственный интеллект похож на маленького ребенка, которому родители объясняют, почему небо голубое, а трава зеленая. Также методом проб и ошибок он самостоятельно познаёт мир.

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

  • классическое обучение;
  • обучение с подкреплением;
  • нейросети и глубокое обучение.

Пробежимся кратко по каждому из них.

Классическое обучение

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

Есть два типа классического обучения:

  • с учителем (supervised learning);
  • без учителя (unsupervised learning).

Обучение с учителем

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

Читать еще:  Программа xl обучение

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

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

Обучение без учителя

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

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

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

Возьмем для примера игру «Змейка». На поле расположен объект, до которого змейке необходимо добраться, но сама она не знает, как это сделать и какой путь самый эффективный, она знает только расстояние до объекта. Методом проб и ошибок змейка находит оптимальный вариант движения и анализирует ситуации, которые ведут к проигрышу.

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

Нейросети и глубокое обучение (Deep learning)

Любая нейросеть — это набор нейронов (функций) и связей между ними. Задача нейрона — взять входные числа, выполнить над ними определенные действия и выдать результат. Пример полезного нейрона: просуммировать все цифры со входов и, если их сумма больше N, отправить на выход единицу, иначе — ноль.

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

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

Для чего необходимы нейронные сети:

  • определение объектов на видео и фото;
  • обработка фотографий;
  • распознавание речи;
  • машинный перевод.

В упрощённом виде работа нейросети выглядит примерно так:

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

Machine Learning

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

Что такое Machine Learning

Общий термин «Machine Learning» или «машинное обучение» обозначает множество математических, статистических и вычислительных методов для разработки алгоритмов, способных решить задачу не прямым способом, а на основе поиска закономерностей в разнообразных входных данных [1]. Решение вычисляется не по четкой формуле, а по установленной зависимости результатов от конкретного набора признаков и их значений. Например, если каждый день в течении недели земля покрыта снегом и температура воздуха существенно ниже нуля, то вероятнее всего, наступила зима. Поэтому машинное обучение применяется для диагностики, прогнозирования, распознавания и принятия решений в различных прикладных сферах: от медицины до банковской деятельности.

Типы и суть Machine Learning

Выделяют 2 типа машинного обучения [1]:

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

Дедуктивный тип принято относить к области экспертных систем, поэтому общий термин «машинное обучение» означает обучение по прецедентам. Прецеденты или обучающая выборка – это наборы входных объектов и соответствующих им результатов. При этом не существует четкой формулы, которая аналитически описывает зависимость между результатами и входами. Например, какая погода будет завтра, если на протяжении недели дни были морозные, солнечные, с низкой влажностью воздуха, без ветра и осадков? При этом следует учесть еще множество параметров: географические координаты, рельеф местности, движение теплых и холодных фронтов воздуха и пр. Необходимо построить алгоритм, который выдаст достаточно точный результат для любого возможного входа. Точность результатов регулируется оценочным функционалом качества. Таким образом, решение формируется эмпирически, на основе анализа накопленного опыта. При этом обучаемая система должна быть способна к обобщению – адекватному отклику на данные, выходящие за пределы имеющейся обучающей выборки. На практике входные данные могут быть неполными, неточными и разнородными. Поэтому существует множество методов машинного обучения [2]. Можно сказать, что машинное обучение реализует подход Case Based Reasoning (CBR) — метод решения проблем рассуждением по аналогии, путем предположения на основе подобных случаев (прецедентов).

Суть и смысл машинного обучения (Machine Learning)

Методы Machine Learning

Существует множество методов машинного обучения. Мы перечислим самые популярные, оставив их подробную классификацию специализированным ресурсам [1, 2, 3]. Выделяют 2 вида классического Machine Learning:

  1. С учителем (supervised learning), когда необходимо найти функциональную зависимость результатов от входов и построить алгоритм, на входе принимающий описание объекта и на выходе выдающий ответ. Функционал качества, как правило, определяется через среднюю ошибку ответов алгоритма по всем объектам выборки. К обучению с учителем относятся задачи классификации, регрессии, ранжирования и прогнозирования.
  2. Без учителя (unsupervised learning), когда ответы не задаются, и нужно искать зависимости между объектами. Сюда входят задачи кластеризации, поиска ассоциативных правил, фильтрации выбросов, построения доверительной области, сокращения размерности и заполнения пропущенных значений.

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

Ниже на рисунке показана классификация наиболее часто используемых методов Machine Learning [3].

Классификация методов Machine Learning [3]

Средства реализации Machine Learning

Сегодня чаще всего для создания программ машинного обучения используются языки R, Python, Scala и Julia [4]. Они поддерживаются многими интегрированными средами разработки, в частности, R-Studio, R-Brain, Visual Studio, Eclipse, PyCharm, Spyder, IntelliJ IDEA, Jupyter Notebooks, Juno и др. [4]. На наших практических курсах мы научим вас успешной работе с этими инструментами, чтобы потом вы могли самостоятельно формировать наборы входных данных, строить эффективные алгоритмы для решения прикладных задач своей области: от нефтегазовой промышленности до биржевой аналитики. Выбирайте свой обучающий интенсив и приходите к нам на занятия!

Ссылка на основную публикацию
Adblock
detector