13 zhzhl202

尚未进行身份认证

暂无相关简介

等级
TA的排名 3w+

有规划的人生才能更成功

这篇博客主要讨论如何进行有效的时间管理、如何培养良好的习惯,如果感兴趣,请继续往下读,相信你能从中收获到很多。    写这篇文章主要因为下面这几个小故事:    1. 暑假的时候在百度实习,紧张的节奏,良好的技术氛围的让我非常兴奋。但在工作了一段时间后,发现自己老是有做不完的事情,只能一直在公司,晚上很晚才能回去。女朋友也经常抱怨不给她打电话。之前还觉得她不理解自己,自己工

2013-01-04 12:46:06

文本分类与SVM

之前做过一些文本挖掘的项目,比如网页分类、微博情感分析、用户评论挖掘,也曾经将libsvm进行包装,写了一个文本分类的开软软件Tmsvm。所以这里将之前做过一些关于文本分类的东西整理总结一下。1基础知识1.1样本整理文本分类属于有监督的学习,所以需要整理样本。根据业务需求,确定样本标签与数目,其中样本标签多为整数。在svm中其中如果为二分类,样本标签一般会设定为-1和

2012-11-18 20:45:17

如何解决分类中的样本倾斜问题

在Recsys中看到一个关于如何解决数据集偏斜的问题,遂想到以前也考虑过这个问题,所以就总结了一些以前看的资料。问题定义先来说说样本的偏斜问题,也叫数据集偏斜(unbalanced),它指的是参与分类的两个类别(也可以指多个类别)样本数量差异很大。比如说正类有10,000个样本,而负类只给了100个,这会引起的问题显而易见,可以看看下面的图:方形的点是负类。H,H1

2012-05-19 19:48:14

Python内存池管理与缓冲池设计

Python是一门开发效率很高的语言,而且其既下里巴人,又阳春白雪。也就是说这门语言只要稍加学习就可以上手开发,而深入探究也会发现Python有很多高深的东西。最近读了《Python源码剖析》,收获良多,今天就把Python的内存管理整理一番。本文的组织如下:第一部分:整理Python的内存管理机制,主要包括内存池以及对象缓存池第二部分:从百度的笔试题来探讨如何实现一个缓存池。

2012-05-08 19:31:37

Python高级特性

我一直认为Python是一门很神奇的语言。神奇之处在于其既可阳春白雪,亦可下里巴人。也就是其简单到几乎所有的人稍加学习即可上手,但是你如果细细品味,就会发现他还有很多高深的东西。正如一位漂亮的姑娘,一眼看上去就会喜欢上。交往深入,你会发现她精通琴棋书画而且非常有内涵,我相信你这时肯定会深深的迷恋上她。这篇文字的目的就是想整理一些Python的高级特性,试图为大家揭开Python的神秘面

2012-04-30 20:41:41

基于Java多线程的下载器源码剖析(三)

四:缓存管理在Thread切分文件时,会创建非常多的DownloadBlock,为了减少创建、销毁Block所带来对效率上的影响,我们会把已经创建好的DownloadBlock放入到缓存中,当Download需要DownloadBlock时直接从缓存中取得。即我们使用缓存来对已经申请的内存重复利用。在每个Download类中都有一个缓存池,即ConcurrentLinkedQueue

2012-04-29 11:29:13

基于Java多线程的下载器源码剖析(二)

三:多个文件下载的管理这一节我们主要来讲一下如何对多个文件的下载进行管理首先来看一下整个系统的UML图从最下面开始说起:Download代表一个下载类,对每一个文件都需要创建一个Download实例,用于对该文件下载线程的管理。其中每个Download中都有以下几个对象:private ConcurrentLinkedQueue blockQueue;pr

2012-04-29 10:36:04

基于Java多线程的下载器源码剖析(一)

本文实现了一个基于Java多线程的下载器,可提供的功能有:1. 对文件使用多线程下载,并显示每时刻的下载速度。2. 对多个下载进行管理,包括线程调度,内存管理等。这篇文章的结构如下:首先讨论如何实现利用Java多线程对单个文件进行下载。然后讨论当系统中有多个文件下载,如何对这些下载进行管理。包括线程调度,内存管理等。一:单个文件下载的管理1. 单文件下载类层次首先简要介

