10 простых способов, которые стоит попробовать перед работой с нейронными сетями

Не всегда новейшие пакеты помогают повысить точность или производительность наших моделей машинного обучения. Иногда мы упускаем из виду основы машинного обучения и спешим к решениям задач более высокого уровня. Ниже приведены 10 простых вещей, которые вы должны попробовать, прежде чем переходить к RNN и CNN.
1. Знание предметной области.
Постарайтесь понять как можно больше о домене. Это очень поможет вам в ваших последующих моделях и в разработке функций.
2. Получение большего количества данных.
Вы можете просто запросить дополнительные данные. Данных, которые у вас есть, может быть недостаточно, чтобы дать вам точную модель с хорошими выходными данными смещения и дисперсии.
3. Обработка выбросов
При использовании оптимизаторов, таких как RMSE или MSE, необработанные выбросы в наборе данных могут привести к очень плохим результатам.
4. Преобразование своих данных.
Простые преобразования, такие как «квадрат» или «квадратный корень», могут дать вашей модели «идеи», позволяющие лучше увидеть закономерности в наборе данных. И, конечно, если вы подозреваете логарифмическое распределение, то ведение журналов ваших функций было бы очень полезным (особенно при использовании линейных моделей).
5. Создание выбора функции
Выбор наиболее подходящих функций для включения в вашу модель не только помогает уменьшить переоснащение, но и помогает вашей модели работать быстрее.
6. Проведение перекрестной проверки.
Ваш тестовый набор данных действительно должен быть вашим последним этапом, прежде чем вы сможете запустить модель в производство. Поэтому используйте перекрестную проверку, чтобы уменьшить дисперсию и получить модель, которая хорошо обобщается с новыми данными.
7. Использование множества алгоритмов.
Вначале все не очень уверены в распределении данных. Поэтому стоит попробовать пару моделей и посмотреть, какая из них оптимизирует цели или критерии. Со временем вы лучше узнаете, какую модель использовать.
8. Настройка гиперпараметров.
Необходимо настроить такие гиперпараметры, как «Скорость обучения», чтобы ваш градиентный спуск не попадал в локальные минимумы. Вам нужно убрать ненужные способы решений, чтобы избежать переобучения.
9. Использование ансамбля
Bagging и Boosting помогли многим выиграть соревнования Kaggle. Почему бы не попробовать то же самое с вашим набором данных.
10. Перетасовка данных
Лучшие идеи – самые простые. Простая перетасовка данных часто помогает повысить производительность.