反向传播

炼丹的不二法门

天涯浪子 提交于 2021-01-26 07:54:19
1.数据增广 简单,行之有效地增加训练数据量,提高模型的泛化能力。 水平翻转(horizontally flipping) 位移 裁剪 颜色抖动(color jittering) 组合操作   例如同时做旋转和随机尺度变换,此外还可以把每个patch中所有像素在HSV颜色空间中的饱和度和明度提升0.25-4次幂方,乘以0.7-1.4之间的一个因子,再加一个-0.1-0.1之间的值。同样你可以在色调通道(H)对每张图片或patch  的所有像素增加一个-0.1~0.1之间的值。 2.预处理 零均值化和标准化   零均值化: X - = numpy.mean( X, axis = 0 )   数据有 过大的均值可能导致参数的梯度过大 ,如果有后续的处理,可能要求数据零均值,比如主成分分析 PCA。零均值化并没有消除像素之间的相对差异,人们对图像信息的摄取通常来自于像素之间的相对色差,而不是像素值的高  低。归一化是为了 让不同维度的数据具有相同的分布 。假如二维数据(X1,X2)两个维度都服从均值为零的正态分布,但是X1方差为100,X2方差为1。那么对(X1,X2)进行随机采样在二维坐标系中绘制的图像,应该是狭长的椭圆  形。 归一化后 加快了梯度下降求最优解的速度并有可能提高精度 。考虑数据特征提取的表达式:   S = w1*x1 + w2*x2 + b   梯度计算:   dS

人工智能,机器学习,深度学习的区别

蹲街弑〆低调 提交于 2021-01-23 13:29:05
先来看看自维基百科的定义 什么是人工智能? 人工智能 (Artificial Intelligence, AI)亦称机器智能,是指由人制造出来的机器所表现出来的智能。通常人工智能是指通过普通电脑程式的手段实现的类人智能技术。该词同时也指研究这样的智能系统是否能够实现,以及如何实现的科学领域。 一般教材中的定义领域是“智能主体(intelligent agent)的研究与设计”,智能主体是指一个可以观察周遭环境并作出行动以达致目标的系统。 约翰·麦卡锡 于1955年的定义是“制造智能机器的科学与工程。” 人工智能的研究是高度技术性和专业的,各分支领域都是深入且各不相通的,因而涉及范围极广。人工智能的研究可以分为几个技术问题。其分支领域主要集中在解决具体问题,其中之一是,如何使用各种不同的工具完成特定的应用程序。 AI的核心问题包括建构能够跟人类似甚至超越的推理、知识、规划、学习、交流、感知、移动和操作物体的能力等。 强人工智能 目前仍然是该领域的长远目标。目前强人工智能已经有初步成果,甚至在一些影像辨识、语言分析、棋类游戏等等单方面的能力达到了超越人类的水平,而且人工智能的通用性代表着,能解决上述的问题的是一样的AI程式,无须重新开发算法就可以直接使用现有的AI完成任务,与人类的处理能力相同,但达到具备思考能力的统合强人工智能还需要时间研究,比较流行的方法包括统计方法

ICLR 2021 | 美团、上交大等:鲁棒的可微分神经网络搜索DARTS-

旧街凉风 提交于 2021-01-17 14:56:53
©PaperWeekly 原创 · 作者|陆顺 学校|中科院计算所硕士 研究方向|神经网络架构搜索 注:该工作由作者在美团实习期间由初祥祥(美团 Mentor,前小米 AutoML 负责人)指导参与。 论文标题: DARTS-: Robustly Stepping out of Performance Collapse Without Indicators 论文作者: 初祥祥、王晓星、张勃、陆顺、魏晓林、严骏驰 论文链接: https://openreview.net/forum?id=KLH36ELmwIB 彩蛋: 团队正在招聘实习生,详情见 : 美团视觉智能中心实习生招聘 简介 可微分方法(DARTS)是神经网络架构搜索(NAS)中最流行的方法。现有不少方法都致力于解决性能崩塌的问题,从而提升其稳定性。RobustDARTS [1] 提出了用超网的特征根作为判别是否进入崩塌的标志,而我们在本篇工作发现了反例,即在特征根不断增大的情形下,搜索出的模型性能仍在提升。我们受 FairDARTS [2] 中跳跃连接存在不公平竞争优势的启发,使用了一个额外的跳跃链接(auxiliary skip),简单有效地提升了 DARTS 的鲁棒性,且不使用额外的超参数和指示标志。 研究动机 可微分神经网络搜索(DARTS)存在普遍的性能崩塌,现有提升方法使用了先验知识或用指示信号来判别崩塌是否发生

【转】知乎 知识蒸馏 survey -- 知识蒸馏 | 模型压缩利器_良心总结 (附 Awesome-Knowledge-Distillation)

允我心安 提交于 2021-01-14 09:58:27
知识蒸馏 | 模型压缩利器_良心总结 https://zhuanlan.zhihu.com/p/138210881 深度学习“炼丹师”,计算机视觉算法工程师 公众号:CV炼丹猿 附:【 Awesome-Knowledge-Distillation 】 1.什么是知识蒸馏 最近利用知识蒸馏的方法,对业务中的性能有了可观的提升,因此在这里总结一波。本文主要从宏观的角度分析一下各个蒸馏算法的蒸馏方式,具体细节可以根据兴趣阅读论文~ 知识蒸馏是一种模型压缩常见方法,用于模型压缩指的是在teacher-student框架中,将复杂、学习能力强的网络学到的特征表示“知识蒸馏”出来,传递给参数量小、学习能力弱的网络。从而我们会得到一个速度快,能力强的网络,因此这是一个概念上的模型压缩方案。从另一个角度来说,蒸馏可以使得student学习到teacher中更加软化的知识,这里面包含了类别间的信息,这是传统one-hot label中所没有的。由于蒸馏中软化标签的本质,因此蒸馏也可以被认为是一种正则化的策略。总结来说,知识蒸馏除了能够学习到大模型的特征表征能力,也能学习到one-hot label中不存在的类别间信息。现有的知识蒸馏方法主要侧重于两点: 从teacher的什么位置学习 和 用什么方式学习 。以下的总结图概述了本文要介绍的蒸馏方法。 目录结构: 深度学习(异步图书出品) 京东 ¥

卷积神经网络

我们两清 提交于 2021-01-12 09:07:18
第一周    1,1 计算机视觉问题:   图片识别;目标检测:只需要检测出图片上物体的位置,做成一个盒子(不用辨别是什么物体);图片风格转移   在图片处理中,如果1000X1000的图片,进入全连接的神经网络中,x数据量太大达到3000000,太容易过拟合;所以就有了卷积神经网络    1.2 边缘检测    笔记:在前面说神经网络的前几层提取一些特征,检测出边缘,是因为输入的是一些向量,加权和之后就得到一些边缘特征;再往后把这些边缘再加权求和会得到一些人脸的部位;灰度图:用灰度表示的图,没有rgb,只有一个值表示灰度大小。   图片——过滤器(核)——另一张图片(tf.nn.conv2d;keras.conv2D)   垂直边缘检测原理:检测滤波器是左边是1右边是-1中间是0;这样如果原本的图片出现垂直边缘即图片有一部分的左边灰度值小右边灰度值大,这样再和滤波器作用之后就得到了一个比较大的值。(滤波器的作用就是滤除跟它不一样的,留下和它一样的部分这一部分值很大)         1.3 更多的边缘检测    边缘检测有很多种类:由暗到亮;由亮到暗可以都用上面的滤波器然后取绝对值。   边缘滤波器:sobel 可以用做垂直滤波器,中间的权重比较大,使得处于图像中央的权重比较大;scharr filter ;还可以任意设置9个数字当做参数,检测任意角度的边缘,在神经网络中慢慢学习

卷积神经网络

风格不统一 提交于 2021-01-12 08:42:37
目录    对比:卷积神经网络、全连接神经网络    卷积层    直观理解卷积    卷积计算流程    卷积参数共享原则    池化层    卷积神经网络的组成    前向传播与反向传播    卷积网络架构实例 对比:卷积神经网络、全连接神经网络   左图:全连接神经网络(平面),组成:输入层、激活函数、全连接层   右图:卷积神经网络(立体),组成:输入层、卷积层、激活函数、池化层、全连接层   在卷积神经网络中有一个重要的概念:深度 返回目录 卷积层   卷积:在原始的输入上进行特征的提取。特征提取简言之就是,在原始输入上一个小区域一个小区域进行特征的提取,稍后细致讲解卷积的计算过程。   上图中,左方块是输入层,尺寸为32*32的3通道图像。右边的小方块是filter,尺寸为5*5,深度为3。将输入层划分为多个区域,用filter这个固定尺寸的助手,在输入层做运算,最终得到一个深度为1的特征图。   上图中,展示出一般使用多个filter分别进行卷积,最终得到多个特征图。   上图使用了6个filter分别卷积进行特征提取,最终得到6个特征图。将这6层叠在一起就得到了卷积层输出的结果。   卷积不仅限于对原始输入的卷积。蓝色方块是在原始输入上进行卷积操作,使用了6个filter得到了6个提取特征图。绿色方块还能对蓝色方块进行卷积操作

图解Reformer:一种高效的Transformer

拟墨画扇 提交于 2021-01-06 05:26:34
点击上方“AI公园”,关注公众号,选择加“星标“或“置顶” 作者: Alireza Dirafzoon 编译:ronghuaiyang 导读 在单GPU上就可以运行的Transformer模型,而且几乎不损失精度,了解一下? 如果你一直在开发机器学习算法用于处理连续数据 —— 例如语言处理中的文本,语音信号,或视频 —— 你可能听说过或使用过Transformer,你可能知道这和是推特中认为的不同于一个东西。 图1,打破僵局,摘自Chris Manning教授的推特 最近,谷歌推出了Reformer架构,Transformer模型旨在有效地处理处理很长的时间序列的数据(例如,在语言处理多达100万个单词)。Reformer的执行只需要更少的内存消耗,并且即使在单个GPU上运行也可以获得非常好的性能。论文 Reformer: The efficient Transformer 将在ICLR 2020上发表(并在评审中获得了近乎完美的分数)。Reformer模型有望通过超越语言应用(如音乐、语音、图像和视频生成)对该领域产生重大影响。 在这篇文章中,我们将努力深入Reformer模型并试着去理解一些可视化方面的指南。准备好了吗? 为什么是Transformer? 在NLP类的任务中,如机器翻译、文本生成、问答,可以被形式化为sequence-to-sequence的学习问题。长短期记忆

在神经网络中weight decay

旧城冷巷雨未停 提交于 2021-01-03 14:16:32
weight decay(权值衰减)的最终目的是防止过拟合。在损失函数中,weight decay是放在正则项(regularization)前面的一个系数,正则项一般指示模型的复杂度,所以weight decay的作用是调节模型复杂度对损失函数的影响,若weight decay很大,则复杂的模型损失函数的值也就大。 momentum是梯度下降法中一种常用的加速技术。对于一般的SGD,其表达式为 , 沿负梯度方向下降。而带momentum项的SGD则写生如下形式: 其中 即momentum系数,通俗的理解上面式子就是,如果上一次的momentum(即 )与这一次的负梯度方向是相同的,那这次下降的幅度就会加大,所以这样做能够达到加速收敛的过程。 三、normalization。如果我没有理解错的话,题主的意思应该是batch normalization吧。batch normalization的是指在神经网络中激活函数的前面,将 按照特征进行normalization,这样做的好处有三点: 1、提高梯度在网络中的流动。Normalization能够使特征全部缩放到[0,1],这样在反向传播时候的梯度都是在1左右,避免了梯度消失现象。 2、提升学习速率。归一化后的数据能够快速的达到收敛。 3、减少模型训练对初始化的依赖。 作者:陈永志 链接:https://www.zhihu.com

王者荣耀AI绝悟如何选英雄?腾讯AI Lab新研究揭秘

若如初见. 提交于 2021-01-02 03:55:28
视学算法报道 编辑:Panda 抢射手?抢中单位?「绝悟」在打王者荣耀时是如何选英雄的? 腾讯 AI Lab 开发的 AI 智能体「绝悟」已让王者峡谷不再只是人类召唤师的竞技场,而且这个 AI 战队在上月底 进化成了「完全体」 。在一局完整的比赛中,英雄选择阶段是至关重要的(比如五射手或五法师阵容会有官方劝退)。 近日,腾讯 AI Lab 和上海交通大学发布的一篇论文介绍了绝悟的英雄选择策略:JueWuDraft。别的不敢说,有一点可以肯定:人工智能不会乱抢英雄。 玩 MOBA 游戏,选英雄很关键,因为这决定了双方队伍的阵容,会直接影响战绩、胜负等最终结果。之前最佳的选英雄方法通常没有考虑以下因素:1)英雄池扩大时选英雄的效率,2)MOBA 游戏 5v5 的多轮竞赛机制,即两支队伍比赛 N 局,获胜次数更多的队伍获胜(best-of-N),而在这一系列比赛中,每个英雄只能被选择一次。 腾讯 AI Lab 和上海交通大学合作的这篇论文将阵容选择过程描述成了一个多轮组合博弈过程,并提出了一种全新的阵容选择算法 JueWuDraft ,该算法基于神经网络和蒙特卡洛树搜索。具体来说,作者设计了一种长期的价值估计机制,可以更好地应对 best-of-N 比赛的选英雄情况。研究者在大热 MOBA 手游《王者荣耀》中检验了该方法,结果表明:相较于其它当前前沿的方法,JueWuDraft