def _create_example(self, lines, set_type): examples = [] for (i, line) in enumerate(lines): guid = "%s-%s" % (set_type, i)#生成唯一编号 text = tokenization.convert_to_unicode(line[1])#bert里面的函数,生成句子 label = tokenization.convert_to_unicode(line[0])#标签 examples.append(InputExample(guid=guid, text=text, label=label)) return examples
def _create_example(self, lines, set_type): examples = [] for (i, line) in enumerate(lines): guid = '%s-%s' % (set_type, i) text = tokenization.convert_to_unicode(line[1]) label = tokenization.convert_to_unicode(line[0]) examples.append(InputExample(guid=guid, text=text, label=label)) return examples
def _create_examples(self, lines, set_type): """ :param lines: 二维矩阵 [['O B-PER O'], ['char1, char2, char3'], ...] :param set_type: 类型 :return: list [InputExample1, InputExample2, ... ] """ examples = [] for i, line in enumerate(lines): guid = '%s-%s' % (set_type, i) text = tokenization.convert_to_unicode(line[1]) label = tokenization.convert_to_unicode(line[0]) examples.append(InputExample(guid=guid, text=text, label=label)) return examples
def _create_examples(self, lines, set_type): """Creates examples for the training and dev sets.""" examples = [] for (i, line) in enumerate(lines): if i == 0: continue guid = "%s-%s" % (set_type, i) text_a = tokenization.convert_to_unicode(line[3]) if set_type == "test": label = "重来" else: label = tokenization.convert_to_unicode(line[0]) examples.append(InputExample(guid=guid, text_a=text_a, label=label)) return examples
def _create_examples(self, lines, set_type): examples = [] np.random.shuffle(lines) for i, line in enumerate(lines): guid = '%s-%s' %(set_type, i) # if set_type == 'test': # text_a = tokenization.convert_to_unicode(line[1]) # label = '0' # else: # text_a = tokenization.convert_to_unicode(line[1]) # label = tokenization.convert_to_unicode(line[0]) # self.labels.add(label) text_a = tokenization.convert_to_unicode(line[1]) label = tokenization.convert_to_unicode(line[0]) self.labels.add(label) examples.append( InputExample(guid=guid, text_a=text_a, label=label, text_b=None) ) return examples
def _create_example(self, lines, set_type): examples = [] for (i, line) in enumerate(lines): guid = "%s-%s" % (set_type, i) text = tokenization.convert_to_unicode(line[1]) label = tokenization.convert_to_unicode(line[0]) # if i == 0: # print('label: ', label) # print('text:',text) # print('label:',label) ''' text: 我 们 变 而 以 书 会 友 , 以 书 结 缘 , 把 欧 美 、 港 台 流 行 的 食 品 类 图 谱 、 画 册 、 工 具 书 汇 集 一 堂 。 label: O O O O O O O O O O O O O O O B-LOC B-LOC O B-LOC B-LOC O O O O O O O O O O O O O O O O O O O O text: 为 了 跟 踪 国 际 最 新 食 品 工 艺 、 流 行 趋 势 , 大 量 搜 集 海 外 专 业 书 刊 资 料 是 提 高 技 艺 的 捷 径 。 label: O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O text: 其 中 线 装 古 籍 逾 千 册 ; 民 国 出 版 物 几 百 种 ; 珍 本 四 册 、 稀 见 本 四 百 余 册 , 出 版 时 间 跨 越 三 百 余 年 。 label: O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O InputExample(guid=guid, text=text, label=label)是一个类的初始化,可通过 a.guid,a.text,a.label,分别调用属性值 ''' examples.append(InputExample(guid=guid, text=text, label=label)) return examples
def read_line_examples(lst_strs): """Read a list of `InputExample`s from a list of strings.""" unique_id = 0 for ss in lst_strs: line = tokenization.convert_to_unicode(ss) if not line: continue line = line.strip() text_a = None text_b = None m = re.match(r"^(.*) \|\|\| (.*)$", line) if m is None: text_a = line else: text_a = m.group(1) text_b = m.group(2) yield InputExample(unique_id=unique_id, text_a=text_a, text_b=text_b) unique_id += 1
def read_tokenized_examples(lst_strs): """ :param lst_strs: [[]] 每个子元素为一个序列,子元素的每一个元素为这个序列的一个index :return: """ unique_id = 0 # 对lst_list中的数据进行转化为ID lst_strs = [[tokenization.convert_to_unicode(w) for w in s] for s in lst_strs] for ss in lst_strs: text_a = ss text_b = None try: # 这里使用|||对输入的句子进行切分如果存在这个符号,表示输入的是两个句子,即text_a 和text_b, 否则index出错,只会存在test_a j = ss.index('|||') text_a = ss[:j] text_b = ss[(j + 1):] except ValueError: pass yield InputExample(unique_id=unique_id, text_a=text_a, text_b=text_b) unique_id += 1
def read_examples(input_file): """Read a list of `InputExample`s from an input file.""" examples = [] unique_id = 0 with tf.gfile.GFile(input_file, "r") as reader: while True: line = tokenization.convert_to_unicode(reader.readline()) if not line: break line = line.strip() text_a = None text_b = None m = re.match(r"^(.*) \|\|\| (.*)$", line) if m is None: text_a = line else: text_a = m.group(1) text_b = m.group(2) examples.append( InputExample(unique_id=unique_id, text_a=text_a, text_b=text_b)) unique_id += 1 return examples