На этой неделе мы внесли коррективы в данные, например, увеличили количество лучших треков и обычных треков. На данный момент у нас есть 5255 лучших треков и 20558 обычных треков.

Мы использовали эти данные при обучении последовательной модели Tensorflow Keras. И мы протестировали нашу первую модель. Мы разделили наши данные на 3 части: «Обучение», «Проверка» и «Тест».

Вы можете увидеть код модели ниже;

Мы использовали «ReLu» в качестве функции активации в наших скрытых слоях. И использовал «Softmax» в выходном слое. Мы пробовали различные гиперпараметры, чтобы убедиться, что наша модель работает правильно.

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

У нас есть 3 скрытых слоя с 50 нейронами слева с 9 входными и 2 выходными нейронами. У нас есть часть 80% данных обучения, 10% проверки и 10% тестовых данных. Если мы установим размер пакета равным 300, потери при проверке будут увеличиваться неравномерно, а потери при обучении уменьшатся по кривой. Мы знаем, что если потери при проверке больше, чем потери при обучении, наша модель имеет проблему переобучения. Мы завершили тестирование этой модели с точностью 78,20%.

С правой стороны у нас есть 2 скрытых слоя с 9 нейронами с 9 входными и 2 выходными нейронами. У нас такая же часть с левым сюжетом. Но на этот раз мы установили размер пакета равным 32, чтобы увидеть различия на графике потерь. Кривая потерь при обучении выравнивается после 10 эпох, а потери при проверке имеют нестабильные значения между ними (0,46–0,47). Мы завершили тестирование этой модели с точностью 79,65%.

У нас есть 2 скрытых слоя с 5 нейронами слева с 9 входными и 2 выходными нейронами. У нас есть часть 80% данных обучения, 10% проверки и 10% тестовых данных. Если мы установим размер пакета равным 32, потери при проверке и обучении сглаживаются после 7–8 эпох. И можно сказать, что кривые потерь становятся менее зашумленными. Таким образом, сложность нашей модели уменьшилась. Мы завершили тестирование этой модели с точностью 78,98%.

С правой стороны у нас такое же количество нейронов и тот же размер партии, что и на левом графике. Но на этот раз у нас есть часть 60% обучающих, 20% валидационных и 20% тестовых данных. Кривая потерь при обучении и проверке выравнивается после 10 эпох. Мы завершили тестирование этой модели с точностью 80,12%.

Связанная статья: