分布式机器学习系统笔记(一)——模型并行,数据并行,参数平均,ASGD 模型并行( **model parallelism** ):分布式系统中的不同机器(GPU/CPU等)负责网络模型的不同部分 —— 例如,神经网络模型的不同网络层被分配到不同的机器,或者同一层内部的不同参数被分配到不同机器;[14] - 数据并行( **data parallelism** ):不同的机器有同一个模型的多个副本,每个机器分配到不同的数据,然后将所有机器的计算结果按照某种方式合并。
从机器学习谈起 在本篇文章中,我将对机器学习做个概要的介绍。本文的目的是能让即便完全不了解机器学习的人也能了解机器学习,并且上手相关的实践。这篇文档也算是EasyPR开发的番外篇,从这里开始,必须对机器学习了解才能进一步介绍EasyPR的内核。当然,本文也面对一般读者,不会对阅读有相关的前提要求。 在进入正题前,我想读者心中可能会有一个疑惑:机器学习有什么重要性,以至于要阅读完这篇非常长的文章呢?
自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第一部分 自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第一部分 自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第二部分 自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第三部分本文详细介绍一下自组织神经网络概念和原理,并重点介绍一下自组织特征映射
机器学习距离公式总结 作者:daniel-D 出处:http://www.cnblogs.com/daniel-D/在机器学习和数据挖掘中,我们经常需要知道个体间差异的大小,进而评价个体的相似性和类别。最常见的是数据分析中的相关分析,数据挖掘中的分类和聚类算法,如 K 最近邻(KNN)和 K 均值(K-Means)等等。根据数据特性的不同,可以采用不同的度量方法。一般而言,定义一个距离函数 d(x,y), 需要满足
深度学习方法(十五):知识蒸馏(Distilling the Knowledge in a Neural Network),在线蒸馏 Distilling the Knowledge in a Neural Network这篇介绍一下Hinton大神在15年做的一个黑科技技术,Hinton在一些报告中称之为Dark Knowledge,技术上一般叫做知识蒸馏(Knowledge Distillation)。核心思想是通过迁移知识,从而通过训练好的大模型得到更加适合推理的小模型。这个概念最早在06年的Paper: Model C...
深度学习方法(二十一):常用权重初始化方法Xavier,He initialization的推导 文章目录交叉熵目标函数更陡峭Xavier initialization [1][4]He initialization [2][3]He init 考虑ReLU函数He init 考虑Leaky ReLU函数结束语参考资料交叉熵目标函数更陡峭在论文[1]中给了一个图示,一定程度上说明了为什么Cross Entropy用的很多,效果很好。图中上面的曲面表示的是交叉熵代价函数,下面的曲面表示的是二次代价函数,W1和W2分别表示层与层之间的连接权值。)在1986年 Rumelhart 已经发现:logi
Python基础(二):Numpy函数介绍:Meshgrid,mgrid,append等 文章目录meshgrid函数mgrid函数参考资料meshgrid函数meshgrid函数通常使用在数据的矢量化上。它适用于生成网格型数据,可以接受两个一维数组生成两个二维矩阵,对应两个数组中所有的(x,y)对。meshgrid的作用是:根据传入的两个一维数组参数生成两个数组元素的列表。如果第一个参数是xarray,维度是xdimesion,第二个参数是yarray,维度是ydimesion。那么生成的第一个二维数组是以xarray为行,共ydimesion行的向量;而第二个二维数组是以yarray的
今天开始学Convex Optimization:第3章(part2) Optimization basics 文章目录重写约束条件部分优化:消除等式约束:引入Slack变量:例子: SVM的hinge loss form凸函数的一阶最优条件(First-order optimality conditions)例子:二次优化参考资料本章来自Ryan Tibshirani的Convex Optimization: Fall 2019课程的Convexity II: Optimization basics小节。先看一个比较容易理解的概念:最优解组成的集合是一个convex set如果强凸的函数f,最优解是唯一的:
入门神经网络优化算法(六):二阶优化算法K-FAC 上一篇介绍了二阶优化算法Natural Gradient Descent(自然梯度算法),虽然可以避免计算Hessian,但是依然在计算代价上极高,对于大型的神经网络参数规模依然不可能直接计算。本篇继续介绍自然梯度算法后续的一个近似计算方法K-FAC
深度学习方法(二十):Hinton组最新无监督学习方法SimCLR介绍,以及Momentum Contrastive(MoCo) 本篇文章记录一下最近发表的两个比较类似的无监督representation learning工作: - SimCLR——Hinton组的工作,第一作者Ting Chen - MoCo v2——He Kaiming组的工作,第一作者Xinlei Chen
深度学习方法(十九):一文理解Contrastive Loss,Triplet Loss,Focal Loss 我们平时ML任务的时候,用的最多的是cross entropy loss或者MSE loss。需要有一个明确的目标,比如一个具体的数值或者是一个具体的分类类别。但是ranking loss实际上是一种metric learning,他们学习的相对距离,相关关系,而对具体数值不是很关心。ranking loss 有非常多的叫法,但是他们的公式实际上非常一致的。大概有两类,一类是输入pair 对,另外一种是输入三元组结构。
三十分钟理解:矩阵Cholesky分解,及其在求解线性方程组、矩阵逆的应用 写一篇关于Cholesky分解的文章,作为学习笔记,尽量一文看懂矩阵Cholesky分解,以及用Cholesky分解来求解对称正定线性方程组,以及求“对称正定矩阵”的逆的应用。
入门神经网络优化算法(五):一文看懂二阶优化算法Natural Gradient Descent(Fisher Information) 二阶优化算法Natural Gradient Descent,是从分布空间推导最速梯度下降方向的方法,和牛顿方法有非常紧密的联系。Fisher Information Matrix往往可以用来代替牛顿法的Hessian矩阵计算。下面详细道来。
今天开始学Convex Optimization:第2章 背景数学知识简述 主要参考是[1]和[2]的内容。特别是[2],比较简明又全面的介绍了需要的数学背景知识。主要需要数学分析(主要是实分析,Real analysis), 微积分(calculus), 以及线性代数(linear algebra)的最基础数学背景知识。
Adobe PDF Reader XI 闪退解决办法,用了N年的PDF软件又可以继续用了! 最近很烦人的一个情况是用了好多年的Adobe Reader一直闪退,打开一分钟就闪退。我是Windows10系统,都是在360软甲管家上下载的,然后看了一下评论,发现大家都是这样。我的解决方案分享给大家。
Python基础(一):Python切片,浅拷贝、深拷贝和赋值,排序,Reduce函数 整理一下Python常用操作,包括Python切片操作、拷贝、排序、Numpy基础等,会持续更新,主要是自己mark用。
深度学习/机器学习入门基础数学知识整理(八):中心极限定理,一元和多元高斯分布 高斯分布Gaussian distribution,也叫正太分布Normal distribution,是一个在数学、物理及工程等领域都非常重要的概率分布,在统计学的许多方面有着重大的影响力。
深度学习/机器学习入门基础数学知识整理(七):数学上sup、inf含义,和max、min的区别 经常在文献中看到inf和sup,很多人不知道是什么意思。其实这两个概念是来自于“数学分析”中的上确界和下确界:inf: infimum 或 infima,中文叫下确界或最大下界。 inf(S), S表示一个集合, inf(S)是指集合S的下确界, 即小于或等于S中所有元素的最大值, 这个数不一定在集合S中。sup:supremum,中文叫上确界。sup(S)是指集合S的上确界,即大于或等于S的所有元素的最小值, 这个数不一定在集合S中。
今天开始学Convex Optimization:引言、第1章基本概念介绍 Convex Optimization 凸优化书第一节,introduction。凸优化问题:本书主要介绍凸优化问题,定义是:对于目标函数以及约束函数都是convex的优化问题,称为convex optimization问题
Python Matplotlib画图基础介绍 Matplotlib 是 Python 中最常用的一个绘图库,主要用于绘制各种图形,包括散点图、柱状图、3D图、等高线图等等。在做研究过程中肯定会经常用,本文做一个简单的入门介绍,也给出极佳的参考手册,以备查用。内容主要参考了[1]的内容,我自己用jupyter notebook实现了一遍,我会给出所有源码的文件。
大饼博士的神经网络/机器学习算法收录合集:2020年整理,持续更新ing 本文用于随手记录一些Neural Network论文,主要是关注一些我觉得有趣的AI算法、网络结构。比较杂,随时看到随时记录,自己mark用。
三十分钟在Windows10安装Anaconda+Pytorch+Cuda,老式Nvidia GTX游戏显卡实测可用 这几天捣鼓了一下在自己老式的台式机上安装Pytorch,打算稍微有空的时候玩(学习)一下。我的机器是Windows10系统+Nvidia GTX960显卡,采用Anaconda安装,解决几个小问题后基本上可以说是一键安装使用,非常方便。记录一下,方便同学们查用。我安装的版本没有选择最新版本,最后安装下来的是CUDA9.0+Pytorch1.1,我想也基本够用了。
入门神经网络优化算法(一):Gradient Descent,Momentum,Nesterov accelerated gradient 梯度下降基于梯度的优化算法,Gradient based optimization,也往往被称为一阶优化算法。所以很容易猜到,还有二阶优化算法等的高阶优化算法,但是在实际应用中,基于梯度的一阶优化算法是目前的绝对主流方法,本文就重点罗列一下基于梯度的优化算法。最典型以及简单的是:梯度下降算法。梯度下降法是神经网络求解优化中最常用的一类算法(实际上是在数值优化方法里的一种常用方法,常常用以求解连...
计算机视觉算法整理(一):Faster RCNN,bounding box regression,IOU,GIOU 专门收录一下一些有趣的,计算机视觉中我想记录一下的算法,重点关注的是loss function,顺便说下相关算法。因为是收录,只为日后查看之需,有一些会借用一些资料,我会给出引用。1、Faster RCNN两阶段目标检测的代表作,可以说是开创了目标检测的一番局面。现在很多公司实际在商用的目标检测算法,依然很多是基于Faster RCNN的。虽然后来各种论文都号称吊打Faster RCNN,但是...
论文导读、会议精选:SysML2018,SysML2019 先简单介绍一下SysML会议,2018年新成立的一个聚焦在机器学习系统、软件、硬件等综合领域研究的一个学术会议。由一堆学术界和工业界大佬抱团组建。从18年发布的一篇Machine Learning System(机器学习系统)白皮书可以看到。在白皮书中,机器学习系统的研究方向定义为在现实世界中设计和实现一类系统,这类系统用于支持和部署机器学习模型。随着机器学习模型的快速迭代,旧的系统已经不能为...
深度学习方法(十七):word2vec算法原理(1):跳字模型(skip-gram) 和连续词袋模型(CBOW) word embedding算法中最为经典的算法就是今天要介绍的word2vec,最早来源于Google的Mikolov的:1、Distributed Representations of Sentences and Documents2、Efficient estimation of word representations in vector space也是开创了无监督词嵌入的新局面,让...
深度学习方法(十六):Batch Normalization及其变种——Layer Norm, Group Norm,Weight Norm等 很久没写博文了,这几天是元旦假期,抽一点时间写一些简单的内容,大家2018年一起加油,天天向上哈!本文的内容包括:Batch NormalizationWeight NormalizationLayer NormalizationBatch RenormalizationBatch Normalization加粗 Ctrl + B 列表内容斜体
深度学习/机器学习入门基础数学知识整理(六):Hoeffding不等式, 开写之前先推荐一个林轩田先生的书,《Learning From Data》,我从网上得到电子版资源放在这里获取,仅用于学习交流之用,不可用与商用,谢谢。网上还有配套的Slides,我虽然还未看过这本书,但是浏览了一下非常不错,mark一下,希望后面有时间可以静下心来学习一下。直观理解本章记录一下霍夫丁不等式 Hoeffding Inequality,以及占个位,以后其他类似的不等式...
深度学习/机器学习入门基础数学知识整理(五):Jensen不等式简单理解,共轭函数 Jensen不等式及其延伸 [1]凸函数最基本的不等式性质,又称Jensen不等式 f(θx+(1−θ)y)≤θ f(x)+(1−θ) f(y)f(θx+(1−θ)y)≤θ f(x)+(1−θ) f(y)f(\theta x+(1-\theta)y)\leq \theta\ f(x)+ (1-\theta)\ f(y) 许多著名的不等式都是由Je...
深度学习/机器学习入门基础数学知识整理(四):拟牛顿法、BFGS、L-BFGS、DFP、共轭梯度法 参考资料https://blog.csdn.net/batuwuhanpei/article/details/51979831 https://blog.csdn.net/u011722133/article/details/53518134 无约束优化方法(梯度法-牛顿法-BFGS- L-BFGS) 优化算法——拟牛顿法之DFP算法 牛顿法与拟牛顿法 牛顿法,拟牛顿法, 共轭梯度法...
强化学习方法(一):探索-利用困境exploration exploitation,Multi-armed bandit 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术感兴趣的同学加入。18年新开一个强化学习方法系列,督促自己能够再不断扩充知识并分享给更多的同学。其实前面写的机器学习方法系列和深度学习方法系列,也都还没有写够,平时工作比较忙,更新很慢,但是我还是会努力更新的。今天开始记录一些强化学习的知识,这些内容以...
人工智能新闻/资料/文章收录【2018年及之前】 本文仅用于个人网络资料收录:)深度学习(科普)2014-11-17:解密最接近人脑的智能学习机器 ——深度学习及并行化实现(腾讯大数据)2018-2-16:深度 | Pedro Domingos总结机器学习研究的12个宝贵经验 高维的一般问题是,来自三维世界的人类直觉通常不适用于高维空间。在高维度当中,多元高斯分布的大部分数据并不接近平均值,而是在其周围越来越远的「壳」中;此外,...
我的Blog文章索引::机器学习方法系列,深度学习方法系列,三十分钟理解系列等 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、机器学习技术感兴趣的同学加入。以下是我利用业余时间在自己博客中写的文章,主要是一些基础、经典算法的整理,目的一方面是为了科普机器学习技术,让更多同学可以知道什么是机器学习;另外一方面也是督促自己在工作之余还可以抽时间学习知识,温故知新,以备查用。本文会
深度学习/机器学习入门基础数学知识整理(三):凸优化,Hessian,牛顿法 凸优化理论本身非常博大,事实上我也只是了解了一个皮毛中的皮毛,但是对于广大仅仅想要了解一下机器学习或者深度学习的同学来说,稍微了解一点凸优化也就够了。在实际工程问题中,比如现在我们用的最多的深度神经网络的求解优化问题,都是非凸的,因此很多凸优化理论中非常有价值的定理和方法,在非凸优化问题中不适用,或者说并没有收敛保证等。但是,作为知识的基础,依然有必要来理解和学习一下凸优化,本篇整理了非常基础的一...
深度学习/机器学习入门基础数学知识整理(二):梯度与导数,矩阵求导,泰勒展开等 导数与梯度导数:一个一元函数函数在某一点的导数描述了这个函数在这一点附近的变化率。 f′(a)=limh→0f(a+h)−f(a)hf'(a) = \lim_{h \rightarrow 0} \frac{f(a+h)-f(a)}{h}梯度:多元函数的导数就是梯度。一阶导数,即梯度(gradient):∇f(X)=∂f(X)∂X=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢∂f(X)∂
深度学习/机器学习入门基础数学知识整理(一):线性代数基础,矩阵,范数等 前面大概有2年时间,利用业余时间断断续续写了一个机器学习方法系列,和深度学习方法系列,还有一个三十分钟理解系列(一些趣味知识);新的一年开始了,今年给自己定的学习目标——以补齐基础理论为重点,研究一些基础课题;同时逐步继续写上述三个系列的文章。最近越来越多的研究工作聚焦研究多层神经网络的原理,本质,我相信深度学习并不是无法掌控的“炼金术”,而是真真实实有理论保证的理论体系;本篇打算摘录整理
[完美解决]如何在windows安装docker toolbox,使用tensorflow,Jupyter Notebook,各种问题的解决方案 上两周心血来潮想在自己的Surface(Win10 Home系统)上用TensorFlow和Python,但是安装实在是太麻烦了…就想到能不能在Windows上用docker直接运行linux环境的TensorFlow?网上一查还真有,然后很开心的下载安装…谁知进入了一个超级大坑T_T,经过断断续续几次的研究(折腾)终于在今天搭建完成环境,在本文中给一个详细的教程,帮助大家少走弯路~!
深度学习方法(十四):轻量级CNN网络设计——MobileNet,ShuffleNet,文末有思考 本系列前面介绍了非常多卷积网络结构设计,事实上,在inception和resnet网络提出并相对完善以后,网络结构的设计就不再爆发式出现了,这两大类网路涵盖了大部分应用的卷积网络结构。在本文中,我们来一起看一些最近一年研究较多的轻量级卷积网络结构,这些网络主要的设计目标是——在保证一定的识别精度情况下,尽可能减少网络规模(参数量、计算量)。最直接的设计目标就是用于手机等移动终端中(CPU),让
三十分钟理解:双调排序Bitonic Sort,适合并行计算的排序算法 双调排序是data-independent的排序, 即比较顺序与数据无关的排序方法, 特别适合做并行计算,例如用GPU、fpga来计算。
FPGA 17最佳论文导读 ESE: Efficient Speech Recognition Engine with Compressed LSTM on FPGA 国内知名的深鉴科技的几位初创写的一篇,拿了**今年FPGA会议的best paper**,今天来看一看到底有些什么内容。文章围绕在FPGA下设计LSTM执行引擎,主要考虑的点是稀疏的计算架构。说实话,稀疏计算已经说的快熟(lan)了,关键还是这样的架构要在牺牲通用性下,得到足够强劲的收益;在一些专用的计算场景下,确实可以做到很好的效果,但也并不是一个免费的午餐。
ASPLOS'17论文导读——SC-DCNN: Highly-Scalable Deep Convolutional Neural Network using Stochastic Computing 今年去参加了ASPLOS 2017大会,这个会议总体来说我感觉偏系统和偏软一点,涉及硬件的相对少一些,对我这个喜欢算法以及硬件架构的菜鸟来说并不算非常契合。中间记录了几篇相对比较有趣的paper,今天简单写一篇。SC-DCNN: Highly-Scalable Deep Convolutional Neural Network using Stochastic Computing 单位作者: 我
深度学习方法(十三):卷积神经网络结构变化——可变形卷积网络deformable convolutional networks 上一篇我们介绍了:深度学习方法(十二):卷积神经网络结构变化——Spatial Transformer Networks,STN创造性地在CNN结构中装入了一个可学习的仿射变换,目的是增加CNN的旋转、平移、缩放、剪裁性。为什么要做这个很奇怪的结构呢?原因还是因为CNN不够鲁棒,比如把一张图片颠倒一下,可能就不认识了(这里mark一下,提高CNN的泛化能力,值得继续花很大力气,STN是一个思路,读者
深度学习方法(十二):卷积神经网络结构变化——Spatial Transformer Networks 今天具体介绍一个Google DeepMind在15年提出的Spatial Transformer Networks,相当于在传统的一层Convolution中间,装了一个“插件”,可以使得传统的卷积带有了[裁剪]、[平移]、[缩放]、[旋转]等特性;理论上,作者希望可以减少CNN的训练数据量,以及减少做data argument,让CNN自己学会数据的形状变换。这篇论文我相信会启发很多新的改进,也就是对卷积结构作出
深度学习方法(十一):卷积神经网络结构变化——Google Inception V1-V4,Xception(depthwise convolution) 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、机器学习技术感兴趣的同学加入。上一篇讲了深度学习方法(十):卷积神经网络结构变化——Maxout Networks,Network In Network,Global Average Pooling,本篇讲一讲Google的Inception系列net,以及
深度学习方法(十):卷积神经网络结构变化——Maxout Networks,Network In Network,Global Average Pooling 本文先介绍两个13,14年的工作:Maxout Networks,Network In Network。网上有不少资料,但是很多作者我相信自己都没有完全理解,在本文中我会尽可能描述清楚。本文重点在于Network In Network。本文针对论文和网络资料的整理,自己重新撰写,保证每一个初学者都可以看懂。
ISSCC 2017论文导读 Session 14:A 288μW Programmable Deep-Learning Processor with 270KB On-Chip Weight A 288μW Programmable Deep-Learning Processor with 270KB On-Chip Weight Storage Using Non-Uniform Memory Hierarchy for Mobile Intelligence单位:Michigan,CubeWorks(密歇根大学,CubeWorks公司)又是一款做DNN加速的面向IOT的专用芯片,主要
[重磅]Deep Forest,非神经网络的深度模型,周志华老师最新之作,三十分钟理解! 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术感兴趣的同学加入。深度学习最大的贡献,个人认为就是表征学习(representation learning),通过端到端的训练,发现更好的features,而后面用于分类(或其他任务)的输出function,往往也只是普通的softmax(或者其他一些经
三十分钟理解计算图上的微积分:Backpropagation,反向微分 神经网络的训练算法,目前基本上是以Backpropagation (BP) 反向传播为主(加上一些变化),NN的训练是在1986年被提出,但实际上,BP 已经在不同领域中被重复发明了数十次了(参见 Griewank (2010)[1])。更加一般性且与应用场景独立的名称叫做:反向微分 (reverse-mode differentiation)。本文是看了资料[2]中的介绍,写的蛮好,自己记录一下,
ISSCC 2017论文导读 Session 14:A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Pro A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Processor and a CIS Integrated with Always-On Haar-Like Face Detector单位:KAIST(韩国科学技术院)——ISSCC上大神级的机构···DNN的加速器,面向不同的应用有着不同的能效需求:0.
ISSCC 2017论文导读 Session 14:ENVISION: A 0.26-to-10 TOPS/W Subword-Parallel DVAFS CNN Processor in 28nm ENVISION: A 0.26-to-10 TOPS/W Subword-Parallel Dynamic-Voltage-Accuracy-Frequency-Scalable CNN Processor in 28nm FDSOI单位:EAST-MICAS, KU Leuven(鲁汶大学)本文是我觉得本次ISSCC2017 session 14中最好的一篇,给人的启示有很多,比如一款SOC可以
ISSCC 2017论文导读 Session 14: A 28nm SoC with a 1.2GHz Prediction Sparse Deep-Neural-Network Engine A 28nm SoC with a 1.2GHz 568nJ/Prediction Sparse Deep-Neural-Network Engine with >0.1 Timing Error Rate Tolerance for IoT Applications单位:Harvard(哈佛大学)这是一篇专门为DNN加速设计的芯片,在CNN加速芯片设计当道的今天也算是非常另类了~~不过能在ISSC
ISSCC 2017论文导读 Session 14 Deep Learning Processors,DNPU: An 8.1TOPS/W Reconfigurable CNN-RNN DNPU: An 8.1TOPS/W Reconfigurable CNN-RNN Processor for General-Purpose Deep Neural Networks单位:KAIST(韩国科学技术院,电子工程-半导体系统实验室)KAIST是ISSCC的常客,一年要在上面发好几篇芯片论文,16年ISSCC上Session 14有一半的paper是出自KAIST的,只能说怎一个牛字了得
ISSCC 2017论文导读 Session 14 Deep Learning Processors,A 2.9TOPS/W Deep Convolutional Neural Network 最近ISSCC2017大会刚刚举行,看了关于Deep Learning处理器的Session 14,有一些不错的东西,在这里记录一下。A 2.9TOPS/W Deep Convolutional Neural Network SoC in FD-SOI 28nm for Intelligent Embedded Systems单位:STMicroelectronics(意法半导体) 这是一篇很综合
深度学习方法(九):自然语言处理中的Attention Model注意力模型 上一篇博文深度学习方法(八):Encoder-Decoder模型,基本Sequence to Sequence模型描述了基本的Encoder-Decoder模型,在作为翻译模型的时候,这种基本的Encoder-Decoder模型有较大缺点,就是Encoder部分每一个输入对Decoder部分每一个输出的贡献都是一样的。下面先看一个例子[1],输入的是英文句子:Tom chase Jerry,Enco
深度学习方法(八):自然语言处理中的Encoder-Decoder模型,基本Sequence to Sequence模型 Encoder-Decoder(编码-解码)是深度学习中非常常见的一个模型框架,比如无监督算法的auto-encoding就是用编码-解码的结构设计并训练的;比如这两年比较热的image caption的应用,就是CNN-RNN的编码-解码
720P、1080P、4K是什么意思? 什么是像素?中文全称为图像元素。像素仅仅只是分辨率的尺寸单位,而不是画质。从定义上来看,像素是指基本原色素及其灰度的基本编码。 像素是构成数码影像的基本单元,通常以像素每英寸PPI(pixels per inch)为单位来表示影像分辨率的大小。例如300x300PPI分辨率,即表示水平方向与垂直方向上每英寸长度上的像素数都是300,也可表示为一平方英寸内有9万(300x300)
《微微一笑很倾城》中肖奈大神说的平方根倒数速算法是什么鬼?三十分钟理解! 在电影《微微一笑很倾城》中,肖奈大神在玻璃上写了一堆公式,提到平方根倒数速算算法,这个到底是一个什么算法?笔者看电影的时候打开手机学了一下,发现该算法的作者真乃神人!今天有空,就把该算法写一写。
三十分钟理解博弈论“纳什均衡” -- Nash Equilibrium 所谓纳什均衡,指的是参与人的这样一种策略组合,在该策略组合上,任何参与人单独改变策略都不会得到好处。换句话说,如果在一个策略组合上,当所有其他人都不改变策略时,没有人会改变自己的策略,则该策略组合就是一个纳什均衡。
深度学习方法(七):最新SqueezeNet 模型详解,CNN模型参数降低50倍,压缩461倍! 继续前面关于深度学习CNN经典模型的整理,之前介绍了CNN网络Lenet,Alexnet,Googlenet,VGG,Deep Residual Learning(点击查看)的网络结构。本文讲一下最新由UC Berkeley和Stanford研究人员一起完成的SqueezeNet[1]网络结构和设计思想。SqueezeNet设计目标不是为了得到最佳的CNN识别精度,而是希望简化网络复杂度,同时达到p
一张图解AlphaGo原理及弱点 AlphaGo在线对弈过程包括以下5个关键步骤:其核心思想实在蒙特卡洛搜索树(MCTS)中嵌入了深度神经网络来减少搜索空间。AlphaGo并没有具备真正的思维能力。 1. 根据当前盘面已经落子的情况提取相应特征; 2. 利用策略网络估计出棋盘其他空地的落子概率; 3. 根据落子概率来计算此处往下发展的权重,初始值为落子概率本身(如0.18)。实际情况可能是一个以概率值为输入的函数,此处为了理解简便。
自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第三部分 前面介绍了SOM的基本概念和算法,第一部分,第二部分,本篇具体展开一下应用中的一些trick设定。SOM设计细节输出层设计 输出层神经元数量设定和训练集样本的类别数相关,但是实际中我们往往不能清除地知道有多少类。如果神经元节点数少于类别数,则不足以区分全部模式,训练的结果势必将相近的模式类合并为一类;相反,如果神经元节点数多于类别数,则有可能分的过细,或者是出现“死节点”,即在训练过程中,某个节点
自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第二部分 上一篇介绍了一些自组织神经网络的基本概念,第一部分,这一篇讲下SOM的概念和原理,是本文的第二部分。1、SOM背景1981年芬兰Helsink大学的T.Kohonen教授提出一种自组织特征映射网,简称SOM网,又称Kohonen网。Kohonen认为:一个神经网络接受外界输入模式时,将会分为不同的对应区域,各区域对输入模式具有不同的响应特征,而且这个过程是自动完成的。自组织特征映射正是根据这一看法提
大脑记忆系统研究取得重大进展:或被用于开发新的芯片和操作系统 索尔克研究所发布的数据表明,人脑记忆容量可达到PB级别,相当于整个互联网的数据量,这项研究也揭开了人脑高效节能之谜。发现也将有助于计算机科学家开发超精密的、高效节能的计算机,尤其是那些配置深度学习和人工神经网络的机器,这些程序能够胜任复杂的学习和分析,例如语音识别、图像识别和翻译。
机器学习方法(七):Kmeans聚类K值如何选,以及数据重抽样方法Bootstrapping 本篇介绍了聚类如何选择K的一种方法(实际上,除了kmeans以外,还可以用于很多其他的聚类方法,如果他们也要确定k。)。该方法使用的Parametric bootstrap来抽样,是统计中bootstrap方法的一种类型。我们还介绍了基本的bootstrap方法,有放回的抽取,以及更平滑的smooth bootstrap方法,这些算法都是简单而有道理
深度学习方法(六):神经网络weight参数怎么初始化 神经网络,或者深度学习算法的参数初始化是一个很重要的方面,传统的初始化方法从高斯分布中随机初始化参数。甚至直接全初始化为1或者0。这样的方法暴力直接,但是往往效果一般。本篇文章的叙述来源于一个国外的讨论帖子[1],下面就自己的理解阐述一
光流optical flow基本原理与实现 光流(optical flow)是什么呢?名字很专业,感觉很陌生,但本质上,我们是最熟悉不过的了。因为这种视觉现象我们每天都在经历。从本质上说,光流就是你在这个运动着的世界里感觉到的明显的视觉运动(呵呵,相对论,没有绝对的静止,也没有绝对的运动)。例如,当你坐在火车上,然后往窗外看。你可以看到树、地面、建筑等等,他们都在往后退。这个运动就是光流。而且,我们都会发现,他们的运动速度居然不一样?这就给我们提供了一个挺有意思的信息:通过不同目标的运动速度判断它们与我们的距离。一些比较远的目标,例如云、山,它们移动
False Positives和False Negative等含义 True Positive (真正, TP)被模型预测为正的正样本;True Negative(真负 , TN)被模型预测为负的负样本 ;False Positive (假正, FP)被模型预测为正的负样本;False Negative(假负 , FN)被模型预测为负的正样本;
机器学习方法(六):随机森林Random Forest,bagging 前面[机器学习方法(四)决策树](http://blog.csdn.net/xbinworld/article/details/44660339)讲了经典的决策树算法,我们讲到决策树算法很容易过拟合,因为它是通过最佳策略来进行属性分裂的,这样往往容易在train data上效果好,但是在test data上效果不好。随机森林random forest算法,本质上是一种ensemble的方法,可以有效的降低过拟合,本文
深度学习方法(五):卷积神经网络CNN经典模型整理Lenet,Alexnet,Googlenet,VGG,Deep Residual Learning 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术感兴趣的同学加入。关于卷积神经网络CNN,网络和文献中有非常多的资料,我在工作/研究中也用了好一段时间各种常见的model了,就想着简单整理一下,以备查阅之需。如果读者是初接触CNN,建议可以先看一看“Deep Learning(深度学习)学习笔记整理系
深度学习方法:受限玻尔兹曼机RBM(四)对比散度contrastive divergence,CD 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术、应用感兴趣的同学加入。上篇讲到,如果用Gibbs Sampling方法来训练rbm会非常慢,本篇中介绍一下对比散度contrastive divergence, CD算法。我们希望得到P(v)P(\textbf{v})分布下的样本,而我们有训
深度学习方法:受限玻尔兹曼机RBM(三)模型求解,Gibbs sampling 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术、应用感兴趣的同学加入。本篇重点讲一下RBM模型求解方法,其实用的依然是梯度上升方法,但是求解的方法需要用到随机采样的方法,常见的有:Gibbs Sampling和对比散度(contrastive divergence, CD)算法。RBM
OpenCL学习笔记(三):OpenCL安装,编程简介与helloworld 从图中可以看出(参考《OpenCL 编程入门》):1. 异构计算设备,可以是CPU或GPU。现在也有支持OpenCL的FPGA设备和至强融核协处理设备(MIC)。2. OpenCL的API通过Context(环境上下文)联系在一起。3. 运行设备端的程序,经过了编译->设置参数->运行等步骤。
OpenCL学习笔记(二):并行编程概念理解 一般来说,并行编程有两种大类型——分散收集(scatter-gather)与分而治之(divide-and-conquer)。分散收集(scatter-gather):数据被分为子集,发送到不同的并行资源中,然后对结果进行组合,也就是数据并行;分而治之(divide-and-conquer):问题被分为子问题,在并行资源中运行,也就是任务并行。
OpenCL学习笔记(一):摩尔定律,异构计算与OpenCL初印象 OpenCL (Open Computing Language,开放计算语言) 是一个为异构平台编写程序的框架,此异构平台可由CPU,GPU或其他类型的处理器组成。OpenCL提供了基于任务分割和数据分割的并行计算机制。OpenCL 应用程序含有两部分(host和kernel)。OpenCL 主程序是纯软件例程,以标准C/C++编写,可以运行在任何类型的微处理器上。例如,这类处理器可以是FPGA中的嵌入式软核处理器、硬核ARM处理器或者外置x86处理器。如图所示。在这一主软件例程执行期间的某一点,某一功能
深度学习开源工具——caffe介绍 Caffe 此前听过没用过,所以报告前自己试运行了一下,参照 caffe官方教程。Caffe 安装、上手都很快,Protobuf 式的层定义很直观,模型修改或算法调整变得很容易,相当于只需要改配置文件。还找到了他们放在 Google Docs 上一个教程 PPT, DIY Deep Learning for Vision: a Hands-On Tutorial with Caffe ,后来发
机器学习方法(五):逻辑回归Logistic Regression,Softmax Regression 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术、应用感兴趣的同学加入。逻辑回归可以说是最为常用的机器学习算法之一,最经典的场景就是计算广告中用于CTR预估,是很多广告系统的核心算法。
OpenCL与CUDA,CPU与GPU OpenCLOpenCL(全称Open Computing Language,开放运算语言)是第一个面向异构系统通用目的并行编程的开放式、免费标准,也是一个统一的编程环境,便于软件开发人员为高性能计算服务器、桌面计算系统、手持设备编写高效轻便的代码,而且广泛适用于多核心处理器(CPU)、图形处理器(GPU)、Cell类型架构以及数字信号处理器(DSP)等其他并行处理器,在游戏、娱乐、科
深度学习方法:受限玻尔兹曼机RBM(二)网络模型 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术、应用感兴趣的同学加入。上解上一篇RBM(一)基本概念,本篇记叙一下RBM的模型结构,以及RBM的目标函数(能量函数),通过这篇就可以了解RBM到底是要求解什么问题。在下一篇(三)中将具体描述RBM的训练/求解方法,包括Gibbs sampling和对比
深度学习方法:受限玻尔兹曼机RBM(一)基本概念 最近在复习经典机器学习算法的同时,也仔细看了一些深度学习的典型算法。深度学习是机器学习的“新浪潮”,它的成功主要得益于深度“神经网络模型”的优异效果。这个小系列打算深入浅出地记录一下深度学习中常用的一些算法。第一篇先写一下“受限玻尔兹曼机“RBM。
机器学习方法:回归(三):最小角回归Least Angle Regression(LARS),forward stagewise selection 前面两篇回归(一)(二)复习了线性回归,以及L1与L2正则——lasso和ridge regression。特别描述了lasso的稀疏性是如何产生的。在本篇中介绍一下和lasso可以产生差不多效果的两种方法:stagewise和LARS
机器学习方法(四):决策树Decision Tree原理与实现技巧 前面三篇写了线性回归,lasso,和LARS的一些内容,这篇写一下决策树这个经典的分类算法,后面再提一提随机森林。关于决策树的内容主要来自于网络上几个技术博客,本文中借用的地方我都会写清楚出处,写这篇[整理文章]的目的是对决策树的
机器学习方法:回归(二):稀疏与正则约束ridge regression,Lasso 本篇内容讲述回归问题中最常用的ridge regression与Lasso,同时深入浅出地探讨稀疏约束,正则,分析了Lasso稀疏的原因。
机器学习方法:回归(一):线性回归Linear regression 欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。开一个机器学习方法科普系列:做基础回顾之用,学而时习之;也拿出来与大家分享。数学水平有限,只求易懂,学习与工作够用。周期会比较长,因为我还想写一些其他的,呵呵。 content: linear regression, Ridge, Lasso Logistic Regression, Softmax ...
Science14年的聚类论文——Clustering by fast search and find of density peaks 这是一个比较新的聚类方法(文章中没看见作者对其取名,在这里我姑且称该方法为local density clustering,LDC),在聚类这个古老的主题上似乎最近一些年的突破不大,这篇文章算是很好的了,方法让人很有启发(醍醐灌顶),并且是发表在Science上,受到的关注自然非常大。本文的核心亮点:1是用比较新颖的方法来确定聚类中心,2是采用距离的local density来进行聚类的划分。
三十分钟理解:稀疏矩阵存储格式总结+存储效率对比:COO,CSR,DIA,ELL,HYB 稀疏矩阵是指矩阵中的元素大部分是0的矩阵,事实上,实际问题中大规模矩阵基本上都是稀疏矩阵,很多稀疏度在90%甚至99%以上。因此我们需要有高效的稀疏矩阵存储格式。本文总结几种典型的格式:COO,CSR,DIA,ELL,HYB。
机器学习方法(八):随机采样方法整理(MCMC、Gibbs Sampling等) 转载请注明出处:Bin的专栏,http://blog.csdn.net/xbinworld本文是对参考资料中多篇关于sampling的内容进行总结+搬运,方便以后自己翻阅。其实参考资料中的资料写的比我好,大家可以看一下!好东西多分享!PRML的第11章也是sampling,有时间后面写到PRML的笔记中去:)背景随机模拟也可以叫做蒙特卡罗模拟(Monte Carlo Sim
今天开始学Pattern Recognition and Machine Learning (PRML),章节5.2-5.3,Neural Networks神经网络训练(BP算法) 这一篇是整个第五章的精华了,会重点介绍一下Neural Networks的训练方法——反向传播算法(backpropagation,BP),这个算法提出到现在近30年时间都没什么变化,可谓极其经典。也是deep learning的基石之一。还是老样子,下文基本是阅读笔记(句子翻译+自己理解),把书里的内容梳理一遍,也不为什么目的,记下来以后自己可以翻阅用。