项目简介
本项目是基于深度学习框架开发的文本编码器,主要功能是把文本数据转化为向量表示,以用于后续自然语言处理任务。项目提供了Skip - thought Vector和Word2Vec两种预训练编码器模型,用户可按需选择进行编码。
项目的主要特性和功能
- 预训练编码器模型:有Skip - thought Vector和Word2Vec两种预训练模型,能满足不同场景的文本编码需求。
- 文本前处理:支持对文本数据进行分词、去除停用词等预处理操作。
- 灵活的API接口:提供简单易用的API,方便加载和使用预训练模型。
- 特征向量生成:可将文本数据转换为固定长度的特征向量,便于后续处理与分析。
- 最近邻搜索:支持查找与查询最接近的句子或单词的功能。
安装使用步骤
1. 复制项目
bash
cd text - encoder
2. 安装依赖
bash
pip install -r requirements.txt
3. 下载预训练模型
Skip - thought Vector
bash
mkdir word_embeddings
cd word_embeddings
wget http://www.cs.toronto.edu/~rkiros/models/dictionary.txt
wget http://www.cs.toronto.edu/~rkiros/models/utable.npy
wget http://www.cs.toronto.edu/~rkiros/models/btable.npy
wget http://www.cs.toronto.edu/~rkiros/models/uni_skip.npz
wget http://www.cs.toronto.edu/~rkiros/models/uni_skip.npz.pkl
wget http://www.cs.toronto.edu/~rkiros/models/bi_skip.npz
wget http://www.cs.toronto.edu/~rkiros/models/bi_skip.npz.pkl
Word2Vec
bash
wget https://s3.amazonaws.com/dl4j - distribution/GoogleNews - vectors - negative300.bin.gz
gunzip GoogleNews - vectors - negative300.bin.gz
4. 配置模型路径
修改skipthoughts.py
中的path_to_models
和path_to_tables
,指向本地的word_embeddings
目录。
5. 使用示例
Skip - thought Vector
python
import skipthoughts
model = skipthoughts.load_model()
encoder = skipthoughts.Encoder(model)
vectors = encoder.encode(X)
Word2Vec
python
from gensim.models import KeyedVectors
model = KeyedVectors.load_word2vec_format('GoogleNews - vectors - negative300.bin', binary=True)
vectors = model[X]
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】