机器学习——吴恩达

article/2025/9/19 16:25:00

机器学习——吴恩达

  • induction
    • Supervised learning
    • Unsupervised learning
  • model
    • example
    • how to work
    • define cost function
    • gradient descent for minimizing the cost function
    • Gradient descent for linear regression
  • Matrix and Vector
    • 定义
    • 运算
    • multiple feature linear regression
      • practical tricks for gradient descent
    • vectorization
  • classification
    • logistic regression
      • how to fit parameters theta for logistic regression
      • 简化代价函数
    • multiclass classification
  • overfitting
    • 什么是过拟合
    • 如何解决过拟合问题
      • regularized linear regression
      • regularized logistics regression
  • neural network
    • model
    • gradient checking梯度检测
    • random initialization
    • conclude

induction

what is machine learning?
Task T ; Experience E ; Performance P

classes contain:
在这里插入图片描述

Supervised learning

“right answer” given
对于数据集中的每个样本,我们需要预测并得出正确答案
两类问题:回归,分类
example
在这里插入图片描述

房价预测问题
监督学习:给定实际size与price(right answer)
回归问题:预测连续值

分类问题:预测离散值输出

Unsupervised learning

聚类问题

model

example

房价预测模型

房价训练集:training set of housing prices
目标:从训练集中学习如何预测房价
在这里插入图片描述m:训练集大小
x:输入变量/特征
y:输入变量/预测的目标变量
(x,y):一个训练样本
训练特定样本时使用 ( x ( i ) , y ( i ) ) (x^{(i)},y^{(i)}) (x(i),y(i))表示:第i个训练样本

how to work

在这里插入图片描述
to learing a function: x到y的映射
which called hypothesis

How to represent h?
一种回归问题的假设函数如下
在这里插入图片描述

define cost function

linear regression example
在这里插入图片描述

模型参数,如何选择?
minimize ( h(x)-y )
在这里插入图片描述
最小化训练集中预测值与真实值的差的平方和
在这里插入图片描述
cost function——平方误差代价函数(回归中常用)

cost function
在这里插入图片描述
固定一个参数,以研究cost function
得到simplified hypothesis function and its cost function
在这里插入图片描述

训练集:(1,1),(2,2),(3,3)
θ 1 \theta_{1} θ1分别取1,0.5 , 0…
J ( 1 ) = 0 ; J ( 0.5 ) = 0.68 ; J ( 0 ) = 2.3 J(1)=0 ; J(0.5)=0.68;J(0)=2.3 J(1)=0;J(0.5)=0.68;J(0)=2.3
得到 J ( θ ) J(\theta) J(θ)图像:对于每个 θ \theta θ对应着一个不同的假设函数和损失值
线性回归的目标:minimize J ( θ ) J(\theta) J(θ)
在这里插入图片描述

保留两个参数的cost function研究
假设函数如下,训练集如下得到所示图像
在这里插入图片描述在这里cost function有两个自变量,通过计算可以得到3维空间中图像:在这里插入图片描述使用等高线图contour plots/figures表示3D图像
在这里插入图片描述

每一圈椭圆上的点的J值相同
靠近最小值的点,拟合效果更好

gradient descent for minimizing the cost function

以两个参数进行举例
for function J ( θ 0 , θ 1 ) J(\theta_{0},\theta_{1}) J(θ0,θ1)——>want m i n θ 0 , θ 1 J ( θ 0 , θ 1 ) \underset{\theta_{0},\theta_{1}}{min} J(\theta_{0},\theta_{1}) θ0,θ1minJ(θ0,θ1)

梯度下降的过程

  1. start with some θ 0 , θ 1 \theta_{0},\theta_{1} θ0,θ1(通常初始化为0,0)
  2. keep changing θ 0 , θ 1 \theta_{0},\theta_{1} θ0,θ1 to reduce J ( θ 0 , θ 1 ) J(\theta_{0},\theta_{1}) J(θ0,θ1) until we hopefully end up at a minimum.

在这里插入图片描述
gradient descent algorithm
在这里插入图片描述

:= 赋值
α \alpha α:learning rate控制梯度下降的速度
θ 0 , θ 1 \theta_{0},\theta_{1} θ0,θ1 需要同时更新

α 的影响 \alpha的影响 α的影响

在这里插入图片描述
local optima局部最优点
在这里插入图片描述

Gradient descent for linear regression

在这里插入图片描述

linear hypothesis and squared error cost function
apply gradient descent to minimize squared error cost function

在这里插入图片描述convex function for regression which doesn’t have any local optima(没有局部最优解,只有一个全局最优解)
在这里插入图片描述在这里插入图片描述batch Gradient descent
Batch:Each step of gradient descent uses all the training examples

Matrix and Vector

定义

matrix
在这里插入图片描述在这里插入图片描述vector
在这里插入图片描述

运算

在这里插入图片描述在这里插入图片描述
matrix-vector multiplication
在这里插入图片描述matrix-matrix multiplication
在这里插入图片描述
matrix multiplication properties

不满足交换律,满足结合律
在这里插入图片描述inverse and transpose
在这里插入图片描述

将没有逆矩阵的矩阵近似看成0
在这里插入图片描述
不存在逆矩阵的矩阵术语称为奇异矩阵

在这里插入图片描述

multiple feature linear regression

在这里插入图片描述多特征值的回归模型
在这里插入图片描述多元线性回归模型的梯度下降法
在这里插入图片描述

practical tricks for gradient descent

feature scaling
在这里插入图片描述特征缩放使之更快的收敛
在这里插入图片描述mean normalization
均值归一化

在这里插入图片描述learning rate
在这里插入图片描述

400次迭代后已收敛
在这里插入图片描述

if 损失函数上升 ,说明梯度下降not working
may use a smaller learning rate
在这里插入图片描述

vectorization

在这里插入图片描述

classification

logistic regression

在这里插入图片描述在这里插入图片描述decision boundary
是假设函数的一个属性,取决于其参数取值(取决于dataset)
在这里插入图片描述non-linear decision boundaries
在这里插入图片描述

决策边界不是训练集的属性,而是假设本身及其参数的属性,只要给定了参数向量 θ \theta θ,就能够确定决策边界。
而训练集是为了拟合参数向量 θ \theta θ

how to fit parameters theta for logistic regression

问题背景
在这里插入图片描述
定义损失函数
使用平方误差损失函数,得到会是一个非凸函数(有很多局部最小值,使用梯度下降法难以得到最优解)
在这里插入图片描述logistic regression cost function
在这里插入图片描述
在这里插入图片描述

简化代价函数

在这里插入图片描述在这里插入图片描述
gradient descent
在这里插入图片描述

虽然线性回归和逻辑回归的梯度下降法公式相似,但其假设函数是不同的(h(x))

multiclass classification

拟合伪二分类器,分别学习各个类别
每个分类器都针对其中一种情况进行训练
在这里插入图片描述
预测:将输入x带入各个分类器并找出h(x)(概率)最大的类别
在这里插入图片描述

overfitting

什么是过拟合

线性回归中的过拟合
在这里插入图片描述逻辑回归中的过拟合
在这里插入图片描述

如何解决过拟合问题

在这里插入图片描述

regularized linear regression

在这里插入图片描述

在线性回归损失函数的基础上增加正则化项

gradient descent

在这里插入图片描述

与未正则化的损失函数相比
每一次更新 θ \theta θ,都要先把 θ \theta θ乘上一个略小于1的数( 1 − α λ m 1-\alpha \frac{\lambda}{m} 1αmλ这是正则化后特有的)再进行下降

normal equation(正规方程求解)
在这里插入图片描述

regularized logistics regression

在这里插入图片描述
gradient descent
在这里插入图片描述

neural network

model

请添加图片描述

使用简单模型模拟单个神经元活动

前向传播的向量化计算

请添加图片描述

P47

。。。。

gradient checking梯度检测

假设有一个代价函数 J ( θ ) J(\theta) J(θ)图像如下,我们要估计在 θ \theta θ点的梯度
请添加图片描述

