word2vec

python word2vec not installing

拥有回忆 提交于 2020-05-28 13:45:42
问题 I've been trying to install word2vec on my Windows 7 machine using my Python2.7 interpreter: https://github.com/danielfrg/word2vec I've tried downloading the zip & running python setup.py install from the unzipped directory and running pip install . however in both instances it returns the below errors: Downloading/unpacking word2vec Downloading word2vec-0.5.1.tar.gz Running setup.py egg_info for package word2vec Traceback (most recent call last): File "<string>", line 16, in <module> File "c

In spacy, how to use your own word2vec model created in gensim?

蓝咒 提交于 2020-05-25 12:19:42
问题 I have trained my own word2vec model in gensim and I am trying to load that model in spacy. First, I need to save it in my disk and then try to load an init-model in spacy but unable to figure out exactly how. gensimmodel Out[252]: <gensim.models.word2vec.Word2Vec at 0x110b24b70> import spacy spacy.load(gensimmodel) OSError: [E050] Can't find model 'Word2Vec(vocab=250, size=1000, alpha=0.025)'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory. 回答1:

In spacy, how to use your own word2vec model created in gensim?

一曲冷凌霜 提交于 2020-05-25 12:18:30
问题 I have trained my own word2vec model in gensim and I am trying to load that model in spacy. First, I need to save it in my disk and then try to load an init-model in spacy but unable to figure out exactly how. gensimmodel Out[252]: <gensim.models.word2vec.Word2Vec at 0x110b24b70> import spacy spacy.load(gensimmodel) OSError: [E050] Can't find model 'Word2Vec(vocab=250, size=1000, alpha=0.025)'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory. 回答1:

word2vec - what is best? add, concatenate or average word vectors?

空扰寡人 提交于 2020-05-25 06:41:22
问题 I am working on a recurrent language model. To learn word embeddings that can be used to initialize my language model, I am using gensim's word2vec model. After training, the word2vec model holds two vectors for each word in the vocabulary: the word embedding (rows of input/hidden matrix) and the context embedding (columns of hidden/output matrix). As outlined in this post there are at least three common ways to combine these two embedding vectors: summing the context and word vector for each

pyltp的安装与简单实用分词

Deadly 提交于 2020-05-07 19:12:57
from pyltp import Segmentor segmentor = Segmentor() segmentor.load( " cws.model " )#你自己的路径 words =segmentor.segment( " 元芳你怎么看 " ) print ( " | " .join(words)) segmentor.release() 首先要寻找相应python版本的库,在那个虚拟环境下使用:如3.5版本的用我的tensorflow虚拟环境, 这个方法首先要下载pyltp相应的whl安装包,这里提供一个免费可用的下载地址: windows下python3.5 https://link.zhihu.com/?target=http%3A//mlln.cn/2018/01/31/pyltp%E5%9C%A8windows%E4%B8%8B%E7%9A%84%E7%BC%96%E8%AF%91%E5%AE%89%E8%A3%85/pyltp-0.2.1-cp35-cp35m-win_amd64.whl Windows下python3.6 https://link.zhihu.com/?target=http%3A//mlln.cn/2018/01/31/pyltp%E5%9C%A8windows%E4%B8%8B%E7%9A%84%E7%BC%96%E8%AF%91

深度解析Graph Embedding

