Изменения

Перейти к: навигация, поиск

Жизненный цикл модели машинного обучения

2150 байт убрано, 01:32, 10 февраля 2020
Нет описания правки
Мониторинг и оповещение могут быть особенно важны при развертывании моделей. По мере усложнения системы потребуются возможности мониторинга и оповещения, чтобы сообщать, когда прогнозы для конкретной системы выходят за пределы ожидаемого диапазона. Мониторинг и оповещение также могут быть связаны с косвенными проблемами, например, при обучении новой сверточной нейронной сети расходовать ежемесячный бюджет AWS за 30 минут. Также понадобятся панели управления, позволяющие быстро проверить развернутые версии моделей.
 
==Пример кода на Python 3 ==
#установка git-репозитория и добавление в него исходных файлов
git clone https://github.com/pplonski/my_ml_service.git
cd my_ml_service
ls -l
git add backend/
git commit -am "setup django project"
git push
 
#создание проекта Django и Jupyter ноутбука
mkdir backend
cd backend
django-admin startproject server
cd server
python manage.py runserver
pip3 install jupyter notebook
ipython kernel install --user --name=venv
 
#обучение модели
pip3 install numpy pandas sklearn joblib
import json # will be needed for saving preprocessing details
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import LabelEncoder
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import ExtraTreesClassifier
import joblib # load dataset
# load dataset
df = pd.read_csv('https://raw.githubusercontent.com/pplonski/datasets-for-start/master/adult/data.csv', skipinitialspace=True)
x_cols = [c for c in df.columns if c != 'income']
# set input matrix and target column
X = df[x_cols]
y = df['income']X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state=1234)
train_mode = dict(X_train.mode().iloc[0])
X_train = X_train.fillna(train_mode)
print(train_mode)
# convert categoricals
encoders = {}
for column in ['workclass', 'education', 'marital-status',
'occupation', 'relationship', 'race',
'sex','native-country']:
categorical_convert = LabelEncoder()
X_train[column] = categorical_convert.fit_transform(X_train[column])
encoders[column] = categorical_convert
# train the Random Forest algorithm
rf = RandomForestClassifier(n_estimators = 100)
rf = rf.fit(X_train, y_train)
# train the Extra Trees algorithm
et = ExtraTreesClassifier(n_estimators = 100)
et = et.fit(X_train, y_train)
 
 
#создание модели Django
# run this in backend/server directory
51
правка

Навигация