从数值上逼近求解:首先计算出 θ + ϵ \theta+\epsilon θ+ϵ θ − ϵ \theta-\epsilon θϵ,并连接两点,则该条直线的斜率即为我们所要求解的导数近似值,可以通过计算 J ( θ + ϵ ) − J ( θ − ϵ ) 2 ϵ \frac{J(\theta+\epsilon)-J(\theta-\epsilon)}{2\epsilon} 2ϵJ(θ+ϵ)J(θϵ)得到(双侧差分可以得到更准确的结果)

J ( θ + ϵ ) − J ( θ ) ϵ \frac{J(\theta+\epsilon)-J(\theta)}{\epsilon} ϵJ(θ+ϵ)J(θ)单侧差分

θ \theta θ为向量时,估计所有的偏导数

请添加图片描述

check通过此种方式计算出的梯度与反向传播计算梯度进行对比,是否非常接近,以确定反向传播是否正确

请添加图片描述

random initialization

对于参数进行初始化——initial Theta

全部设为0,神经网络不工作,所有隐藏单元都在计算相同的特征,得到相同的结果

请添加图片描述

random initialization
请添加图片描述

conclude

请添加图片描述

请添加图片描述


http://chatgpt.dhexx.cn/article/BtDXKOEs.shtml

相关文章

吴恩达—机器学习的六个核心算法

吴恩达,华裔美国人,是斯坦福大学计算机科学系和电子工程系副教授,人工智能实验室主任。吴恩达是人工智能和机器学习领域国际上最权威的学者之一。他是百度的前副总裁兼首席科学家,最受欢迎的机器学习在线课程之一的创建者&#xf…

【机器学习】机器学习笔记(吴恩达)

文章目录 中文笔记地址视频地址第1章 引言1.1 欢迎1.2 机器学习是什么1.3 监督学习1.4 无监督学习 第2章2.1 模型展示单变量线性回归 2.2 代价函数2.3-2.4 代价函数理解2.5-2.6 梯度下降算法,梯度下降算法理解 第3章第4章4.2 多元(多变量)梯度…

python编码无法使用turtle库_使用Turtle库教Python

Python是一种流行的基于文本的编程语言,程序员每天都在使用它。使用Turtle库(Turtle Library)教Python可以激发对STEM的兴趣。 Turtle库是用于控制机器人Turtle的功能的集合。这些命令可以与Python结合使用,以构建精美作品和原创游戏的程序。The Turtle …

turtle库的介绍

一、turtle库概述: turtle(海龟)库是turtle绘图体系python的实现; turtle绘图体系:1969年诞生,主要用于程序设计入门; turtle库是python的标准库之一;属于入门级的图形绘制函数库…

python turtle库下载_python3中安装turtle库

开始在网上找资料安装的时候踩了一点坑,来总结一下经验 直接安装 安装 pip install turtle 会提示错误:Command "python setup.py egg_info" failed with error code 1 解决方法 1.直接找到turtle 0.0.2(地址是这个),把turtle…

python基础之 turtle 库总结

python基础之 turtle 库总结 文章目录 python基础之 turtle 库总结1. 准备工作1.1 准备画布1.2 画笔设置 2. 画笔运动函数2.1 向前:forward() | fd()2.2 向后:backward() | bk() | back()2.3 向右:right() | rt()2.4 向左:left() …

turtle库的精讲

大家好,我是Python领域的博主。 如果你是编程爱好者可以小编一起学习,在这里我每天都会发Python的基础知识,以及相关的代码。 如果文章有什么错误的地方,请不吝赐教。 觉得博主文章写的还错的话,请三连支持一下博主哦 …

python turtle库有什么用_turtle库使用简介

python之绘制图形库turtle turtle库是python的基础绘图库,官方手册 这个库被介绍为一个最常用的用来给孩子们介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图。 turtle原理理解 turtle名称含义为“海龟”,我们想象一只…

Turtle库实战项目

