课程简介
- 所属大学:UCB
- 先修要求:线性代数、Python编程、基础统计
- 课程难度:🌟🌟
- 内容关键词:pandas;visulization;SQL;机器学习
- 资源开源度:🌟🌟🌟🌟
本课程是UCB的数据科学入门课程,介绍了在数据处理、分析过程中经常使用的一些工具比如pandas,matplotlib,sql等等,同时引入了一些基础的机器学习内容如线性回归、逻辑回归、主成分分析、聚类等等。在学习这门课之后,基本上就掌握了“调包侠”的基础知识了。然而课程大多数时候还是手把手教学,给学生独立实践的机会并不多,后续可能还需要更多的特征工程、机器学习类实践才能融会贯通。
总体来说,其实这门课的难度并不大。
- 课堂:基本上在数学以及算法方面的难点都是一笔带过的,对一些编程操作、数据处理过程的讲解很详细,而且机器学习部分虽然难度低但是逻辑链非常完善,适合入门者观看。累计27次课,每次课80min左右。
- 作业:使用jupyter notebook完成,引导非常到位甚至有点太到位了。难度不大,一共有大概25次作业,每次基本上都是按照要求进行代码填空即可,1-2小时即可完成。课程还有两个project,但是其实和平时作业难度相当。
资源汇总
- 课程网站:website
- 课程作业:labs 作业需要本地配环境运行,但是难度不大。
- 课程教材:book 没怎么看过这个教材,如果想快速过一下这门课的话看课程网站的Course Notes就可以了。
- 我的资料:笔记+作业 里面是我的一些简单的课程notes以及作业的实现,仅供参考。
学习收获
这是我第一个真正意义上自学完成的课程,也算是突破了之前每次自学课程的时候新鲜劲一过就不知不觉半途而废的“自学魔咒”。
一直以来UCB的课程都是我的首选,因为他们给的实在太多了。这门课也延续了以往UCB课程的特点,课程资源及其丰富详实,如果是在PKU内的一门课,我会觉得它太过于冗余且耗费精力,但是作为自学资源,这反而有利于更加个性化的学习路径的规划。
感谢Narges Norouzi以及Joseph E. Gonzalez两位教授开源了课程的全部作业代码以及笔记,也感谢你们在课程中设计的一个个通俗易懂的demo。
这门课中难能可贵的一点是,它指出了数据科学中一些“不那么科学”的内容,比如在房价预测project中,深入探讨了如何用量化的方式去定义诸如“公平”这类的非定量但是是社会核心价值观念所追求的东西。在现实应用场景中亦如是,如何制定数据的评判标准?如何利用数据对人、人群的行为进行归因?这不仅仅是数学和计算机的问题,更是历史、政治和社会学的综合问题。与人斗,其乐无穷。
上完此课,我才意识到我们平时的机器学习、深度学习中常常忽略的东西,那就是数据处理、特征工程这一部分。即使随着深度学习的发展,神经网络能自动对特征进行提取,但是一些基础的数据清洗、补全、整合等等的内容,仍然是不可或缺的。因此应当完善整个技术栈,从一些基础的网页爬虫,到数据清洗、特征工程、数据库管理,最后再到深度学习来进行回归、分类等任务,都要有所涉猎乃至精通。
当然,data100仅仅是一个入门级别的课程,我们的征途,是星辰大海。