@EggGump
2018-10-12T15:32:10.000000Z
字数 842
阅读 602
胡兵
tensorflow
TransE.py:主文件,主要的逻辑都在这个文件里面
transDOpenKE.py:损失函数计算文件,由TransE.py调用并计算损失函数
calculate_ROC.py 计算ROC与AUC
calculate_topXX.py如名
sample.c未使用,本来是用作加快抽样速度的,后来发现没必要。
compareTwoDataset: 比较函数,主要用来比较训练后的模型对数据集的区分能力,数据有训练集,测试集,坏集,坏集与训练休的差距越大越好,测试集与训练集的差距越小越好
compute_ROC: 如名,计算ROC
cooperateC: 方法未使用,可删可注释
tripleClassification: 如名,三元组分类,对传入文件中的所有三元组进行分类,并计算正例率
train 训练函数,训练模型时手动指定训练次数和要保存的模型名字
link_predict_tail 对传入的文件进行链接预测,并用pickle保存预测结果。只预测尾结点,结果已排序
compareScoreAfterTrain 前期测试用的,无作用
get_negative_instance,get_positive_instance,sampling,getCorruptedTriple 这mt 个函数都是抽样函数
initData 初始化所有参数,包括tensorflow的初始向量
getDetail 加载结点的ID映射文件到内存
getTriple 加载三元组到内存
__init__ 初始化参数,里面定义了tensorflow训练时的滑动平均学习率和一些初始参数,用于真实使用时情况太多,因此很多都是临时手动指定
其他未说明 代码很短,功能简单就没说了,一眼就能明白
里面自带注释,主要是一些损失函数的实现逻辑。
注:如果要使用C加速的话要在linux里面运行,windows要运行起来比装个linux还麻烦。