文章目录 文章目录 文章目录前言直接实战1、turtle库完成正方形螺旋线的绘制2、turtle库完成绘制斜螺旋线3、turtle库完成绘制彩色斜螺旋线4、turtle库完成绘制直角三角形5、turtle库完成绘制梯形7、turtle库完成绘制八一五角星8、turtle库完成绘制冬奥会吉祥物冰墩墩 总结 前言…

Python 之 turtle 库

目录 1、turtle库的调用 2、turtle库的构成 2.1 画布 2.2 画笔(海龟) 2.3 绘图指令 Turtle 库是 Python 的一个标准库,主要用于图像的绘制。想象您用一组组函数驾驭一只小小的乌龟,在无垠的沙滩(画布)上昂…

Python Turtle库详解

turtle的英文意思是“海龟”,今天学习的turtle库也叫作海龟绘图库。想象一下一只小海龟在海面上游泳,海龟游过的轨迹变成了一幅幅有趣的图案。 1. Turtle的绘图窗体布局 美术生作画时必不可少的两样东西:画纸和画笔。画纸在画板上&#xff…

turtle具体详解

一、turtle库概述: turtle(海龟)库是turtle绘图体系python的实现; turtle绘图体系:1969年诞生,主要用于程序设计入门; turtle库是python的标准库之一;属于入门级的图形绘制函数库…

Python入门基础知识(turtle库)

turtle库的概述 turtle(海龟)库是turtle绘图体系的Python实现。 turtle绘图体系:1969年诞生,主要用于程序设计入门,是Python语言的标准库之一,入门级的图形绘制函数库。(Python计算生态 标准…

turtle 库

1.turtle库概述 turttle(海龟)库是turtle绘图体系python的实现。 turtle :1969年诞生,作用:程序设计入门 turtle库是python的标准库之一,入门级别的图形绘制函数 python 计算生态标准库第三方库 标准库:解释器直接安装到操作…

python---turtle库(详解)

turtle库 初识turtle库(python内置库)turtle库基本方法画布(canvas)画笔属性 应用实例彩色python(蟒蛇)多等边三角形无角正方形六角星你猜风车(为什么不会转呢?)龙卷风同心圆(箭靶)五环海绵宝宝 https://blog.csdn.net…

DGL分布式流程

DGL分布式流程 官网documentinteracting processesAPIinitializeDistGraphServerload_partition DLpack DisGraphnum_nodes(), num_edges()g.ndata DisTensorDisEmbeddingDisSamplinglow-levelhigh-level 异构DGL分布式脚本文件copy_files.pylaunch.pyDDP Test DGL 单机版data处…

【HNU分布式与云计算系统】MPI实现矩阵乘矩阵运算

MPI实现矩阵乘矩阵运算 实验环境 操作系统:Ubuntu 20.04 编程语言:C 实验原理 什么是MPI MPI是一个跨语言的通讯协议,用于编写并行计算机。支持点对点和广播。MPI是一个信息传递应用程序接口,包括协议和和语义说明&#xff…

视频矩阵的作用及原理

视频矩阵是指通过阵列切换的方法将m路视频信号任意输出至n路监看设备上的电子装置,一般情况下矩阵的输入大于输出即m>n。有一些视频矩阵也带有音频切换功能,能将视频和音频信号进行同步切换,这种矩阵也叫做视音频矩阵。目前的视频矩阵就其…

spark实现大矩阵运算

目录 一、MapReduce实现大矩阵相乘 二. Spark中分布式矩阵使用 一、MapReduce实现大矩阵相乘 超大矩阵相乘(亿级别)的MapReduce实现思想详解 地址:https://blog.csdn.net/heyuanhao1989/article/details/50218911 MapReduce实现大矩阵乘…

基于Spark框架的大型分布式矩阵求逆运算实现(二)——大型下三角矩阵求逆运算

基于实际需要,需要对五百万阶的方阵进行求逆运算,但查看Spark(v. 2.2.0)的官方api并没有此方面的信息,就自己尝试着实现了一个; 先说一下原理: 对于一个可逆矩阵A,必然会得到它的唯…