Matlab中机器学习会用到的一些特殊函数

最近在Cousera上机器学习的课,做作业使用的是Matlab,在写作业的过程中使用到了平时不太常用的功能,记录一下。


1. Matlab中的element-wise 功能。

  • 函数名称:bsxfun()
  • 使用方法:适合当向量和矩阵做元素运算的时候用。
2.  Matlab中的高级优化算法(Optimization):

  • 函数名称:fminunc()
  • 使用方法:

  • 优点:比梯度下降算法收敛快。

3. 将矩阵展开成向量 unrolling:

     假设有Theta_1 是10x11,Theta_2是 10x11,Theta_3是1x11,则在matlab中:

>> thetaVec = [Theta_1(:) ; Theta_2(:); Theta_3(:)];
>> size(thetaVec)
ans = 
       231  1

最后展成1列

4. 在cell中查找特定的字符串的索引

cell矩阵中字符的检索不能直接使用等号。

应用strcmp函数判断两个输入字符串是否相等,输入形式如下:

c = strcmp(str1,str2)比较字符串 str1 与 str2 ,若完全相等则返回 1 ,不相等返回 0

应用find函数对矩阵进行检索进一步的得到cell矩阵中特定字符所在的位置,输入形式如下:

[x,y] = find(strcmp(a,‘xx’))

a为需要检索的cell矩阵,‘xx’为特定的字符

示例如下:

>> class1 = cell(1,4)

class1 =

    []    []    []    []

>> class1 = {'imagewant0','imagewant45','imagewant90','imagewant135'}

class1 =

    'imagewant0'    'imagewant45'    'imagewant90'    'imagewant135'

>> [x , y] = find(strcmp(class1 , 'imagewant0'))

x =

     1

y =

     1



















  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值