回归预测效果不好该怎么提升?
🏗️

回归预测效果不好该怎么提升?

Property
notion image
最近实习遇到了生产环境下,回归预测效果不好,转成分类效果也依然不是很好。这该如何改进提升呢?这里搜集几种方法,有效无效我先去试验一下。

0. 究极大杀器 - 数据

机器学习界最有名的一句话是,“数据决定效果的上限,模型只能接近这个上限”。那我是需要找新特征吗?还是需要对原有的特征进行分析呢?
数据的处理主要是两个方面,一个是筛掉表达能力差的数据,一个是提升数据的表达能力。筛选表达能力差的数据主要有几个角度:
  • 数据的重复性(针对类别数据);
  • 数据的缺失性;
  • 数据的相关性;
  • 以及数据在模型里的表达能力;
 
提升数据的表达能力的方式主要有:
  • 数据升维:embedding 方法(如 DeepFM模型);
  • 数据降维:主成分、TSNE降维方法;
  • 数据处理:分布转换、异常值限制;
  • 特征构建:增加特征;
 

1. 筛选特征

1.1 几重原则

  • 90% 以上为某一个值的去掉
  • 缺失值超过 50% 的不要
  • 计算相关系数,相关性系数大于 70%,按照表型表现剔除重要性低的
  • 业务上与目标不相关的不需要
 

1.2 计算

notion image
notion image
notion image
notion image
notion image
 

2. 提升表达能力

1.1 几种方法

  • embedding 方法,包含正常的 word2vec,以及 transformer;
  • 主成分分析降维,TSNE 降维;
  • 查看分布,限定异常值;
  • 增加特征,新特征提升效果显著;

1.2 计算

notion image
notion image
 
实践中发现,PCA降维在提前经历了上面的数据筛选之后,会丢失信息,推荐大家谨慎使用。