[关闭]
@cleardusk 2015-11-13T21:05:28.000000Z 字数 1394 阅读 1600

学习记录.2015-11-13

GjzCV


v0.11
之前提到的梯度下降应用到线性方程组求解中不懂的地方,其实是矩阵求导(matrix calculus)的内容,矩阵求导属于矩阵计算的范畴。


v0.1

这周由于有入党、课程结课论文PPT等事,投入到学习的时间少了很多。

摘要:这周涉及到的内容主要有BP神经网络、BP算法、梯度下降算法(gradient descent)、主成分分析(PCA)、Caffe和tensorflow等DL框架、NN and DL的学习。

BP(backpropagation algorithm)

了解了BP网络的结构、forward和backward的过程,对python版本的bp代码进行了详细分析与测试。

参考资料:
《MATLAB数学建模算法及实例分析》
backpropagation algorithm 的中、英文维基以及其 ref、external link

Gradient descent

梯度下降算法是一个first-order optimization algorithm。英文维基上对其如何梯度下降的过程有详细描述,就是一个(多元)函数,在它的邻域内,在导数的负方向下降是最快的,经过多次迭代后会(局部)收敛。但梯度算法的局限在于,某些情况下收敛很慢,构造出来的二元非线性函数f(x,y)=(1x)2+100(yx2)2。梯度下降算法在求解linear and non-linear equations都有应用。

维基中提到conjugale gradient(共轭梯度法)方法用于求解linear equations最多,但我对这个不熟,还没去了解;雅可比矩阵也没什么印象;此外,在梯度下降应用到linear equations中,(2)式是怎么推导的我还不明白:

F(x)=||(Axb)||2(1)
F(x)=2AT(Axb)(2)

Python版本的梯度下降算法的一个demo

参考资料:
Gradient descent的中英文维基及其ref、external link
辅助工具及网站:
Mathematica、MathWorld

PCA

主成分分析只看了一点,《MATLAB数学建模算法及实例分析》中关于多元分析的内容不少,目前只把聚类分析浏览了一遍,大概知道matlab哪些函数能实现这些功能。聚类分析感觉不难,认为主要是两个点:选择什么距离(Euclid、Mahal、CityBlock等),选择什么聚类方式。关于主成分分析,数理统计及矩阵的知识储备感觉薄了些,待补相关知识点后再花时间研究研究。

参考资料:
《MATLAB数学建模算法及实例分析》
中英文维基及其引用拓展链接

Tensorflow

在github上star了google的这个项目,已经过了10000stars了。看commit的信息,有caffe的作者贾扬清,他在google应该也在参与这个项目。

Caffe

着手看caffe的官方文档,在啃中。

NN and DL

顺便搜罗了些的NN和DL的tutorial和online book,在看中。


以上是这周大概涉及的东西,额外的像linux、matlab、mathematica、python、C++、网络等就不提了。


添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注