导读:本文来自于KDnuggets所做的十大算法调查,对于数据工程师常用的算法进行排名,并对其在2011-2016年间的变化进行介绍。
基于调查,KDnuggets总结出了数据科学家最常使用的十大算法,它们分别是:
1. Regression 回归算法
2. Clustering 聚类算法
3. Decision Trees/Rules 决策树
4. Visualization 可视化
5. k-Nearest Neighbor 邻近算法
6. PCA (Principal Component Analysis) 主成分分析算法
7. Statistics 统计算法
8. Random Forests 随机森林算法
9. Time series/Sequence 时间序列
10. Text Mining 文本挖掘
其中,受访者表示平均使用了8.1个算法,相比2011年类似的调查大幅提高了。
与2011年的类似调查对比我们发现最流行的算法还是回归算法、聚类算法、决策树和可视化。相对来说最大的增长是由 (pct2016 /pct2011 – 1) 测定的以下算法:
Boosting,从 2011 年的 23.5% 至 2016 年的 32.8%,同比增长 40%
文本挖掘,从 2011 年的 27.7% 至 2016 年的 35.9%,同比增长 30%
可视化,从 2011 年的 38.3% 至 2016 年的 48.7%,同比增长 27%
时间序列,从 2011 年的 29.6% 至 2016 年的 37.0%,同比增长 25%
异常/偏差检测,从 2011 年的 16.4% 至 2016 年的 19.5%,同比增长 19%
集成方法,从 2011 年的 28.3%至 2016 年的 33.6%,同比增长 19%
支持向量机,从 2011 年的 28.6% 至 2016 年的 33.6%,同比增长 18%
回归算法,从 2011 年的 57.9% 至 2016 年的 67.1%,同比增长 16%
另外,2016年最流行的新算法分别是:
K-近邻,46%
主成分分析,43%
随机森林算法,38%
优化,24%
神经网络 – 深度学习,19%
奇异值分解,16%
下降最多的分别是:
关联规则,从 2011 年的 28.6% 至 2016 年的 15.3%,同比下降 47%
增量模型,从 2011 年的 4.8% 至 2016 年的 3.1%,同比下降 36%
因素分析,从 2011 年的 18.6% 至 2016 年的 14.2%,同比下降 24%
生存分析,从 2011 年的 9.3% 至 2016 年的 7.9%,同比下降 15%
不同领域使用的算法比例我们注意到几乎所有人都在使用监督学习算法。
政府和工业界数据科学家比学生或者学术研究院使用更多不同的算法,而且工业界数据科学家更倾向于使用元算法。
下面,我们继续通过雇员的类型来分析最流行的10个算法和深度学习。
为了让这些差异更容易观看,我们针对特定雇员类型相关的平均算法使用量设计了一个算法。
Bias(Alg,Type)=Usage(Alg,Type)/Usage(Alg,All) – 1.
我们注意到:
工业界数据科学家更倾向于使用回归算法、可视化、统计算法、随机森林算法以及时间序列
政府/非盈利组织更倾向于使用可视化、主成分分析算以及时间序列
学术界研究人员更倾向于使用主成分分析算法和深度学习
学生一般使用的算法较少,但是它们会做更多的文本挖掘以及深度学习
另外,参与投票的读者主要来自于
美国/加拿大, 40%
欧洲, 32%
亚洲, 18%
拉丁美洲, 5.0%
非洲/中东, 3.4%
澳大利亚/新西兰, 2.2%
在 2011 年的调查中,我们将产业/政府分在了同一组,将学术研究人员/学生分在了第二组,另外通过算法对于业界/政府的“亲切度”进行了计算:
N(Alg,Ind_Gov) / N(Alg,Aca_Stu)
——————————- – 1
N(Ind_Gov) / N(Aca_Stu)