2012-04-28 21:29:16

使用MapReduce对svm模型进行训练

SVM模型有两个非常重要的参数C与gamma。其中 C是惩罚系数,即对误差的宽容度。c越高,说明越不能容忍出现误差。C过大或过小,泛化能力变差gamma是选择RBF函数作为kernel后,该函数自带的一个参数。隐含地决定了数据映射到新的特征空间后的分布,gamma越大,支持向量越少,gamma值越小,支持向量越多。支持向量的个数影响训练与预测的速度。Grid SearchGri

2012-04-08 22:16:36

Libsvm与Liblinear源码浅析与封装(二)

封装Libsvm与Liblinear开篇我们基于以下场景:       假设我们已经用libsvm或者是Liblinear训练了一个模型,现在需要读入该模型并基于该模型对一个样本进行预测,返回预测的类标签以及相应的隶属度分数。 从封装的角度我们需要考虑一下几个问题: 如何规范输入,使得读入的数据在Libsvm与Liblinear上都可以直接运行系统如何识别读入的

2012-04-08 18:48:50

Libsvm与Liblinear源码剖析与封装(一)

简介因为项目的需要,我们需要同时使用Libsvm与Liblinear,并将其封装起来做成统一调用形式,目前软件已经完成,名称为Tmsvm-基于SVM的文本挖掘系统本文就来分析一下Libsvm与Liblinear的异同点以及封装这两个软件需要注意的事宜。关于Libsvm的源码分析,上海交通大学模式识别实验室曾经有过这方面的工作,可以从网上下载。本文也结合他之前的工作,对libsvm的剖析

2012-04-08 17:20:44

Tmsvm_基于SVM的文本挖掘系统

开源系统 主页:http://code.google.com/p/tmsvm/文本挖掘无论在学术界还是在工业界都有很广泛的应用场景。而文本分类是文本挖掘中一个非常重要的手段与技术。现有的分类技术都已经非常成熟,SVM、KNN、Decision Tree、AN、NB在不同的应用中都展示出较好的效果,前人也在将这些分类算法应用于文本分类中做出许多出色的工作。但在实际的商业应用中,仍然有很多问题没有

2011-12-13 20:41:03

【转载】Catalan数的分析和应用

【Catalan数——卡特兰数】一.Catalan数的定义令h(1)=1,Catalan数满足递归式:h(n) = h(1)*h(n-1) + h(2)*h(n-2) + ... + h(n-1)h(1),n>=2该递推关系的解为:h(n) = C(2n-2,n-1)/n,n=1,2,3,...(其中C(2n-2,n-1)表示2n-2个中取n-1个的组合数)二.Catalan数公式

2011-06-14 16:58:00

Eclipse 下mahout的配置与使用

mahout 是一个开源的旨在为实际问题提供可伸缩性算法的软件。官方主页:http://mahout.apache.org/QuickStart:https://cwiki.apache.org/confluence/display/MAHOUT/Quickstart目前的版本是0.4 ,此例展示了在eclipse下如何配置并应用mahout到你的程序中。环境:eclipse +maven(m2eclipse)+ mahout 0.4 +jdk 1.6配置:Step 1:        在eclipse中新

2011-04-11 21:07:00

C#与Matlab混合编程的几种方式

C#与Matlab混合编程的几种方式主要参考资料: 《Matlab C# Book》,我看的是第一版的电子书,网上可以搜到。      说实话,我觉得C#与Matlab混合编程相比VC与Matlab混合编程没有啥优势,基本上还是通过P/V Invoke操作Matlab mcc编译器生成的C语言版本的DLL。此外,速度上也慢的吓人-_-     下面简单写写C#与Matlab混合

2010-05-22 17:33:00

初步探索如何使用Visual C#调用Matlab

Matlab 2007a, 2007b, 2008a, 2008b等都对开发独立于Matlab运作平台的Matlab应用程序有很好的支持。网址mathworks.com/products/compiler/demos.html 下提供了一些Matlab程序展开应用的实例,其中把纯的Matlab程序转换成独立执行的应用程序显得很简单。比如链接mathworks.com/product

2010-05-22 17:31:00
勋章 我的勋章
    暂无奖章