机器学习
文章平均质量分 70
arthur503
这个作者很懒,什么都没留下…
展开
-
编码器和解码器的概念理解
编码器和解码器最开始看概念的时候有点懵,因为说编码器先把原始信号给编码,然后解码器再给解出来得到原始信号。哈?这是干啥,原始信号本来就有,用这个搞啥,做无用功吗?1. 首先,说一下编码器和解码器干什么用的。我们举个例子。一个是,类似PCA这样的,做矩阵分解,然后恢复。矩阵分解里,把原始大矩阵变成了几个小矩阵相乘,信息没有丢失,但需要存储的数据变少了很多。虽然解码的时候需要额外的计算,但相比起来,小矩阵更符合我们的需求。实际使用的例子,如,图片的传输。以往,是一行一行的像素传输的,所以,网速慢的时原创 2020-11-02 16:44:20 · 19548 阅读 · 8 评论 -
什么是张量(tensor)?
1. 为什么有多个维度?几维/阶张量,是说它的基坐标有几个的张量。如:0维张量(tensor of rank 0),就是标量,是说它的基向量是0组,也就是说,没有基向量,这样,就是没有方向的数字,就是标量。1维张量(tensor of rank 1),就是向量。它的基向量是1组,能够表示方向(基坐标的方向)和长度(数字),这个就是向量。2维张量(tensor of rank 2),就是矩阵。他的基向量是2组。为什么是两个呢?是为了描述更多的物理场景。比如说,我们要描述一个平面上受力这样...原创 2020-10-27 16:33:53 · 2483 阅读 · 0 评论 -
softmax函数为什么叫softmax?
之前一直很奇怪这个名字,本身是做一个类似归一化的动作,把整体一个vector“压缩”成一个符合概率分布的样子,为什么叫softmax呢?今天查了下,看了下部分答案,大概写一下理解。softmax,是和hard-max来对应的。他完成了两个功能,一个是max,一个是soft。max部分:softmax函数处理之后,整体最大的值还是最大值,这个排序顺序没有变化,相当于大小顺序的信息没有丢失;soft部分:soft意味着,是一种可以反向恢复的一种转换。与之对应的,是hard转换。比如说,我们定原创 2020-10-26 18:58:03 · 1977 阅读 · 0 评论 -
#论文 《Deep Residual Learning for Image Recognition》
2015年的paper,微软何凯明等。解决的问题: 梯度消失/爆炸问题; 之前的解决方案:This problem, however, has been largely addressed by normalized initial- ization [23, 9, 37, 13] and intermediate normalization layers [16], w...原创 2018-07-30 17:58:18 · 306 阅读 · 0 评论 -
#论文 《ImageNet Classification with Deep Convolutional Neural Networks》
这个Alex是第一作者,NN名字叫AlexNet,Hinton是第三作者。是第一个提出CNN的,还有dropout等方法。 1 Intro CNN与之前的标准前馈神经网络对比:连接和参数更少,因此更容易训练;而且它的理论最佳只是比之前的稍差。 GPU让训练CNN成为可能。而且,ImageNet也足够大,这样不怕过拟合。 本文贡献:训练了最佳的CNN;有tri...原创 2018-07-18 11:28:12 · 421 阅读 · 0 评论 -
Adaboost方法分类新闻数据
使用Adaboost方法,以一级决策树树桩(Stump)为基础建立弱分类器,形式为:(feature, threshold, positive/negtive)。设定的最大轮数为20,最终使用了16轮就使总误差就降到了0,得到了准确率100%的分类器。分类的数据包括:business,sports,auto三类。由于写的Adaboost是二分类模型,所以将语料分为business和非b原创 2014-04-23 18:27:08 · 985 阅读 · 0 评论 -
凸优化中如何改进GD方法以防止陷入局部最优解
在对函数进行凸优化时,如果使用导数的方法(如:梯度下降法/GD,牛顿法等)来寻找最优解,有可能陷入到局部最优解而非全局最优解。为了防止得到局部最优,可以对梯度下降法进行一些改进,防止陷入局部最优。但是请注意,这些方法只能保证以最大的可能找到全局最优,无法保证100%得到全局最优。一、incremental GD/stochastic GD在GD中,是需要遍历所有的点之后才计算w的变原创 2014-04-22 15:22:48 · 7537 阅读 · 1 评论 -
SVM中为何间隔边界的值为正负1
在WB二面中,问到让讲一下SVM算法。我回答的时候,直接答道线性分隔面将样本分为正负两类,取平行于线性分割面的两个面作为间隔边界,分别为:wx+b=1和wx+ b = -1。面试官就问,为什么是正负1?当时没有答上来,看来还是对模型不够理解。原创 2014-05-07 00:08:12 · 4917 阅读 · 0 评论 -
使用Decision Tree对MNIST数据集进行实验
之前已经对MNIST使用过SVM和KNN的方法进行分类,效果看起来还不错。今天使用决策树来实验,看看结果如何。使用的Decision Tree中,对MNIST中的灰度值进行了0/1处理,方便来进行分类和计算熵。使用较少的测试数据测试了在对灰度值进行多分类的情况下,分类结果的正确率如何。实验结果如下。#Test change pixel data into more categories原创 2014-03-18 17:17:55 · 5162 阅读 · 0 评论 -
机器学习中的lazy method与eager method的比较
一 分类方法机器学习的算法进行分类的时候,一般是根据是否有监督分为:无监督学习,有监督学习,半监督学习。有时候会再加上强化学习(Reinforcement learning)。但是,根据算法的原理,还有另一种分类方法。即:如果算法对整个训练数据集并没有训练得到一个整体的模型,这样,对于每一个新的测试数据点,都需要根据该点和训练数据集来对目标函数进行预测,叫做lazy method。叫l原创 2014-03-14 00:05:37 · 5812 阅读 · 1 评论 -
对SVM的个人理解
之前以为SVM很强大很神秘,自己了解了之后发现原理并不难,不过,“大师的功力在于将idea使用数学定义它,使用物理描述它”,这一点在看SVM的数学部分的时候已经深刻的体会到了,最小二乘法、梯度下降法、拉格朗日乘子、对偶问题等等被搞的焦头烂额。在培乐园听了讲课之后才算比较清晰的了解了整个数学推导的来龙去脉。1. 为什么一定要研究线性分类?首先说一下为什么对数据集一定要说线性可分或线性不可分,原创 2014-02-26 12:56:44 · 3463 阅读 · 0 评论 -
使用libsvm对MNIST数据集进行实验
在学SVM中的实验环节,老师介绍了libsvm的使用。当时看完之后感觉简单的说不出话来。1. libsvm介绍虽然原理要求很高的数学知识等,但是libsvm中,完全就是一个工具包,拿来就能用。当时问了好几遍老师,公司里做svm就是这么简单的?敲几个命令行就可以了。。。貌似是这样的。当然,在大数据化的背景下,还会有比如:并行SVM、多核函数SVM等情况的研究和应用。实验环节老师给的数据很原创 2014-02-26 13:36:33 · 15854 阅读 · 8 评论