自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 win10 安装单机版 pyspark

参考这篇博客: https://blog.csdn.net/weixin_38556445/article/details/78182264默认已经电脑已经安装java 和 python。1  需要安装spark 和 hadoop (python3.6 需要spark2.1以上版本)两者作相同处理:解压之后,还需要完成SPARK_HOME和bin环境变量相关配置;HADOOP_HOME...

2018-12-29 16:46:40 1047

原创 Spark的基本概念

2018年年末,开始spark学习 http://dblab.xmu.edu.cn/blog/1709-2/1 spark 涉及的名词解析Block 输入可能以多个文件的形式存储在HDFS上,每个File都包含了很多块,称为Block。InuptSplit 当Spark读取这些文件作为输入时,会根据具体数据格式对应的InputFormat进行解析,一般是将若干个Block合并...

2018-12-29 09:39:54 493

原创 基于gensim TFIDF模型 的文章推荐算法

1. gensim.similarities.SparseMatrixSimilarity 的三个方法2. TFIDF 源码浅析3.  gensim使用之一 tfidf 和lsi一  训练阶段     输入数据格式:一个列表,列表中的每个元素(也是列表)代表一个文本。每个文本分词后的词语组成的一个列表代表该文本。 生成的模型、tfidf矩阵、文章item_id列表,字典,语料分别保存。...

2018-12-28 16:45:28 5498 3

