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

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

В руках опытного мастера обработки данных даже простая функция может открыть секреты вселенной.

Давайте рассмотрим каждое преобразование, которое мы можем использовать для любых данных:

  1. _CRLB: это преобразование подсчитывает, сколько раз переменная пересекала нижнюю границу доверительного интервала за последние 3 месяца. Например, его можно применять для отслеживания того, сколько раз цена акций опускалась ниже нижней границы доверительного интервала за последние 3 месяца.
  2. _R0309: Это преобразование вычисляет отношение среднего значения за последние 3 месяца к среднему значению за последние 9 месяцев. Например, если мы анализируем ежемесячные данные о продажах, это соотношение может указывать на то, увеличивались или уменьшались продажи за последние 3 месяца по сравнению с предыдущим 9-месячным периодом.
  3. _D0306: Это преобразование измеряет разницу между средним значением за последние 3 месяца и средним значением за последние 6 месяцев. В сценарии, в котором мы изучаем ежемесячный трафик веб-сайта, эта разница может отражать, были ли значительные изменения в трафике между двумя периодами времени.
  4. RMA0306: это преобразование вычисляет отношение максимального значения за последние 3 месяца к максимальному значению за последние 6 месяцев. Это может быть полезно при анализе таких показателей, как ежемесячный доход, где соотношение указывает на относительный рост или снижение дохода между этими двумя временными интервалами.
  5. RMI0306: это преобразование вычисляет отношение минимального значения за последние 3 месяца к минимальному значению за последние 6 месяцев. Применительно к набору данных о дневных температурах это отношение позволит понять, являются ли недавние минимальные температуры ниже или выше по сравнению с предыдущими 6 месяцами.
  6. RAM0306: Это преобразование вычисляет отношение максимального значения за последние 3 месяца к среднему значению за последние 6 месяцев. Если мы рассмотрим набор данных о ежемесячных расходах, это соотношение покажет, были ли какие-либо необычные всплески или колебания расходов по сравнению со средним значением.
  7. _CRUB: Подобно _CRLB, это преобразование подсчитывает, сколько раз переменная пересекала верхнюю границу доверительного интервала за последние 3 месяца. Например, если мы анализируем цены на акции, эта функция будет фиксировать, сколько раз цена превышала верхнюю границу доверительного интервала.
  8. _L1: это преобразование представляет запаздывающее значение переменной 1 месяц назад. Его можно применять к различным наборам данных, зависящим от времени. Например, при анализе ежемесячных продаж _L1 предоставит данные о продажах за предыдущий месяц.
  9. _L2: Подобно _L1, это преобразование представляет запаздывающее значение переменной за 2 месяца назад. Продолжая пример с продажами, _L2 предоставит данные о продажах за два месяца до этого.
  10. _Rc3, _Rc6, _Rc9, _Rc12: эти преобразования вычисляют отношение текущего значения переменной к ее значению в момент времени с задержкой (3, 6, 9 или 12 месяцев назад). Эти коэффициенты могут быть полезны для изучения роста или снижения различных наборов данных, зависящих от времени, таких как цены на акции, количество клиентов или трафик веб-сайта.
  11. _Rs3s6, _Rs3s9, _Rs3s12, _Rs6s12, _Rs6s18: эти преобразования вычисляют сумму значений за последний период времени, деленную на сумму значений за предыдущий период времени. Например, _Rs3s6 рассчитает сумму значений за последние 3 месяца, деленную на сумму значений за предшествующие 6 месяцев. Эти коэффициенты могут выявить закономерности или тенденции в совокупных данных, таких как ежемесячный доход или общее количество посещений веб-сайта.
  12. _avg3: это преобразование вычисляет среднее значение переменной за последние 3 месяца. Он обеспечивает меру центральной тенденции недавних значений переменной. Например, при анализе месячных температур _avg3 даст среднюю температуру за последние 3 месяца.
  13. _avg3_CRLB: это преобразование действует как индикатор того, пересекало ли среднее значение за последние 3 месяца нижнюю границу доверительного интервала. Это помогает определить случаи, когда среднее значение падает ниже нижней границы. Этот индикатор может быть полезен для обнаружения необычных или значительных отклонений от ожидаемого диапазона.
  14. _avg3_CRUB: Подобно _avg3_CRLB, это преобразование действует как индикатор того, пересекало ли среднее значение за последние 3 месяца верхнюю границу доверительного интервала. Это помогает определить случаи, когда среднее значение превышает верхнюю границу.
  15. _ci_osh: это преобразование вычисляет значение путем вычитания среднего значения и стандартного отклонения доверительного интервала из _avg3 и установки любого отрицательного результата равным нулю. Это гарантирует, что вычисленное значение неотрицательно. Это преобразование полезно в сценариях, где отрицательные значения не имеют смысла или нежелательны.
  16. _ci_ush: это преобразование вычисляет значение путем вычитания _avg3 из среднего значения и стандартного отклонения доверительного интервала и установки любого отрицательного результата равным нулю. Подобно _ci_osh, он обеспечивает неотрицательное значение. Это преобразование может быть полезным, если вы фокусируетесь на положительных отклонениях от ожидаемого диапазона.
  17. _cumi_t‹j›: это преобразование вычисляет кумулятивное значение путем деления текущего значения плюс малый эпсилон на минимальное значение плюс тот же эпсилон, используя последний промежуток времени j-месяцев. Эпсилон добавляется, чтобы избежать деления на ноль. Он фиксирует относительный рост переменной по сравнению с ее минимальным значением за указанный промежуток времени. Это преобразование может быть полезно для отслеживания переменных, имеющих нижний предел или базовое значение.
  18. _cumx_t‹j›: это преобразование вычисляет кумулятивное значение путем деления текущего значения плюс небольшой эпсилон на максимальное значение плюс тот же эпсилон, используя последний промежуток времени j-месяцев. Эпсилон добавляется, чтобы избежать деления на ноль. Он фиксирует относительный рост переменной по сравнению с ее максимальным значением за указанный промежуток времени. Это преобразование полезно для мониторинга переменных, у которых есть верхний предел или порог.
  19. _curr: это преобразование представляет текущее значение переменной в момент времени t=0. Он обеспечивает отправную точку или базовое значение для дальнейших расчетов или сравнений.
  20. _cv_t‹j›: Это преобразование вычисляет коэффициент вариации, используя стандартное отклонение, деленное на среднее значение переменной за последний промежуток времени j месяцев. Коэффициент вариации измеряет относительную изменчивость или дисперсию значений переменной. Это может помочь оценить стабильность или изменчивость данных.
  21. _div3: это преобразование вычисляет значение, вычитая среднее значение за последние 3 месяца из среднего значения за предыдущий 21 месяц, а затем деля его на стандартное отклонение за предыдущий 21 месяц. Он количественно определяет разницу в недавнем среднем значении переменной по сравнению со средним значением более длительного периода времени относительно стандартного отклонения. Это преобразование может выявить периоды значительного отклонения от долгосрочного среднего значения.
  22. _div6: это преобразование вычисляет значение путем вычитания среднего значения за последние 6 месяцев из среднего значения за предыдущие 18 месяцев и последующего деления его на стандартное отклонение за предыдущие 18 месяцев. Он обеспечивает меру разницы среднего значения переменной за более короткий промежуток времени по сравнению со средним значением за более длительный промежуток времени относительно стандартного отклонения. Это преобразование может выявить краткосрочные колебания или тенденции.
  23. _m2_t‹j›: это преобразование вычисляет значение путем деления максимального значения за последний промежуток времени j месяцев на минимальное значение за тот же промежуток времени с добавлением небольшого эпсилон, чтобы избежать деления на ноль. Он фиксирует соотношение между максимальным и минимальным значениями переменной за указанный период времени. Это преобразование может быть полезно для понимания диапазона или изменчивости значений переменной.
  24. _max_t‹j›: это преобразование вычисляет максимальное значение переменной за последний промежуток времени j-месяцев. Он предоставляет информацию о максимальном значении, достигнутом переменной за указанный период времени. Это преобразование может быть полезным для определения пиковых значений или экстремальных наблюдений.
  25. _mean_CI: это преобразование представляет среднее значение переменной между месяцами -23 и -3. Он используется для определения доверительного интервала учетной записи или набора данных. Среднее_ДИ обеспечивает контрольную точку для сравнения отдельных значений и оценки их отклонения от ожидаемого диапазона.
  26. _min_t‹j›: это преобразование вычисляет минимальное значение переменной за последний промежуток времени j-месяцев. Указывает наименьшее значение, наблюдаемое в указанный период времени. Это преобразование может быть полезно для выявления впадин или самых низких точек в значениях переменной.
  27. _mm_t‹j›: это преобразование вычисляет значение путем деления максимального значения за последний j-месячный промежуток времени на минимальное значение за тот же промежуток времени с добавлением небольшого эпсилон, чтобы избежать деления на ноль. Он фиксирует соотношение между максимальным и минимальным значениями переменной за указанный период времени. Это преобразование похоже на _m2_t‹j›, но представляет отношение между максимальным и минимальным значениями без учета временного интервала.
  28. _mx_t‹j›: это преобразование вычисляет значение путем деления максимального значения за последний j-месячный промежуток времени на сумму значений за тот же промежуток времени с добавлением небольшого эпсилон, чтобы избежать деления на ноль. Он фиксирует пропорцию максимального значения по отношению к сумме значений за указанный период времени. Это преобразование может дать представление о вкладе или значимости максимального значения в общую сумму.
  29. _mxme_t‹j›: это преобразование вычисляет значение путем деления максимального значения за последний промежуток времени j месяцев на среднее значение значений за тот же промежуток времени с добавлением небольшого эпсилон, чтобы избежать деления на ноль. Он фиксирует соотношение между максимальным значением и средним значением за указанный период времени. Это преобразование может помочь определить относительное расстояние максимального значения от среднего.
  30. _s2_t‹j›: это преобразование вычисляет значение путем вычитания минимального значения за последний промежуток времени j-го месяца из суммы значений за тот же промежуток времени, а затем деления его на разницу между максимальным и минимальным значениями с добавление небольшого эпсилон, чтобы избежать деления на ноль. Он обеспечивает меру пропорции суммы значений относительно диапазона между минимальными и максимальными значениями. Это преобразование может быть полезно для понимания распределения или концентрации значений в указанный период времени.
  31. _slop_b1_12m: это преобразование представляет наклон или коэффициент регрессии на уровне счета с последними 12 месяцами в качестве временного интервала. Он фиксирует тенденцию или скорость изменения переменной за указанный период времени. Это преобразование может дать представление о направлении и величине долгосрочного тренда переменной.
  32. _slop_b1_24m: это преобразование представляет наклон или коэффициент регрессии на уровне счета с последними 24 месяцами в качестве временного интервала. Он фиксирует тенденцию или скорость изменения переменной за более длительный период времени по сравнению с _slop_b1_12m. Это преобразование может помочь определить долгосрочные тенденции или закономерности.
  33. _slop_b1_24m_12m: это преобразование представляет наклон или коэффициент регрессии на уровне счета с самыми старшими 12 месяцами в качестве временного интервала. Он фиксирует тенденцию или скорость изменения переменной, используя самые старые доступные точки данных. Это преобразование может дать представление о долгосрочной тенденции или модели, которая может отличаться от более поздних тенденций.
  34. _slop_b1_6m: это преобразование представляет наклон или коэффициент регрессии на уровне аккаунта с последними 6 месяцами в качестве временного интервала. Он фиксирует тенденцию или скорость изменения переменной за более короткий период времени по сравнению с _slop_b1_12m и _slop_b1_24m. Это преобразование может помочь определить краткосрочные тенденции или закономерности.
  35. _std_CI: это преобразование представляет стандартное отклонение значений переменной между месяцами -23 и -3. Он используется для определения доверительного интервала учетной записи или набора данных. std_CI обеспечивает меру дисперсии или изменчивости значений переменной вокруг среднего значения.
  36. _std_t‹j›: это преобразование вычисляет стандартное отклонение переменной за последний промежуток времени j месяцев. Он измеряет разброс или дисперсию значений переменной в течение указанного периода времени. Это преобразование может помочь оценить волатильность или изменчивость переменной.
  37. _sto_t‹j›: это преобразование вычисляет стохастический осциллятор путем вычитания минимального значения за последний промежуток времени j-го месяца из текущего значения и деления его на разницу между максимальным и минимальным значениями с добавлением небольшого эпсилон, чтобы избежать деление на ноль. Он обеспечивает нормализованную меру положения текущего значения в диапазоне между минимальным и максимальным значениями. Это преобразование полезно для оценки относительного положения или импульса переменной.
  38. _sum‹j›: это преобразование вычисляет сумму значений переменной за последний промежуток времени j месяцев. Он предоставляет информацию об общем накоплении или агрегировании значений переменной за указанный период времени. Это преобразование может быть полезно для понимания общей величины или количества, представленного переменной.
  39. _yt_t‹j›: это преобразование вычисляет значение путем вычитания минимального значения за последний j-месячный промежуток времени из удвоенного текущего значения и вычитания максимального значения за тот же промежуток времени. Он фиксирует разницу между текущим значением и диапазоном значений за указанный период времени. Это преобразование может помочь определить отклонение текущего значения от минимального и максимального значений.
  40. _dev: это преобразование представляет собой отклонение переменной от ее среднего значения. Он измеряет разницу между каждым значением и средним значением переменной. Это преобразование может быть полезно для понимания удаленности или расхождения отдельных значений от центральной тенденции.
  41. _cluster: это преобразование использует группы или кластеры из алгоритма кластеризации. Он сохраняет группировку или категоризацию данных и гарантирует, что никакие преобразования не изменят группировку. Это преобразование полезно, когда сохранение исходной структуры кластера важно для последующего анализа или интерпретации.

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