首页 > 其他分享 >吴恩达机器学习

吴恩达机器学习

时间:2024-04-07 17:56:42浏览次数:25  
标签:特征值 吴恩达 机器 函数 迭代 学习 量化

吴恩达机器学习-第二周

学习视频参考b站:吴恩达机器学习
本文是参照视频学习的随手笔记,便于后续回顾

多维特征(Multiple Features

多种不同类型的输入X1,X2,X3......

模型

f(x)=w1x1 + w2x2 + w3x3 + w4x4 + b ,加了小箭头的是向量(Vector),可以不加,只是方便辨识
image
点积表示法:
image

符号表示

image

向量化(向量表示/use NumPy

通过使用NumPy中的array数组dot点积来优化代码
image

向量化和非向量化的区别

向量化平行(parallel)执行,非向量化一步一步执行,所以相比之下向量化效率高
image
迭代示例:
image

多元线性回归的梯度下降(Gradient Descent for Multiple Regression

非向量化与向量化的对比:
image
image

正规方程(normal equation)

详解链接正规方程1正规方程2
image
之前我们用梯度下降来求解线性回归问题的最优参数,除此之外我们还可以用正规方程法(Normal Equation)来求解其最优参数。
image

特征缩放(Feature Scaling

范围大的特征值尽量选择小的参数w范围小的特征值尽量选择大的参数w
image
范围小的特征值比范围大的特征值影响程度小(图比较扁)
image

特征缩放方法(如何让不同范围的特征值之间有可比较性)

除最大值法:

image

均值归一化(Mean normalization)

公式:(每一个特征值Xi-特征值平均值μi)/(最大值max-最小值min)
image

Z-score标准化(Z-score normalization)

公式:(每个特征值xi-特征值平均值μi)/标准差σi
image
image
特征值范围不是必须-1~1,只要不是太大或太小都可以
image

如何判断梯度下降是否收敛(Checking Gradient Descent for Convergence)

Method1:通过迭代次数和代价函数的图像变化判断,如果代价函数随着迭代次数增加而减少,那就是收敛的
Method2:设置一个阈值ε像是0.001,如果代价函数的值小于ε,自动判断为收敛
不同学习算法迭代次数有差异
image

如何选择合适的学习率

代价函数增大有两种原因:1.代码错误 2.学习率太大
判断原因:将学习率设置很小,如果还是增大,那就是代码错误
学习率太小会导致迭代次数增多,耗时!
image
可以参考选择下图来选择学习率,每次选择上一次学习率的大约三倍
image

特征工程(Feature Engineering)

示例:房屋价格
比如有两个参数来预测价格,长x1和宽x2,如果你觉得面积能更好预测房屋价格,就可以把面积x3=x1*x2加进去
可以通过变换或组合定义自己的特征!!!,可能会对模型预测有利
image

多项式回归(Polynomial Regression--曲线)

通过构造不同的函数来达到效果,像是二次函数会下降导致房屋大小变大,价格变低(不符合实际),可以选择三次函数或是取平方根,更好的构筑模型
image
image

Summary

本周学习了以下内容:
1.多维特征模型的定义和符号表示
2.代码向量化,向量化与非向量化的区别
3.多元线性回归的梯度下降
4.正规方程
5.特征缩放的三种方法
6.如何判断梯度下降收敛,如何选择合适的学习率,特征工程
7.多项式回归

标签:特征值,吴恩达,机器,函数,迭代,学习,量化
From: https://www.cnblogs.com/Mmbhcyt/p/18119579

相关文章

  • 学习SAM过程中mask decoder的信息搜集+个人理解
    SAM主要有图像编码器(imageencoder)、提示编码器(promptencoder)和掩码解码器(maskdecoder)三部分构成,前两部分都比较直观,最后的掩码解码器(maskdecoder)相对来说复杂一些。以下是搜集到的一些帮助理解掩码解码器(maskdecoder)的资料。文字讲解:SAM模型详解-知乎代码:SAM之Mas......
  • 学习 Git 基础知识 - 日常开发任务手册
    欢迎来到我关于Git的综合指南,Git是一种分布式版本控制系统,已经在软件开发中彻底改变了协作和代码管理方式。无论你是经验丰富的开发者还是刚开始编程之旅的新手,理解Git对于正确掌控代码、高效管理项目和与他人合作至关重要。在本教程中,我将带领你了解Git的基础知识......
  • Python爬虫小白入门学习
    最近,被人吐槽最多的莫过于不管打开什么软件,几乎都会不小心跳转到购物网页。于是,“本来想去XXX,结果一打开就跳转到淘宝”,也成了当下刷屏的互联网热梗——别人:条条大路通罗马我:所有APP都能通淘宝更有网友调侃:什么时候我的人生也能像淘宝一样,随便怎么跳转都能成功。虽然这......
  • 机器视觉系统光源的分类及选择
    机器视觉系统        机器视觉系统是一种基于计算机视觉技术的智能系统,主要用于对图像或视频进行分析、处理和识别。一个典型的机器视觉系统通常由以下几个组成部分构成:光源        机器视觉光源是机器视觉系统的关键组成部分之一。机器视觉光源直接影响图......
  • 强化学习算法性能表现
    各算法在不同环境中的表现:来自天寿基准测试https://tianshou.org/en/stable/01_tutorials/06_benchmark.html1.HalfCheetah-v3SAC>DDPG>TD3>PPO>TRPO>NPG>ACKTR>A2C>REINFORCE2.蚂蚁v3SAC>TD3>A2C>PPO>......
  • selenium---八大定位学习笔记
    selenium算是比较主流的。appium,是基于selenium继承实现的。selenium是基于JSCore来实现的。元素的定位:先获取webElement的对象,然后在考虑元素如何操作所有的UI层的自动化,都是基于元素定位来实现的所有的被操作的元素都是webElement对象元素=html标签实际系统中,元素标签......
  • 【测试开发学习历程】python推导式
    Python当中有如下的推导式:列表推导式字典推导式集合推导式生成器推导式推导式的作用是可以快速地生成一个列表、字典或者集合,同时简化代码。下面我们来介绍一下python中的推导式:1列表推导式列表推导式的语法:[结果for变量in可迭代对象]或者[结果for变量......
  • HTML小白学习之提示工具
    我们来制作一个简单提示工具一、我们先做body部分:<div class="tooltip">你好    <span class="tooltiptext">我是小x</span>  </div>现在我们做的是style部分①先给tooltip定义,这里只定义位置和展现方式。 .tooltip {      position:re......
  • 【文化课学习笔记】【数学】统计与概率
    【数学】统计与概率统计定义为了实现某种调查目的,进行收集数据,整理数据,分析数据。收集数据方法:全面调查和抽样调查。全面调查:调查所有对象。优点:全面。缺点:工作量大。抽样调查:从全体中抽取一部分样本调查。抽样调查必须保证每个个体有相同的几率被抽到。高中阶段介绍了三......
  • ZYNQ学习之Petalinux 设计流程实战
    基本都是摘抄正点原子的文章:<领航者ZYNQ之嵌入式Linux开发指南V3.2.pdf,因初次学习,仅作学习摘录之用,有不懂之处后续会继续更新~PetaLinux工具提供了在Xilinx处理系统上自定义、构建和部署嵌入式Linux解决方案所需的一切。该解决方案旨在提高设计生产力,可与Xilinx硬......