机器人与人工智能爱好者论坛

 找回密码
 立即注册
查看: 12593|回复: 6
打印 上一主题 下一主题

计算梯度下降应用的问题?

[复制链接]

285

主题

451

帖子

1万

积分

超级版主

Rank: 8Rank: 8

积分
13751
楼主
发表于 2016-1-18 17:12:20 | 显示全部楼层
你用的代码是python吗?

斯坦福的好像使用Octave编写的。
我是笨鸟,我先飞!
回复 支持 反对

使用道具 举报

285

主题

451

帖子

1万

积分

超级版主

Rank: 8Rank: 8

积分
13751
沙发
发表于 2016-1-18 17:18:17 | 显示全部楼层
  1. def sigmoid(inX):
  2.         return 1.0/(1+exp(-inX))

  3. def gradDescent(dataMatIn, classLabels):
  4.         x = mat(dataMatIn)
  5.         y = mat(classLabels).transpose()
  6.         m,n = shape(x)
  7.         alpha = 0.001
  8.         maxCycles = 100
  9.         theta = ones((n,1))
  10.         for k in range(maxCycles):
  11.                  h = sigmoid(x*theta)
  12.                  error = h - y
  13.                  theta = theta - alpha * (x.transpose() * error /m)
  14.        return theta
复制代码
我没过高数,程序能看到,但看不出数学那里错了。

坐等其它同学解惑。

我是笨鸟,我先飞!
回复 支持 反对

使用道具 举报

285

主题

451

帖子

1万

积分

超级版主

Rank: 8Rank: 8

积分
13751
板凳
发表于 2016-1-18 21:19:58 | 显示全部楼层
今天看了一篇好文,发现楼主代码里的sigmoid函数叫做“海维塞德阶跃函数”,用来表示跳变的
我是笨鸟,我先飞!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|Archiver|手机版|小黑屋|陕ICP备15012670号-1    

GMT+8, 2024-5-17 16:06 , Processed in 0.082868 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表