Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- '''Постройте и обучите нейронную сеть. Начните с простого — создайте модель логистической регрессии с десятью классами в Keras.
- Вам понадобится:
- Функция активации 'softmax';
- Функция потерь 'sparse_categorical_crossentropy' (англ. «разрежённая категориальная кросс-энтропия»).
- Слово sparse говорит о способе кодирования ответов. В задаче требуется просто номер класса, поэтому выбор пал на эту функцию потерь.
- Когда ответы кодируются One-Hot-Encoding и классу 9 соответствует целый вектор [0, 0, 0, 0, 0, 0, 0, 0, 1], применяют categorical_crossentropy().
- Обучите сеть на одной эпохе. Напечатайте прогресс обучения и значения точности на обучающей и тестовой выборках.
- '''
- from tensorflow import keras
- import matplotlib.pyplot as plt
- import numpy as np
- features_train = np.load('/datasets/fashion_mnist/train_features.npy')
- target_train = np.load('/datasets/fashion_mnist/train_target.npy')
- features_test = np.load('/datasets/fashion_mnist/test_features.npy')
- target_test = np.load('/datasets/fashion_mnist/test_target.npy')
- features_train = features_train.reshape(features_train.shape[0], 28 * 28)
- features_test = features_test.reshape(features_test.shape[0], 28 * 28)
- model = keras.models.Sequential()
- model.add(keras.layers.Dense(10, activation='softmax', input_dim=features_train.shape[1]))
- model.compile(loss='sparse_categorical_crossentropy',
- optimizer='sgd',
- metrics=['acc'])
- model.fit(features_train, target_train, epochs=1, verbose=2,
- validation_data=(features_test, target_test))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement