TensorFlow — это гибкая библиотека с открытым исходным кодом для глубокого обучения, изначально написанная командой Google Brain. Это делает создание моделей проще, быстрее и более воспроизводимым.

  1. Построение модели оттока TensorFlow
  2. Обучение и прогнозирование
  3. Сохранение модели и перезагрузка

Импорт данных

import pandas as pd
from sklearn.model_selection import train_test_split

df = pd.read_csv('Churn.csv')

X = pd.get_dummies(df.drop(['Churn', 'Customer ID'], axis=1))
y = df['Churn'].apply(lambda x: 1 if x=='Yes' else 0)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.2)

get_dummies() используется для обработки данных. Он преобразует категориальные данные в фиктивные или индикаторные переменные.
get_dummies() позволяет легко закодировать ваши категориальные данные.

Импорт зависимостей

from tensorflow.keras.models import Sequential, load_model
from tensorflow.keras.layers import Dense
from sklearn.metrics import accuracy_score

Построение модели и ее компиляция.

model = Sequential()
model.add(Dense(units=32, activation='relu', input_dim=len(X_train.columns)))
model.add(Dense(units=64, activation='relu'))
model.add(Dense(units=1, activation='sigmoid'))
#Compilation
model.fit(X_train, y_train, epochs=200, batch_size=32)

Последовательная модель представляет собой линейный набор слоев.

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

Применение моделей последовательности:

  • Распознавание речи.
  • Классификация настроений.
  • Распознавание видеоактивности. И Т. Д…..

Исправлять, прогнозировать и оценивать

(Запустите с большим количеством эпох, чтобы получить лучшую модель точности)

#Fixing
model.fit(X_train, y_train, epochs=200, batch_size=32)
# Prediction 
y_hat = model.predict(X_test)
y_hat = [0 if val < 0.5 else 1 for val in y_hat

Сохранение модели

model = load_model('tfmodel')