吴恩达机器学习

机器学习的定义:(使用octave编程环境)

1、在没有明确设置的情况下,使计算机具有学习能力——Samuel
2、 计算机程序从经验E中学习,解决某一任务T,进行某一性能度量P,通过P测定在T上的表现因经验E而提高——Tom Mitchell

机器学习算法分类:

1、监督学习(Supervised learning)
2、无监督学习(Unsupervised learning)
3、强化学习(Reinforcement learning)
4、推荐系统(Recommender systems)

监督学习

监督学习为根据数据进行预测结果,分别为回归问题和离散(分类)问题,支持向量机可以允许无穷多个变量。

无监督学习

很少或没有存在的例子,根据数据集的结构找出规律。无监督学习可以将数据集分成不同的簇,例子(谷歌新闻),算法:聚类算法。

模型描述

吴恩达机器学习_第1张图片
模型描述

假设函数

根据已有的数据集得到的函数,并不唯一

代价函数(平方误差代价函数)

吴恩达机器学习_第2张图片
代价函数

假设函数与代价函数

吴恩达机器学习_第3张图片
一个参数

吴恩达机器学习_第4张图片
两个参数(等高图)

梯度下降算法(寻找代价函数最小值)

1、赋值参数的初始值;
2、改变参数值,算出代价函数值直到找到最小


吴恩达机器学习_第5张图片
梯度下降公式
吴恩达机器学习_第6张图片
梯度下降模型

吴恩达机器学习_第7张图片
线性模型梯度下降算法
梯度下降算法也叫做‘batch’梯度下降

矩阵和向量

矩阵是有方括号括起来的m行n列数,可以看做是一个多维数组;
向量是特殊的矩阵,它是只有一列的矩阵;


吴恩达机器学习_第8张图片
矩阵相乘

吴恩达机器学习_第9张图片
转化为矩阵相乘思想1

吴恩达机器学习_第10张图片
转化为矩阵相乘思想2
矩阵相乘不符合交换律,但可以结合律
单位矩阵:正对角线的数都是1,其余为0
逆矩阵:MXN=NXM=I(单位矩阵),那么N就是M的逆矩阵,只有方阵才有逆矩阵。没有逆矩阵的矩阵叫奇异矩阵或退化矩阵。
转置矩阵:把矩阵镜像,行变成列。
吴恩达机器学习_第11张图片
转置矩阵

吴恩达机器学习_第12张图片
多元梯度下降法

特征缩放减少计算时间

缩放到-1到1的附近


吴恩达机器学习_第13张图片
特征缩放1

吴恩达机器学习_第14张图片
特征缩放2

学习率选择

吴恩达机器学习_第15张图片
学习率选择

正规方程

吴恩达机器学习_第16张图片
正规方程

吴恩达机器学习_第17张图片
不可逆时该这样做

梯队回归算法和正规方程比较

吴恩达机器学习_第18张图片
比较

octave操作

  • rand(m)
  • randn(m)
  • eye(m)
  • sqrt(m)
  • ==
  • ~=
  • format long, format short
  • pi
  • ;
  • m:s:n
  • dist(m)
  • ones(m)
  • zeros(m)
  • disp(sprintf('2 decimals:%0.2f',a))
  • && || xor(a,b)
  • size(A)
  • size(A,1):A矩阵的行数
  • size(A,2):A矩阵的列数
  • length(A):A矩阵最大维度的大小
  • C:\Users\ang\Desktop:改变当前位置
  • ls
  • load featureX.dat 或者 load('featureX.dat'):加载文件
  • who:显示工作目录的所有变量
  • whos:显示变量的详细信息
  • clear X:清除某个变量
  • clear:清除所有变量
  • v= priceY(1:10):将变量的前十个元素存入v变量
  • save hello.dat v:将变量v存到hello.dat文档中并写入硬盘
  • A(2,:) :返回第二 行的所有元素
  • A(:,2) : 命令返回第二列
  • A([1 3],:):取矩阵A第一行到第三行的元素
  • A = [A, [100, 101, 102]]:加入新的矩阵
  • A = [A;[100, 101, 102]]:加入新的矩阵

你可能感兴趣的:(吴恩达机器学习)