机器学习
文章平均质量分 70
勤睿
学习、交流、共勉
展开
-
机器学习14:CNN的应用
一、Deep Dream通过调整某一个filter训练得到的值,让filter中的参数绝对值变得更大,那么该filter代表的特征将会强化,机器将会把某些特征训练成它看到过的其他特征。二、Deep Style算法链接:https://arxiv.org/abs/150/8.06576训练过程中,运用第一张图片的Content和第二张图片的style。content表示的就是...原创 2018-12-18 16:21:32 · 2879 阅读 · 1 评论 -
机器学习15:why deep?
一、Deep更有效率1、90年代的Universality Theorem指出任何连续函数都可以用一层隐藏层表示出来(可能需要用到较多的神经元);然而,实际的应用表明,Deep层更有效率。2、对于下面的例子图1直接使用一层网络对长发女、长发男、短发女、短发男四种类型进行分类;图2则对分类进行模块化,一层先做两个基本的分类单元,男与女、长发与短发,第二层再做最终分类;图中可以...原创 2018-12-24 22:11:00 · 205 阅读 · 0 评论 -
Radial basis function(径向基函数->(高斯核函数))
中文简单介绍:在机器学习中,(高斯)径向基函数核(英语:Radial basis function kernel),或称为RBF核,是一种常用的核函数。它是支持向量机分类中最为常用的核函数。[1]关于两个样本x和x'的RBF核可表示为某个“输入空间”(input space)的特征向量,它的定义如下所示:[2]可以看做两个特征向量之间的平方欧几里得距离。是一个自由参数。一...转载 2019-01-01 19:18:36 · 7265 阅读 · 0 评论 -
机器学习17:Unsupervised Learning-Linear Methods
一、聚类1、K-means初始化时,随机抽取K个样本作为聚类中心2、(hierarchical agglomerative clustering)HAC合成聚类or分层聚类自底向上每一层进行两两相似度计算,找到最相近的pairs,直到root,然后画一个threshold,即可划分具体类别。不同的shreshold导致类的个数不相同。二、Dimension Reduct...原创 2019-01-01 22:10:03 · 322 阅读 · 0 评论 -
深度学习之自编码器AutoEncoder
一、什么是自编码器(Autoencoder)自动编码器是一种数据的压缩算法,其中数据的压缩和解压缩函数是数据相关的、有损的、从样本中自动学习的。在大部分提到自动编码器的场合,压缩和解压缩的函数是通过神经网络实现的。1)自动编码器是数据相关的(data-specific 或 data-dependent),这意味着自动编码器只能压缩那些与训练数据类似的数据。比如,使用人脸训练出来的自动编码器...转载 2019-01-08 10:52:07 · 1943 阅读 · 1 评论 -
自编码器的理解
参阅知乎“科言君”:https://www.zhihu.com/question/41490383个人理解:1、稀疏自编码:通常情况下,自编码的隐藏层神经元数量会少于输入神经元,因此,自编码网络能够学习主要特征,并依据主要特征重构输入,这种学习方式通常也是有效的。然而,训练出来的模型通常更具有针对性:比如说对于人脸识别,自编码能够学习出人脸的固定结构及不同器官等主要特征,该模型用于...原创 2019-01-08 16:54:48 · 839 阅读 · 0 评论 -
机器学习——前馈神经网络
机器学习——前馈神经网络 一、神经网络基础1. 神经元模型转载自:https://www.cnblogs.com/NeilZhang/p/9347233.html。博主“机器学习”系列均可参考关注神经网络中最基本的单元是神经元模型(neuron)。细胞体分为两部分,前一部分计算总输入值(即输入信号的加权和,或者说累积电平),后一部分先计算总输...转载 2019-03-03 19:28:52 · 976 阅读 · 0 评论 -
深度学习模型训练中的tips记录
1、keras中的训练集、验证集、测试集问题在模型fit时,需要输入训练、验证和测试相关参数,需要注意以下tips:# validation_split表示将训练集中拿出一部分比例数据作为验证集,验证集不参与模型参数校正,仅作为验证训练是否会过拟合等。# validation_data会使validation_split失效,有的代码中将测试集赋值给validation_data。# ...原创 2019-03-30 17:43:31 · 215 阅读 · 0 评论 -
机器学习17-1:unsupervised learning应用——word embedding
待原创 2019-04-17 10:40:34 · 204 阅读 · 0 评论 -
机器学习18:自编码器Auto-encoder
一、Auto-encoder通过重建输入得到一个低维空间的code二、Deep Auto-encoder输入从高维映射到低维再到高维。可以约束对应的encoder和decoder层的参数互为逆变换,即W1与W1^T对应,但一般没有必要约束,直接train就行。在手写数字辨识中,Deep Auto-encoder比PCA重构的结果好,数据映射到低维空间区分度也更高。三...原创 2019-04-17 11:31:44 · 1075 阅读 · 0 评论 -
机器学习19:Generative Model
讲解三种Generative Model:PixelRNN、Variation Auto-encoder、Generative Adversavial Network一、PixelRNN利用前面已知的像素和预测的像素逐一对后面的像素进行预测。如图所示,输入是变化的,第一次使用一个像素预测后面的像素,随后使用前面两个像素预测再后面的像素。。。以下是声信号的预测,RNN逐一根据前面的n...原创 2019-04-17 20:34:23 · 1188 阅读 · 0 评论 -
机器学习13:卷积神经网络(CNN)
一、Why CNN for Image?1、对于一幅图像来说,用DNN全连接的话,参数会很多,而图像实际上是有很多冗余的,有些地方的特征可能不需要。而CNN其实是拿掉了DNN的一些参数。2、识别工作中,有时候并不需要看整张图,而只需要看部分位置如鸟嘴。不管鸟嘴出现在图像的哪个位置,只要用相同的神经元参数侦测到这个鸟嘴的存在,就可以判断这是一只鸟,因此,不同位置的鸟嘴的神经元可以共用同一...原创 2018-12-17 16:58:29 · 514 阅读 · 1 评论 -
机器学习16:半监督学习semi-supervised
一、why semi-superviseddataset中只有部分数据进行了lable标注,即,有的数据成对出现{输入,输出},有的数据只有输入{输入};Transductive learning(直推试学习):unlabled数据作为测试集;Inductive learning(启发式学习):unlabled数据不是测试集。半监督学习有用的原因:虽然unlabled数据的分类...原创 2018-12-26 22:07:44 · 1312 阅读 · 0 评论 -
机器学习2:Naive Bayes(朴素贝叶斯)
参考:https://blog.csdn.net/syoya1997/article/details/78618885贝叶斯模型的讲解贝叶斯模型,二分类中展开为P(H) – 已知的先验概率 P(H|E) – 我们想求的后验概率,即在B事件发生后对于事件A概率的评估 P(E|H) – 在事件H下观测到E的概率 P(E) – marginal likelihood(边际似然),对于所...原创 2018-11-29 16:24:48 · 243 阅读 · 0 评论 -
机器学习9:“Hello World” of deep learning
一、框架1、TensorFlow或者theano比较灵活,可以理解成微分器,你可以用来实现Gradient Decent,但用起来实际上是有难度的;2、keras其实是TensorFlow或theano的API接口,可以帮助你快速做一个模型,现在TensorFlow默认使用Keras接口,theano也可以安装使用keras;3、keras有很多现成的接口帮助你,你同样可以有灵活性写自...原创 2018-12-04 16:45:54 · 299 阅读 · 0 评论 -
机器学习3:sigmod函数与分类(激活函数的来龙去脉)
sigmod函数:sigmod函数是常用的激活函数,函数特点如上,用来表示分类概率。表面上看,是因为函数曲线正好可以用来描述概率关系0-1之间,并且有无限趋近的特点;实际上,sigmod函数确实与分类概率存在特定的联系。具体分析如下:在bayes分类中,后验概率表示为首先看式(2),经过计算概率分布可以求得等价于exp(-z)的形式,其中z=wx+b。因此,机器学习...原创 2018-11-30 10:22:24 · 3591 阅读 · 0 评论 -
机器学习4:逻辑回归与线性回归
逻辑回归与线性回归求解过程:总体来说,回归过程都分三步:1、Model2、Loss Fuction3、Gradient Decent分析:1、Model:线性回归中,模型为线性方程,取值范围无穷大;逻辑回归中,通过sigmod函数函数将线性方程z转化成概率(见上一篇博客)。2、Loss Function:线性回归损失函数由均方差来衡量;逻辑回归由交叉熵衡量。逻辑...原创 2018-12-01 20:36:59 · 258 阅读 · 0 评论 -
机器学习1:梯度下降(Gradient Descent)
分别求解损失函数L(w,b)对w和b的偏导数,对于w,当偏导数绝对值较大时,w取值移动较大,反之较小,通过不断迭代,在偏导数绝对值接近于0时,移动值也趋近于0,相应的最小值被找到。η选取一个常数参数,前面的负号表示偏导数为负数时(即梯度下降时),w向增大的地方移动。对于非单调函数,可能会陷入局部最优的情况,可以通过设定不同的w初始值,来对比不同参数下的损失函数值。梯度下降法未必是最优的...原创 2018-12-01 20:52:39 · 981 阅读 · 0 评论 -
机器学习5:逻辑回归之多分类Multi-class classification
上一节讲解了逻辑回归中的二分类问题的原理与步骤,本节讲解多分类问题。以三个class分类为例,过程如图所示:原理性推导省略。1、如图1所示,对于每个类别,各分配一个线性模型,通过softmax处理得到每个类别的输出概率y,且所有y的和等于1;2、如图2所示,输出的y与实际样本求交叉熵。3、最后,将每个训练样本的交叉熵相加求得最小值,得到训练参数。 ...原创 2018-12-01 21:29:06 · 2075 阅读 · 0 评论 -
机器学习10:Tips of DNN——激活函数选择
一、Training和Testing情形overfitting:Training Data上表现良好,Testing Data表现不好。Training失败:梯度消失等情形。如下的例子属于Training失败,并非overfitting:虽然层数增加导致训练结果变差,但测试集得到同样的结果,所以并没有过度学习训练集的特征,其实是没有训练好;二、调整方案Trainin...原创 2018-12-07 20:20:20 · 446 阅读 · 0 评论 -
机器学习11:Tips of DNN——改进梯度下降
一、AdagradAdagrad方法是一种自适应的梯度下降方法,原始模型中的梯度为,Adagrad使用一次偏导估计二次偏导,如下:它可以自适应如下椭圆两个方向的梯度下降情况:二、RMSProp(Adagrad的进阶版)考虑更复杂的情况:RMSProp对Adagrad的分母项进行了改进,它对平方和中的前面项与当前项加了权重。通过调整值,调整当前位置的偏导数与之前位置偏...原创 2018-12-07 21:40:45 · 417 阅读 · 0 评论 -
机器学习12:Tips of DNN——改善overfitting
一、Early Stopping为了防止过拟合现象的产生,训练过程中并不是需要要停止在Training set表现最好之后,而是要保证Testing set表现最好。而往往训练过程中,随着迭代次数的增加,可能出现从某个时候开始,Training set的error还在继续减小,而Testing set的表现会越来越差,因此,需要提前停止训练。提前停止必须要知道哪个时候开始Testing set...原创 2018-12-07 21:42:07 · 352 阅读 · 0 评论 -
机器学习6:逻辑回归到深度学习的思考
如下图,出现了不可分的情形:,表明x1与x2并不是两个很好的特征,可以从如下方面进行思考:1、通过特征变换(将x1与x2通过各种运算组合得到新的可分特征x3与x4),将模型变成线性可分的模型。比如将上述点转换成每个点到一个固定坐标的距离,得到如下情形:,变成线性可分。2、从1的思路出发,特征变换可以选择使用线性变换和非线性变换,最终目的是得到线性可分特征。如果总是依靠人力的变换...原创 2018-12-03 15:40:05 · 312 阅读 · 0 评论 -
机器学习8:深度学习——全连接
深度模型最直观的解释就是多层网络,最简单的深度模型是全连接。深度网络的每个全连接层其实质就是一个逻辑回归模型,每层包括线性函数与激活函数。如图所示:——全连接细节展示,每一层都是,表示sigmod函数。——全连接模型通过多层组合,可以得到如下的解析模型:对于模型中的隐藏层,其实质工作就是Feature Extraction,因此,隐藏层出现了卷积、小波等。以图像为例,卷积层可以...原创 2018-12-03 16:58:44 · 1614 阅读 · 0 评论 -
机器学习20:Transfer learning 迁移学习
一、概述1、从数据角度,分四种情形(如图),每种情形下可以采取的处理方法如下2、Fine-tuningSource data数据量大,而Target data数据量小。在Source data上训练模型然后在Target data上对模型进行微调,这种方式叫作Fine-tuning。通常情况下,Fine-tuning需要非常小心,很容易overfitting。因此,需要加入一些技巧...原创 2019-04-19 17:49:03 · 575 阅读 · 0 评论