下载
最好是Linux环境,Windows没有试。
老师直接下载邮件附件的LASER压缩包(里面包括了已经下载好的模型)即可,直接Extract here。解压出来为LASER文件夹,文件夹的位置即为其安装位置,后面环境变量会用到。文件夹内部内容为下图:
安装环境依赖
- python 3.6, numpy
pytorch 1.0(这个老师应该装了吧?)
1
2cpu版本: conda install pytorch-cpu torchvision-cpu(我用的Anaconda,且环境是虚拟机,所以用的是这个命令)
gpu版本: pip install torch torchvisionFaiss(需要把镜像源换成 mirrors.ustc.edu.cn/ubuntu/ 才能正常下载)
1
pip install faiss
jieba,中文分词器
1
pip install jieba
其他必要步骤
添加环境变量
1 | vim .bashrc |
测试结果
因为老师只需要得到句子的嵌入和两个句子之间的相似度,这里我只介绍在embed文件夹中如何使用其预训练模型(其他的我也没试过,囧)。
- 进入tasks/embed文件夹,将要计算相似度的句子写成文件,如下图input文件(这里举例为中文,也可以多个句子,每个句子要自成一行)。
命令:input-file和output-file即我们对应的输入输出文件,由于输出的格式为二进制,所以之后要处理。而LANGUAGE则为对应的语言,如 中文对应cmn, 英文对应eng,法语对应fr等等。
1
2
3bash ./embed.sh INPUT-FILE LANGUAGE OUTPUT-FILE
例如:bash ./embed.sh input cmn output将二进制输出可视化,对应embed文件夹里的main.py,老师需要将里面的output改为自己设置的输出名字。
1 | import numpy as np |
修改正确后直接运行此py文件,即可得到对应的余弦相似度矩阵。