ML
文章平均质量分 83
默一鸣
韬光养晦
展开
-
轻量级网络汇总:Inception,Xception,SqueezeNet,MobileNet v123Next,ShuffleNet v12,SENet,MNASNet,GhostNet,FBNet
轻量级网络汇总:Inception,Xception,SqueezeNet,MobileNet v123Next,ShuffleNet v12,SENet,MNASNet,GhostNet,FBNetInception提出卷积的时候,通道卷积和空间卷积是没关系的,最好分开搞,不要一起搞(没有理论证明,只是实验发现)网络结构就是1x1, 1x1->3x3, avgPool->3x3, 1x1->3x3->3x3,这4路分开过然后concatXception, go.原创 2020-11-10 21:43:05 · 1451 阅读 · 1 评论 -
机器学习中的各种损失函数
1. 损失函数损失函数(Loss function)是用来估量你模型的预测值f(x)f(x)与真实值YY的不一致程度,它是一个非负实值函数,通常用L(Y,f(x))L(Y,f(x))来表示。损失函数越小,模型的鲁棒性就越好。损失函数是经验风险函数的核心部分,也是结构风险函数的重要组成部分。模型的风险结构包括了风险项和正则项,通常如下所示:θ∗=argminθ1N∑i=1NL(...原创 2020-08-04 17:16:00 · 2087 阅读 · 0 评论 -
课程学习与自步学习Curriculum learning and self-paced learning:极简入门
Curriculum Learning在谈论self-paced learning之前,我们需要先了解一下课程学习(curriculum learning)。Bengio [1] 提出了课程学习的概念,其直觉来自于人类从易到难的学习过程:将数据看作模型所学习的内容的话,我们自然需要一个合理的课程(curriculum)来指导模型学习这些内容的方式。在课程学习中,数据被按照从易到难的顺序逐渐加入模型的训练集,在这个过程中训练集的熵也在不断提高(包含更多的信息)。A model is learned b转载 2020-08-04 17:08:29 · 2392 阅读 · 1 评论 -
h5py pytorch dataset 报错:KeyError: 'Unable to open object (wrong B-tree signature)'
dataloader多线程加载数据时,读h5文件的code不能写在dataset class的init方法中,不然会导致多线程读这个文件可以写在getitem中,判断下,只第一次读这个文件,之后有了就不用读了原创 2020-05-09 18:16:08 · 3994 阅读 · 2 评论 -
通俗易懂的NCE Loss
NCE loss : Noise Contrastive Estimation他的直观想法:把多分类问题转化成二分类。之前计算softmax的时候class数量太大,NCE索性就把分类缩减为二分类问题。之前的问题是计算某个类的归一化概率是多少,二分类的问题是input和label正确匹配的概率是多少。问题:通常训练例如word2vec的时候,我们最后用full softmax预...原创 2020-05-04 18:09:12 · 26312 阅读 · 0 评论 -
在电力智能测量数据应用中的分层时间序列预测正则化(Regularization in Hierarchical Time Series Forecasting with Application to)
论文链接 原文链接 Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence (AAAI-17) 文中所有的公式都没有弄过来,太麻烦了,都用()代替了,需要对照原文看。Regularization in Hierarchical Time Series Forecasting with Appli翻译 2020-05-25 12:08:37 · 800 阅读 · 0 评论 -
关于Elastic Net、Lasso Regression、Ridge Regression的3个解释引用
关于这个问题,从不同的切入点,出发点,都有比较不同的深入的解释,但是这些都是等价的。找了4个比较好的解释一、作者:杨军链接:https://www.zhihu.com/question/38121173/answer/85813729来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。线性回归问题是很经典的机器学习问题了。适用的方法也蛮多,有标准的Ordinary Lea...原创 2018-02-27 17:15:21 · 8045 阅读 · 0 评论 -
深度学习最优化方法概述
前言 (标题不能再中二了)本文仅对一些常见的优化方法进行直观介绍和简单的比较,各种优化方法的详细内容及公式只好去认真啃论文了,在此我就不赘述了。SGD 此处的SGD指mini-batch gradient descent,关于batch gradient descent, stochastic gradient descent, 以及 mini-batch gradient descent的具体...转载 2018-03-15 18:43:54 · 1313 阅读 · 0 评论 -
windows下用anaconda安装的pytorch only cpu版本训练时只用了一个cup核
torch.set_num_threads(35)用这句话可以设置线程数量,用设备管理器看自己电脑有多少个线程然后设置比总数稍微少一点就可以了。训练速度比之前快很多,没有gpu就只能这样了。...原创 2018-03-13 21:43:19 · 1790 阅读 · 0 评论 -
Ubuntu 16.04借助Conda安装Pytorch的GPU版本详细非常详细
1. 查看显卡版本。lspci | grep -i nvidia 查看你的电脑上的显卡,是否是nvidia及版本2.安装显卡驱动。这个也可以不用,在第三步的时候选择自动安装。在 http://www.nvidia.com/Download/index.aspx 官网上找到你对应的显卡的驱动版本号,然后用apt-get install nvidia-xxx来安装驱动。3.安装Cuda8。为了避免后面...原创 2018-03-20 22:31:32 · 23918 阅读 · 4 评论 -
Windows下用Anaconda安装Pytorch/torchvision
1. 安装Anaconda最新版2. 依赖的环境Anaconda3 x64 (with Python 3.5/3.6)Windows 64位系统(Windows 7 或 Windows Server 2008 及以上)CUDA 8 / CUDA 9cuDNN v5以上如果安装了CUDA编译的包,请确保你的电脑有Nvidia的显卡。注:这里没有介绍GPU版本的安装方法,如需要的请搜索原创 2018-01-22 11:39:23 · 32343 阅读 · 0 评论 -
python处理大训练集过程中遇到的Memory Error问题解决
python处理大数据集时容易出现内存错误也就是内存不够用。1. python原始的数据类型占用空间比较大,且没有太多的选择,默认一般好像是24字节,但是实际有时候不需要这么大或这么高精度,这时候可以使用numpy中的float32, float16等,总之根据自己的需要选够用就行,这就是好几倍的内存节省。2. python的垃圾回收机制比较懒惰,有时候在一个for循环中的变量用完不会回收,下次重...原创 2018-03-27 19:23:29 · 45283 阅读 · 6 评论 -
学术会议的相关信息
查找相关学术会议举办时间地点:http://www.aconf.org不同学术领域大牛通过Google scholar的citation引用量排行版判断会议影响力排名:conferenceranks.com/另外有我的3个转载:52个人工智能重要会议:http://blog.csdn.net/yimingsilence/article/details/7925912原创 2018-02-05 13:56:24 · 534 阅读 · 0 评论 -
AI顶级会议以及期刊
Upcoming Top ConferencesNIPS 2009UAI 2009ICML 2009COLT 2009AISTATS 2009CVPR 2009ICCV 2009ECCV 2010IJCAI 2011AAAI 2010SIGIR 2010转载 2018-02-05 13:50:01 · 1593 阅读 · 0 评论 -
CS的顶级会议和期刊
下面列一些CS的顶级会议和期刊 有些是网上查到的,有些是某些人用SCI的IF排序做出来的:Computer Vision Conf.: Best: ICCV, Inter. Conf. on Computer Vision CVPR, Inter. Conf. on Computer Vision and Pattern Recognition转载 2018-02-05 13:49:25 · 14303 阅读 · 0 评论 -
盘点52个全球人工智能和机器学习重要会议
机器学习和人工智能是今天最热门的科技研究方向。随着行业的不断升温,越来越多的 AI 主题会议也层出不穷,在这些会议中,我们可以讨论近期技术的发展趋势,并与其他数据科学家、开发者与工业界人士交流意见。不管你是想时刻紧跟潮流,还是仅仅希望稍微了解一下人工智能,全世界每时每刻总有一个大会在等着你(比如后天即将开幕的 NIPS 2017)。本文将向你简要介绍 50 余场著名全球人工智能大会。转载 2018-02-05 13:37:04 · 1019 阅读 · 0 评论 -
Anaconda打开Navigator报错-Navigator Error An unexpected error occurred on Navigator start-up
问题如图:Windows下:1)使用管理员运行:conda prompt2)执行命令 conda update anaconda-navigator3)还是不行就试试命令:anaconda-navigator --reset来源:Navigator Error · Issue #1984 · ContinuumIO/anaconda-issues原创 2018-01-20 12:54:36 · 13090 阅读 · 4 评论 -
SE Net - Squeeze-and-Excitation Networks
论文:Squeeze-and-Excitation Networks 论文链接:https://arxiv.org/abs/1709.01507 代码地址:https://github.com/hujie-frank/SENet PyTorch代码地址:https://github.com/miraclewkf/SENet-PyTorchSequeeze-and-Excitat原创 2018-02-01 21:42:13 · 9355 阅读 · 0 评论 -
关于Dropout
Dropout 是一种非常非常通用的解决深层神经网络中 overfitting 问题的方法, 过程极其简单, 在调试算法中效果也非常有效, 几乎是我设计网络过程中必用的技巧.概述深层神经网络的参数非常非常多, 一般情况下设计的神经网络非常容易 overfitting, 在 CNN 中, Pooling 层具有一定的防止 overfitting 的作用, 但是, CNN 的结构一原创 2018-02-01 14:58:28 · 636 阅读 · 0 评论 -
关于 global average pooling
Golbal Average Pooling 第一次出现在论文Network in Network中,后来又很多工作延续使用了GAP,实验证明:Global Average Pooling确实可以提高CNN效果。Fully Connected layer很长一段时间以来,全连接网络一直是CNN分类网络的标配结构。一般在全连接后会有激活函数来做分类,假设这个激活函数是一个原创 2018-02-01 14:20:11 · 12174 阅读 · 5 评论 -
什么是批标准化 (Batch Normalization)
什么是批标准化 (Batch Normalization)普通数据标准化Batch Normalization, 批标准化, 和普通的数据标准化类似, 是将分散的数据统一的一种做法, 也是优化神经网络的一种方法. 在之前 Normalization 的简介视频中我们一提到, 具有统一规格的数据, 能让机器学习更容易学习到数据之中的规律.每层都做标准化原创 2018-02-01 13:32:01 · 3814 阅读 · 1 评论 -
机器学习中过拟合原因和防止过拟合的方法
过拟合原因:由于训练数据包含抽样误差,训练时,复杂的模型将抽样误差也考虑在内,将抽样误差也进行了很好的拟合,如1、比如数据不够,2、训练太多拟合了数据中的噪声或没有代表性的特征也就是模型太复杂 所以防止过拟合的方法:1.获取更多的数据 1).从数据源获得更多的真实数据 2).数据增强 3).根据当前数据集生成数据2.使用合适的模型 ...原创 2018-04-03 14:16:31 · 2528 阅读 · 0 评论 -
Batch Normalization的概述和应用包括在CNN和RNN中的应用
Batch Normalization 学习笔记原文地址:http://blog.csdn.net/hjimce/article/details/50866313作者:hjimce一、背景意义本篇博文主要讲解2015年深度学习领域,非常值得学习的一篇文献:《Batch Normalization: Accelerating Deep Network Training by Reducing In...原创 2018-05-09 23:28:17 · 3240 阅读 · 0 评论 -
BN在CNN和RNN中的应用
Batch Normalization的基本思路和价值在之前一篇文章“Batch Normalization导读”介绍了,此处不赘述,背景知识请参考上面文章。看到BN后,很明显能够看到这等于往传统的神经网络中增加了一个BN层,而且位置处于神经元非线性变换前,基本大多数网络结构都能很自然地融合进去,于是很自然的想法就是:如果用在CNN或者RNN效果会如何?是否也会增加收敛速度以及模型分类性能?CNN...原创 2020-08-04 17:18:53 · 1768 阅读 · 0 评论 -
anaconda conda环境管理命令
conda测试指南在开始这个conda测试之前,你应该已经下载并安装好了Anaconda或者Miniconda注意:在安装之后,你应该关闭并重新打开windows命令行。一、Conda测试过程:使用conda。首先我们将要确认你已经安装好了conda 配置环境。下一步我们将通过创建几个环境来展示conda的环境管理功能。使你更加轻松的了解关于环境的一切。我们将学习如何确认你在哪个环境...原创 2018-02-27 14:45:25 · 87150 阅读 · 7 评论 -
深度学习各种优化算法(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)
標準梯度下降法:彙總所有樣本的總誤差,然後根據總誤差更新權值SGD隨機梯度下降:mini batch代替全部樣本曲面的某個方向更加陡峭的時候會被困住Xt+1=Xt-α Δf(x1)隨機抽取一個樣本誤差,然後更新權值 (每個樣本都更新一次權值,可能造成的誤差比較大)批量梯度下降法:相當於前兩種的折中方案,抽取一個批次的樣本計算總誤差,比如總樣本有10000個...原创 2019-04-18 21:04:29 · 2391 阅读 · 1 评论 -
最长增长子序列(串),最大公共子序列(串),
300. Longest Increasing Subsequence子序列,不需要连续的。思路一:传统的dp,dp[i]表示前i个数且以第i个数字结尾的最长增长子序列,遍历数组,dp[i] = max(dp[i], dp[j] + 1) if nums[i] > nums[j], j from 0 to i思路二:维护一个数组,vec[i]表示,当递增序列长度是i的时候最后一...原创 2018-09-22 00:01:08 · 448 阅读 · 0 评论 -
GBDT详细分析 未完
GBDT是boosting策略和决策树的结合,GBDT有很多简称,有GBT(Gradient Boosting Tree), GTB(Gradient Tree Boosting ), GBRT(Gradient Boosting Regression Tree), MART(Multiple Additive Regression Tree),其实都是指的同一种算法所谓的Gradient B...原创 2018-09-08 00:28:27 · 1254 阅读 · 1 评论 -
RF,GBDT,XGBOOST, LightGBM的对比和分析
1.概述RF、GBDT和都属于集成学习(Ensemble Learning),集成学习的目的是通过结合多个基学习器的预测结果来改善单个学习器的泛化能力和鲁棒性。 xgboost和lightgbm是gbdt的优秀工程实现及优化改进。2.集成学习方法bootstrap, boosting, bagging, stacking集成算法原理介绍详细的bootstrap3.各种实例解析...原创 2018-08-29 23:05:21 · 5315 阅读 · 0 评论 -
DNN中的trick
1:优化器。机器学习训练的目的在于更新参数,优化目标函数,常见优化器有SGD,Adagrad,Adadelta,Adam,Adamax,Nadam。其中SGD和Adam优化器是最为常用的两种优化器,SGD根据每个batch的数据计算一次局部的估计,最小化代价函数。学习速率决定了每次步进的大小,因此我们需要选择一个合适的学习速率进行调优。学习速率太大会导致不收敛,速率太小收敛速度慢。因此SGD通常训...原创 2018-08-29 19:00:35 · 1341 阅读 · 0 评论 -
期望风险,经验风险和结构化风险,以及交叉验证
损失函数0-1损失函数平方损失函数绝对损失函数对数损失函数损失函数的期望(风险函数或期望损失)学习的目标是选择期望风险最小的模型。由于联合分布 是未知的, 不能直接计算。实际上,如果知道联合分布 ,可以直接从联合分布直接求出条件概率分布 ,也就不需要学习了。正因为不知道联合概率分布,所以才需要学习。一方面根据期望风险最小学习模型要用到联合分布,另一方面联...原创 2018-08-29 18:49:57 · 1346 阅读 · 0 评论 -
L1和L2正则化原理及分析
正则化是指在优化目标函数或代价函数是,在目标函数后面加上一个正则项。正则项通常有L1正则项和L2正则项。1. L1正则 L1正则是基于L1范数和项,即参数的绝对值和参数的积项,即: C=C0+λn∑w|w|C=C0+λn∑w|w|其中C0代表原始的代价函数,n是样本的个数,λ就是正则项系数,权衡正则项与C0项的比重。后面那一项即为L1正则项。 在计算梯度时,w的梯度变为: ...原创 2018-08-25 01:13:28 · 10346 阅读 · 0 评论 -
bootstrap, boosting, bagging, stacking原理
Bootstraping: 名字来自成语“pull up by your own bootstraps”,意思是依靠你自己的资源,称为自助法,它是一种有放回的抽样方法,它是非参数统计中一种重要的估计统计量方差进而进行区间估计的统计方法。其核心思想和基本步骤如下: (1) 采用重抽样技术从原始样本中抽取一定数量(自己给定)的样本,此过程允许重复抽样。 (2) 根据抽出的样本计算给定的统...原创 2018-08-25 01:08:42 · 2054 阅读 · 0 评论 -
LSTM图示和公式
LSTM网络long short term memory,即我们所称呼的LSTM,是为了解决长期以来问题而专门设计出来的,所有的RNN都具有一种重复神经网络模块的链式形式。在标准RNN中,这个重复的结构模块只有一个非常简单的结构,例如一个tanh层。LSTM 同样是这样的结构,但是重复的模块拥有一个不同的结构。不同于单一神经网络层,这里是有四个,以一种非常特殊的方式进行交互。不...原创 2020-08-04 17:18:29 · 4671 阅读 · 2 评论 -
机器学习面试问题汇总(不断更新)
算法leetcode 最优解,多版本解及简单思路分析各种基本算法c++实现(排序算法,树的遍历,链表操作)判断链表是否有环及相关扩展(待写)判断图是否有环二叉树遍历(前序、中序、后序、层次、深度优先、广度优先遍历)Best Time to Buy and Sell Stock I / II / III / IV / with cooldown / with Trans...原创 2018-08-25 00:39:20 · 865 阅读 · 0 评论 -
windows下使用Jupyter notebook远程访问服务器的两种方法
两种方法本质一样,第一种没有配置密码,第二种配置了密码,第二种也可以用端口映射在本地直接输入localhost地址即可,第一种也可以不用映射直接写服务器地址。 一1.登陆服务器,安装jupyter notebook, 用conda的话直接conda install jupyter2.服务器上开一个没有浏览器指定端口号的notebook. jupyter notebook --no-...原创 2018-06-13 15:35:11 · 12925 阅读 · 6 评论 -
10分钟了解pandas-速查手册
《10 Minutes to pandas》的一个简单的翻译,原文在这里。习惯上,我们会按下面格式引入所需要的包:一、 创建对象可以通过 Data Structure Intro Setion 来查看有关该节内容的详细信息。1、可以通过传递一个list对象来创建一个Series,pandas会默认创建整型索引:2、通过传递一个numpy array,时间索引以及列标签来创建一...原创 2018-05-23 15:10:51 · 1824 阅读 · 0 评论 -
网络表示学习(NRL: network representation learning)和网络嵌入研究领域(NE: network embedding)必读论文清单
近日,Cunchao Tu 和 Yuan Yao 两位研究者在 GitHub 上总结发表了一份关于网络表示学习(NRL: network representation learning)和网络嵌入研究领域(NE: network embedding)必读论文清单。这份清单共包含 5 篇综述论文和 64 篇会议期刊论文。同时两位研究者在 GitHub 上发布了 NE / NERL 的开源工具包 Op...原创 2018-05-27 23:10:37 · 13397 阅读 · 1 评论 -
深度学习中的Normalization, BN LN WN等
收藏两篇相关文章一、详解深度学习中的Normalization,不只是BN转自 https://zhuanlan.zhihu.com/p/33173246深度神经网络模型训练之难众所周知,其中一个重要的现象就是 Internal Covariate Shift. Batch Norm 大法自 2015 年由Google 提出之后,就成为深度学习必备之神器。自 BN 之后, Layer Norm ...转载 2018-05-15 14:56:14 · 5659 阅读 · 0 评论 -
RNN梯度消失和爆炸及LSTM解决原理的知乎回答
https://zhuanlan.zhihu.com/p/28687529转载 2018-04-28 16:34:35 · 9610 阅读 · 0 评论