UFLDL_Tutorial 笔记(deep learning绝佳的入门资料 )

本文是一篇关于UFLDL教程的学习笔记,适合深度学习初学者。作者分享了在使用Octave和Matlab进行实践时遇到的问题及解决技巧,包括Sparse Autoencoder、PCA、Softmax Regression等练习。文章强调动手实践和调试代码的重要性,并指出在资源有限的情况下,选择合适的工具和调整数据集大小对于训练效果的影响。
摘要由CSDN通过智能技术生成

推荐一个deep learning绝佳的入门资料
* UFLDL(Unsupervised Feature Learning and Deep Learning)教程 http://deeplearning.stanford.edu/wiki/index.php/UFLDL%E6%95%99%E7%A8%8B
故意把链接地址也写出来,方便看到来源,嘿嘿。

资料写得相当赞,还有中文版。看懂里面的idea是很快,exercise要写的话就得把公式细节搞搞清楚了,一定要做一下,加深理解。代码我是不会贴的,记录一些有的没的吧。特别是用octave遇到的坑,用matlab貌似是没有的,(哭

一开始用octave,因为coursera的那个课程就用octave。后来慢慢发现不对劲,UFLDL这个课程用的是matlab,而且要64bit的,不然可能内存不够。哎,发现免费的东西有时候确实不太行。

一些小技巧

  • return 命令中间退出。先调试前几个step的时候有用。
  • pause() 中间停住。任意键继续。不想继续就ctrl+c退出。哎,原来matlab有节的概念,就没这个问题,可以按小节运行。
  • fflush(stdout) 不要缓冲了,赶紧输出迭代进度。
  • close all 弹出好多figure,一个一个点太麻烦了。

Exercise:Sparse Autoencoder

直接跑发现有问题,挺烦的,原本公式就有点乱的,容易写错,还要整一些语言的问题。我的环境是win10 + octave 4.0,调用lbfgsC.c有问题,会出现lbfgsC undefined的问题,只能自己编译一下了。虽然把代码里面的lbfgsC改成lbfgs是能跑,但貌似太慢了。minFunc.m里面可以在fprintf迭代次数Iteration之后加上fflush(stdout);不然输出不及时,等得蛋疼,都不知是挂了还是怎样。

lbfgsC.mex*是供matlab/octave调用的c接口。minFunc的主页。下载下来后改改mexAll.m,然后就可以编译,没啥坑爹的依赖问题。然后把*.mex 文件拷贝到start

  • 6
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值