- 博客(20)
- 收藏
- 关注
原创 快排之递归与非递归
前言时间过得很快,今年就轮到我秋招找工作了,偶尔复习下常见的算法题并进行整理。方便自己后面复习,能给网友提供点参考也不错。partition函数该函数为快排的核心,思想就是在数组中找一个数作为中间值,把数组中比它小的放左边,大的放右边。这个函数有两种写法,单指针版和双指针版。下面给出C++代码://单指针分割 int singlePartition(vector<int>&a...
2019-03-20 19:34:15
6391
1
原创 网易游戏预研项目面经
12月底投的简历,到1月底才有面试,一共就一面。话不多说直接把我面试的问题列一下:python有什么基本的容器元组和list有什么区别lambda表达式知道吗-字典是用的什么数据结构给你一个字典你要对它做修改你会怎么做is知道吗传统机器学习知道什么模型?LR和SVM有什么区别?决策树是怎么找分裂节点的?GBDT和决策树有什么区别?XGBoost知道吗,说说它和GBDT的区别...
2019-02-20 11:22:10
1217
原创 改善深度学习训练的trick总结
在深度学习中,同样一个模型用不同的初始化,数据处理,batch size,学习率,优化器都能得到不同性能的参数。我根据自己参与过的比赛中经常用到的一些trick进行大致的总结,有代码的会顺便附上,方便自己以后使用。学习率调整在训练模型过程中,我们可以使用固定的学习率,但一些研究工作显示在模型训练过程中使用动态的学习率有助于加速收敛,在更少的epoch里得到更好的模型精度。CLR在每个bat...
2018-12-24 14:08:01
4742
2
原创 深度学习中处理类别不平衡问题主流方法总结
前言在深度学习的一些场景下,经常会出现类别不平衡的情况。以二分类为例,正负样本比例为1:1的情况十分罕见;多数情况下都是1:N,N有时甚至超过10,甚至几十上百都有。在多次遇到这种问题后写了该博客进行总结。方法1、欠采样和过采样欠采样是在多数类中进行部分采样,过采样是在少数类中重复采样。过采样和修改目标函数中正负项系数是等价的,但实际操作中效果一般不会相同。2、数据增强数据增强分图像和...
2018-12-18 11:08:56
9530
3
原创 关于pytorch可复现性问题
参考链接:https://github.com/pytorch/pytorch/issues/7068深度学习网络结构初始化需要设置随机种子,这个种子的忽略会导致一些结果无法复现。关于这点,上述链接有相关讨论,可以写一个函数来固定所有torch的种子:import randomdef seed_torch(seed=2018): random.seed(seed) os.en...
2018-12-13 16:14:54
1974
原创 利用CNN模型进行NLP文本分类
前言这段时间在做kaggle的一个NLP比赛,虽然刚做不久但看了一些kernel和discussion后收获颇多,打算写几篇博客记录一下方便自己后面复习。文本特征提取文本作为一种长度不相同的数据,要作为模型的输入需要进行一定的处理。简而言之就是想办法让它们的长度一致。**keras.preprocessing.text中有Tokenizer模块,可以帮助你把英文句子转换成数值序列,再用pad...
2018-11-22 22:29:39
1867
原创 python3.x安装cvxopt的坑
python3.x安装cvxopt的坑安装过程(此博客单纯记录下安装这个包踩的坑,也希望能帮到被坑的人)cvxopt是一个python的凸优化包,安装的时候需要numpy+mkl,这个是万恶之源。1、 首先给出cvxopt的windows安装文件:https://www.lfd.uci.edu/~gohlke/pythonlibs/#cvxopt2、如果你用的不是anaconda自带的...
2018-09-20 15:52:14
5312
原创 Ubuntu14.04下安装matlab2016b
本文大部分参考了https://blog.csdn.net/minione_2016/article/details/53313271; 只是在激活matlab的时候用那个博客的方法没成功,自己尝试了另外一种方法后ok了,记录一下希望能帮到遇到同样问题的人。安装包下载链接:https://pan.baidu.com/s/1AZ11bF8NfUOXikfrRvooVQ 密码:agll d...
2018-07-04 13:19:16
1400
原创 scipy.sparse模块解决稀疏矩阵的存储问题
最近在做腾讯算法广告大赛,样本数高达1100多W,这个时候用numpy矩阵存储特征向量会出现memory error,而且特征本身是稀疏的,也就是大部分元素都为0。查了一些资料后发现scipy库中的sparse模块能很好的解决这个问题,先附上scipy.sparse的文档网址:https://docs.scipy.org/doc/scipy/reference/sparse.html。 ...
2018-04-22 16:03:06
8008
原创 numpy+scipy安装文件
numpy+scipy安装文件numpy和scipy是机器学习中经常要用到的库,有时也会出现各种问题需要重新安装,特地写出来以做记录。 windows下面:https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy linux,mac平台下: numpy:https://pypi.org/project/numpy/#files scipy:ht...
2018-04-20 13:52:05
3387
原创 多标记学习
基本概念 传统机器学习问题大多为单标记问题;比如数字识别,给计算机传入一张数字图像,程序会给你返回数字的预测,但它只会返回一个数字而不是多个,这就是单标记问题。而如果给计算机一张街道的图像,要求判断图像中有哪些物体,这便是一个多标记问题。 在这种多标记框架下,我们用(xi,Yi)(xi,Yi)(\boldsymbol{x_i},Y_i)来表示一个样本集中的一个输入输出对;其中YiYiY...
2018-04-11 11:40:20
9490
1
原创 基于类属属性的多标记学习——含python代码
本文的基本内容翻译自Lift: Multi-Label Learning with Label-Specific Features[1],含部分本人的理解,最后附带了我复现的python代码的github链接。类属属性 所谓多标记学习是相对于单标记学习而言的一种机器学习问题。顾名思义,模型会对输入的特征向量返回多个label的预测结果,比如说给一张图片让程序判断其中是否有“蓝天”...
2018-04-03 21:13:47
2714
3
原创 面向文本分类的特征工程——kaggle文本分类比赛
前言 在2017年9到12月份参加了kaggle平台上的一个文本分类比赛:Spooky author identification,这个比赛会给出三个恐怖小说作家作品里的一些英文句子。参赛者所要做的是用训练数据训练出合适的模型,让模型在测试数据上有好的泛化效果。笔者认为这个比赛对于提高文本方面的特征工程能力有挺多启发,因此写下这篇博客。有兴趣的人可以去下载这个比赛的数据集练手。如果因为墙的原...
2018-03-24 17:54:12
11722
8
原创 高斯判别分析(GDA)——含python代码
基本数学知识多元正态分布 多元正态分布是正态分布在多维变量下的扩展,它的参数是一个均值向量(mean(mean(mean vector)μvector)μvector)\mu和协方差矩阵(covariance(covariance(covariance matrix)Σ∈Rn∗nmatrix)Σ∈Rn∗nmatrix)\Sigma\in R^{n*n},其中n是多维变量的向量长度,Σ...
2018-03-21 10:21:34
6416
1
转载 生成式模型与判别式模型
定义: 判别式模型是对P(y|x)P(y|x)P(y|x)进行建模或者直接学习输入空间到输出空间的映射关系,其中xxx是某样例的特征,yyy是某类样例的分类标记。而生成式方法是对P(x|y)P(x|y)P(x|y)(条件概率)和P(y)P(y)P(y)(先验概率)进行建模,然后按贝叶斯公式求出后验概率P(y|x)P(y|x)P(y|x): P(y|x)=P(x|y)P(y)P(x)P(y|...
2018-03-20 20:25:08
1045
原创 利用mask-rcnn解决kaggle目标检测问题
mask-rcnn简介 mask-rcnn是Kaiming He大佬提出的图像分割模型,它在对图像中的目标进行检测的同时还能对每一个目标给出一个分割结果。它在Faster R-CNN[1]基础之上进行扩展,并行地在bounding box recognition分支上添加一个用于预测目标掩模(object mask)的新分支。该网络还很容易扩展到其他任务中,比如估计人的姿势,也就是关键点识别。该框
2018-03-17 20:37:49
7184
5
原创 逻辑回归与二元分类——含python代码
逻辑回归和线性回归的最终目标都是拟合一个线性函数 y=θTxy=θTxy=\boldsymbol{\theta}^T\boldsymbol{x},使得我们的预测输出和真实输出之间的差异最小。它们的区别在于损失函数不一样,线性回归的损失函数(MSEMSEMSE)是基于模型误差服从正态分布的假设推导出来的,而逻辑回归的损失函数则是基于极大似然的假设推导出来的,即所有样本结果的后验概率乘积最大。...
2018-03-17 15:50:30
8093
原创 Ridge回归与Lasso回归——含python代码
线性回归分析对数据噪声特别敏感,当样本矩阵XXX存在多重共线性或者样本数没有远大于特征维度时,XTXXTXX^TX是不可逆的或接近不可逆的;此时利用线性回归公式求得的参数θθ\boldsymbol{\theta}很容易过拟合。如果能限制模型的复杂度,让θθ\boldsymbol{\theta}的参数值不至于变得非常大,模型对噪声的敏感度就会降低。这就是RidgeRidgeRidge回归和Las...
2018-03-17 10:13:53
8276
原创 线性回归分析——含python代码
假设样本空间为ddd个维度,用xx\boldsymbol{x}={x1,x2,x3,...,xdx1,x2,x3,...,xdx_1,x_2,x_3,...,x_d}来表示一个样本点,线性回归的目标是用d+1d+1d+1个参数来拟合样本点的输入和输出。通常我们会将xx\boldsymbol{x}扩充为d+1d+1d+1维的向量xx\boldsymbol{x}={x0,x1,x2,x3,...,...
2018-03-16 17:52:06
3306
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人