吴恩达《Machine Learning》Jupyter Notebook 版笔记发布!图解、公式、习题都有了

简介: 吴恩达《Machine Learning》Jupyter Notebook 版笔记发布!图解、公式、习题都有了

在我很早之前写过的文章《机器学习如何入门》中,就首推过吴恩达在 Coursera 上开设的《Machine Learning》课程。这门课最大的特点就是基本没有复杂的数学理论和公式推导,非常适合入门!


这门课是发布在 Coursera 上的,很多读者容易把它与吴恩达的另一门课 CS229 混淆。其实,今天讲的 Coursera 上的《Machine Learning》更加简单。


其课程地址为:

https://www.coursera.org/learn/machine-learning


关于这门课的官方介绍是:本课程将广泛介绍机器学习、数据挖掘和统计模式识别。相关主题包括:(i) 监督式学习(参数和非参数算法、支持向量机、核函数和神经网络)。(ii) 无监督学习(集群、降维、推荐系统和深度学习)。(iii) 机器学习实例(偏见/方差理论;机器学习和AI领域的创新)。课程将引用很多案例和应用,您还需要学习如何在不同领域应用学习算法,例如智能机器人(感知和控制)、文本理解(网络搜索和垃圾邮件过滤)、计算机视觉、医学信息学、音频、数据库挖掘等领域。


这门课基本涵盖了机器学习的主要知识点,例如:线性回归、逻辑回归、支持向量机、神经网络、K-Means、异常检测等等。而且课程中没有复杂的公式推导和理论分析。Ng 的目的是让机器学习初学者能够快速对整个机器学习知识点有比较整体的认识,便于快速入门。


我曾经整理了一份该门课的思维导图:


5.jpg


如果有读者想要看这份思维导图的清晰版(包括原 .xmind 文件),下面是下载链接:


https://pan.baidu.com/s/16065BpNAP7JEx_PpFHLSOw

提取码:xcmi


好了,回归正题!这门课的笔记网上有很多,但今天推荐一份不错的全面的笔记。该笔记的特点是所有内容都是基于 Jupyter Notebook 写的,集图片、公式、代码、练习题于一体,非常方便使用!


下面来详细看一下!


这份笔记的作者是 Halfrost-Field 冰霜之地,笔记发布地址为:


https://github.com/halfrost/Halfrost-Field


所属于 Machine Learning 一栏。


image.png


笔记包含了课程 11 周完整内容,每一周单独对应一个 Jupyter Botebook 文件。


image.png

下面举几个代表看一下!


1. 支持向量机(SVM)


打开 Support_Vector_Machines.ipynb文件,逻辑回归损失函数的公式推导:


image.png


高斯核函数的可视化理解:

image.png


还有作者对 SVM 重要参数的归纳总结:


image.png

笔记内容结合了吴恩达的课件,归纳的比较到位!


每一份笔记的最后,还配备相应的习题:



image.png


2. 神经网络学习


打开 Neural_Networks_Learning.ipynb 文件,Backpropagation Algorithm 反向传播算法的推导:


image.png

image.png

反向传播算法实现:


function g = sigmoid(z)
    g = 1.0 ./ (1.0 + exp(-z));
end
function g = sigmoidGradient(z)
    g = sigmoid(z) .* (1 - sigmoid(z));
end
delta3 = a3 - Y;
Theta2_grad = 1 / m * delta3' * [ones(m, 1), a2] + ...
  lambda / m * [zeros(K, 1), Theta2(:, 2:end)]; # 正规化部分
delta2 = (delta3 * Theta2 .* sigmoidGradient([ones(m, 1), z2]));
delta2 = delta2(:, 2:end); # 反向计算多一个偏移参数误差,除去
Theta1_grad = 1 / m * delta2' * [ones(m, 1), a1] + ...
  lambda / m * [zeros(H, 1), Theta1(:, 2:end)]; # 正规化部分


笔记内容非常详细,读者可在原笔记中查看。


附加资源:


这门课配套相应的练习题。Github 上已经有人把作业整理成为 Python 的形式了。有 .py 和 .ipynb 两种格式。


https://github.com/nsoojin/coursera-ml-py


https://github.com/kaleko/CourseraML 

相关文章
|
6月前
|
机器学习/深度学习 安全 数据安全/隐私保护
Windows系统安装Jupyter Notebook并实现公网访问内网笔记服务
Windows系统安装Jupyter Notebook并实现公网访问内网笔记服务
113 0
Jupyter快速编辑高大上数学公式 常见关系符号
Jupyter快速编辑高大上数学公式 常见关系符号
203 0
【Latex】Jupyter/Markdown/Latex快速编辑高大上数学公式/常见希腊字母
【Latex】Jupyter/Markdown/Latex快速编辑高大上数学公式/常见希腊字母
170 0
|
机器学习/深度学习 人工智能 开发工具
Jupyter快速编辑高大上数学公式 泰勒展开式
Jupyter快速编辑高大上数学公式 泰勒展开式
152 0
|
数据可视化 程序员 C#
使用Jupyter记事本记录和制作.NET可视化笔记
对于记录笔记的工具特别多,不过对于程序员来说,记录笔记+程序代码+运行结果演示可以同时存在,无疑会极大增加我们的笔记的可读性和体验感。以前在写python的时候,使用jupyter的体验很好,所以此处做一个基于jupyter的记录C#代码的笔记简易教程,供大家围观。
140 0
使用Jupyter记事本记录和制作.NET可视化笔记
Jupyter Notebook 使用笔记
Jupyter Notebook 使用笔记
150 0
Jupyter Notebook 使用笔记
|
Python
Jupyter Notebook中显示图像和数学公式
Jupyter Notebook中显示图像和数学公式
582 0
|
5月前
|
数据采集 机器学习/深度学习 数据可视化
使用Jupyter Notebook进行数据分析:入门与实践
【6月更文挑战第5天】Jupyter Notebook是数据科学家青睐的交互式计算环境,用于创建包含代码、方程、可视化和文本的文档。本文介绍了其基本用法和安装配置,通过一个数据分析案例展示了如何使用Notebook进行数据加载、清洗、预处理、探索、可视化以及建模。Notebook支持多种语言,提供直观的交互体验,便于结果呈现和分享。它是高效数据分析的得力工具,初学者可通过本文案例开始探索。
|
3月前
|
Python
Jupyter Notebook又一利器nbterm,在终端玩notebook!
Jupyter Notebook又一利器nbterm,在终端玩notebook!
|
5月前
|
文字识别 异构计算 Python
关于云端Jupyter Notebook的使用过程与感想
在自学Python时,由于家庭电脑使用冲突和设备老旧,转向云端平台。体验了多个服务:1. 魔搭modelscope(最喜欢,赠送资源丰富,社区活跃),2. Colaboratory(免费GPU,但有时重启,建议用阿里云),3. Deepnote(免费环境有限,但GPT-4代码生成功能强大),4. 飞桨aistudio(适合PaddlePaddle用户),5. ModelArts(曾有免费实例,现难找)。综合来看,阿里云的稳定性与服务更优,尤其是魔搭的自动代码修正功能。对于AIGC,推荐魔搭和付费版PAI-DSW。欢迎分享更多云端Jupyter平台体验。
256 1