PR & ML
文章平均质量分 80
Pattern Recognition & Machine Learning
_pinnacle_
Don't pray for an easy life, pray for the strength to endure a difficult one --- Bruce Lee
展开
-
TopK activation function(TopK激活函数)
最近看了一篇关于topk激活函数的文章[1]就顺便实现了一下,测试了一下收敛、运行速度和最后的精度基本和ReLU差别不大,topk激活函数有一个优点就是激活的节点数是确定的,不会产生死区。顺便也实现了基于topk的池化,这个池化速度较慢。原创 2024-06-27 19:20:00 · 266 阅读 · 0 评论 -
从函数逼近角度理解神经网络、残差连接与激活函数
最近思考激活函数的时候,突然想到神经网络中残差连接是不是和函数的泰勒展开很像,尤其是在激活函数fxx2f(x)=x^2fxx2时(这个激活函数想法来源于fxReLU2x3fxReLU2x3),所以验证了一下就顺便写下来了,本文抛砖引玉,如果有建议或更好的想法可以写到评论区。原创 2024-06-23 19:57:02 · 1118 阅读 · 0 评论 -
深度神经网络的数学原理:基于超平面、半空间与线性区域的表示
以前的文章主要描述了神经网络,即多层感知机、全连接模型的运行原理,还是以实验为主,数学描述为辅的方式,这篇文章以纯数学的视角来描述神经网络的运行原理,主要以前馈过程为主(反向传播的动力学过程还是比较复杂,正向过程还未完全研究清楚,暂时还未考虑)。通过本篇文章,希望大家能理解神经网络的数学原理,如有错误请不吝指出。原创 2023-10-29 17:13:47 · 773 阅读 · 0 评论 -
详解Softmax、Maxout的性质与Self-Attention初步解析
最近研究超平面排列(Hyperplane Arrangement)问题的时候,发现ReLU有其缺陷,即举例来说,ReLU 无法使用单一的超平面将分离的所有数据,完整的输出,即只会输出半个空间映射的数据,而另一半空间的数据被置为0;ReLU 要完整的映射输入空间的所有数据需要至少3个节点才能办到,比如在2维的输入空间上,当只有2个节点时构成的超平面排列将输入空间划分4个区域,其中其中一定有一个区域全部输出为[0,0]即所谓的死区(Dead Region),死区在ReLU的网络中是普遍问题。原创 2023-06-18 18:53:04 · 888 阅读 · 0 评论 -
深度学习训练中为什么要将图片随机剪裁(Random Crop)
这篇文章是用Markdown重写了原来的文章。图像分类中,深度学习训练时将图片随机剪裁(random crop)已经成为很普遍的数据扩充(data augmentation)方法,随机剪裁不但提高了模型精度,也增强了模型稳定性,但是它如此有效的核心原因是什么呢?仅仅是因为数据扩充吗?这个是下面我们需要研究的问题。原创 2023-05-20 13:15:17 · 3622 阅读 · 2 评论 -
多层感知机(MLP)与二叉空间分割树(BSP Tree)的关系
最近发现了一个传统算法,非常适合描述多层感知机(Multi-Layer Perceptron,MLP)的模型逻辑,其算法逻辑也非常清晰简单,所以在这里再对比一下,方便大家更容易理解多层感知机的内容,这篇文章不会写复杂的数学公式。想从数学方面去更多的理解多层感知机的内容可以查看往期的文章。点到为止,这篇文章不求复杂只简单概述模型逻辑,就是说明二叉空间分割树的算法逻辑和多层感知机是完全一致的。原创 2023-05-20 11:14:29 · 634 阅读 · 0 评论 -
理解神经网络中激活函数的作用
理解激活函数的作用能更好的解释神经网络的运行逻辑,在以前的章节中只简单概述了激活函数的作用,但是其实结论是比较草率的,这篇文章希望能谨慎的证明这些结论。原创 2023-05-14 10:21:24 · 343 阅读 · 0 评论 -
打开神经网络的黑箱(二) 多层感知机(MLP)的空间划分与编码逻辑
上一篇文章解析了单层全连接分类模型的(输入)空间划分(Space Partitioning)与编码逻辑或数学原理,这篇文章将主要是解析多层感知机(Multi-Layer Perceptron,MLP)或多层全连接层构成的模型的空间划分与编码逻辑。多层感知机与单层全连接分类模型较大的区别在于,隐藏层的空间划分与编码并不遵循理想情况下使得每一个线性区域(Linear Regions)只包含单个类别的数据这样的逻辑,所以会复杂一些,基础的空间划分与编码逻辑可参考上一篇文章,本文将不再赘述。原创 2023-03-26 17:41:19 · 733 阅读 · 0 评论 -
打开神经网络的黑箱(一) 全连接模型的空间划分与编码逻辑
几年前就想写这篇文章,但是在解析神经网络的数学原理问题上断断续续,加上个人能力有限,很多问题并没有研究的很明白,以及神经网络本身高维问题的复杂性,导致这个问题的理解也是片面的。个人希望在这篇文章里抛砖引玉,让大家能更深入理解神经网络内部的基础数学原理与编码逻辑,启发大家后面的工作,如有错误请不吝啬指出。本文不会过多的介绍梯度下降或反向传播等参数更新的原理或动力学过程,而是以前向过程(Feed Forward)作为本文的重点。原创 2023-02-01 18:33:53 · 642 阅读 · 0 评论 -
神经网络如何学习到加法等算法 - 神经编码器-解释器(Neural Programmer-Interpreters)
算法的本质 何为算法(algorithm)? 从狭义来讲,算法是计算机科学里面的概念,简单来说,所谓算法就是定义良好的计算过程,它取一个或者一组值作为输入,并产生出一个或一组值作为输出。亦即,算法就是一系列的计算步骤,用来将输入数据转换成输出结果[1]。 从广义来讲,算法是从初始态到可达目标态的序列过程。 如:命令机器人拿起一个瓶子,那么算法就是从机器手中没...原创 2017-02-12 21:41:53 · 4778 阅读 · 2 评论 -
计算机视角下的大脑 - 图灵完备的算法程序
我们都知道CPU适合串行计算,GPU适合大规模并行计算,大脑的硬件就像是一个GPU,大脑的操作系统和所有算法都是运行在GPU上,在高层次的计算上则模拟CPU的串行计算模式,如算术计算,代数计算,自然语言操作等等。所以某种程度来说,这些高层次的计算是模拟计算,所以速度很慢; 而像图像识别,语音识别是非模拟计算其速度很快。这个和现代计算机刚好相反操作系统和大多数算法运行在CPU上,GPU目前还主要是辅助设备,主要做一些特定的并行加速,在CPU上串行计算是非模拟计算,并行计算相当于模拟计算。如果操作系统和算法都原创 2019-11-03 19:27:50 · 2878 阅读 · 1 评论 -
深度学习的局限与未来(二)
转载于:The future of deep learning中文版:François Chollet 谈深度学习的局限性和未来Given what we know of how deep nets work, of their limitations, and of the current state of the research landscape, can we predict whe...转载 2019-09-28 22:54:13 · 1427 阅读 · 0 评论 -
深度学习的局限与未来(一)
转载于:The limitations of deep learning中文版:François Chollet 谈深度学习的局限性和未来Deep learning: the geometric viewThe most surprising thing about deep learning is how simple it is. Ten years ago, no one expect...转载 2019-09-28 22:41:57 · 696 阅读 · 0 评论 -
神经网络原理--简单总结
一些神经网络的论文的观点与数学解释的确引导了写这篇文章的想法。这篇文章主要是个人的浅见与论文阅读总结。...原创 2018-09-15 22:20:08 · 6040 阅读 · 4 评论 -
AlphaGo围棋论文中文翻译
Mastering the game of Go with deep neural networks and tree search(使用深度神经网络与树搜索使计算机精通围棋)David Silver1*, Aja Huang1*, Chris J. Maddison1, Arthur Guez1, Laurent Sifre1, George van den Driessche1,J...原创 2016-03-17 17:00:24 · 14203 阅读 · 0 评论 -
分类器对未见过类别(unseen category)的识别问题
未见过类别 未见过类别(unseen category)或者叫不知道类别(unknown category)。简单来说,如我们定义类别{苹果,香蕉} 且其数据集为D,那么定义一个二分类器C,将D分割为训练集和测试集,那么训练出的分类器只能区分两个类别。假设我们拥有数据Dx,其中拥有的分类为{小狗,小猫},这个时候将Dx混入D的测试集,二分类器C如何分类Dx中的数据?这时我们将Dx包含的数...原创 2017-01-30 13:26:16 · 11569 阅读 · 23 评论 -
使用pytorch预训练模型分类与特征提取
pytorch(pytorch v0.1 这个是早期版本了)应该是深度学习框架里面比较好使用的了,相比于tensorflow,mxnet。可能在用户上稍微少一点,有的时候出问题不好找文章。下面就使用pytorch预训练模型做分类和特征提取,pytorch文档可以参考:pytorch docs , 模型是imagenet2012训练的标签可参考:imagenet2012 labels ,...原创 2017-06-01 12:12:01 · 29533 阅读 · 6 评论 -
大脑中的学习机制: 海马体与新皮层构成的互补学习系统
写这篇文章的原因是基本没有关于中文大脑互补学习系统(complementary learning systems)的文章。应该说有很多关于互补学习系统的英文论文,这里也是一个总结加一点自己的见解,具体见参考文献。海马体在学习和记忆中的角色 海马体系统是一个广泛存在于哺乳动物的脑区,在学习和记忆中扮演重要的特殊角色。要确切的定义海马系统的边界是困难的,这里也不去...原创 2017-06-02 12:38:26 · 5989 阅读 · 0 评论 -
什么是“理解”?如何在人工智能中定义“理解”?(what is understanding ?)
* 这篇文章主要不是解释哲学上的“理解”,而是在计算或者人工智能或是数学上定义“理解” 对于人而言,理解似乎是一件简单的事情。在我们上课的时候我们能确切的知道是否理解老师所讲的内容,在我们看书的时候我们能确切的知道书中的内容我们是否理解,在我们与人交谈的时候我们能确切的知道别人说了什么,我们也确切的知道别人所描述的我们是否理解。我们似乎天生就有这个能力所以有一个问题,...原创 2017-01-30 14:25:50 · 7328 阅读 · 0 评论