Open qiwihui opened 5 years ago
原文来自于《Hands-On Machine Learning with Scikit-Learn and TensorFlow》,这是一本系统学习机器学习和深度学习非常不错的入门书籍,理论和实践兼而有之。
此清单可以指导你完成机器学习项目。主要有八个步骤:
显然,你应该根据你的需求调整此清单。
注意:尽可能自动化,以便你轻松获取新数据。
注意:尝试从领域专家那获取有关这些步骤的见解。
创建用于探索的数据副本(如有必要,将其取样为可管理的大小)。
创建一个 Jupyter 笔记本来记录你的数据探索。
研究每个属性及其特征:
对于监督学习任务,确定目标属性。
可视化数据。
研究属性间的相关性。
研究怎如何手动解决问题。
确定你想要应用的有效的转换。
确定有用的额外数据。
记录你所学到的知识。
注意:
数据清洗:
特征提取(可选):
适当的特征工程:
特征缩放:标准化或者正规化特征。
使用标准参数训练许多快速、粗糙的模型(比如线性模型,朴素贝叶斯模型,支持向量机模型,随机森林模型,神经网络等)。
衡量并比较他们的表现。
分析每种算法的最重要变量。
分析模型产生的错误类型。
进行一轮快速的特征提取和特征工程。
对之前的五个步骤进行一两次的快速迭代。
列出前三到五名最有用的模型,由其是产生不同类型错误的模型。
使用交叉验证方法调节超参数
尝试集成方法,结合最佳模型通常比单独运行它们更好。
一旦你对最终的模型有自信,请在测试集上测量其性能以估计泛化误差。
在测量泛化误差后不要调整模型:你会开始过度拟合测试集的。
将你做的工作整理成文档。
制作精美的演示。
解释你的解决方案实现业务目标的原因。
不要忘记展示在这过程中你注意到的有趣的点。
确保通过精美的可视化或易于记忆的陈述来传达你的主要发现(例如,“收入中位数是房价的第一预测因子”)。
准备好生产解决方案(插入生产数据输入,编写单元测试等)。
编写监控代码以定期检查系统的实时性能,并在信号丢失时触发警报。
定期在新数据上重新训练模型(尽可能自动化)。
原文来自于《Hands-On Machine Learning with Scikit-Learn and TensorFlow》,这是一本系统学习机器学习和深度学习非常不错的入门书籍,理论和实践兼而有之。
此清单可以指导你完成机器学习项目。主要有八个步骤:
显然,你应该根据你的需求调整此清单。
将问题框架化并且关注重点
获取数据
注意:尽可能自动化,以便你轻松获取新数据。
探索数据
注意:尝试从领域专家那获取有关这些步骤的见解。
创建用于探索的数据副本(如有必要,将其取样为可管理的大小)。
创建一个 Jupyter 笔记本来记录你的数据探索。
研究每个属性及其特征:
对于监督学习任务,确定目标属性。
可视化数据。
研究属性间的相关性。
研究怎如何手动解决问题。
确定你想要应用的有效的转换。
确定有用的额外数据。
记录你所学到的知识。
准备数据
注意:
数据清洗:
特征提取(可选):
适当的特征工程:
特征缩放:标准化或者正规化特征。
列出有用模型
注意:
使用标准参数训练许多快速、粗糙的模型(比如线性模型,朴素贝叶斯模型,支持向量机模型,随机森林模型,神经网络等)。
衡量并比较他们的表现。
分析每种算法的最重要变量。
分析模型产生的错误类型。
进行一轮快速的特征提取和特征工程。
对之前的五个步骤进行一两次的快速迭代。
列出前三到五名最有用的模型,由其是产生不同类型错误的模型。
微调系统
注意:
使用交叉验证方法调节超参数
尝试集成方法,结合最佳模型通常比单独运行它们更好。
一旦你对最终的模型有自信,请在测试集上测量其性能以估计泛化误差。
展示你的解决方案
将你做的工作整理成文档。
制作精美的演示。
解释你的解决方案实现业务目标的原因。
不要忘记展示在这过程中你注意到的有趣的点。
确保通过精美的可视化或易于记忆的陈述来传达你的主要发现(例如,“收入中位数是房价的第一预测因子”)。
启动
准备好生产解决方案(插入生产数据输入,编写单元测试等)。
编写监控代码以定期检查系统的实时性能,并在信号丢失时触发警报。
定期在新数据上重新训练模型(尽可能自动化)。