wise

LightGBM

笑着哭i 提交于 2020-07-29 11:24:55
LightGBM LightGBM原理及实现 LigthGBM是boosting集合模型中的新进成员,它和xgboost一样是对GBDT的高效实现,很多方面会比xgboost表现的更为优秀。原理上它和GBDT及xgboot类似,都采用损失函数的负梯度作为当前决策树的残差近似值,去拟合新的决策树。 LightGBM vs xGBoost xgBoost算法的优点: XGB利用了二阶梯度来对节点进行划分,相对其他GBM来说,精度更高。 利用局部近似算法对分裂节点的贪心算法优化,取适当的eps时,可以保持算法的性能且提高算法的运算速度。 在损失函数中加入了L1/L2项,控制模型的复杂度,提高模型的鲁棒性。 提供并行计算能力,主要是在树节点求不同的候选的分裂点的Gain Infomation(分裂后,损失函数的差值) Tree Shrinkage,column subsampling等不同的处理细节。 xgBoost算法的缺点: 需要pre-sorted,这个会耗掉很多的内存空间(2 * #data * # features) 数据分割点上,由于XGB对不同的数据特征使用pre-sorted算法而不同特征其排序顺序是不同的,所以分裂时需要对每个特征单独做依次分割,遍历次数为#data * #features来将数据分裂到左右子节点上。 尽管使用了局部近似计算,但是处理粒度还是太细了

Python:numpy库中的一些函数简介、使用方法之详细攻略

僤鯓⒐⒋嵵緔 提交于 2020-07-29 06:53:36
Python:numpy库中的一些函数简介、使用方法之详细攻略 目录 numpy库中的一些函数简介、使用方法 1、np.concatenate() 1.1、函数案例 1.2、函数用法 numpy库中的一些函数简介、使用方法 1、np.concatenate() 1.1、函数案例 import numpy as np a=np.array([1,2,3]) b=np.array([11,22,33]) c=np.array([44,55,66]) d=np.concatenate((a,b,c),axis=0) # 默认情况下,axis=0可以不写 print(d) #输出array([ 1, 2, 3, 11, 22, 33, 44, 55, 66]),对于一维数组拼接,axis的值不影响最后的结果 1.2、函数用法 concatenate Found at: numpy.core.multiarray concatenate((a1, a2, ...), axis=0, out=None) Join a sequence of arrays along an existing axis. Parameters ---------- a1, a2, ... : sequence of array_like. The arrays must have the same shape,

Curve-GCN:图卷积网络用于活动轮廓演变

﹥>﹥吖頭↗ 提交于 2020-07-29 02:28:55
CNN做分割需要处理数据量很大的grid数据,需要对所有点的label进行预测,而且传统CNN并不会结合点与点之间的联系。 使用图结构建模分割轮廓或分割曲面,然后采用GCN,仿照传统的deformable model的方法对曲线或曲面进行迭代演变实现分割 ,是一种可行的方案。如何将曲线、曲面和它的演变过程,建模到GCN框架中?本文提到的论文提供了一种实现思路。 本文直接相关的应用场景虽然不涉及医学图像分割,但是其思想,比如3D组织的分割和组织编辑,都可以借助该文章的思路。deformation model的方法在医学图像分割领域应用是非常广泛的,本文本质就是deformation model和GCN的结合。 论文:Fast Interactive e Object Annotation with Curve-GCN 网址: https://arxiv.org/pdf/1903.06874.pdf ​ arxiv.org github: https://github.com/fidler-lab/curve-gcn ​ github.com 摘要 本文提出的新框架,通过使用图卷积网络(GCN)同时预测边界上每个顶点的演变方向。 端到端训练框架和模型; 通过该方法,可实现:画一个多边形,快速完成物体的轮廓标注。 Curve-GCN比现有的方法性能都要好,包括PSP-DeepLab

[论文速览] CVPR 2020 那些有趣的图像超分辨算法(9篇)(1/2)

纵饮孤独 提交于 2020-07-28 08:21:40
[论文速览] CVPR 2020 那些有趣的图像超分辨算法(共9篇)(1/2) 关键词: Unpaired; Pseudo-Supervision; Gradient Guidance; Texture Transformer Network; Deep Unfolding Network; Meta-Transfer; Zero-Shot; Super-Resolution 本文以速览形式,带领大家大概了解一下 CVPR2020 那些有趣(重要)的 SR 文章,目的是快速了解 SR 的最新动向(解决什么问题,采用什么模型)。 共分为两期博客分别介绍。这是第一期,第二期的链接: [论文速览] CVPR 2020 那些重要的图像超分辨算法(共9篇)(2/2)【持续更新中】 目录 ———————— 第一期 ———————— [论文速览] CVPR 2020 那些有趣的图像超分辨算法(共9篇)(1/2) Unpaired Image Super-Resolution Using Pseudo-Supervision [pdf] [supp] [bibtex] Abstract Loss Functions Network Architecture Structure-Preserving Super Resolution With Gradient Guidance [pdf]

本地存储与Cookie

不羁的心 提交于 2020-07-27 22:12:20
问题: I want to reduce load times on my websites by moving all cookies into local storage since they seem to have the same functionality. 我想通过将所有cookie移到本地存储中来减少其加载时间,因为它们似乎具有相同的功能。 Are there any pros/cons (especially performance-wise) in using local storage to replace cookie functionality except for the obvious compatibility issues? 除了明显的兼容性问题以外,使用本地存储替换cookie功能是否有任何利弊(特别是性能方面的优势)? 解决方案: 参考一: https://stackoom.com/question/DVq8/本地存储与Cookie 参考二: https://oldbug.net/q/DVq8/Local-Storage-vs-Cookies 来源: oschina 链接: https://my.oschina.net/u/3797416/blog/4317003

【CV中的Attention机制】语义分割中的scSE模块

故事扮演 提交于 2020-05-08 10:22:12
前言: 本文介绍了一个用于语义分割领域的attention模块scSE。scSE模块与之前介绍的BAM模块很类似,不过在这里scSE模块只在语义分割中进行应用和测试,对语义分割准确率带来的提升比较大。 提出scSE模块论文的全称是:《 Concurrent Spatial and Channel ‘Squeeze & Excitation’ in Fully Convolutional Networks 》。这篇文章对SE模块进行了改进,提出了SE模块的三个变体cSE、sSE、scSE,并通过实验证明了了这样的模块可以增强有意义的特征,抑制无用特征。实验是基于两个医学上的数据集MALC Dataset和Visceral Dataset进行实验的。 语义分割模型大部分都是类似于U-Net这样的encoder-decoder的形式,先进行下采样,然后进行上采样到与原图一样的尺寸。其添加SE模块可以添加在每个卷积层之后,用于对feature map信息的提炼。具体方案如下图所示: 然后开始分别介绍由SE改进的三个模块,首先说明一下图例: cSE模块: 这个模块类似之前BAM模块里的Channel attention模块,通过观察这个图就很容易理解其实现方法,具体流程如下: 将feature map通过global average pooling方法从[C, H, W]变为[C, 1, 1

比快更快——微软LightGBM

♀尐吖头ヾ 提交于 2020-05-08 00:21:00
###LightGBM介绍 xgboost是一种优秀的boosting框架,但是在使用过程中,其训练耗时过长,内存占用比较大。微软在2016年推出了另外一种boosting框架——lightgbm,在不降低准确度的的前提下,速度提升了10倍左右,占用内存下降了3倍左右。详细的实验结果参见: LightGBM experiment .其令人印象深刻的特点有: 将连续的特征值转化为离散的直方图,利用直方图进行节点的分裂,牺牲了一定的准确度换取了训练速度和内存空间的优化。 相对于xgboost的level—wise的生长策略,lightgbm使用了leaf-wise树生长策略。由于level-wise在分裂时,部分增益小的树也得到了增长,虽然容易控制误差,但是分裂有时是不合理的,而lightgbm使用level-wise,只在增益大的树上分裂生长,甚至对Feature f如果分裂无收益,那么后续也将不会对f计算。体现在参数上,xgboost使用max_depth,而lightgbm使用num_leaves控制过拟合。 直接支持了类别输入模型,无需对类别型的特征进行one-hot编码,lightgbm在参数categorial_feature中来指定数据中的类别特征列即可。 ###LightGBM调参 几个重要的参数调节: num_leaves 这是控制过拟合的参数

MyDLNote

不问归期 提交于 2020-05-06 14:28:10
MyDLNote - Attention: [2020CVPR] ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks Qilong Wang1 , Banggu Wu1 , Pengfei Zhu1 , Peihua Li2 , Wangmeng Zuo3 , Qinghua Hu1,∗ 1 Tianjin Key Lab of Machine Learning, College of Intelligence and Computing, Tianjin University, China 2 Dalian University of Technology, China 3 Harbin Institute of Technology, China 【前言】本文的贡献是改变了对传统 SE 的认知,从中学到的收货是,对于一个网络,不要盲目顺从其中的细节,动手做些真实的实验,能得到新的结论和发现。 语言写作只能说正常。 Abstract Recently, channel attention mechanism has demonstrated to offer great potential in improving the performance of deep

CSAR——Channel-wise and Spatial Feature Modulation Network for Single Image Super-Resolution

余生长醉 提交于 2020-05-04 11:07:21
1. 摘要 CNN 中的特征包含着不同类型的信息,它们对图像重建的贡献也不一样。然而,现在的大多数 CNN 模型却缺少对不同信息的辨别能力,因此也就限制了模型的表示容量。 另一方面,随着网络的加深,来自前面层的长期信息很容易在后面的层被削弱甚至消失,这显然不利于图像的超分辨。 作者提出了一个通道和空间特征调制(CSFM)网络,其中一系列特征调制记忆(FMM)模块级联在一起来将低分辨率特征转化为高信息量的特征。而在每个 FMM 内部,则集成了许多通道和空间注意力残差块(CSAR)以及一个用来保留长期信息的门控融合节点(GF)。 2. 网络结构 2.1. CSAR(Channel-wise and Spatial Attention Residual ) 进来一个特征 Hi,先经过卷积-ReLU-卷积得到特征 U,卷积核都为 3×3。 CA 单元包含全局空间池化-卷积-ReLU-卷积-Sigmoid,卷积核都为 1×1,第一层卷积通道数变为 C/r,第二层卷积通道数为 C。 SA 单元包含卷积-ReLU-卷积-Sigmoid,卷积核都为 1×1,第一层卷积通道数变为 C*i,第二层卷积通道数为 1。 得到通道和空间的两个 mask 后,分别和特征 U 相乘,然后再将两个结果拼接起来经过一个 1×1 的卷积将通道数变为 C,最后和 Hi 相加得到输出特征 Ho。 在论文中,作者设置 r

缺失值处理(Missing Values)

為{幸葍}努か 提交于 2020-05-03 23:24:26
什么是缺失值? 缺失值指数据集中某些变量的值有缺少的情况,缺失值也被称为NA(not available)值。在pandas里使用浮点值NaN(Not a Number)表示浮点数和非浮点数中的缺失值,用NaT表示时间序列中的缺失值,此外python内置的None值也会被当作是缺失值。需要注意的是,有些缺失值也会以其他形式出现,比如说用NULL,0或无穷大(inf)表示。 缺失值产生的原因: a. 数据采集时发生错误 b. 数据提取过程有问题 c. 业务分类需要 处理缺失值的方法: 首先了解数据缺失的原因,根据原因判断缺失的数据是否具有特定的商业意义。如果不具备业务意义,那么可以进行以下操作: 1,删除整条记录(list-wise deletion):适用于缺失值非常少,不影响整体数据的情况。这种方法的优点是简单,缺点是减少了样本数量。 2,删除含有大量缺失值的变量 3,用标量插补(single imputation):如果缺失值比较少,那么可以使用平均值,中位数,众数等进行插补。 4,插值法(i nterpolation):先求得插值函数,然后将缺失值对应的点代入插值函数得到缺失值的近似值。常见插值方法有拉格朗日插值法、分段插值法、样条插值法、线性插值法。 5,用模型预测(model-based imputation):通过模型来估计缺失值,是处理缺失值比较复杂的方法。