Andrew Ng机器学习课程笔记(二)之监督学习之Linear Regression and Logistic regression

lecture3 locally weighted & logistic regression locally weighted regression: terminologys: parametric learning:有具体的参数θ,和数据多少无关(比如线性回归)。 non-paramatric learning:没有具体的参数,需要的内存会线性增长。 如果是一个曲线,如何进行拟合?线性回归可能误差很大,当然可以采用featureselection选择二次或者三次函数指数函数这样的进行拟合,但是曲线变的很扭曲,怎么选择feature? 采用局部加权回归,终点... 阅读详情

Preface

主要内容:
1. Underfitting and overfitting(欠拟合和过拟合)
2. Locally Weighted Linear Regression (LWR,Loess,lowess)(局部加权线性回归)
3. Probabilistic interpretation
4. Logistic regression(逻辑回归)
5. The Perceptron Algorithm(感知器算法)

Underfitting and overfitting

形象的说,拟合就是把平面上一系列的点,用一条光滑的曲线连接起来。因为这条曲线有无数种可能,从而有各种拟合方法。拟合的曲线一般可以用函数表示,根据这个函数的不同有不同的拟合名字。

在本一次的课程中,欠拟合所指的就是我们所描绘的函数没有很好的去拟合坐标系中的点,不能够准确的反映预测值(如下图中最左的函数);过拟合所指的就是我们所描绘的函数完美拟合拟合坐标系中的点,同样不能够准确的反映预测值(如下图中最右的函数)。


这里写图片描述

Locally Weighted Linear Regression (LWR)


这里写图片描述

这个算法对比于上一篇笔记中的算法只是多了一个 w(i) w ( i ) 权重,用于只考虑在 x x 附近的数据,而非对整个数据集进行拟合。
权重w的一种较为通用的定义为(它与高斯函数没有关系,只是形式上的接近):


这里写图片描述

在权重公式中,如果 x(i) x ( i ) 距离所给数据 x x 越近的数据,即|x(i)−x|越小,其值就越接近1; x(i) x ( i ) 距离所给数据 x x 越远的数据,即|x(i)−x|越大,其值就越接近0。故,LWR只考虑在所给x附近的数据。

在权重公式中, τ τ 控制了 w(i) w ( i ) 随着距离下降的速率。 τ τ 值越小, w(i) w ( i ) 随着距离下降越快; τ τ 值越小, w(i) w ( i ) 随着距离下降越慢。(Andrew Ng提到在后面的模型选择的课程中会讨论 τ τ 的选取,这里先不考虑)

Probabilistic interpretation

这一部分主要讲解上一节课中我们为什么要选择最小二乘(Least Squares)以及 成本函数 J(θ) J ( θ ) 。
还是回到对房价预测的问题上来,我们可以将线性回归模型表示为:

y(i)=θTx(i)+ϵ(i)(1) (1) y ( i ) = θ T x ( i ) + ϵ ( i )

在上述公式之中的 i i 表示第 i 样本, ϵ(i) ϵ ( i ) 表示误差( ϵ(i) ϵ ( i ) 包括一些我们未考虑到的或者是未选取的特征,以及一些噪音影响,例如买房者当日的心情、当日的天气情况等等)。这里假设误差函数 ϵ(i) ϵ ( i ) 服从高斯分布(正态分布) ϵ(i)∼N(θTx(i),σ2) ϵ ( i ) ∼ N ( θ T x ( i ) , σ 2 ) 。同时, ϵ(i) ϵ ( i ) 满足IID(Independently and Identically Distributed,独立同分布)性质。
所以,误差函数 ϵ(i) ϵ ( i ) 的概率密度函数为:
p(ϵ(i))=12π−−√σexp(−ϵ(i)2σ2)(2) (2) p ( ϵ ( i ) ) = 1 2 π σ e x p ( − ϵ ( i ) 2 σ 2 )

注意:这里的 p(y(i)|x(i);θ) p ( y ( i ) | x ( i ) ; θ ) 并不是表示条件概率,而表示的是:在给定 x(i) x ( i ) 的情况下,并有参数向量 θ θ 时, y(i) y ( i ) 的概率。

假设误差函数 ϵ(i) ϵ ( i ) 服从高斯分布,Andrew Ng老师解释说主要有两个原因:
1.一般而言,数据集中的特征都是相互独立的,而且对于某一种大量因素而言一般也都服从正态分布,比如我们的身高。

