代码改变世界

matlab基础教程——根据Andrew Ng的machine learning整理

2016-12-24 21:35  Fururur  阅读(1810)  评论(0编辑  收藏  举报

matlab基础教程——根据Andrew Ng的machine learning整理

基本运算

  • 算数运算

  • 逻辑运算

  • 格式化输出

  • 小数位全局修改

向量和矩阵运算

矩阵操作

  • 申明一个矩阵或向量

  • 快速建立一个矩阵或向量


  • 随机矩阵方阵生成

  • magic矩阵生成(每行每列相加和相同)

  • **获取矩阵的维度size **

  • 获取矩阵的最大维度length

  • 矩阵操作。获取单个元素、行、列、赋值

  • 矩阵append、矩阵元素放到一个列向量中

矩阵运算

  • 矩阵乘法
    A*C:根据矩阵乘法公式相乘。
    A .* B:矩阵元素对应相乘。

  • 矩阵转置

  • 矩阵转置 inv pinv

  1. 对于方阵A,如果为非奇异方阵,则存在逆矩阵inv(A)
  2. 对于奇异矩阵或者非方阵,并不存在逆矩阵,但可以使用pinv(A)求其伪逆
  • 对元素操作 .(操作符,例如/ ^ * )

  • **常规运算 log exp abs **

  • 向量+1

  • 向量最大值 max(X)

  • 向量逻辑运算

  • 向量元素累和、累积

  • 取整 floor ceil

  • 矩阵的最大值 max(X,[],DIM)

  • 矩阵求和

  • 保留对角线元素 matrix .* eye(DIM)

  • 上下翻转矩阵 flipud

文件操作、加载文件数据

  • 获取当前工作空间目录 pwd

  • 加载数据集(在当前目录下)load

  • ** 显示工作区当前变量 who、whos**

  • 取矩阵中的元素 [?:?]

  • **将变量写入文件 save **

  • 矩阵连接

作图

  • 正弦曲线

  • 使用hold on将图像绘制在同一张画布上,并设置参数

.m文件

.m文件中可以直接写matlab代码。也可将其封装成一个函数用来调用

 %定义函数头 J为返回值 costFunction为函数名
function J = costFunction(X,y,theta)
m = size(X,1);
predictions = X * thera;
sqrErrors = (predictions - y) .^ 2;
J = 1/(2 * m) * sum(sqrErrors);

参考