Я искал простой способ изучить Keras и хотел иметь легкий и простой интерфейс. Существуют варианты использования виртуальной машины Data Science VM в Azure или Jupyter Notebook на локальном компьютере или виртуальной машине. Есть также блоки данных Azure, а также студия машинного обучения Azure. Но теперь также доступны новые лазурные записные книжки. У машинного обучения Azure есть так много вариантов, чтобы начать и пройти весь путь, чтобы стать экспертом.

Мое намерение здесь состоит не в том, чтобы объяснить науку, а в том, чтобы показать, как начать с привет, мир. В Интернете есть много документации, где можно прочитать о командах и о том, что каждая из них делает.

Записные книжки Azure — это очень простые онлайн-блокноты Jupyter. Некоторое время я использовал лазурные ноутбуки в качестве бета-тестера или раннего адаптера, но теперь он доступен для всех.

Причина, по которой мне это нравится, заключается в том, что веб-интерфейс и все зависимости уже загружены. Поэтому я решил сделать пример приветствия, используя keras, используя лазурные ноутбуки.

Теперь займемся программированием. Перейдем на https://notebooks.azure.com и войдем в систему, используя свой идентификатор Microsoft live. Как только вы войдете в систему, вы попадете на главную страницу. Там давайте создадим пример проекта. После создания проекта перейдите в папку проекта.

Нажмите «Создать», а затем выберите блокнот. Блокнот Azure позволяет нам программировать на Python 2.7, 3.5, 3.6, R и F#. Укажите имя блокнота, и вы перейдете к интерфейсу блокнота Jupyter. Запуск ядра занимает несколько минут. Как только ядро ​​готово, мы готовы заняться кодированием. По умолчанию ноутбук будет работать на бесплатном компьютере, но вы также можете указать IP-адрес для удаленных вычислений. Существует также возможность загрузить существующую записную книжку Jupyter с локального компьютера или другого веб-источника.

Давайте перейдем к первой ячейке и импортируем существующий набор данных keras для тестирования.

из keras.datasets импортировать imdb
top_words = 10000
(x_train, y_train), (x_test, y_test) = imdb.load_data(num_words=top_words)

Запустите ячейку, чтобы настроить среду.

Теперь в следующей ячейке введите x_train[0] и выполните ячейку, и должны отобразиться данные.

перейдите в новую ячейку и введите

imdb.get_word_index()

приведенная выше команда должна загрузить файл рабочего индекса imdb. Эти источники данных доступны бесплатно.

Создайте новую ячейку и введите:

word_dict = imdb.get_word_index()
word_dict = { key:(value + 3) for key, value in word_dict.items() }
word_dict[''] = 0 # Padding
word_dict ['›'] = 1 # Start
word_dict['?'] = 2 # Неизвестное слово
reverse_word_dict = { value:key for key, value in word_dict.items() }
print (' '.join(reverse_word_dict[id] для идентификатора в x_train[0]))

вышеприведенное начнет подготовку данных для модели keras. Запустите ячейку.

создайте новую ячейку для установки набора данных поезда и теста и введите:

из последовательности импорта keras.preprocessing
max_review_length = 500
x_train = sequence.pad_sequences(x_train, maxlen=max_review_length)
x_test = sequence.pad_sequences(x_test, maxlen=max_review_length)

запустить клетку.

Создайте новую ячейку и введите:

из keras.models import Sequential
из keras.layers import Dense
из keras.layers.embeddings import Embedding
из keras.layers import Flatten

embedding_vector_length = 32
model = Sequential()
model.add(Embedding(top_words, embedding_vector_length, input_length=max_review_length))
model.add(Flatten())
model.add (Плотный (16, активация = 'relu'))
model.add (Плотный (16, активация = 'relu'))
model.add (Плотный (1, активация = 'сигмоид'))
model.compile(loss='binary_crossentropy',optimizer='adam', metrics=['accuracy'])
print(model.summary())

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

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

hist = model.fit (x_train, y_train, validation_data = (x_test, y_test), эпохи = 5, batch_size = 128)

Запустите эту ячейку, и модель начнет процесс обучения. Эта часть должна занять некоторое время, в зависимости от количества эпох. в нашем случае это всего 5 и может занять несколько минут.

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

импортировать seaborn как sns
импортировать matplotlib.pyplot как plt
%matplotlib встроенный

sns.set()
acc = hist.history[‘acc’]
val = hist.history[‘val_acc’]
epochs = range(1, len(acc) + 1)

plt.plot(epochs, acc, '-', label='Точность обучения')
plt.plot(epochs, val, ':', label='Точность проверки')
plt.title( 'Точность обучения и проверки')
plt.xlabel('Эпоха')
plt.ylabel('Точность')
plt.legend(loc='верхний левый')
plt.plot()

Выполните указанную выше команду и посмотрите на график.

Вот и все, вы настроены на выполнение keras в записных книжках Azure.

Прелесть блокнотов Azure в том, что мне не нужно ничего устанавливать и беспокоиться о зависимостях, чтобы начать обучение. Я смог войти в систему и просто создать блокнот, а необходимые библиотеки доступны для модели keras, что упрощает начало кодирования. Есть варианты загрузить файл, а также клонировать его с github.