В этом модуле были изучены способы преобразования необработанных данных в подходящие векторы признаков . Хорошие числовые характеристики обладают теми же качествами, которые описаны в этом разделе.
Четко названный
Каждая функция должна иметь ясное, разумное и очевидное значение для любого человека, участвующего в проекте. Например, значение следующего значения функции сбивает с толку:
Не рекомендуется
house_age: 851472000
Напротив, следующее имя и значение функции гораздо понятнее:
Рекомендуется
house_age_years: 27
Проверено или протестировано перед тренировкой
Хотя в этом модуле много времени было уделено выбросам , эта тема достаточно важна, чтобы стоит упомянуть ее в заключение. В некоторых случаях неверные данные (а не неправильный инженерный выбор) приводят к неясным значениям. Например, следующие значения user_age_in_years
получены из источника, который не проверял соответствующие значения:
Не рекомендуется
user_age_in_years: 224
Но людям может быть 24 года:
Рекомендуется
user_age_in_years: 24
Проверьте свои данные!
Разумный
«Магическая ценность» — это целенаправленный разрыв непрерывного объекта. Например, предположим, что непрерывный объект с именем watch_time_in_seconds
может содержать любое значение с плавающей запятой от 0 до 30, но представляет отсутствие измерения с магическим значением -1:
Не рекомендуется
watch_time_in_секунды: -1
Значение watch_time_in_seconds
, равное -1, заставит модель попытаться выяснить, что значит смотреть фильм назад во времени. Полученная модель, вероятно, не даст хороших прогнозов.
Лучшим методом является создание отдельной логической функции, которая указывает, предоставляется ли значение watch_time_in_seconds
. Например:
Рекомендуется
watch_time_in_секунды: 4,82
is_watch_time_in_секунды_определено=Истинаwatch_time_in_секунды: 0
is_watch_time_in_секунды_определено=False
Теперь рассмотрим дискретный числовой признак, значения которого должны принадлежать конечному набору значений. В этом случае, когда значение отсутствует, обозначьте это недостающее значение, используя новое значение в конечном наборе. При наличии дискретной функции модель будет изучать разные веса для каждого значения, включая исходные веса для отсутствующих функций.