1、在真实的工作场景中加深理解
假设已经掌握多个分散的知识点,那么要考虑将其形成为一个体系。列举几个场景实例:
场景1:一次性模型
老板给你的数据非常小,甚至在excel中就可以打开,但是他却需要精确并且稳定的预测。
场景2:嵌入式模型
你和团队要对甲方软件项目进行需求收集,你了解到解决某个问题最好的方法是设计并训练一个预测模型,并把它嵌入到你们的软件产品中。这是嵌入式模型。这当中还有一些变体(比如这个模型是固定的?还是以后会自动定期更新?是在本地运行?还是通过API远程访问?)
场景3:深度模型
开始一项新工作,工作的系统至少由一个预测模型组成。不管是维护系统还是添加功能,都需要具备对这个模型的理解,它的输入是什么,输出是什么。
模型的预测精度是软件产品非常重要的一个指标,而你的工作职责包括提升模型预测精度。比如,测试预发布系统时,你展示的模型的准确度不能低于上个版本或高于上个版本。
机器学习是针对特定类别的问题进行设计的。
正确的学习方式是:采用最佳的工具组合和平台,解决真实的机器学习问题。
1、通过系统化流程迭代结果
一旦会使用工具,那么通过机器学习算法解决问题就相对容易了。
2、为你的系统流程选择最佳的工具组合
所谓最好的组合是可以给你快速的、可靠的、高质量的结果,并且能够尽可能的自动运行。
建议的工具组合:
一次性模型:使用Weka平台,可以在很短的时间加载csv,设计一个实验,并获得最好的模型
嵌入式预测模型:通过python使用Scikit-learn库。
深度模型:R语言,在R平台上可以快速并且自动尝试很多最高水平的模型。3
3、有选择性的开放你的项目
仔细选择练习数据库:可以从UCI机器学习库中获得,相对简单,适合新手学习。
之后推荐一些更大的数据库,比如Kaggle、KDD比赛提供的数据集,它们相对有点乱,要求使用更多不同的技能。
坚持使用表列数据。
处理图像和文本数据(分别是计算机视觉和自然语言处理)一般会要求使用该领域里面特定的某些方法和工具。
大数据!=机器学习。你可以使用大数据构建一个预测模型,但是这仅仅是你所拥有的技能在特定领域的特定表现,一开始学习机器学习应从小数据开始。