Рубрики
Без рубрики

Руководство для начинающих к моделям обучения и развертывания машин, использующих Python

Автор оригинала: FreeCodeCapm Team.

Иваном Юнг

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

Я открыл новую вкладку в Chrome и искал более простые решения. Я нашел API от Amazon, Microsoft и Google, который сделал все машину для меня. Каждый проект хакатона, который я сделал, позвонит своим серверам и вау – это выглядело так умно! Я был зацеплен.

Но через год я понял, что я ничего не учился. Все, что я делал, был описан этим Nedroid Comic, что я изменил:

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

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

Проекты машинного обучения зависит от поиска хороших наборов данных. Если набор данных плохой, или слишком маленький, мы не можем принимать точные прогнозы. Вы можете найти несколько хороших наборов данных в Kaggle или УК Ирвине Машина Обучение Репозитору Отказ

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

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

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

Обучение модели

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

Я использую объект оценки из Scikit – Учите Библиотека для простых машин обучения. Оценщики Пустые модели создают отношения через предопределенный алгоритм.

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

Код для этой модели и поддельного вина ниже:

Импорт и экспорт нашей модели Python

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

Я могу импортировать или экспортировать мою модель Python для использования в других сценариях Python с кодом ниже:

Создание простого веб-сервера

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

Колбу Python Framework позволяет мне создавать веб-серверы в записи.

В приведенном ниже коде я использую Flask, чтобы запустить простой веб-сервер один маршрутный. Мой один маршрут слушает почтовый запрос и отправляет привет обратно. Запросы Post – это специальный тип запроса, который несущий данные в объекте JSON.

Добавление модели на мой сервер

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

Наш сервер теперь загружает обученную модель во время его инициализации. Я могу получить доступ к этому, отправив почтовый запрос на мой «/Echo» маршрут. Маршрут захватывает массив функций из корпуса запроса и дает ему модель. Прогноз модели затем отправляется обратно к запрашиванию.

Заключение

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

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

Удачи и счастливые кодировки!