为什么要学“数据分析”
如果在你的工作场景(或者数据科学比赛)中,你希望模型和算法发挥好的作用,数据分析是非常必要的一环,算法建模的本质是挖掘数据分布的内在模式和规律,从而完成对未知数据的预测,而要完成这个任务,你需要很好地了解你的数据,进而辅助你进行:
- 数据的预处理(清洗、填充、校正)
- 有效特征的构建
- 有希望的模型选择
即使类似的业务场景,以京东和拼多多两家公司为例,电商的很多业务背景是类似的,但是直接把一家公司场景下的建模流程迁移到另外一家,是不可行的,试想一下京东的用户人群分布和拼多多会有什么样的差异?
- 对,想是想不出来的,要自己看数据分布!
再来看看咱们有意思的数据科学比赛,在很多的比赛里,获胜的这些“老司机们”,并不是拿到一个场景的赛题,马上开启建模的过程,而是会先对数据进行一番分析,了解场景以后,再确定下一步做什么是最有希望的。
说个小故事,在时间充裕的时候,我们会和助教、同学们一起玩一点数据科学比赛,比如阿里天池或者kaggle,曾经有两个2000多支队伍的比赛,在使用基本的“老司机”建模模板套路之后刷几天之后,到达100名左右的位置,而正是因为在本部分课程内容中学习到的一些方法进行数据清洗,建模的部分不做任何改变,就进入了top15
详情见视频中我们展示的kaggle的EDA kernel
而工业界的很多场景下,机器学习工程师们并没有被auto-ml的平台(google cloud、阿里云、腾讯云)替代,一个很重要的原因就是,机器还智能不到理解场景!
如何学习“数据分析”
本部分内容主要覆盖到python数据分析与可视化的技能,我们将使用到几个工具库。
- pandas(+numpy)
- matplotlib
- seaborn
pandas是一个非常实用强大的python数据分析工具库,可以很快捷地帮大家完成很多结构化数据上的分析与挖掘。其基本数据结构DataFrame大家在大数据的spark环境下也会看到类似的数据载体。
大家在这个部分需要掌握pandas对一维和二维数据的核心操作
matplotlib是一个API比较复杂的工具库,大家了解绘制出来的图的基本构成,同时熟悉我们讲解的单维度和多维度分析方法(可以把课程的分析内容当做模板),了解函数模板使用即可。
seaborn可以帮助我们以简洁的代码,绘制出漂亮的可视化结果图案,建议大家学习的时候,重点掌握几个核心函数的使用场景和使用方法。
掌握可视化环节大家经常用到的几种图:
- 柱状图
- 饼图
- 灰度图(直方图)
- 概率密度图
- 箱线图
- 提琴图
- 散点图
AI生态的工具库更新比较快,不建议大家强行记API,重要的是解决问题,大家可以把课程内容中介绍到的方法当做模板使用,随用随查,多加练习之后,大家也能熟练使用很多功能。
最后,一定要记住,数据分析和可视化并不是最终目的,它们的目的是帮助我们更好地理解数据,所以每个练习,都要问问自己,我想了解数据的什么信息,用什么可视化的方法比较合理,画完图之后,任务并没有结束,问问自己,从图上看出了数据的什么特性。
评论留言