℡╲_俬逩灬. 提交于 2020-05-04 11:14:31
Graph Embedding是推荐系统、计算广告领域最近非常流行的做法,是从word2vec等一路发展而来的Embedding技术的最新延伸;并且已经有很多大厂将Graph Embedding应用于实践后取得了非常不错的线上效果。 word2vec和由其衍生出的item2vec是embedding技术的基础性方法,但二者都是建立在“序列”样本(比如句子、推荐列表)的基础上的。而在互联网场景下,数据对象之间更多呈现的是图结构。典型的场景是由用户行为数据生成的 物品全局关系图 ,以及加入更多属性的物品组成的 知识图谱 。 在面对图结构的时候,传统的序列embedding方法就显得力不从心了。在这样的背景下,对图结构中间的节点进行表达的graph embedding成为了新的研究方向,并逐渐在深度学习推荐系统领域流行起来。 DeepWalk 早期影响力较大的graph embedding方法是2014年提出的DeepWalk,它的主要思想是在由物品组成的图结构上进行随机游走,产生大量物品序列,然后将这些物品序列作为训练样本输入word2vec进行训练,最大化随机游走序列的似然概率,并使用最终随机梯度下降学习参数,得到物品的embedding。其目标函数为: $$ \zeta(s)=\frac{1}{|s|} \sum_{i=1}^{|s|} \sum_{i-t \leq j \leq

NLP中文短文本处理记录(一)

大憨熊 提交于 2020-05-04 07:23:38
数据清洗 更新 NLP短文本处理 (第一天参考文章)[https://blog.csdn.net/eastmount/article/details/50473675] 总结以上两个Tip如何删除停用词 NLP之文本清洗 NLP一些常用词 待读文章 第二天学习 封装中文分词 数据清洗 写代码前要想好数据该用什么格式输出,最好在纸上画出来,然后想如何能实现 更新 read_csv()读取含中文的csv文件时, encoding='utf-8'或'gb18030' , 会遇到有的行无法读出,增加参数 error_bad_lines=False 处理不规范的json文件 import json mess=[] with open( '谣言.json' , 'r' ,encoding= 'utf-8' ) as f: lines=f.readlines() i= 0 for line in lines: print(line) data=json.loads(line) mess.append(data) #i+=1 #if i>200: #break print(mess) 莫凡Python NLP短文本处理 强烈推荐 KDnuggets系列数据分析、NLP、机器学习文章 系列NLTK文章,没看 (第一天参考文章)[ https://blog.csdn.net/eastmount

使用lsh快速检索语义-词向量结合

主宰稳场 提交于 2020-04-29 13:46:24
""" test """ import os import gensim import pickle import time import numpy as np DIR_PATH = os.path.dirname(os.path.abspath( __file__ )) HASHTABLES = os.path.join(DIR_PATH, ' resource ' , ' hashtables.pkl ' ) WORD2VEC = os.path.join(DIR_PATH, ' resource ' , ' sgns.weibo.word ' ) RESOURCES = os.path.join(DIR_PATH, ' resource ' , ' resources.pkl ' ) class MyClass(object): def __init__ (self, Table_num=5, Hashcode_fun=5 ): self.hashtables = HASHTABLES self.word2vec = WORD2VEC self.resources = RESOURCES self.table_num = Table_num self.Hashcode_fun = Hashcode_fun def load_traindata(self): model =

自然语言处理之word2vec

独自空忆成欢 提交于 2020-04-28 21:49:13
  在word2vec出现之前,自然语言处理经常把字词转为one-hot编码类型的词向量,这种方式虽然非常简单易懂,但是数据稀疏性非常高,维度很多,很容易造成维度灾难,尤其是在深度学习中;其次这种词向量中任意两个词之间都是孤立的,存在语义鸿沟(这样就不能体现词与词之间的关系)而有Hinton大神提出的Distributional Representation 很好的解决了one-hot编码的主要缺点。解决了语义之间的鸿沟,可以通过计算向量之间的距离来体现词与词之间的关系。Distributional Representation 词向量是密集的。word2vec是一个用来训练Distributional Representation 类型的词向量的一种工具。 1、CBOW与Skip-Gram模型   word2vec模型其实就是简单化的神经网络,主要包含两种词训练模型:CBOW模型和Skip-gram模型。模型的结构图如下(注意:这里只是模型结构,并不是神经网络的结构)      CBOW模型根据中心词W(t) 周围的词来预测中心词;Skip-gram模型则根据中心词W(t) 来预测周围的词。   1)CBOW模型的第一层是输入层,输入的值是周围每个词的one-hot编码形式,隐藏层只是对输出值做了权值加法,没有激活函数进行非线性的转换,输出值的维度和输入值的维度是一致的。   2

个性化召回算法实践(五)——item2vec

霸气de小男生 提交于 2020-04-28 21:48:02
item2vec将用户的行为序列转化成item组成的句子,模仿word2vec训练word embedding将item embedding。基本思想是把原来高维稀疏的表示方式(one_hot)映射到低维稠密的向量空间中,这样我们就可以用这个低维向量来表示该项目(电影),进而通过计算两个低维向量之间的相似度来衡量两个项目之间的相似性。 embedding就是用一个低维的向量表示一个物体,可以是一个词,或是一个商品,或是一个电影等等。这个embedding向量的性质是能使距离相近的向量对应的物体有相近的含义 类似于Word2vec,item2vec有两种方式:CBOW和skip-gram模型。 CBOW使用的是词袋模型,模型的训练输入是某一个特征词的上下文相关的词对应的词向量,而输出就是这特定的一个词的词向量。Skip-Gram模型和CBOW的思路是反着来的,即输入是特定的一个词的词向量,而输出是特定词对应的上下文词向量。 主流程: 从log中抽取用户行为序列 将行为序列当成预料训练word2Vec得到item embedding 得到item sim关系用于推荐 在代码中,我们直接用gensim库实现。在gensim中,word2vec 相关的API都在包gensim.models.word2vec中。和算法有关的参数都在类gensim.models.word2vec