-
-
[原创]机器学习基础-特征工程1
-
发表于:
2025-9-15 19:46
1074
-
在机器学习建模中,特征最终必须是数字形式,但原始特征可以是各种类型(文本、类别、图像等)。让我用通俗易懂的金融风控例子一步步解释:
1 ,为什么需要数字形式?
机器学习模型本质是数学公式(如 y = ax + b),只能处理数字。
例子:判断贷款风险时,模型需要计算:
- 年龄(30岁 → 数字30)
- 职业("教师" → 需转换为数字)
- 信用记录("良好"/"差" → 需转换为数字)
2,非数字特征如何转换?
情况1:类别特征(如职业、学历) 独热编码(One-Hot Encoding)
例子:职业特征
- 原始数据:["教师", "程序员", "教师", "销售"]
- 转换后:
| 职业_教师 |
职业_程序员 |
职业_销售 |
| 1 |
0 |
0 |
| 0 |
1 |
0 |
| 1 |
0 |
0 |
| 0 |
0 |
1 |
原理:每个职业变成一个新的0/1特征列,避免模型误认为"教师>程序员"。
情况2:有序类别(如信用评级) 标签编码(Label Encoding)
例子:信用等级(A>B>C)
- 原始数据:["A", "B", "C", "A"]
- 转换后:[2, 1, 0, 2]
原理:保留顺序信息(A=2分最高,C=0分最低)。
情况3:文本特征(如贷款用途描述) TF-IDF或词嵌入
例子:贷款描述"装修房屋"
- 转换为向量:[0.21, 0.75, ...](每个数字代表关键词权重)
情况4:日期特征(如申请日期)拆解为数字
例子:2023-08-15
- 转换为:
| 年 |
月 |
日 |
星期 |
季度 |
| 2023 |
8 |
15 |
2 |
3 |
像随机森林这类模型能直接处理类别特征(内部自动转换),但为了一致性,实践中仍建议先转换为数字。
假设要预测贷款违约风险,原始数据:
| 年龄 |
职业 |
信用等级 |
贷款金额 |
| 35 |
教师 |
B |
50,000 |
| 28 |
程序员 |
A |
100,000 |
转换后数字特征矩阵:
| 年龄 |
职业_教师 |
职业_程序员 |
信用等级 |
贷款金额 |
| 35 |
1 |
0 |
1 |
50,000 |
| 28 |
0 |
1 |
2 |
100,000 |
模型才能计算:
风险分 = 0.3×年龄 + (-0.5)×职业_教师 + ...
关键总结
- 必须转换:所有特征最终需变为数字(整数/浮点数)。
- 转换方法:根据特征类型选择编码策略(独热/标签/TF-IDF等)。
- 金融场景:
- 职业/学历 → 独热编码
- 收入/负债比 → 直接使用数字
- 信用记录 → 标签编码(A=3, B=2, C=1)
- 文本备注 → TF-IDF向量化
[培训]《冰与火的战歌:Windows内核攻防实战》!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。