Руководство для начинающих по самой популярной на сегодняшний день технологии — МАШИННОЕ ОБУЧЕНИЕ

Что такое машинное обучение?
• Машинное обучение – это возможность учиться на
примерах и опыте, без
явного программирования.
• Вместо написания кода вы вводите данные в общий
алгоритм, и он строит логику на основе
предоставленных данных.
Разница между AI, ML и DL

Разница между традиционным программированием и машинным обучением

Почему машинное обучение?
•Сокращение времени, правила программирования!
• Машинное обучение как технология помогает анализировать большие объемы данных.
• Машинное обучение обеспечивает быстрые, точные и гибкие решения.
Блок-схема машинного обучения

Простой пример машинного обучения
- импортировать тензорный поток как tf
• импортировать numpy как np
• из keras импорта tensorflow
• model=keras.Sequential([keras.layers.Dense(units=1,input_shape=[1])])
• model.compile(optimizer=’sgd’,loss=’mean_squared_error’)
• x=np.array([1,2,3,4,5,6],dtype=int)
• y=np.array([3,5,7,9,11,13],dtype=int)
• model.fit(xs,ys,epochs=500)
• n=int(input())
- print(model.predict([n]))
Давайте подумаем о коде
• Что машинного обучения из значений x и y?
• Он пытается нарисовать кривую между значениями x и y.
• Он предсказал соотношение y=2*x+1.
• Что делать, если n = 7?
• Идеальный результат – 15.
- Предполагаемый результат – 15,0614395 с убытком 0,0018.
Типы машинного обучения
- УПРАВЛЯЕМОЕ МАШИННОЕ ОБУЧЕНИЕ
• Обучение с учителем — это задача машинного обучения для изучения функции, которая сопоставляет входные данные с выходными на основе примеров пар вход-выход.
• Его можно реализовать с помощью регрессии и классификации.
- АЛГОРИТМЫ – линейная регрессия, логистическая регрессия, деревья решений, метод опорных векторов.
2. НЕУПРАВЛЯЕМОЕ МАШИННОЕ ОБУЧЕНИЕ
•Это задача машинного обучения для определения функции, описывающей структуру «неразмеченных» данных.
• Не существует простого способа оценить точность структуры, создаваемой алгоритмом.
• АЛГОРИТМЫ: кластеризация K-средних, смесь Гаусса, скрытая марковская модель.
3. ПОДДЕРЖИВАНИЕ МАШИННОГО ОБУЧЕНИЯ
• Обучение с подкреплением — важный тип машинного обучения, когда агент учится вести себя в окружающей среде.
выполняя действия и видя результаты.
- АЛГОРИТМЫ – критерий оптимальности, перебор, оценочная функция.
Предпосылки для машинного обучения
• алгебра начального уровня
• Статистика
• Вероятность
• Расчет
• Любой язык программирования-
- C, C++, Java, Python, R
Почему машинное обучение с Python?
Пакеты, пакеты повсюду
• Хотите работать с изображениями — NumPy, OpenCV, scikit
• Хотите работать с текстом — nltk, pandas, scikit
• Хотите работать со звуком — librosa
• Хотите решить проблему машинного обучения —
TensorFlow, панды, scikit
• Хотите четко видеть данные — matplotlib, seaborn, scikit
- Хотите использовать глубокое обучение — TensorFlow, PyTorch
Тензорный поток
• TensorFlow – это платформа машинного обучения, созданная Google и используемая для разработки, создания и обучения моделей машинного обучения.
• Его гибкая архитектура позволяет легко развертывать вычисления на различных платформах (ЦП, ГП, ТПУ), от настольных компьютеров до кластеров серверов, мобильных и пограничных устройств.
- Для получения дополнительной информации посетите сайт www.tensorflow.org
IDE Python для машинного обучения
• Спайдер
• Блокнот Jupyter или блокнот Ipython
• Совместная работа с Google(https://colab.research.google.com/)
• Пичарм
• Отличный текст
- Оболочка Python с использованием анаконды
Приложения машинного обучения
• Виртуальные личные помощники (Siri, Alexa, Google Home)
• Распознавание лиц
• Фильтрация спама и вредоносного ПО в электронной почте
• Обнаружение мошенничества
• Онлайн-поддержка клиентов (чат-бот)
• Рекомендации по продуктам
- Здравоохранение и сельское хозяйство
Ресурсы для изучения
• Курсы Coursera от Эндрю Нг
• Курсы NPTEL
• Курсы Udemy
• Ускоренный курс по машинному обучению от Google
• Каналы Youtube (Siraj Raval и Google Developers)
- Введение в машинное обучение с помощью Python (книга)