根据中心极限定理(中心极限定理:设从均值为 μ μ 、方差为 σ2 σ 2 ;(有限)任意的一个总体中抽取样本量为 μ μ 的样本,当 μ μ 充分大时,样本均值的抽样分布近似服从均值为 μ μ 、方差为 σ2 σ 2 的正态分布。)也可以证明。

2.这样做可以方便计算。

继续推导。
所以,由公式(1)得 y(i)−θTx(i)=ϵ(i) y ( i ) − θ T x ( i ) = ϵ ( i ) ,即 y(i)−θTx(i) y ( i ) − θ T x ( i ) 服从高斯分布,即 y(i)−θTx(i)∼N(θTx(i),σ2) y ( i ) − θ T x ( i ) ∼ N ( θ T x ( i ) , σ 2 ) ,即有

p(y(i)|x(i);θ)=12π−−√σexp(−y(i)−θTx(i)2σ2)(3) (3) p ( y ( i ) | x ( i ) ; θ ) = 1 2 π σ e x p ( − y ( i ) − θ T x ( i ) 2 σ 2 )

这里, y(i) y ( i ) 可以看做一个样本,假设m为样本总数。使用极大似然函数去求 θmax θ m a x


这里写图片描述

最大似然估计:现在已经拿到了很多个样本(你的数据集中所有因变量),这些样本值已经实现,最大似然估计就是去找到那个(组)参数估计值,使得前面已经实现的样本值发生概率最大。因为你手头上的样本已经实现了,其发生概率最大才符合逻辑。这时是求样本所有观测的联合概率最大化,是个连乘积,只要取对数,就变成了线性加总。此时通过对参数求导数,并令一阶导数为零,就可以通过解方程(组),得到最大似然估计值。:https://www.zhihu.com/question/20447622/answer/23848605

对 L(θ) L ( θ ) 取对数以方便运算,得 l(θ) l ( θ ) (这里,公式中所取对数为log,但一般而言我们会取ln):


这里写图片描述

所以,为了使得 l(θ) l ( θ ) 取得最大值,应该使得 12∑mi=1(y(i)−θTx(i))2 1 2 ∑ i = 1 m ( y ( i ) − θ T x ( i ) ) 2 取得最小值。
即为, J(θ) J ( θ ) 取最小值。
故得证。

Logistic regression

对于分类问题,我们使用之前所讲述的线性回归算法通过给定的 x(i) x ( i ) 来预测 y(i) y ( i ) 往往并不能得到好的效果。在下图中, y(i) y ( i ) 只有0或1两种情况的取值,如果我们通过线性回归算法来预测给定的 x(i) x ( i ) 是属于 y(i)=0 y ( i ) = 0 还是 y(i)=1 y ( i ) = 1 时,不可避免的在某一些在预测值小于0.5的 x(i) x ( i ) 会被错误的从 y(i)=1 y ( i ) = 1 归到 y(i)=0 y ( i ) = 0 类别。


这里写图片描述

在这种情况之下,我们会使用逻辑回归模型来预测 y(i) y ( i ) 。
Logistic function/Sigmoid Function(逻辑函数):

hθ(x)=g(θTx)=11+e−θTx(4) (4) h θ ( x ) = g ( θ T x ) = 1 1 + e − θ T x

同时,
g(z)=11+e−z(5) (5) g ( z ) = 1 1 + e − z


这里写图片描述

当 z→−∞ z → − ∞ 时, g(z)→0 g ( z ) → 0 ;
当 z→+∞ z → + ∞ 时, g(z)→1 g ( z ) → 1 ;

证明过程:

p(y=1|x;θ)=hθ(x)(6) (6) p ( y = 1 | x ; θ ) = h θ ( x )

p(y=0|x;θ)=1−hθ(x)(7) (7) p ( y = 0 | x ; θ ) = 1 − h θ ( x )

等价于:
p(y|x;θ)=(hθ(x))y(1−hθ(x))1−y(8) (8) p ( y | x ; θ ) = ( h θ ( x ) ) y ( 1 − h θ ( x ) ) 1 − y

