Datawhale 吃瓜教程 | HUSH随笔

191 阅读7分钟

记录参加 Datawhale 训练营的一些心得体会和学习笔记

[起源]  

我之前参加过Datawhale高校行活动的杭电站,就对这个机构产生了浓厚的兴趣,当时体验了AI生成图片,觉得十分有意思。身为统计学专业学生,我的研究方向是金融统计与风险管理,一直以来都渴望学习人工智能方面的知识,所以一直密切关注着Datawhale。2024年暑期,我报名参加了AI夏令营,遗憾的是,由于右手手腕受伤,未能完成项目。9月开学后,我的右手手腕康复了,于是参加了【聪明办法学Python】,借此机会复习巩固了Python知识,为后续学习人工智能打下了坚实的基础。其实之前在课堂上也学习过机器学习,在科研中也已经会运用一些模型和算法,但大多是调参,对原理等并没有深刻理解。上学期比赛和项目较多,一直比较忙碌,没有腾出时间来深入学习。现在寒假即将到来,我准备参加【吃瓜教程】,系统全面地学习机器学习,为后续深入学习深度学习和大模型打下牢固基础,从而拓宽自己的职业选择道路。

[感想]

这门视频课程内容十分详尽,堪称保姆式教学。在课程中,老师对每一个步骤都进行了清晰的操作展示,让学习者能够直观地理解并跟随操作。而且,课程配套的学习群氛围活跃,大家积极交流、互相探讨,形成了良好的学习环境。当遇到问题时,可以在群里提出,助教们答疑热情且认真,能够及时、准确地给出解答,这大大提高了学习效率,比单纯的自学要高效许多。通过以解决问题为导向、结合项目实践来学习的方式,相较于单纯对照课本听网课,学习速度更快,也更加直接有效,能够让知识更好地运用到实际中去。

Chapter1 绪论

1.1 人工智能背景

  • 人工智能:让机器变得像人一样拥有智能的学科;

  • 机器学习:让计算机像人一样能从数据中学习出规律的一类算法;

  • 深度学习:神经网络类的机器学习算法。

范围:人工智能>机器学习>深度学习

人工智能具体应用领域:

  • 计算机视觉(Computer Vision, CV):让计算机拥有视觉能力

  • 自然语言处理(Natura lLanguage Processing, NLP):让计算机拥有语言能力

  • 推荐系统(Recommender System, RS):让计算机精确分析出人的喜好

1.2 机器学习三观

1.2.1 what:什么是机器学习?

研究关于“学习算法”(一类能从数据中学习出其背后潜在规律的算法)的一门学科。

注意:深度学习指的是神经网络那一类学习算法,因此是机器学习的子集,在人工智能背景中已有介绍。

1.2.2 why:为什么要学习机器学习?

1.从事机器学习理论的研究
2.从事机器学习系统的开发
3.将机器学习中的算法迁移应用到自己的研究领域
4.从事AI应用方向的研究:自然语言处理(NLP)、计算机视觉(CV)、推荐系统等

1.2.3 how:怎样学机器学习?

1.从事纯机器学习理论的研究

本课程讲的所有内容都要听懂;进一步可阅读周志华老师的《机器学习理论导引》;机器学习还很年轻,当前正处于工程领先理论阶段,还有很多未解之谜。

2.从事机器学习系统的开发:

进阶学习:ucbrise.github.io/cs294-ai-sy…

3.将机器学习中的算法迁移应用到自己的研究领域 & 4.从事AI应用方向的研究:自然语言处理(NLP)、计算机视觉(CV)、推荐系统等

学习程度:在学的过程中能看懂每一步推导过程即可,不用达到熟稔于心的地步;会调scikit-learn库即可,不用自行实现;时间紧张的同学,学完前5章即可开始学深度学习。

个人经验:在学校期间,我曾学习过机器学习,所用教材为西瓜书。不过,当时的学习并不深入,只是粗略地学习了前七章,对于算法原理仅是略知一二,随后便直接投入到了应用实践当中。在参与项目和学科竞赛的过程中,我依据应用需求运用了诸如随机森林、XGBoost、AdaBoost、神经网络等机器学习算法。然而,在比赛过程中,评委老师提出了诸多问题,例如:“为什么会选用这些算法来解决这个问题呢?仅仅因为文献中这样使用,你就照搬过来,有没有深入思考过背后的缘由呢?只有弄清楚原因,才能真正掌握问题的关键所在,同时也要了解算法应用的适应性问题。另外,性能评价指标越高的模型就一定是好的模型吗?”通过对这些问题的深入反思,我深刻认识到自己需要补充算法理论知识的学习,深入了解算法模型的适用性,以便能够更加精准、有效地将这些算法应用于科研领域中的各类问题解决。

1.3 基本术语

数据层面

样本(用向量表示样本)、样本空间(样本的特征向量所在的空间)、数据集(用集合表示,有训练集、测试集、验证集)、标记、标记空间、特征工程、分布(通常假设样本独立同分布)

注意:向量中的元素用分号“;”分隔时表示此向量为列向量,用逗号“,”分隔时表示为行向量。

训练层面

模型(学习器)、训练(学习)、测试、泛化、过拟合、欠拟合、归纳偏好(机器学习算法之间没有绝对的优劣之分,只有是否适合当前待解决的问题之分)

任务层面

分类(二分类问题、多分类问题)、回归、聚类

根据训练数据是否拥有标记信息,可将机器学习任务分为以下两大类:

  • 在模型训练阶段有用到标记信息时,称此类任务为“监督学习”,例如第3章的线性模型;
  • 在模型训练阶段没用到标记信息时,称此类任务为“无监督学习”,例如第9章的聚类。

1.4 假设空间与版本空间

版本空间:训练集可以有多个假设空间,且在不同的假设空间中都有可能学得能够拟合训练集的模型,因此将所有能够拟合训练集的模型构成的集合称为“版本空间”。

Chapter2 模型评估与选择

2.1 经验误差与过拟合

Chapter3 线性模型

3.1 基本形式

线性模型的基本形式用向量形式可写成:f(x)=wxT+bf(x)=wx^T+b

3.2 一元和多元线性回归

研究问题一般从最简单最基础的开始,因此首先讨论输入属性的数目只有一个的情况,得到一元线性回归模型:

f(xi)=wxi+bf(x_i)=wx_i+b

参数估计:最小二乘法和极大似然法的结果相同。

再面向更一般的情况,讨论样本含有d个属性,得到多元线性回归模型:

f(xi)=wTxi+bf(x_i)=w^Tx_i+b

更一般地,对于非线性函数映射,考虑单调可微函数g(.)g(.),得到广义线性模型:

y=g1(wxT+b)y=g^-1(wx^T+b)

参数估计:加权最小二乘法和极大似然法

注意:属性数值化:为了能进行数学运算,样本中的非数值类属性都需要进行数值化。对于存在“序”关系的属性,可通过连续化将其转化为带有相对大小关系的连续值;对于不存在“序”关系的属性,可根据属性取值将其拆解为多个属性。属性数值化其实属于特征工程的范畴,而特征工程是采用机器学习方法建模进行数据分析,将在后续详细学习和实践。

3.3 对数几率回归