推荐系统
erinapple
这个作者很懒,什么都没留下…
展开
-
协同过滤
协同过滤简单来说是利用某兴趣相投、拥有共同经验之群体的喜好来推荐用户感兴趣的信息,个人通过合作的机制给予信息相当程度的回应(如评分)并记录下来以达到过滤的目的进而帮助别人筛选信息,回应不一定局限于特别感兴趣的,特别不感兴趣信息的纪录也相当重要。2 协同过滤的实现要实现协同过滤的推荐算法,要进行以下三个步骤:收集数据——找到相似用户和物品——进行推荐收集数据原创 2017-10-10 14:28:22 · 555 阅读 · 0 评论 -
python的list要打印中文字符
在python2.X下的的中文处理有不少问题,>>>listnine = ['梨', '橘子', '苹果', '香蕉']>>>print 'listnine list: %s' % listnine结果会是:['\xe6\xa2\xa8', '\xe6\xa9\x98\xe5\xad\x90', '\xe8\x8b\xb9\xe6\x9e\x9c', '\xe9...转载 2018-06-06 20:47:29 · 1686 阅读 · 0 评论 -
文本特征处理
# -*- coding: utf-8 -*-"""Created on Wed Jun 6 21:27:21 2018@author: lixingxing"""# -*- coding: utf-8 -*-"""Created on Wed Jun 6 10:28:08 2018@author: lixingxing"""#import uniout原创 2018-06-06 21:30:40 · 699 阅读 · 0 评论 -
simhash中如何存储信息等
按照Charikar在论文中阐述的,64位simhash,海明距离在3以内的文本都可以认为是近重复文本。当然,具体数值需要结合具体业务以及经验值来确定。 使用上述方法产生的simhash可以用来比较两个文本之间的相似度。问题是,如何将其扩展到海量数据的近重复检测中去呢?譬如说对于64位的待查询文本的simhash code来说,如何在海量的样本库(>1M)中查询与其海明距离在3以内的记录...原创 2018-06-02 14:52:33 · 703 阅读 · 0 评论 -
simhash原理及使用
1. 简介simhash是一种局部敏感hash。那什么叫局部敏感呢,假定两个字符串具有一定的相似性,在hash之后,仍然能保持这种相似性,就称之为局部敏感hash。普通的hash是不具有这种属性的。simhash被Google用来在海量文本中去重。2. 原理算法过程大概如下:将Doc进行关键词抽取(其中包括分词和计算权重),抽取出n个(关键词,权重)对, 即图中的多个(feature, weigh...转载 2018-06-02 14:53:22 · 1799 阅读 · 0 评论 -
simhash简单实现 python java (有助于更好的理解算法)
simhash值的海明距离计算二进制串A 和 二进制串B 的海明距离 就是 A xor B 后二进制中1的个数。举例如下:A = 100111;B = 101010;hamming_distance(A, B) = count_1(A xor B) = count_1(001101) = 3;当我们算出所有doc的simhash值之后,需要计算doc A和doc B之间是否相似的条件是:A和...转载 2018-06-02 14:56:51 · 745 阅读 · 1 评论 -
simhash
http://www.voidcn.com/article/p-tovbmmna-wa.html原创 2018-06-02 15:08:20 · 268 阅读 · 0 评论 -
新闻去重
新闻内容去重算法simhash实践2017年02月16日 18:50:18阅读数:1763前言 最近做了新闻去重算法的工作,mark下 两个应用场景:1. 重复新闻整体检测、去重 2. 从非重复的新闻中寻找重复的句子,依次判断两篇新闻是否存在同一个话题的不同观点(多方观点提取) 本人不负责爬虫,爬虫的同事只做了简单的新闻title重复的检测、去重。 我提供内容的检测算法一 ...转载 2018-06-02 15:25:41 · 1020 阅读 · 0 评论 -
数据挖掘中的WOE 以及 IV
1.IV的用途IV的全称是Information Value,中文意思是信息价值,或者信息量。我们在用逻辑回归、决策树等模型方法构建分类模型时,经常需要对自变量进行筛选。比如我们有200个候选自变量,通常情况下,不会直接把200个变量直接放到模型中去进行拟合训练,而是会用一些方法,从这200个自变量中挑选一些出来,放进模型,形成入模变量列表。那么我们怎么去挑选入模变量呢?挑选入模变量过程是个比较复...转载 2018-06-27 15:45:32 · 400 阅读 · 0 评论 -
python WOE 偏工程的理解
Python woe 0.0.7 源码解析(https://pypi.python.org/pypi/woe/0.0.7) 数据挖掘模型中的IV和WOE详解 http://blog.csdn.net/kevin7658/article/details/50780391 概念简述,提取自上链接: iv(Information Value,中文意思是信息价值),变量的预测能力。 WOE的全称是“Wei...转载 2018-06-27 15:46:16 · 1033 阅读 · 0 评论 -
XGBOOST 数据处理
在Python中使用XGBoost下面将介绍XGBoost的Python模块,内容如下: * 编译及导入Python模块 * 数据接口 * 参数设置 * 训练模型l * 提前终止程序 * 预测A walk through python example for UCI Mushroom dataset is provided.安装首先安装XGBoost的C++版本,然后进...原创 2018-07-23 21:14:46 · 5927 阅读 · 0 评论 -
XGBOOST数据
XGBOOST处理的数据形式,主要可以是libsvm, 三元组,numpy的形式其中,numpy的形式是最常见的,通常情况下,使用HIVE处理的数据,样本字段,往往都是处理成numpy的形式,进行处理。但是,当数据非常稀疏的时候。可以将数据处理成KEY:VALUE的形式或者四三元组的形式尤其是点击对应的推荐系统...原创 2018-07-23 21:17:52 · 502 阅读 · 0 评论 -
结巴分析
Tokenize:返回词语在原文的起止位置注意,输入参数只接受 unicode示例代码result = jieba.tokenize(u'永和服装饰品有限公司') #mode='search' 为搜索模式for tk in result: print("word %s\t\t start: %d \t\t end:%d" % (tk[0],tk[1],tk[2]))123输出结果wo...转载 2018-06-04 21:10:17 · 526 阅读 · 0 评论 -
结巴分词的一些注意的点
1. 分词jieba.cut 方法接受三个输入参数: 需要分词的字符串;cut_all 参数用来控制是否采用全模式;HMM 参数用来控制是否使用 HMM 模型jieba.cut_for_search 方法接受两个参数:需要分词的字符串;是否使用 HMM 模型。该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。注意:不建...原创 2018-06-04 21:04:27 · 2936 阅读 · 0 评论 -
matlab的fopen
function back = save2txt( file_Name, matrix ) %把矩阵matrix保存成txt文件。fop = fopen( file_Name, 'wt' );[M,N] = size(matrix);for m = 1:M for n = 1:N fprintf( fop, ' %s', mat2str( matrix(m,n)原创 2017-12-05 13:02:59 · 3836 阅读 · 0 评论 -
C++ 文件输入
ofstream的使用方法ofstream是从内存到硬盘,ifstream是从硬盘到内存,其实所谓的流缓冲就是内存空间; 在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符: 1、插入器( 向流输出数据。比如说系统有一个默认的标准输出流(cout),一般情况下就是指的显示器,所以,c原创 2017-12-05 20:48:56 · 1325 阅读 · 0 评论 -
文章标题
C++文件读写详解(ofstream,ifstream,fstream) 原创 2011年10月10日 16:33:54 <ul class="article_tags cle转载 2017-12-05 20:52:23 · 169 阅读 · 0 评论 -
C++中文件.c_str()
ofstream fout(filename.c_str());这段代码中,不明白c_str的意思,后来再网络上查找,原来是这样解释的:如果一个文件名被申明为“string”,那么就必须使用 “c_str”,然而,当你申明一个文件名为字符数组型,就没有必要使用,比如。 char filename[20]; in.open(finename) otherwise stri原创 2017-12-07 16:53:42 · 8749 阅读 · 0 评论 -
mathtype转LATEX
1.打开MathType编辑软件,编辑好公式后,点击“预置(P)”菜单,选择“剪切和复制预置(C)”。2.弹出剪切和复制预置对话框,点选“MathML或Tex”,并去掉“在转换中包括MathType数据(D)”前面的勾,点击“确定”。3.回到MathType,选中公式,按“Ctrl+C”复制,然后粘贴到txt文件中,公式显示为LaTex代码。http://www.mathtype.cn原创 2018-01-05 11:17:27 · 1388 阅读 · 0 评论 -
matlab 矩阵的集合
使用元跑数组,来存放矩阵的集合,取值的时候不能使用小括号a=cell(1,2)%a是一个1*2维的cell数组赋值时必须使用大括号>> a(1)='H'Conversion to cell from char is not possible. 无法将char格式转换为cell格式>> a{1}='H'a = 'H' []访问ce原创 2018-01-10 22:08:31 · 4442 阅读 · 0 评论 -
python中对象属性
1. dir() 函数 dir([object]) 会返回object所有有效的属性列表。示例如下:dir(SimhashIndex)Out[111]: ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute_...原创 2018-06-03 14:01:00 · 1054 阅读 · 0 评论 -
mysql查询结果导出/输出/写入到文件
mysql查询结果导出/输出/写入到文件方法一:直接执行命令:mysql> select count(1) from table into outfile '/tmp/test.xls';Query OK, 31 rows affected (0.00 sec)在目录/tmp/下会产生文件test.xls遇到的问题:mysql> select count(1) from table ...原创 2018-06-03 17:24:35 · 2081 阅读 · 0 评论 -
倒排索引
倒排索引(Inverted index)方法介绍倒排索引是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射,常被应用于搜索引擎和关键字查询的问题中。以英文为例,下面是要被索引的文本:T0 = "it is what it is" T1 = "what is it" T2 = "it is a banana" 我们就能得到下面的反向文件索引:"a": ...转载 2018-06-04 17:25:55 · 944 阅读 · 0 评论 -
TF-IDF(term frequency词频)
出现次数最多的词是----"的"、"是"、"在"----这一类最常用的词。它们叫做"停用词"(stop words),表示对找到结果毫无帮助、必须过滤掉的词。如果某个词比较少见,但是它在这篇文章中多次出现,那么它很可能就反映了这篇文章的特性,正是我们所需要的关键词。知道了"词频"(TF)和"逆文档频率"(IDF)以后,将这两个值相乘,就得到了一个词的TF-IDF值。某个词对文章的重要性越高原创 2018-06-04 19:18:35 · 5478 阅读 · 0 评论 -
XGBOOST 进行稀疏数据的处理
xgboost进行稀疏数据的处理当数据及其稀疏的时候,不应该转换为numpy等形式,尤其是点击数据。商品成千上万,用户点击商品的种类只是其中的某一些类型,但是以此建立起来的点击矩阵的纬度却是庞大而冗余解决方式1:将数据转化为libsvm存储的形式, 数据的第一列是label, 第二列之后的是特征label key1:value1 key2:value2 key3:val...原创 2018-07-21 21:59:41 · 7558 阅读 · 0 评论