基础
文章平均质量分 64
harry_128
这个作者很懒,什么都没留下…
展开
-
C++二进制完成加减乘除
首先介绍计算机的二进制码二进制常用的有原码,反码和补码,他们都是由最左边的一个符号位和右边的数值位构成。在计算机中为了更低成本的计算,数据都是用补码来存储和运算的。原码最高位表示符号位(0代表正数,1代表负数)。剩下的位数,是这个数的绝对值的二进制。比如 一个int变量大小为4字节,在32位的编译器中的二进制表示就是0000000000000000000000000000000...原创 2018-05-01 19:34:24 · 18936 阅读 · 4 评论 -
机器学习中使用正则化来防止过拟合是什么原理?
从知乎整理而来1过拟合是一种现象。当我们提高在训练数据上的表现时,在测试数据上反而下降,这就被称为过拟合,或过配。过拟合发生的本质原因,是由于监督学习问题的不适定:在高中数学我们知道,从n个(线性无关)方程可以解n个变量,解n+1个变量就会解不出。在监督学习中,往往数据(对应了方程)远远少于模型空间(对应了变量)。因此过拟合现象的发生,可以分解成以下三点:有限的训练数据不能完全反映出一...原创 2018-07-05 15:06:49 · 2140 阅读 · 0 评论 -
如何产生好的词向量?
如何产生好的词向量?词向量、词嵌入(word vector,word embedding)也称分布式表示(distributed representation),想必任何一个做NLP的研究者都不陌生。如今词向量已经被广泛应用于各自NLP任务中,研究者们也提出了不少产生词向量的模型并开发成实用的工具供大家使用。在使用这些工具产生词向量时,不同的训练数据,参数,模型等都会对产生的词向量有所影响,那么...转载 2018-07-11 15:35:45 · 713 阅读 · 0 评论 -
文本分类的tricks
趁机总结一下之前遇到过的一些小trick吧:数据预处理时vocab的选取(前N个高频词或者过滤掉出现次数小于3的词等等)词向量的选择,可以使用预训练好的词向量如谷歌、facebook开源出来的,当训练集比较大的时候也可以进行微调或者随机初始化与训练同时进行。训练集较小时就别微调了结合要使用的模型,这里可以把数据处理成char、word或者都用等有时将词性标注信息也加入训练数据会收到比较好的效果至于...原创 2018-07-10 16:43:43 · 823 阅读 · 1 评论 -
统一视角 看分类问题
现在的分类学习算法太多了,有时候我们不仅要问:这么多算法,都是做的分类问题,那它们有没有一个共同的源头?如果有,那么从这个共同的源头出发,它们各自是怎么发展起来的?如果能看清这些本质,对分类学习算法的理解应该能够更加深刻. 本文尝试从一种自上而下,类似高屋建瓴的方式来为众多的分类学习算法建立一个统一的视角. 通常,一个学习过程会涉及到3个步骤:提出假设—>建立模型(如凸优化问题)—>求...转载 2018-06-27 16:20:10 · 508 阅读 · 0 评论 -
交叉熵和相对熵(KL散度)
说交叉熵之前先介绍相对熵,相对熵又称为KL散度(Kullback-Leibler Divergence),用来衡量两个分布之间的距离,记为DKL(p||q)DKL(p||q)D_{KL}(p||q)DKL(p||q)=∑x∈Xp(x)logp(x)q(x)=∑x∈Xp(x)log p(x)−∑x∈Xp(x)log q(x)=−H(p)−∑x∈Xp(x)log q(...原创 2018-06-27 14:36:59 · 560 阅读 · 0 评论 -
python list去重方法及效率
1、直观方法li=[1,2,3,4,5,1,2,3]new_li=[]for i in li: if i not in new_li: new_li.append(i)print(new_li)总结:这样可以做出来,但是效率不行。但是此方法保证了列表的顺序性。2、利用set的自动去重功能li=[1,2,3,4,5,1,2,3]li=list(set(...原创 2018-06-01 13:15:01 · 22372 阅读 · 0 评论 -
K-Means聚类最优k值的选取
最近做一个文本分类的项目,在最开始的时候会用到K-means的聚类方法,因此需要在文本上找到最佳的聚类数。1. 手肘法1.1 理论手肘法的评价K值好坏的标准是SSE(sum of the squared errors)SSE=∑p∈Ci|p−mi|2SSE=∑p∈Ci|p−mi|2SSE= \sum_{p\in C_i}|p-m_i|^2其中 CiCiC_i代表第iii...原创 2018-05-31 14:45:30 · 21908 阅读 · 5 评论 -
距离度量的对比分析
余弦距离、欧氏距离和杰卡德距离度量的对比分析1. 余弦距离余弦距离,也称为余弦相似度 是用两个向量夹角的余弦值作为衡量两个向量差异的度量。2. 欧式距离欧式距离,是计算两个空间向量的欧几里得距离,也就是传统上两个点的距离,只不过这个时候点是多维的。3. 杰卡德两个集合A和B交集元素的个数在A、B并集中所占的比例,称为这两个集合的杰卡德系数,用符号 J(A,B) 表示...原创 2018-05-31 13:51:19 · 1261 阅读 · 0 评论 -
PCA 和 SVD 原理区别
最近无意中又看到了PCA和SVD,又有些新的想法。PCA 和 SVD都是对数据进行降维,但是方法不一样。PCA 是用特征向量来进行降维,但是很多只有方阵有特征向量。 SVD则更普遍一点,可以对一般的矩阵进行降维,本身就是一种矩阵分解方法...原创 2018-06-12 13:05:44 · 1238 阅读 · 0 评论 -
生成方法和判别方法的复习
监督学习可以分为生成方法与判别方法,所学到的模型可以分为生成模型与判别模型。生成模型 生成模型由数据学习联合概率分布P(X,Y),然后求出条件概率分布P(Y|X)作为预测的模型,即生成模型:P(Y|X)=P(X,Y)P(X)这样的方法之所以称为生成方法,是因为模型表示了给定输入X产生输出Y的生成关系。典型的生成模型有:朴素贝叶斯法和隐马尔可夫模型判别模型判别方法由数据直接...原创 2018-05-29 14:19:11 · 2585 阅读 · 1 评论 -
[NLP技术]关键词提取算法-TextRank
关键词提取算法-TextRank 今天要介绍的TextRank是一种用来做关键词提取的算法,也可以用于提取短语和自动摘要。因为TextRank是基于PageRank的,所以首先简要介绍下PageRank算法。1.PageRank算法 PageRank设计之初是用于Google的网页排名的,以该公司创办人拉里·佩奇(Larry Page)之姓来命...转载 2018-07-12 16:29:38 · 866 阅读 · 0 评论