选择困难终结者:不同问题之下的机器学习算法
刚开始学习数据科学时,笔者经常面临这样一个问题:遇到具体问题,选择何种算法才合适。也许你也和我一样,搜了很多有关机器学习算法的文章,会看到许多详细的描述,却并没有减少让抉择的难度。
言归正传,笔者建议你好好了解几个监督和无监督机器学习算法的实现方式和数学直觉思维,如:
- 线性回归
- 逻辑回归
- 决策树
- 朴素贝叶斯
- 支持向量机
- 随机森林
- 自适应提升(AdaBoost)
- 梯度提升树(GBT)
- 简单神经网络
- 层次聚类
- 高斯混合模型
- 卷积神经网络
- 循环神经网络
- 推荐系统
在对机器学习任务的类型有一些了解之后,就可以根据问题陈述来探索现实生活中最流行的算法及其应用。读完本文之后,就试着解决这些问题吧!相信你一定获益匪浅。
- 问题陈述1:预测房价走势。
解决该问题的机器学习算法:诸如随机森林和梯度提升之类的高级回归算法。
- 问题陈述2:深挖客户统计数据用以识别模式。
解决该问题的机器学习算法:聚类算法(肘部法则)。
- 问题陈述3:预测贷款还款情况。
解决该问题的机器学习算法:不平衡数据集分类算法。
- 问题陈述4:根据皮肤病变的特征(大小、形状、颜色等)判断病变为良性还是恶性。
解决该问题的机器学习算法:卷积神经网络(U-Net网络是用于分割的不二之选)。
- 问题陈述5:预测客户流失。
解决该问题的机器学习算法:线性判别分析(LDA)或二次判别分析(QDA)。LDA特别受欢迎,因为它既是分类器又是降维技术。
- 问题陈述6:为员工招聘提供决策框架。
解决该问题的机器学习算法:在这方面,决策树堪称“职业玩家”。
- 问题陈述7:了解并预测产品的热销属性。
解决该问题的机器学习算法:逻辑回归或决策树。
- 问题陈述8:分析市场情绪,评估市场对产品的认知。
解决该问题的机器学习算法:朴素贝叶斯-支持向量机(NBSVM算法)。
- 问题陈述9:创建分类系统,过滤垃圾邮件。
解决该问题的机器学习算法:分类算法。建议使用朴素贝叶斯、支持向量机、多层感知器神经网络(MLPNNs)和径向基函数神经网络(RBFNN)算法。
问题陈述10:预测用户点击在线广告的可能性。
解决该问题的机器学习算法:逻辑回归或支持向量机。
- 问题陈述11:检测信用卡交易中的欺诈行为。
解决该问题的机器学习算法:自适应提升、孤立森林或随机森林。
- 问题陈述12:根据车辆特性预估车辆价格。
解决该问题的机器学习算法:梯度提升是解决此问题的最佳选择。
- 问题陈述13:预测病人加入医保的概率。
解决该问题的机器学习算法:简单神经网络。
- 问题陈述14:预测已注册用户是否愿意为某一产品支付一定金额。
解决该问题的机器学习算法:神经网络。
- 问题陈述15:根据顾客的不同特征(如年龄)进行分类。
解决该问题的机器学习算法:K均值聚类算法。
- 问题陈述16:从语音数据中提取特征用于语音识别系统。
解决该问题的机器学习算法:高斯混合模型。
- 问题陈述17:多目标跟踪,用混合成分数目及均值预测目标在视频序列中每帧的位置。
解决该问题的机器学习算法:高斯混合模型。
- 问题陈述18:排列一组微阵列实验中的基因和样本,揭示生物学上有趣的模式。
解决该问题的机器学习算法:层次聚类算法。
- 问题陈述19:根据特征相似的其他用户的偏好,向用户推荐电影。
解决该问题的机器学习算法:推荐系统。
- 问题陈述20:根据用户阅读的文章,向用户推荐他们想读的新闻文章。
解决该问题的机器学习算法:推荐系统。
- 问题陈述21:优化自动驾驶汽车的驾驶行为。
解决该问题的机器学习算法:强化学习。
- 问题陈述22:通过医学扫描诊断健康疾病。
解决该问题的机器学习算法:卷积神经网络。
- 问题陈述23:平衡不同需求周期下的电网负荷。
解决该问题的机器学习算法:强化学习。
- 问题陈述24:处理时间序列数据或序列(如音频记录或文本)。
解决该问题的机器学习算法:循环神经网络或长短期记忆网络(LSTM)。
- 问题陈述25:翻译语言。
解决该问题的机器学习算法:循环神经网络。
- 问题陈述26:为图像生成标题。
解决该问题的机器学习算法:循环神经网络。
- 问题陈述27:训练聊天机器人,处理客户更细微的需求和问询。
解决该问题的机器学习算法:循环神经网络。
希望本文的介绍能让你对最常用的机器学习算法有所了解,当遇到特定问题时,能够快速反应,选择合适的机器学习算法。