西瓜书《机器学习》无疑是机器学习的必读书籍。本书作为该领域的入门教材,在内容上尽可能涵盖机器学习基础知识的各方面。 为了使尽可能多的读者通过本书对机器学习有所了解, 作者试图尽可能少地使用数学知识. 然而, 少量的概率、统计、代数、优化、逻辑知识似乎不可避免。
对于这本书,我是非常推荐的。但是对于很多初学者或者数学基础不是特别扎实的同学们来说,想要完整、清晰地弄懂这本书其实并不容易。因此,一份优秀的笔记对于我们学习本书来说,帮助很大。
今天就给大家推荐一个西瓜书《机器学习》的精炼版笔记。作者 Vay-keen 来自深圳大学,将自己整理的完整版笔记发布在了 GitHub 上。直接放出笔记地址:
https://github.com/Vay-keen/Machine-learning-learning-notes
对于这份笔记,作者这样说:
周志华《机器学习》又称西瓜书是一本较为全面的书籍,书中详细介绍了机器学习领域不同类型的算法(例如:监督学习、无监督学习、半监督学习、强化学习、集成降维、特征选择等),记录了本人在学习过程中的理解思路与扩展知识点,希望对新人阅读西瓜书有所帮助!
笔记目录
这份笔记总共包含 17 份 .md 文档,优势在于美分文档集合了图片和公式,清晰明了。这 17 份文档涵盖了西瓜书 16 章的完整内容。具体笔记目录如下:
- 绪论
- 性能度量
- 假设检验&方差&偏差
- 线性模型
- 决策树
- 神经网络
- 支持向量机
- 贝叶斯分类器
- EM 算法
- 集成学习
- 聚类
- 降维与度量学习
- 特征选择与稀疏学习
- 计算学习理论
- 半监督学习
- 概率图模型
- 强化学习
笔记内容
下面,我们将摘录一些笔记的内容,供大家参考。
1. 线性回归
回归就是通过输入的属性值得到一个预测值,利用上述广义线性模型的特征,是否可以通过一个联系函数,将预测值转化为离散值从而进行分类呢?线性几率回归正是研究这样的问题。对数几率引入了一个对数几率函数(logistic function),将预测值投影到0-1之间,从而将线性回归问题转化为二分类问题。
2. 神经网络
在机器学习中,神经网络一般指的是“神经网络学习”,是机器学习与神经网络两个学科的交叉部分。所谓神经网络,目前用得最广泛的一个定义是“神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所做出的交互反应”。
一直沿用至今的“M-P神经元模型”正是对这一结构进行了抽象,也称“阈值逻辑单元“,其中树突对应于输入部分,每个神经元收到n个其他神经元传递过来的输入信号,这些信号通过带权重的连接传递给细胞体,这些权重又称为连接权(connection weight)。细胞体分为两部分,前一部分计算总输入值(即输入信号的加权和,或者说累积电平),后一部分先计算总输入值与该神经元阈值的差值,然后通过激活函数(activation function)的处理,产生输出从轴突传送给其它神经元。M-P神经元模型如下图所示:
作者还给出了 BP 神经网络算法调整隐含层到输出层的权重调整规则的推导过程:
3. 支持向量机
支持向量机是一种经典的二分类模型,基本模型定义为特征空间中最大间隔的线性分类器,其学习的优化目标便是间隔最大化,因此支持向量机本身可以转化为一个凸二次规划求解的问题。
4. 集成学习
顾名思义,集成学习(ensemble learning)指的是将多个学习器进行有效地结合,组建一个“学习器委员会”,其中每个学习器担任委员会成员并行使投票表决权,使得委员会最后的决定更能够四方造福普度众生~...~,即其泛化性能要能优于其中任何一个学习器。
Boosting族算法最著名、使用最为广泛的就是AdaBoost,AdaBoost使用的是指数损失函数,因此AdaBoost的权值与样本分布的更新都是围绕着最小化指数损失函数进行的。
整个AdaBoost的算法流程如下所示:
以上只摘录了一小段笔记内容,完整的笔记请大家自行查阅,希望对你有所帮助。
最后,再次放上西瓜书开源笔记链接地址: