机器学习
文章平均质量分 79
wuguangbin1230
这个作者很懒,什么都没留下…
展开
-
深度学习模型——知识蒸馏
什么是知识蒸馏?近年来,神经模型在几乎所有领域都取得了成功,包括极端复杂的问题。然而,这些模型体积巨大,有数百万(甚至数十亿)个参数,因此不能部署在边缘设备上。知识蒸馏指的是模型压缩的思想,通过一步一步地使用一个较大的已经训练好的网络去教导一个较小的网络确切地去做什么。“软标签”指的是大网络在每一层卷积后输出的feature map。然后,通过尝试复制大网络在每一层的输出(不仅仅是最终的损失),小网络被训练以学习大网络的准确行为。我们为什么需要这样做?深度学习在计算机视觉、语音识别、自然转载 2021-07-11 16:53:48 · 1902 阅读 · 0 评论 -
PLASTER:一个与深度学习性能有关的框架(网络挑战)
前言机器学习 (ML) 是人工智能 (AI) 的一个重要类别。作为 ML 的一种类型,深度学习 (DL) 的相关软硬件技术取得了长足进步,对惊人的 AI 发展趋势的早期阶段起到了催化剂作用。不过,在这个采用阶段存在双重挑战:深度学习解决方案的部署是一个复杂的课题, 而且它在迅速变化。业界需要一个框架来应对与深度学习相关的机遇和挑战。在 2018 年的 NVIDIA GPU 技术大会 (GTC) 上,NVIDIA 创始人兼首席执行官黄仁勋提出了 PLASTER 框架,引导听众在相关背景下思考提供基于转载 2021-06-30 16:10:57 · 329 阅读 · 0 评论 -
transform 神经网络(1)
简单解释Transform是在神经网络之后又发展的一个比较流行的深度模型,今天就给大家解释一下这个模型的原理。首先先抛出一个问题?神经网络有哪些缺点,或者是LSTM有什么不足之处,以至于让我们又发展了Transform这个深度模型?在这里我自己总结出了几点:1、 难解释性,神经网络的一个通病,做出来的好坏都比较难解释,2、 梯度消失和梯度爆炸的问题。3、 LSTM只能串行计算,不能并行,因为它是一个时序类的模型。4、 对于翻译这类生成模型计算起来比较复杂,耗时比较长而且效果也不是很好。转载 2021-06-21 13:26:11 · 5376 阅读 · 1 评论 -
怎样提升深度学习的性能?
你是如何提升深度学习模型的效果? 这是我经常被问到的一个问题。有时候也会换一种问法:我该如何提高模型的准确率呢? ……或者反过来问:如果我的网络模型效果不好,我该怎么办?通常我的回答是“具体原因我不清楚,但我有一些想法可以试试”。然后我会列举一些我认为能够提升性能的方法。为了避免重复罗列这些内容,我打算在本文中把它们都写出来。 这些想法不仅可以用于深度学习,事实上可以用在任何机器学习的算法上。那么如何提升深度学习的性能?提升算法性能的想法这个列表并不完整,却是很好的出发点。我的目的是给大家抛出一些想转载 2021-04-09 00:06:36 · 439 阅读 · 0 评论 -
最大均值差异(Maximum Mean Discrepancy, MMD)损失函数代码解读(Pytroch版)
##代码及参考资料来源Source code: easezyc/deep-transfer-learning[Github]参考资料:迁移学习简明手册MMD介绍MMD(最大均值差异)是迁移学习,尤其是Domain adaptation (域适应)中使用最广泛(目前)的一种损失函数,主要用来度量两个不同但相关的分布的距离。两个分布的距离定义为:MMD(X,Y)=∣∣1n∑ni=1ϕ(xi)−1m∑mj=1ϕ(yj)∣∣2H(1)MMD(X,Y) = ||\frac{1}{n}\sum_{i=1.转载 2020-09-08 21:03:49 · 6763 阅读 · 3 评论 -
GAN用于半监督学习
概述GAN的发明者Ian Goodfellow2016年在Open AI任职期间发表了这篇论文,其中提到了GAN用于半监督学习(semi supervised)的方法。称为SSGAN。 作者给出了Theano+Lasagne实现。本文结合源码对这种方法的推导和实现进行讲解。1半监督学习考虑一个分类问题。 如果训练集中大部分样本没有标记类别,只有少部分样本有标记。则需要用半监督学习(semi-sup...转载 2018-06-18 11:53:20 · 1555 阅读 · 0 评论 -
Domain Adaptation(transfer learning)的重要网址与数据库
1.数据库网址:(1)https://github.com/jindongwang/transferlearning/blob/master/doc/dataset.md#office+caltech原创 2018-06-18 16:32:07 · 599 阅读 · 0 评论 -
tf.train.ExponentialMovingAverage
1. ExponentialMovingAverageSome training algorithms, such as GradientDescent and Momentum often benefit from maintaining a moving average of variables during optimization. Using the moving averages fo...转载 2018-06-28 22:38:41 · 978 阅读 · 0 评论 -
PCA的数学原理
转自:https://www.cnblogs.com/mikewolf2002/p/3429711.htmlPCA(Principal Component Analysis)是一种常用的数据分析方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。网上关于PCA的文章有很多,但是大多数只描述了PCA的分析过程,而没有讲述其中的原理...转载 2018-10-23 17:09:16 · 171 阅读 · 0 评论 -
A-Softmax的总结及与L-Softmax的对比——SphereFace
目录1. A-Softmax的推导2. A-Softmax Loss的性质3. A-Softmax的几何意义4. 源码解读A-Softmax的效果与L-Softmax的区别转自:https://www.cnblogs.com/heguanyou/p/7503025.htmlA-Softmax的总结及与L-Softmax的对比——SphereFace 【引言】SphereFace...转载 2018-11-07 10:05:36 · 601 阅读 · 0 评论 -
SAGAN——Self-Attention Generative Adversarial Networks
原论文下载地址:Self-Attention Generative Adversarial Networks该文章作者为:Han ZhangGitHub代码实现:pytorch实现摘要部分:本文提出了Self-Attention Generative Adversarial Networks,在注意力机制,远距离依赖(long-range dependency)下来实现了图片生成任...转载 2018-11-07 19:01:09 · 3061 阅读 · 0 评论 -
手把手教你用GAN实现半监督学习(1)
引言本文主要介绍如何在tensorflow上仅使用200个带标签的mnist图像,实现在一万张测试图片上99%的测试精度,原理在于使用GAN做半监督学习。前文主要介绍一些原理部分,后文详细介绍代码及其实现原理。前文介绍比较简单,有基础的同学请掠过直接看第二部分,文章末尾给出了代码GitHub链接。对GAN不了解的同学可以查看微信公众号:机器学习算法全栈工程师 的GAN入门文章。本博客中的代码最终以...转载 2018-06-18 11:45:27 · 1415 阅读 · 1 评论 -
香农熵、相对熵(KL散度)与交叉熵
1. 香农熵(Shannon entropy)信息熵(又叫香农熵)反映了一个系统的无序化(有序化)程度,一个系统越有序,信息熵就越低,反之就越高。如果一个随机变量 XX 的可能取值为 X={x1,x2,…,xn}X={x1,x2,…,xn},对应的概率为 p(X=xi)p(X=xi),则随机变量 XX 的信息熵为:H(X)=−∑i=1np(xi)logp(xi)H(X)=−∑i=1np(xi)lo...转载 2018-06-18 00:29:45 · 2131 阅读 · 0 评论 -
支持向量机通俗导论(理解SVM的三层境界)
作者:July、pluskid ;致谢:白石、JerryLead出处:结构之法算法之道blog。前言 动笔写这个支持向量机(support vector machine)是费了不少劲和困难的,原因很简单,一者这个东西本身就并不好懂,要深入学习和研究下去需花费不少时间和精力,二者这个东西也不好讲清楚,尽管网上已经有朋友写得不错了(见文末参考链接),但在描述数学公转载 2017-04-18 19:53:08 · 524 阅读 · 0 评论 -
多任务学习(Multi-task learning)-1
多任务学习(Multi-task learning)是和单任务学习(single-task learning)相对的一种机器学习方法。在机器学习领域,标准的算法理论是一次学习一个任务,也就是系统的输出为实数的情况。复杂的学习问题先被分解成理论上独立的子问题,然后分别对每个子问题进行学习,最后通过对子问题学习结果的组合建立复杂问题的数学模型。多任务学习是一种联合学习,多个任务并行学习,结果相互影响。转载 2017-10-13 11:21:59 · 1669 阅读 · 0 评论 -
深度神经网络的多任务学习概览(An Overview of Multi-task Learning in Deep Neural Networks) --多任务学习-2
1. 前言在机器学习中,我们通常关心优化某一特定指标,不管这个指标是一个标准值,还是企业KPI。为了达到这个目标,我们训练单一模型或多个模型集合来完成指定得任务。然后,我们通过精细调参,来改进模型直至性能不再提升。尽管这样做可以针对一个任务得到一个可接受得性能,但是我们可能忽略了一些信息,这些信息有助于在我们关心的指标上做得更好。具体来说,这些信息就是相关任务的监督数据。通过在相关任务间共享表转载 2017-10-13 11:23:22 · 7770 阅读 · 3 评论 -
向量 与Python
前言在 上文 中我简单概括了矩阵的基本运算,并给出了两个应用实例。这篇文章我们继续谈谈向量。向量是线性代数中的基本概念,也是机器学习的基础数据表示形式。例如计算机阅读文本的过程首先就会将文本分词,然后用向量表示。这是因为向量很适合在高维空间中表达和处理。在机器学习中会接触到的诸如投影、降维的概念,都是在向量的基础上做的。在 Rn空间中定义的向量V⃗ ,可以用一个包含转载 2017-12-14 10:12:10 · 5771 阅读 · 0 评论 -
高斯滤波器及其实现
高斯滤波器是空间滤波器的一种,学习高斯滤波器,需要空间滤波的知识作为先验知识(各种数字图像处理的书中都有介绍,冈萨雷斯的经典教材说的还是比较清楚的,建议看英文版,个人感觉比翻译过来的更容易理解)。 高斯滤波器是一种平滑线性滤波器,使用高斯滤波器对图像进行滤波,其效果是降低图像灰度的“尖锐”变化,也就是使图像“模糊”了。高斯滤波对于抑制服从正态分布的噪声效果非常好,其代价是转载 2018-01-11 16:08:43 · 5511 阅读 · 0 评论 -
huber_loss
1. tf.losses.huber_loss( labels, predictions, weights=1.0, delta=1.0, scope=None, loss_collection=tf.GraphKeys.LOSSES, reduction=Reduction.SUM_BY_NONZERO_WEIGHTS)2. 3.imp...原创 2018-04-02 11:45:57 · 2730 阅读 · 0 评论 -
机器学习之正则化(Regularization)
https://www.cnblogs.com/nowornever-L/p/6862320.html1. The Problem of Overfitting1还是来看预测房价的这个例子,我们先对该数据做线性回归,也就是左边第一张图。如果这么做,我们可以获得拟合数据的这样一条直线,但是,实际上这并不是一个很好的模型。我们看看这些数据,很明显,随着房子面积增大,住房价格的变化趋于稳定或者说越往右越...转载 2018-04-18 09:40:43 · 313 阅读 · 0 评论 -
简单理解与实验生成对抗网络GAN(含一个重要网址)(1)
之前GAN网络是近两年深度学习领域的新秀,火的不行,本文旨在浅显理解传统GAN,分享学习心得。现有GAN网络大多数代码实现使用python、torch等语言,这里,后面用matlab搭建一个简单的GAN网络,便于理解GAN原理。GAN的鼻祖之作是2014年NIPS一篇文章:Generative Adversarial Net,可以细细品味。分享一个目前各类GAN的一个论文整理集合再分享一个目前各类...转载 2018-06-17 16:51:23 · 650 阅读 · 0 评论 -
简单理解与实验生成对抗网络GAN(2)
引入Discriminative Model的繁荣发展最近,深度学习在很多领域的突破性进展想必不用我多说了。但大家似乎发现了这样的一个现实,即深度学习取得突破性进展的地方貌似都是discriminative的模型。所谓的discriminative可以简单的认为是分类问题,比如给一张图片,判断这张图片上有什么动物;再比如给定一段语音,判断这段语音所对应的文字。在discriminative的模型上...转载 2018-06-17 17:54:50 · 433 阅读 · 0 评论 -
生成对抗网络综述:从架构到训练技巧
机器之心编译参与:路雪、刘晓坤、 蒋思源近日,帝国理工学院、蒙特利尔大学等研究机构共同发表论文并梳理了生成对抗网络,该论文从最基本的 GAN 架构及其变体到训练过程和训练技巧全面概述了生成对抗网络的概念、问题和解决方案。机器之心简要介绍了该论文。原 GAN(Goodfellow et al., 2014)的完整理论推导与 TensorFlow 实现请查看机器之心的 GitHub 项目与文章: GA...转载 2018-06-17 17:56:46 · 1266 阅读 · 0 评论 -
蒙特卡罗(Monte Carlo)方法简介
蒙特卡罗(Monte Carlo)方法,也称为计算机随机模拟方法,是一种基于"随机数"的计算方法。一 起源 这一方法源于美国在第二次世界大战进研制原子弹的"曼哈顿计划"。Monte Carlo方法创始人主要是这四位:Stanislaw Marcin Ulam, Enrico Fermi, John von Neumann(学计算机的肯定都认识这个牛人吧)和 Nicholas ...转载 2018-06-17 21:43:53 · 69696 阅读 · 4 评论 -
转导推理——Transductive Learning
在统计学习中,转导推理(Transductive Inference)是一种通过观察特定的训练样本,进而预测特定的测试样本的方法。另一方面,归纳推理(Induction Inference)先从训练样本中学习得到通过的规则,再利用规则判断测试样本。然而有些转导推理的预测无法由归纳推理获得,这是因为转导推理在不同的测试集上会产生相互不一致的预测,这也是最令转导推理的学者感兴趣的地方。 归纳转载 2017-04-18 19:45:03 · 3699 阅读 · 0 评论