由于参数 θ θ 似然性,构造似然函数 L(θ) L ( θ ) :
这里写图片描述
在对似然函数 L(θ) L ( θ ) 取对数,得 l(θ) l ( θ ) :
这里写图片描述
求最大似然函数,就是使得 l(θ) l ( θ ) 取得最大值。在这里我们使用上一次所讲述的梯度的思想,对 l(θ) l ( θ ) 求导,以求得 l(θ) l ( θ ) 的最大值。
这里写图片描述

其中,

这里写图片描述
所以,


这里写图片描述

The Perceptron Learning Algorithm

感知器学习算法的定义为:

这里写图片描述

推导过程如Logistic regression,所以有:

这里写图片描述

3 Locally weighted linear regression, logistic Regression 本集课程内容   1. 局部加权线性回归 Locally weighted linear regression 2. 线性回归的解释 Probabilistic interpretation 3. logistic 回归 4. 感知器的学习算法The perceptron learning algorithm   模型中常见问题   1.欠拟合(underfitting) 阅读详情

相关推荐

stanford公开课Machine Learning视频教程By Andrew Ng

Machine Learning Andrew Ng Course Description In this course, you'll learn about some of the most widely used and successful machine learning techniques. You'll have the opportunity to implemen

GarfieldEr007的专栏 4325

Weighted Logistic Regression和Youtube时长预估

解读youtube的经典论文《Deep Neural Networks for YouTube Recommendations》中通过weighted LR来实现时长预估的原理。

tostq的专栏 3998

matlab开发-ProbabilisticLinearRegression

matlab开发-ProbabilisticLinearRegression。自动选择模型的概率线性回归

Logistic Regression——用线解决问题

