wyzhuang / GH-LSTMs

Software defect prediction based on gated hierarchical LSTMs
16 stars 3 forks source link

关于词向量模型 #3

Open oneisall996 opened 1 year ago

oneisall996 commented 1 year ago

您好,请问运行“GloVe”下的"demo.sh"生成基于GloVe方法的词向量模型的时候,并未生成相应的models文件夹下的词向量模型是为什么呢

wyzhuang commented 1 year ago

问题的描述不是很详细,因为不太清楚具体是什么原因,就简单给出以下几个建议: 1.首先不是很确定,是我们给出的例子中直接运行demo.sh也不行吗?这个在我们服务器上运行确实是没有问题的,我刚才又重复了一次,是可以生成对应的模型的。如果确实是我们给出的例子无法运行可以看一下建议3以及之后的建议,如果是想用到自己的项目可以看一下建议2. 2.检查demo.sh里的一些参数设置,这里可能因为我们前后修改不统一,导致demo.sh文件上面的一些参数是无用的,对其修改可能不会起到效果。比如,变更语料库的名字应该修改的是文件下方的arr_project,而不是上方的CORPUS,很抱歉我们没有仔细检查并删去累赘的代码让您产生误解。 3.也有可能是环境的问题,不过一般的linux环境都是可以正常运行的,可能一些虚拟环境,比如colab环境下由于安装的linux核心库版本太低会导致运行出现问题。 4.可以尝试原版的GloVe开源库,实际上,我们这里的GloVe就是完全搬运github上开源的GloVe库,仅仅对原来的demo.sh做了一些简单修改,只要对照一下,就能明白代码的含义,以及我们修改了哪里。你们可以根据自己的项目在原版上进行修改。 5.如果还是行不通,可以改用其他的词向量模型,比如word2vec,根据我们实验,效果基本没有什么差距。我们之所以用GloVe也只是因为之前用的比较顺手,并没有非常必要的理由。

oneisall996 commented 1 year ago

非常感谢您耐心的回答,这边运行ant(也就是您给出的例子)是没有问题的,猜想是您给出的示例词向量模型已经生成好了,但是换了一个新的数据集例子(比如camel)重新运行demo.sh就不行了,也进行了相关参数的替换,还是无法在40文件夹下生成类似的bin以及txt文件。运行的时候给出了这样的提示”Unable to find any vocab entries in vocab file vocab.txt.“,看了一下这个文件显示为空的,不知道是不是我这边误删了这个文件的内容导致的还是什么其他的问题

wyzhuang commented 1 year ago

或许确实是我遗漏环境配置的问题,可以先尝试在GloVe文件目录下输入make命令,然后再执行bash demo.sh命令。如果不行的话我再看看是不是其他原因。

oneisall996 commented 1 year ago

试了下还是不行

wyzhuang commented 1 year ago

尝试了几种可能的方法,但这个报错在我这里无法复现出来。你可以尝试一下原版:https://github.com/stanfordnlp/GloVe ,如果原版可以运行的话,再结合我们的对demo.sh进行修改就可以了。