IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 10月18日-吴恩达机器学习P29-33 -> 正文阅读

[人工智能]10月18日-吴恩达机器学习P29-33

(一)绘制图像

1、绘制图像用命令plot(x,y);
但如果想在一幅图上绘制两条曲线,那么绘制完后补充命令hold on;再绘制另一条曲线,还可以用’r’标注这条曲线为红色;
用xlabel标签标注横轴,用ylabel标签标注纵轴;legend命令在右上角标注两种曲线分别代表什么;
用title标注图表标题。
在这里插入图片描述这样绘制出来的图像是这样的:
在这里插入图片描述如果你想把这张图片保存到桌面,可以输入命令:
在这里插入图片描述2、如果你想关闭当前作图,输入close即可;
如果你想使这两个图分开绘制,可以分别给它们命名figure1、figure2绘制。

>>close
>>figure(1):plot(t,y1);
>>figure(2):plot(t,y2);

使用subplot(1,2,1)命令展开图像使之分为12格,现在用第1格作图;
使用subplot(1,2,2)命令展开图像使之分为1
2格,现在用第2格作图。
在这里插入图片描述3、如果需要调整绘图刻度,使用axis命令。

%调整图的横轴为0.5到1,纵轴为-1到1 
>>axis([0.5 1 -1 1])

这里后绘制图2,所以只对图2起作用:
在这里插入图片描述4、使用clf;命令清除画布;
使用imagesc(A)命令将矩阵绘制在画布上,不同的数字对应不同的颜色;
imagesc(A),colorbar,colormap gray;三条命令同时执行,意味着在图右方再绘制一个色彩条,用不同深浅的灰色表示数值大小。
在这里插入图片描述绘制效果:
在这里插入图片描述5、在同一行中:用,分隔的命令可以同时执行,用;分隔的命令可以同时执行而且不输出。
在这里插入图片描述

(二)Octave程序中写控制语句

1、for循环:
在这里插入图片描述在这里插入图片描述2、while循环:让v向量中前5个数置为100。(空格不空格不影响结果)
在这里插入图片描述如果再在里面嵌套一个if语句,格式如下:
在这里插入图片描述3、if结构
在这里插入图片描述另外,输入exit或者quit命令是退出Octave软件。

(三)Octave调用其他文件中的函数

1、我在本地桌面上预先定义文件名为squarethisnumber.m的文件,文件内容是一个定义好的函数:(Octave可以同时返回多个值,这非常少见)

function [y1,y2] = squareThisNumber(x)

y1 = x^2;
y2 = x^3;

那么我们如何调用?

>>cd 'C:\Users\chen\Desktop'
>>[a,b] = squareThisNumber(5);
>>a
>>b

即可得到a = 25,b = 125。
2、假设我现在有训练样本集(1,1)(2,2)(3,3),现在我要找到不同C塔值对应的代价函数值J,应该怎么做?
首先,在桌面文件上写下代价函数J的定义:
在这里插入图片描述在Octave中输入矩阵,并定义C塔:
在这里插入图片描述它计算出j=0。那是因为我们C塔0=0,C塔1=1(即theta=[0:1]),这与我们的预期是符合的。
如果设置theta=[0:0],计算出来的j=2.3333,也就是:

(1^2 + 2^2 + 3^2)/(2*3) = 2.3333

j值不是最小的了。

(四)矢量

1、在使用线性回归时,如果有十个以上的特征(变量数),建议向量化。这可以减少代码实现相同的功能。
例如:下面这个假设函数用两种方法表示,左边这种是将C塔、xj看作两个数字,应用for循环实现遍历(因为在matlab中下标从1开始,C塔0只能用C塔1表示,所以这里是1到n+1);右边是分别将这些数表示成两个向量时,只要一行代码便能轻松实现。
在这里插入图片描述再举一个例子:线性回归中梯度下降的更新方程。
我们首先展开前面三项,注意:这些式子要实现同步更新,不能异步算值,会影响其他参数。
在这里插入图片描述我们可以分别将左边的C塔0、C塔1、C塔2…组成一个向量C塔(n+1维),右边的阿法是一个实数,剩下的部分也可以组成一个向量。
因为将其展开可以看出相当于一个实数乘以x1、一个实数乘以x2…相当于X向量中的数字变大或变小了,但整体还是可以组成一个向量。
在这里插入图片描述

(五)分类

1、当预测的变量是一个离散值时一般认为其是一个分类问题。
继续使用线性回归的方法处理分类问题,往往得到的预测结果并不准确(以上次讲的判断乳腺癌肿瘤是良性还是恶性的分类问题为例):
在这里插入图片描述
分类问题也称为Logistic回归问题,一般假设函数的输出值会在[0,1]范围内,标签值y一般是0或1。
2、分类问题的假设陈述
分类问题的假设函数hc塔(x)如下,被称为Sigmoid function或Logistic function函数,函数图像如下:
在这里插入图片描述现在需要用参数C塔来拟合我们的数据,那么hc塔(x)的值描述的是:
在给定x(输入x)的条件下y=1的概率。
在这里插入图片描述

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-19 11:52:51  更:2021-10-19 11:56:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 8:48:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码