LR一般用于预测二分类问题,即yes no和0\1问题,我们构建了X(设备属性和行为属性),我们需要预测Y(是否异常),而反作弊项目中,我们需要预测的就是设备作弊or正常,即0\1问题。选择LR一个很重要的原因是我们相信X和Y是有联系的,不同的类型的Y会有不同的X表现。 而X和Y是否有线性关系? 普通线性回归(Ordinary Linear Regres...

weixin_34306593的博客 180

原神真端,原神服务端,虚拟机启动部署傻瓜式教学

没玩过抽卡 游戏想体验一下抽卡的感觉,听说原神有真端了,所以弄一个局域网的服务体验一下,这里要感谢一些服务端的分享者。

azyouyouyou的博客 1万+

别再死记硬背HJB方程了!用Python数值求解一个简单最优控制问题(附完整代码)

本文通过Python数值求解Hamilton-Jacobi-Bellman(HJB)方程,帮助读者从工程实践角度理解最优控制问题。教程涵盖从建立简单车辆控制模型到离散化HJB方程、实现值迭代算法及可视化结果的完整流程,适合具备Python基础的开发者学习。

weixin_42520796的博客 371

Logistic回归算法原理详解及应用

逻辑回归(Logistic Regression)是一种广泛用于分类问题的统计方法,尤其是二分类问题。逻辑回归通过逻辑函数(sigmoid函数)将线性回归模型的输出(通常是一个实数值)映射到(0,1)区间,从而得到属于某个类别的概率。:在二分类问题中,我们设定一个阈值(通常是0.5),如果Sigmoid函数的输出大于这个阈值,则认为样本属于正类(标签为1的类别),否则属于负类(标签为0的类别)总之,逻辑回归是一种简单而强大的分类算法,特别适用于处理二分类问题,并且其输出具有概率意义,便于理解和应用。

m0_58683132的博客 1227

华为交换机实战:如何用ACL+流分类精准限制特定IP的网速(附完整命令)

本文详细介绍了华为交换机如何通过ACL+流分类技术实现精准IP限速,包括ACL规则配置、流分类关联、流行为定义及流策略应用等完整步骤。文章提供了实战命令和配置验证方法,帮助网络管理员有效管理带宽资源,解决特定IP占用过多带宽的问题。

weixin_29229055的博客 100

机器学习核心算法全解析:machine-learning-specialization-andrew-ng中的线性回归与逻辑回归

在当今数据驱动的世界,机器学习已成为各行各业不可或缺的技术。而Andrew Ng的机器学习专项课程更是无数学习者的入门首选。本文将深入解析machine-learning-specialization-andrew-ng项目中的两大核心算法——线性回归与逻辑回归,帮助你快速掌握这两种基础且实用的机器学习方法。 ## 线性回归:预测连续值的利器 📈 ### 什么是线性回归? 线性回归是一种用

gitblog_00400的博客 787

AIGC实战指南:从提示词到工作流,掌握AI内容生成核心技能

人工智能生成内容(AIGC)作为当前AI技术的重要应用领域,其核心原理基于大语言模型(LLM)对海量数据的学习与模式识别。这项技术的价值在于将复杂的创作过程自动化,显著提升内容生产效率与创意实现的多样性。在实际应用中,AIGC已广泛渗透至文本创作、图像设计、音频合成及视频生成等多个场景,成为数字内容生产的重要工具。要高效运用AIGC,关键在于掌握提示词工程与模型微调等核心技能。例如,通过结构化提示词设计,可以精确引导模型生成符合预期的专业周报;而选择合适的微调模型,则能大幅提升图像生成的风格控制力与输出质量

weixin_26808439的博客 373

2023年GESP12月认证C++五级真题解析

例如,如果a=4,那么4是最⼩的幸运数,而1不是,但我们可以连续对1做3次+1操作,使其变为4,所以我们可以说,1幸运化后的结果是 4。【题目大意】给一个完全平方数的标准,推导出哪些是超级幸运数,然后判断N个数字中,哪些是超级幸运数,是的输出“lucky”,不是的输出离该数字最近的比它大的数字。前一个数字,下标是j的数字是偶数,后面的数字下标是j+1的是奇数,按照要求,偶数在奇数的后面,要交换。A函数时间复杂度是O(n/2),B函数算法是O(sqrt(n)),大部分情况后者是优的,值更小。

lan_in的博客 1007

网盘直链下载助手使用指南:免费提取直链,八大网盘一个脚本搞定下载

凌晨等着 2GB 素材包下载,进度条一停就得从头来,这种事谁经历过都懂。**LinkSwift**(网盘直链下载助手)是一款免费开源的**网盘直链提取工具**,它走各网盘公开的官方接口拿到文件的真实下载地址,再交给你自己选的下载工具,适合想摆脱官方客户端、把下载节奏握在自己手里的普通用户。 ## 网盘直链提取工具能给你带来什么 先说清原理:直链就像一份带有效期的取货码。脚本只负责帮你到"官方柜

gitblog_00527的博客 963

图神经网络实战(21)——图神经网络的可解释性

在本节中,我们探讨了应用于图神经网络 (Graph Neural Networks, GNN) 的可解释性人工智能 (Explainable Artificial Intelligence, XAI) 技术。可解释性是许多领域的关键要素,可以帮助我们建立更好的模型。我们介绍了不同的局部解释技术,并重点讨论了 GNNExplainer (基于扰动的方法),在图分类任务中应用 GNNExplainer。

盼小辉丶的博客 9523

Logistic Regression - Classification

摘要: 本文是吴恩达 (Andrew Ng)老师《机器学习》课程,第七章《logistic回归》中第46课时《分类》的视频原文字幕。为本人在视频学习过程中记录下来并加以修正,使其更加简洁,方便阅读,以便日后查阅使用。现分享给大家。如有错误,欢迎大家批评指正,在此表示诚挚地感谢!同时希望对大家的学习能有所帮助。 In this and next few videos, I want to star...

王彩旗的技术博客 368

GhidraMCP:AI驱动的逆向工程革命——让LLM自主操作Ghidra进行自动化分析

(Ghidra Machine Control Protocol)应运而生,它通过将LLM与Ghidra(美国NSA开源逆向工具)结合,实现了AI驱动的自动化逆向工程流程。逆向工程是软件安全、漏洞分析和代码审计的核心环节,但传统方法依赖人工分析,耗时且易出错。未来,随着LLM技术的演进和逆向工程工具的优化,GhidraMCP有望成为安全研究人员和开发者的核心工具,推动逆向工程进入“AI辅助时代”。GhidraMCP通过LLM与Ghidra的深度整合,重新定义了逆向工程的自动化边界。

这里汇聚了前沿的技术分享与实用的开发技巧,带你探索从创意到企业的技术创业之路。 2115

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

笔记 of Andrew Ng , Linear Regression 和 Logistic Regression

欠拟合与过拟合的概念,参数化及非参数化算法概念,局部加权回归,对于线性模型的概率解释,Logistic回归,感知器。

开卷有益 689

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

机器学习项目工程化实践:从理论到生产的质量保障体系

在机器学习领域,从理论算法到生产部署的鸿沟远比传统软件开发更为复杂。Andrew Ng的机器学习专项课程项目为我们提供了一个绝佳的案例研究——如何将学术理论转化为可维护、可测试、可扩展的工程化实践。本文将深入探讨机器学习项目的质量保障体系,分享从代码组织到自动化测试的完整工程化解决方案。 ## 问题驱动:机器学习项目面临的独特挑战 与传统软件项目不同,机器学习项目面临着多重独特挑战: 1.

gitblog_00988的博客 855

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Andrew Ng的机器学习教程

Machine Learning Andrew Ng COURSE DESCRIPTION In this course, you'll learn about some of the most widely used and successful machine learning techniques. You'll have the opportunity

900

机器学习第三章复习(1)

本文用于复习《Machine Learning》第三章部分内容内容来自于Andrew Ng的机器学习课程,主要是为了回忆起来方便第三章第一讲主要讲解了分类问题和引入logistic regression classification problem 在之前的章节中一直都在讲解的是regression problem,然而回顾第一章讲的supervised learning其实是包含regressio

Yuhua Wang的博客 368

Andrew Ng机器学习笔记(二):多变量线性回归

对于一个监督学习模型来说,过小的特征集合使得模型过于简单,过大的特征集合使得模型过于复杂。 对于特征集过小的情况,称之为欠拟合(underfitting); 对于特征集过大的情况,称之为过拟合(overfitting)   解决此类学习问题的方法: 1)       特征选择算法:一类自动化算法,在这类回归问题中选择用到的特征 2)       非参数学习算

