自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(162)
  • 资源 (1)
  • 收藏
  • 关注

原创 对象隐式转换,复制构造函数和重载等号运算符的区别

#include#includeusing namespace std;class A{public: A(char* username) { cnt++; cout << cnt << endl; name = new char[strlen(username)]; strcpy(name,username);

2017-06-20 00:04:31 551

转载 探讨int和unsigned能表示的最大的数和最小的数

http://blog.csdn.net/ajioy/article/details/7339527一个 int 占4个字节,就是32个比特位,所以能表示的范围为-2^31~+2^31-1 2,147,483,647。若是unsigned int,能表示的范围是0 ~ +2^32-1 4,294,967,295 约43亿,与地球人口还差那么一大段距离(约78亿)看一段源码:

2017-02-15 17:54:19 1549

转载 分词粒度

KTDictSeg 分词组件1.3版本 部分算法讨论 – 分词粒度 作者:肖波 http://www.cnblogs.com/eaglet/archive/2008/05/27/1208423.html KTDictSeg 分词组件1.3版本已经接近完成,只剩下最后的一点功能。在KTDictSeg 分词组件1.3版本的开发过程中,得到了很多朋友的关注和支持,特别是一些分词方面的专家提出

2017-02-14 20:04:10 3716

转载 C++类构造函数和初始化列表

http://www.cnblogs.com/BlueTzar/articles/1223169.htmlC++类构造函数初始化列表构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。例如:class CExample {public:    int a;    float b;    /

2017-02-10 10:00:33 368

转载 正排索引(forward index)与倒排索引(inverted index)

一、正排索引(前向索引)正排索引也称为"前向索引"。它是创建倒排索引的基础,具有以下字段。(1)LocalId字段(表中简称"Lid"):表示一个文档的局部编号。(2)WordId字段:表示文档分词后的编号,也可称为"索引词编号"。(3)NHits字段:表示某个索引词在文档中出现的次数。(4)HitList变长字段:表示某个索引词在文档中出现的位置,即相对于

2017-02-09 10:44:06 982

转载 PageRank算法

转载自http://blog.csdn.net/hguisu/article/details/79961851. PageRank算法概述         PageRank,即网页排名,又称网页级别、Google左侧排名或佩奇排名。        是Google创始人拉里·佩奇和谢尔盖·布林于1997年构建早期的搜索系统原型时提出的链接分析算法,自从Google在商

2017-02-08 17:36:59 509

原创 关于神经网络的一点理解

1.为什么使用神经网络因为在最简单的异或问题上,一个简单的线性分类器都搞不定了。而神经网络相当于多个线性分类边界的整合。具有更优秀的能力。 【异或问题】如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。 异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异

2016-10-07 20:11:02 590

转载 Linux中的configure和make

在Linux中利用源码包安装软件最重要的就是要仔细阅读安装包当中的README  INSTALL两个说明文件,这两个文件会清楚的告诉你如何可以正确的完成这个软件的安装!         我们都知道源码包安装分为这么几个阶段,1、  ./configure:“configure”会在你的系统上测试存在的特性  Make:编译程序。5、 cd:进入到这个源码包。 现在ls一下m

2016-08-24 15:47:45 473

转载 word2vec中关于霍夫曼树的应用原理

看了word2vec中虽然对霍夫曼原理有所了解。但是没有找到使用霍夫曼编码的原理。在google上搜到这篇文章,感觉写的很不错,果断转了http://xiaoquanzi.net/?p=1562013年末,Google发布的word2vec引起了一帮人的热捧,各种兴奋。时至今日,各地讨论的也不似如此频繁,也是时候写一下个人对它的理解,亦可避免被真正的有识之士鄙视。在

2016-08-22 14:11:07 778

转载 centos将Python从2.6升级到2.7的方法

http://blog.csdn.net/jcjc918/article/details/11022345#comments

2016-08-17 17:43:04 341

转载 caffe各层总结

转自http://www.myexception.cn/other/1828071.html如何在Caffe中配置每一个层的结构最近刚在电脑上装好Caffe,由于神经网络中有不同的层结构,不同类型的层又有不同的参数,所有就根据Caffe官网的说明文档做了一个简单的总结。1. Vision Layers1.1 卷积层(Convolution)类型:CO

2016-08-12 15:04:06 645

原创 word2vec的细节理解

