1 Star 0 Fork 0

BOGOOJ/TuckER

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
load_data.py 1.42 KB
一键复制 编辑 原始数据 按行查看 历史
Ivana Balazevic 提交于 2019-04-26 15:40 . Update load_data.py
class Data:
def __init__(self, data_dir="data/FB15k-237/", reverse=False):
self.train_data = self.load_data(data_dir, "train", reverse=reverse)
self.valid_data = self.load_data(data_dir, "valid", reverse=reverse)
self.test_data = self.load_data(data_dir, "test", reverse=reverse)
self.data = self.train_data + self.valid_data + self.test_data
self.entities = self.get_entities(self.data)
self.train_relations = self.get_relations(self.train_data)
self.valid_relations = self.get_relations(self.valid_data)
self.test_relations = self.get_relations(self.test_data)
self.relations = self.train_relations + [i for i in self.valid_relations \
if i not in self.train_relations] + [i for i in self.test_relations \
if i not in self.train_relations]
def load_data(self, data_dir, data_type="train", reverse=False):
with open("%s%s.txt" % (data_dir, data_type), "r") as f:
data = f.read().strip().split("\n")
data = [i.split() for i in data]
if reverse:
data += [[i[2], i[1]+"_reverse", i[0]] for i in data]
return data
def get_relations(self, data):
relations = sorted(list(set([d[1] for d in data])))
return relations
def get_entities(self, data):
entities = sorted(list(set([d[0] for d in data]+[d[2] for d in data])))
return entities
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/bogooj/TuckER.git
git@gitee.com:bogooj/TuckER.git
bogooj
TuckER
TuckER
master

搜索帮助