Utils

deepke.relation_extraction.standard.utils.ioUtils module

deepke.relation_extraction.standard.utils.ioUtils.load_pkl(fp: str, verbose: bool = True) Any[source]

读取文件 Args :

fp (String) : 读取数据地址 verbose (bool) : 是否打印日志

Return :

data (Any) : 读取的数据

deepke.relation_extraction.standard.utils.ioUtils.save_pkl(data: Any, fp: str, verbose: bool = True) None[source]

保存文件 Args :

data (Any) : 数据 fp (String) :保存的地址 verbose (bool) : 是否打印日志

deepke.relation_extraction.standard.utils.ioUtils.load_csv(fp: str, is_tsv: bool = False, verbose: bool = True) List[source]

读取csv格式文件 Args :

fp (String) : 保存地址 is_tsv (bool) : 是否为excel-tab格式 verbose (bool) : 是否打印日志

Return :

list(reader) (List): 读取的List数据

deepke.relation_extraction.standard.utils.ioUtils.save_csv(data: List[Dict], fp: str, save_in_tsv: False, write_head=True, verbose=True) None[source]

保存csv格式文件 Args :

data (List) : 所需保存的List数据 fp (String) : 保存地址 save_in_tsv (bool) : 是否保存为excel-tab格式 write_head (bool) : 是否写表头 verbose (bool) : 是否打印日志

deepke.relation_extraction.standard.utils.ioUtils.load_jsonld(fp: str, verbose: bool = True) List[source]

读取jsonld文件 :param fp: jsonld 文件地址 :type fp: String :param verbose: 是否打印日志 :type verbose: bool

Returns

读取后的List

Return type

datas (List)

deepke.relation_extraction.standard.utils.ioUtils.save_jsonld(fp)[source]

保存jsonld格式文件

deepke.relation_extraction.standard.utils.ioUtils.jsonld2csv(fp: str, verbose: bool = True) str[source]

读入 jsonld 文件,存储在同位置同名的 csv 文件 :param fp: jsonld 文件地址 :type fp: String :param verbose: 是否打印日志 :type verbose: bool

Returns

文件地址

Return type

fp_new (String)

deepke.relation_extraction.standard.utils.ioUtils.csv2jsonld(fp: str, verbose: bool = True) str[source]

读入 csv 文件,存储在同位置同名的 jsonld 文件 :param fp: csv 文件地址 :type fp: String :param verbose: 是否打印日志 :type verbose: bool

Returns

文件地址

Return type

fp_new (String)

deepke.relation_extraction.standard.utils.nnUtils module

deepke.relation_extraction.standard.utils.nnUtils.manual_seed(seed: int = 1) None[source]

设置seed。

deepke.relation_extraction.standard.utils.nnUtils.seq_len_to_mask(seq_len: Union[List, numpy.ndarray, torch.Tensor], max_len=None, mask_pos_to_true=True)[source]

将一个表示sequence length的一维数组转换为二维的mask,默认pad的位置为1。 转变 1-d seq_len到2-d mask。

Args :

seq_len (list, np.ndarray, torch.LongTensor) : shape将是(B,) max_len (int): 将长度pad到这个长度。默认(None)使用的是seq_len中最长的长度。但在nn.DataParallel的场景下可能不同卡的seq_len会有区别,所以需要传入一个max_len使得mask的长度是pad到该长度。

Returns

shape将是(B, max_length), 元素类似为bool或torch.uint8

Return type

mask (np.ndarray, torch.Tensor)

deepke.relation_extraction.standard.utils.nnUtils.to_one_hot(x: torch.Tensor, length: int) torch.Tensor[source]
Parameters
  • x (torch.Tensor) – [B] , 一般是 target 的值

  • length (int) – L ,一般是关系种类树

Returns

[B, L] 每一行,只有对应位置为1,其余为0

Return type

x_one_hot.to(device=x.device) (torch.Tensor)