Любая модель в машинном обучении должна быть обучена и протестирована перед развертыванием модели. Самый простой способ - это традиционный метод «Train_Test_split». Он обучает некоторую часть данных, скажем, 70% или 80%. Он проверяет оставшиеся данные. Поскольку все данные не обучены и не протестированы, существует вероятность того, что в них будут пропущены некоторые функции.

Мы можем использовать перекрестную проверку K-кратной проверки, которая гарантирует, что все данные обучены и протестированы. Но это ручной метод, вы можете использовать некоторые циклы во время кодирования, чтобы выполнить эту технику.

Есть ли какой-либо метод, который позволяет обучать и тестировать все данные без использования ручного метода и циклов?

Ответ - да, cv поиска по сетке и cv со случайным поиском делают одно и то же в одной строке. Но между этими двумя методами есть небольшая разница, и эта разница делает их по-своему эффективными. Как показано на рисунке выше, при выборе наилучшей модели при компоновке сетки учитываются все параметры. Случайный макет рассматривает параметры случайным образом.

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

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

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

Допустим, есть 100 образцов, как показано на рисунке выше. CV поиска по сетке делит весь набор данных на n различных частей, на рисунке выше n = 5. И у него будет x различных разделений, которые хранятся в cv, на приведенном выше рисунке cv = 5.

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

Когда какой метод использовать?

Теперь, когда мы поняли работу и эффективность обоих методов, мы должны знать, когда использовать какой метод. Ответ прост: всякий раз, когда нет. моделей и гиперпараметров больше, чем использование CV случайного поиска, чтобы сократить количество итераций, и CV поиска по сетке, чтобы выбрать лучшую модель, и лучший гиперпараметр выполнит свою работу.

Вывод:

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