原创 解决 UserWarning: detected Windows; aliasing chunkize to chunkize_serial warnings.warn("detected Win

1. 原因:windows自身的问题。Some algorithms in Gensim (mostly the distributed/parallelized versions) call a function called chunkize, which splits an input stream of records into batches. It works in a strea...

2018-12-28 15:23:22 3837 1

原创 《编写高质量代码 改善python程序的91个建议》读书笔记

前言: python 一切皆对象,此为前提。一、关于函数:不要在函数中定义可变对象为默认值,使用异常替换返回错误,保证通过单元测试。python函数传递的是对象的引用。在类的初始化方法里,参数的默认值应该为None,因为默认参数在函数被调用时候仅仅被评估一次。二、编码。 最开始使用ASCII使用一个字节(8bit)只能表示128个字符;unicode 实现了从数字代码到不同语言字符集之间的...

2018-12-26 13:37:20 304

原创 解决 RuntimeWarning: invalid value encountered in double_scalars

在计算余弦相似度函数时候,出现这个错误 # 计算余弦相似度函数 def cos_like(self,array1, array2): num = float(np.matmul(array1, array2)) s = np.linalg.norm(array1) * np.linalg.norm(array2) return num ...

2018-12-26 11:08:21 120928 5

原创 python 垃圾回收

在for循环中,每次读取的数据占据较大内存和磁盘,在该次循环结束后可以启用内存回收,释放内存。 python变量占用了内存,仅仅通过del变量的方式,只是让这个变量无法再使用;虽然很多书上都说是,del变量会使得变量的引用次数-1,如果这个数成为0,会被垃圾回收,但是回收的速度确实令人等不起(目测5分钟都没什么反应)。探究发现,其中一个解决办法是调用gc模块的回收函数,这样就能立刻释放内存。...

2018-12-26 10:30:02 207

原创 基于sklearn TFIDF模型 的文章推荐算法

1   sklearn的TfidfVectorizer() 方法的参数解释2    手写tfidf模型3   大数据情况下,如何计算测试集文本和训练集文本的余弦相似度一  训练阶段     输入数据格式:一个列表,列表中的每个元素代表一个文本。每个文本分词后的词语组成的一个字符串 代表该文本。 生成的模型、tfidf矩阵、文章item_id列表分别保存。import pandas...

2018-12-20 16:49:44 2539

原创 redis 发布订阅 python实现

一、首先实现一个redis类,提供给订阅者和发布者调用import redisclass RedisHelper: def __init__(self): # 链接服务端 self.__conn = redis.Redis(host='127.0.0.1') # 加入两个频道 self.chan_sub = 'f...

2018-12-18 14:20:29 1351

原创 相似度计算之余弦相似度

 一、定义及概念:余弦取值范围为[-1,1]。求得两个向量的夹角,并得出夹角对应的余弦值,此余弦值就可以用来表征这两个向量的相似性。夹角越小,趋近于0度,余弦值越接近于1,它们的方向更加吻合,则越相似。当两个向量的方向完全相反夹角余弦取最小值-1。当余弦值为0时,两向量正交,夹角为90度。因此可以看出,余弦相似度与向量的幅值无关,只与向量的方向相关。由于连续离散点连线的斜率存在无穷大的问题...

2018-12-18 11:17:43 7223

原创 LDA(二) 文本聚类

一、算法原理:使用Kmeans进行聚类二、算法流程:1. 对给定的语料先分词,得到分词后的语料;2. 构造词典,corpus_tfidf, 最后构造 corpus_lda3. Kmeans聚类,pred 是对语料的聚类结果列表。pred = kmean.predict(tfidf_vec)#!/usr/bin/python# -*- coding:utf8 -*-...

2018-12-17 14:56:33 3912 1

原创 PLSA原理

一、原理来源:https://www.cnblogs.com/xueliangliu/archive/2012/08/01/2962162.htmlPLSA是个从文档中发现topic的算法,它认为文本可以分三个层次来理解。1,文档(d);2,主题(z);3,单词(w),既一个文档包含若干主题,每个主题包含若干单词。从概率层面来讲,这里的包含其实是某种分布。也就是说,一个文档可以看做在一些主...

2018-12-17 09:49:58 643

原创 gensim 使用之二 从gensim到sklearn的格式转换

从gensim到sklearn的格式转换一个很尴尬的问题是,gensim中的corpus数据格式,sklearn是无法识别的。即gensim中对向量的表示形式与sklearn要求的不符。在gensim中,向量是稀疏表示的。例如[(0,5),(6,3)] 意思就是说,该向量的第0个元素值为5,第6个元素值为3,其他为0.但是这种表示方式sklearn是无法识别的。sklearn的输入一般是与n...

2018-12-15 15:49:09 967

原创 gensim使用之一 tfidf 和lsa

1、给定训练语料生成语料的tfidf向量和lsi向量;2、对新的测试语料,用tfidf和lsi 判断其和训练语料的相似度。import jiebafrom gensim import corpora, modelsfrom gensim.similarities import Similarity#jieba.load_userdict("userdict.txt")stopwo...

2018-12-15 14:25:43 4714 1

原创 中文NLP知识总结

一、词袋模型:分词、去停用词、消除数字、英文,得到若干词语的集合。二、词典:词语和其索引ID的一一对应关系。假设共有N个词语。三、one-hot编码: 在词典基础上,分词之后的文章的词频向量。可以看成是M*N的单词-文档矩阵A。A(i,j)=第i篇文章中词典索引为j的词语出现的次数,即词频TF。四、TF-IDF模型:在one-hot基础上,A(i,j)的值由词频变成了词频*逆文档频率。...

2018-12-15 11:26:31 1170

原创 win10+ pycharm 的基本操作

1、通过cmd 进入某个文件夹2. pycharm 左侧工具栏显示:view - tool windows - project3 代码误删:在Project栏中,右键单击需要恢复的文件夹,选择 Local History -> Show History :revert...

2018-12-14 09:32:39 983

原创 redis 之使用

1、windows启动redis双击 redis-cli在cmd 进入redis文件夹:redis-cli --raw    【可以让中文正确显示】2、史上最全的redis 面试问题https://www.imooc.com/article/363993、redis 数据类型之hash模式:{key,{key1,value}}          key  字段  字段的...

2018-12-07 11:22:01 132

原创 从零开始的文本TF-IDF向量构造和基于余弦相似度的文本分类

一、任务需求 1、给定数据库里面的N行数据每行代表一篇文章,属性分别是[id, title, summuary,content] ,从mysql数据库获取数据并生成DataFrame格式的数据,有两列,分别是id 和content。id对应数据表里的id,content根据 content > summuary > title 重要程度排序,对应数据表相关列的数据。...

2018-12-06 15:48:33 3553

原创 2018-12-5

今日总结1、用DataFrame如何循环添加一行数据。2、构建全0的二维numpy数组,dtype如何设定为float163、完成问题,不要只求助于‘import’,算法需要自己实现才能灵活使用。...

2018-12-06 00:17:50 89

原创 pycharm debug模式

设置断点 在行号后单击(双击取消)Alt + Shift + F9 运行debug模式按F8,执行下一行代码调试快捷键 shift + Alt + F10终止快捷键 Ctrl + F2

2018-12-03 14:30:59 1316

原创 python生成器,生产消费者模型

一、生成器的概念综述一个带有 yield 的函数就是一个 generator,它和普通函数不同,生成一个 generator 看起来像函数调用,但不会执行任何函数代码,直到对其调用 next()(在 for 循环中会自动调用 next())才开始执行。虽然执行流程仍按函数的流程执行,但每执行到一个 yield 语句就会中断,并返回一个迭代值,下次执行时从 yield 的下一个语句继续执行。看起...

2018-12-03 11:56:17 350

原创 机器学习算法(一)SVD

前言:特征值分解: 其中Q是这个矩阵A的特征向量组成的矩阵,Σ是一个对角阵,每一个对角线上的元素就是一个特征值。特征值分解可以得到特征值与特征向量,特征值表示的是这个特征到底有多重要,而特征向量表示这个特征是什么,可以将每一个特征向量理解为一个线性的子空间,我们可以利用这些线性的子空间干很多的事情。不过,特征值分解也有很多的局限,比如说变换的矩阵必须是方阵。 一、奇异值奇异值分...

2018-12-03 10:26:28 267 1

原创 matplotlib绘图相关

1、在jupyter里面使用这个可以,省去plt.show()这句话,但是在pycharm里面,没有此用法,需要自行plt.show()。%matplotlib inline2、plt.matshow(矩阵or数组),画出这个矩阵,不同的值赋予不同的颜色。 ...

2018-12-03 09:51:39 188

KDD Cup 2012 Track1 数据集

KDD Cup 2012 Track1 数据集。数据集包含了用户特征和Item特征。文件为百度云链接。可快速下载。

2019-05-06

空空如也

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

TA关注的人

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