册册不是码农 1135

3步掌握吴恩达机器学习专项:从零到精通的完整学习路径

想要系统学习机器学习却不知从何入手?吴恩达机器学习专项课程提供了最权威的入门路径,而这个精心整理的资源库正是你掌握核心算法的秘密武器!这个开源项目包含了Andrew Ng机器学习专项课程的完整笔记和实践代码实现,帮助你从线性回归到强化学习,构建完整的机器学习知识体系。 ## 🔍 核心学习资源架构解析 这个项目采用"理论笔记+实践代码"的双轨学习模式,将吴恩达课程的精髓转化为可操作的学习材料。

gitblog_01052的博客 319

logistic Regression

1.引言 看了Stanford的Andrew Ng老师的机器学习公开课中关于Logistic Regression的讲解,然后又看了《机器学习实战》中的LogisticRegression部分,写下此篇学习笔记总结一下。 首先说一下我的感受,《机器学习实战》一书在介绍原理的同时将全部的算法用源代码实现,非常具有操作性,可以加深对算法的理解,但是美中不足的是在原理上介绍的比较粗略,很多细节没有具

ivysister的专栏 548

Deep learning 课程资料 (Open classroom)

http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=DeepLearning

家家的专栏 1767

机器学习应用指南:从决策树到异常检测的完整实践教程

在Andrew Ng的机器学习专项课程中,决策树与异常检测是两个至关重要的机器学习算法。这些算法不仅理论扎实,在实际应用中更是大放异彩。本文将带你深入理解决策树与异常检测的核心概念,并通过machine-learning-specialization-andrew-ng项目中的实际案例,展示如何将这些算法应用于真实世界的问题解决。无论你是机器学习新手还是希望巩固知识的实践者,这篇指南都将为你提供宝

gitblog_00309的博客 327

神经网络与多类分类实战:吴恩达机器学习课程项目深度教程 [特殊字符]

想要掌握**神经网络**和**多类分类**的核心技术吗?吴恩达机器学习课程项目为你提供了完美的学习资源!本文将通过machine-learning-specialization-andrew-ng项目的实战案例,带你深入理解神经网络如何解决复杂的多类分类问题。无论你是机器学习新手还是有经验的开发者,这个项目都能帮助你快速上手神经网络应用。🎯 ## 📚 项目概览:吴恩达机器学习课程精华 ma

gitblog_00342的博客 366
上一篇: Andrew Ng机器学习课程笔记(一)之监督学习之Linear Regression
下一篇: Andrew Ng机器学习课程笔记(三)之监督学习之Newton's Method
danerli
博客等级 码龄12年 36粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值