趋近智
虽然生成交互项()或多项式特征()等技术提供了系统化的方法来分析数据中的联系,但它们在操作时通常不理解变量背后的含义。最有效且效果出色的特征常常不仅来自自动化转换,更源于对问题本身的专业背景的透彻理解。特定领域特征工程解决了这一需求。
"可以将其视为运用生成数据的过程中的专家知识。如果您在预测房价,那么了解total_square_footage通常比单独的living_room_sqft和bedroom_sqft更有信息量,这就是专业知识。如果您在分析工业机器的传感器数据,那么了解temperature_increase突然升高并伴随vibration_spike的同步出现通常预示着故障,这就是专业知识。算法最终可能识别出这些关联,尤其是在有足够数据的情况下,但基于这种理解明确地设计特征可以显著加快学习并提高模型准确性。"
特定领域的特征源于对数据来源专业背景的细节、规则和固有联系的理解。为什么它如此有效?
平均购买价值或身体质量指数)构建的模型通常更容易让利益相关者理解和信任。distance_to_city_center特征。让我们看看专业知识如何转化为具体特征:
用户ID、购买时间戳、商品价格、类别。上次购买以来的天数、平均购买间隔时间、客户生命周期价值(CLV,可能通过单独的模型或公式计算)、最常购买类别、购物篮大小(每笔交易的商品数量)、会话时长。账户ID、交易金额、时间戳、商户代码、客户收入、客户债务。过去7天的交易频率、平均交易价值、是否国际交易、一天中的时段类别(例如,“深夜”)、债务收入比、信用使用率。患者ID、心率、收缩压、舒张压、体温、体重_kg、身高_m。身体质量指数()、脉压()、平均动脉压()、源自生命体征组合的风险评分(如SOFA或MEWS评分的组成部分)。传感器ID、时间戳、温度、压力、振动_x、振动_y。温度变化率、总振动幅度()、1分钟压力滚动标准差、运行状态(源自传感器模式)。此图说明了如何运用专业知识组合原始数据点来创建信息量更大的特征:
运用专业公式,根据原始测量值得出身体质量指数(BMI)、平均动脉压(MAP)和购买间隔时间等特征。
您如何获取并运用这些知识?
实现特定领域的特征通常涉及数据处理,常使用Pandas等库。例如,计算BMI非常直接:
# 假设 'df' 是您的 Pandas DataFrame
df['bmi'] = df['weight_kg'] / (df['height_m'] ** 2)
计算时间差需要日期时间处理:
import pandas as pd
# 确保时间戳是 datetime 对象
# 示例 DataFrame 设置(请替换为您的实际数据加载)
data = {'user_id': [1, 1, 2, 1, 2],
'purchase_timestamp': ['2023-01-10 10:00:00', '2023-01-15 12:30:00', '2023-01-12 08:00:00', '2023-01-05 09:00:00', '2023-01-20 15:00:00']}
df = pd.DataFrame(data)
df['purchase_timestamp'] = pd.to_datetime(df['purchase_timestamp'])
# 按用户和时间排序以计算上次购买以来的时间
df = df.sort_values(by=['user_id', 'purchase_timestamp'])
# 计算同一用户连续购买之间的时间差
df['time_since_last_purchase'] = df.groupby('user_id')['purchase_timestamp'].diff()
# 将 timedelta 转换为数值单位,例如天
# .dt.days 从 timedelta 中提取完整的天数
df['days_since_last_purchase'] = df['time_since_last_purchase'].dt.days
# 显示结果(可选)
# print(df)
# user_id purchase_timestamp time_since_last_purchase days_since_last_purchase
# 3 1 2023-01-05 09:00:00 NaT NaN
# 0 1 2023-01-10 10:00:00 5 days 01:00:00 5.0
# 1 1 2023-01-15 12:30:00 5 days 02:30:00 5.0
# 2 2 2023-01-12 08:00:00 NaT NaN
# 4 2 2023-01-20 15:00:00 8 days 07:00:00 8.0
尽管实现可能使用Pandas等标准工具,但定义特征的逻辑直接来源于您对专业背景的理解。这些新创建的特征随后可以进行其他章节中讨论的缩放、编码或选择技术处理。
最终,将自动化特征创建技术与周密、专业驱动的特征工程结合起来,通常能产生最有效和准确的机器学习 (machine learning)模型。这需要批判性思维,有时还需要创造力,将纯粹机械的数据转换提升到理解数据的背景层面。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造