n-gram实际上是做了一个n-1阶的马尔科夫假设。【用的方法应该是贝叶斯的概率理论】word2vec是使用神经网络训练的一套概率语言模型。收入的参数是词向量。【这里的词向量应该是属于那种“onehot编码”的词向量吧?】。神经概率语言模型对于语料库C里的任意一个词w,将context(w)取为前面n-1个词(类似于n-gram),而且这n-1个词的向量是首位拼接地拼起来成为一个长向量的【规模是(n

2016-08-11 14:13:35 849

转载 机器学习排序之Learning to Rank简单介绍

PS:文章主要转载自CSDN大神hguisu的文章"机器学习排序":          http://blog.csdn.net/hguisu/article/details/7989489      最近需要完成课程作业——分布式排序学习系统.它是在M/R、Storm或Spark架构上搭建分布式系统,并使用学习排序Pointwise、Pairwise和Listwise三大类算法实现对微软

2016-07-29 10:11:09 885

原创 LR其实是可以做一下特征离散化的

今天听组里人聊天,说LR需要把特征离散化,但是GBDT并不需要把特征离散化;我很疑惑,我记得lr并不需要离散化啊。后来听他们说,LR更适合处理稀疏数据,那么把特征先离散化到4个特征维度(假设的),然后以后遇到这个特征的时候,实际上就是四个特征中的一个有值了。【实际上是做了一个哑变量处理】以下摘自知乎: 3. 逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后,每个变量有单独的权重,相当于

2016-07-29 09:48:47 3867

转载 LIBSVM与LIBLINEAR

## LIBSVM与LIBLINEAR(一) 在过去的十几年里,支持向量机(Support Vector Machines)应该算得上是机器学习领域影响力最大的算法了。而在SVM算法的各种实现工具中,由国立台湾大学林智仁老师开发的工具包LIBSVM,又无疑是影响力最大的。2011年LIBSVM的系统介绍论文“LIBSVM: a library for support vector machine

2016-07-28 15:41:22 815

转载 浅谈利用逻辑回归来解决文本分类时的模型调优

http://blog.csdn.net/busycai/article/details/6159109 本文适合有少许文本分类实践经验的同学。1.什么是文本分类?简单点说,给定类别,将文本分到某个或某几个类别中。比如,一篇网页,判断它是体育类还是政治类还是娱乐类。当然网页比文本稍微复杂一些,需要先做一些页面解析等预处理工作。文本分类可看作网页分类的一个子问题。想继续了解文本分类,推荐看计算所王斌

2016-07-28 13:33:23 2235

原创 移动零 【in_place的理解】

给一个数组 nums 写一个函数将 0 移动到数组的最后面,非零元素保持原数组的顺序 注意事项1.必须在原数组上操作 2.最小化操作数样例给出 nums = [0, 1, 0, 3, 12], 调用函数之后, nums = [1, 3, 12, 0, 0].解答对于这道题我最开始用的方法很快速。。就是用Python先筛一圈不为零的,然后再筛一圈为零的【个数】,添加在后头。不过报错了。后来想明白报

2016-07-23 13:40:50 1113

原创 汉字数字与阿拉伯数字的转换

网上看了许多说法,感觉这个事情本身不复杂,不过也没许多人嘴炮说得那么简单。想法谁都有,都觉得自己能实现,不过许多人“信誓旦旦”地把这个写了之后,发现会报各种各样的错误。在此我把代码写上,附上我的想法。1.区分各种项1.1 转换项这种最简单,1——一,2——二,以此类推。记住不要忘了0——零1.2 数量级项十——10,百——100,千——1000,记住没有万,因为万和亿很特殊,前后的级数都是数字计数法

2016-07-19 14:16:19 2720

原创 十进制,二进制的转换

今天没事儿刷了个题,本以为是十分easy的题目,结果结实把我恶心了一阵。。。就是一个简单的十进制二进制转换的问题二进制求和描述 笔记 数据 评测 给定两个二进制字符串,返回他们的和(用二进制表示)。您在真实的面试中是否遇到过这个题? Yes 样例 a = 11b = 1返回 100解法:很简单,先把二进制转换为十进制,然后加和,然后再转换为2进制。需要注意的是,二进制to十进制很容

2016-07-14 21:32:12 416

原创 SGDClassifier和LR,SVM的区别

看了许多文献,以及最近的项目经验,终于真正地搞懂了LR。以前总听大家说,看你对机器学习搞得透彻不透彻,就看你逻辑回归理解得怎么样;自己是统计出身的我,一直很有自信,以为无非就是个极大似然估计,求那个似然函数的极大值而已。然而实际上,这个之中也有很多的说法在里面,比如,求参数的方法。在逻辑回归中,我们极大似然估计的参数是可以通过“极大化该参数值”得到的,然而得到参数之后,并不代表我们就完成了,因为成千

2016-07-07 19:54:32 17642 1

转载 cross-validation:从 holdout validation 到 k-fold validation

http://blog.csdn.net/lanchunhui/article/details/50522424构建机器学习模型的一个重要环节是评价模型在新的数据集上的性能。模型过于简单时,容易发生欠拟合(high bias);模型过于复杂时,又容易发生过拟合(high variance)。为了达到一个合理的 bias-variance 的平衡,此时需要对模型进行认真地评估。本文将

2016-07-07 10:46:28 779

转载 各大公司广泛使用的在线学习算法FTRL详解

https://www.52ml.net/16256.html现在做在线学习和CTR常常会用到逻辑回归( Logistic Regression),而传统的批量(batch)算法无法有效地处理超大规模的数据集和在线数据流,google先后三年时间(2010年-2013年)从理论研究到实际工程化实现的FTRL(Follow-the-regularized-Leader)算法,在处理诸

2016-07-04 18:52:07 659

转载 机器学习算法及其并行化讨论

http://www.thebigdata.cn/JiShuBoKe/13723.html弄懂算法的核心,才知道能否并行三、LDA和MapReduce——可扩展的基础是数据并行  因为MPI在可扩展性上的限制, 我们可以大致理解为什么Google的并行计算架构上没有实现经典的MPI。同时,我们自然的考虑Google里当时最有名的并行计算框架MapReduce。  MapReduce 的风格和MPI截

2016-06-28 11:02:22 6051

原创 shell编程初探

第一个test.sh 目的是为了检测收进参数的表述方式运行的时候 sh test.sh “1 2 3 4 5” 如果运行sh test.sh 1 2 3 4 5 那么cid_list 只收进1

2016-06-28 10:15:18 407

原创 用gensim做LDA实践之文本分类

之前看LDA,一直没搞懂到底作用是什么,公式推导了一大堆,dirichlet分布求了一堆倒数,却没有真正理解精髓在哪里。最近手上遇到了一个文本分类的问题,采用普通的VSM模型的时候,运行的太慢,后来查找改进策略的时候,想起了LDA,因此把LDA重新拉回我的视线,也终于弄懂了到底是做什么的。LDA本质是一种降维为什么这么说,因为在我的文本分类问题中,文本共有290w个,根据词项得到的维度为90w个,这

2016-06-27 14:43:22 21908 14

转载 非均衡数据集的分类问题

传统的机器学习分类研究大多基于如下假设:(1)分类以最大正确率为目标;(2)所有的分类错误会带来相同的错误代价;(3)数据集中的各类样本数目基本均衡,即各类所含的样本数大致相当。  显然,这三个假设在现实应用领域中很多时候是不成立的。很多类别并不均衡,数据集中某个类别的样本数可能会远多于其他类别;不同的分类错误往往会带来显著不同的损失。例如信用卡交易中的欺诈识别。非均衡数据集(Imbalance D

2016-06-23 15:23:15 832

转载 在分类中如何处理训练集中不平衡问题

原文地址:一只鸟的天空,http://blog.csdn.net/heyongluoyao8/article/details/49408131在分类中如何处理训练集中不平衡问题  在很多机器学习任务中,训练集中可能会存在某个或某些类别下的样本数远大于另一些类别下的样本数目。即类别不平衡,为了使得学习达到更好的效果,因此需要解决该类别不平衡问题。Jason Brownlee的回答:原

2016-06-23 15:09:27 297

转载 逻辑回归还是要多用离散变量

在工业界,很少直接将连续值作为逻辑回归模型的特征输入,而是将连续特征离散化为一系列0、1特征交给逻辑回归模型,这样做的优势有以下几点:离散特征的增加和减少都很容易,易于模型的快速迭代;稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展;离散化后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,否则0。如果特征没有离散化,一个异常数据“年龄300岁”会给模型造成很大的干扰;逻辑

2016-06-23 14:51:41 4388

原创 vim使用总结

其实学了那么多,真正对操作文本很有用的就那么几条: gg—————— 光标移动到文章头 100gg—————— 光标移动到第100行的头j——————往下一行 100j——————往下100行 k——————往上一行 100k——————往上100行w——————往下一个单词 b——————往上一个单词yy——————复制一行 100yy——————复制光

2016-06-23 11:21:35 347

转载 二分类问题的评价指标:ROC,AUC

ROC(Receiver Operating Characteristic)曲线和AUC常被用来评价一个二值分类器(binary classifier)的优劣,对两者的简单介绍见这里。这篇博文简单介绍ROC和AUC的特点,以及更为深入地,讨论如何作出ROC曲线图以及计算AUC。 ROC曲线需要提前说明的是,我们这里只讨论二值分类器。对于分类器,或者说分类算法,评价指标主要有precision,re

2016-06-22 09:57:29 1567

转载 结合Scikit-learn介绍几种常用的特征选择方法

特征选择(排序)对于数据科学家、机器学习从业者来说非常重要。好的特征选择能够提升模型的性能,更能帮助我们理解数据的特点、底层结构,这对进一步改善模型、算法都有着重要作用。特征选择主要有两个功能:减少特征数量、降维,使模型泛化能力更强,减少过拟合增强对特征和特征值之间的理解拿到数据集,一个特征选择方法,往往很难同时完成这两个目的。通常情况下,我们经常不管三七二十一,选择一种自己最熟悉或者最方便的特

2016-06-20 13:47:16 720

转载 用Python开始机器学习(5:文本特征抽取与向量化)

http://blog.csdn.net/lsldd/article/details/41520953假设我们刚看完诺兰的大片《星际穿越》,设想如何让机器来自动分析各位观众对电影的评价到底是“赞”(positive)还是“踩”(negative)呢?这类问题就属于情感分析问题。这类问题处理的第一步,就是将文本转换为特征。因此,这章我们只学习第一步,如何从文本中抽取特征,并将其向量化。由于中文的处理涉

2016-06-16 17:25:10 680

转载 sklearn文本特征提取

词袋(Bag of Words)表征文本分析是机器学习算法的主要应用领域。但是,文本分析的原始数据无法直接丢给算法,这些原始数据是一组符号,因为大多数算法期望的输入是固定长度的数值特征向量而不是不同长度的文本文件。为了解决这个问题,scikit-learn提供了一些实用工具可以用最常见的方式从文本内容中抽取数值特征,比如说:标记(tokenizing)文本以及为每一个可能的标记(token)分配的一

2016-06-16 17:24:13 5187

转载 文本分类中的特征选择

面试中被问到的一个问题,如何对文本划分类别?我提出用bag of words进行分类,但是词汇的数量比较大,特征维度比较高,涉及到特征选择的问题,我的回答是用图像中常见的LDA,PCA特征降维,但是翻看NLP相关的文献才知道一般是采用互信息,卡方统计量和词频分析。互信息与信息增益是等价的。 把文档分成体育、游戏、娱乐这三类的例子中,如果一个单词在三类文档中出现的概率相同,那么这个单词对分类无意义,

2016-06-16 11:26:54 2546

转载 python 实现Hadoop的partitioner和二次排序

我们知道,一个典型的Map-Reduce过程包 括:Input->Map->Patition->Reduce->Output。Pation负责把Map任务输出的中间结果 按key分发给不同的Reduce任务进行处理。Hadoop 提供了一个非常实用的partitioner类KeyFieldBasedPartitioner,通过配置相应的参数就可以使用。通过 KeyFieldBasedPartitio

2016-06-16 09:15:50 995

转载 Linux下载到window本地的方法

我使用过的Linux命令之sz - 下载文件,无需ftp/sftp本文链接:http://codingstandards.iteye.com/blog/827637 (转载请注明出处) 用途说明sz命令是利用ZModem协议来从Linux服务器传送文件到本地,一次可以传送一个或多个文件。相对应的从本地上传文件到Linux服务器,可以使用rz命令。参见《我使用过的Linux命令之rz - 批量上

2016-06-15 18:29:34 1370

转载 Hadoop Streaming 实战: 实用Partitioner类KeyFieldBasedPartitioner

我们知道,一个典型的Map-Reduce过程包括:Input->Map->Patition->Reduce->Output。Pation负责把Map任务输出的中间结果按key分发给不同的Reduce任务进行处理。Hadoop 提供了一个非常实用的partitioner类KeyFieldBasedPartitioner,通过配置相应的参数就可以使用。通过KeyFieldBasedPartitioner

2016-06-15 17:30:52 2417

转载 reducer里aggregate函数的使用

1.streaming的作用Haoop支持用其他语言来编程,需要用到名为Streaming的通用API。Streaming主要用于编写简单,短小的MapReduce程序,可以通过脚本语言编程,开发更快捷,并充分利用非Java库。HadoopStreaming使用Unix中的流与程序交互,从stdin输入数据,从stdout输出数据。实际上可以用任何命令作为mapper和reducer。数据流示意如下

2016-06-15 17:21:38 911

原创 用Hadoop Streaming来写wordcount

Hadoop streaming里的key和value格式不一样,实际上虽然也是以K1,V1输入输出的,但是是以line的格式输出的。因此中间经过partition过后的K2,V2S的那个iterable的函数格式貌似是没有的!比如,我想写一个wordcount在Python中,标准输入输出格式是:import sysfor line in sys.stdin:每一行是一个输入,然后进入之后的K

2016-06-15 17:13:05 1142

转载 文本分类

概览  自动文本分类(Automatic Text Categorization),或者简称为文本分类,是指计算机将一篇文章归于预先给定的某一类或某几类的过程。  文本分类是指按照预先定义的主题类别,为文档集合中的每个文档确定一个类别.文本分类是文本挖掘的一个重要内容。  所谓文本分类,是指对所给出的文本,给出预定义的一个或多个类别标号,对文本进行准确、高效的分类.它是许多数据管理任务的重要组成部分

2016-06-15 13:41:04 1222

Numpy学习指南代码

书籍:Numpy学习指南代码.那本书是Python数据分析的入门书籍

2016-02-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除