当前位置: 首页 > news >正文

关于门户网站建设珠海正规网站制作哪家强

关于门户网站建设,珠海正规网站制作哪家强,优化内容,购物网站建设流程1--AutoTokenizer的使用 官方文档 AutoTokenizer() 常用于分词#xff0c;其可调用现成的模型来对输入句子进行分词。 1-1--简单Demo 测试代码#xff1a; # 分词器测试Demo from transformers import AutoTokenizerif __name__ __main__:checkpoint …1--AutoTokenizer的使用 官方文档 AutoTokenizer() 常用于分词其可调用现成的模型来对输入句子进行分词。 1-1--简单Demo 测试代码 # 分词器测试Demo from transformers import AutoTokenizerif __name__ __main__:checkpoint distilbert-base-uncased-finetuned-sst-2-english # 使用该模型tokenlizer AutoTokenizer.from_pretrained(checkpoint) # 加载该模型对应的分词器raw_input [I love kobe bryant.,Me too.]inputs tokenlizer(raw_input, padding True, return_tensors pt) # padding并返回pytorch版本的tensorprint(After tokenlizer: \n, inputs) # 打印分词后的结果str1 tokenlizer.decode(inputs[input_ids][0]) # 将词ID恢复print(str1: \n, str1)print(All done!) 输出结果 After tokenlizer: { input_ids: tensor([[101, 1045, 2293, 24113, 12471, 1012, 102],[101, 2033, 2205, 1012, 102, 0, 0]]), attention_mask: tensor([[1, 1, 1, 1, 1, 1, 1],[1, 1, 1, 1, 1, 0, 0]]) } str1: [CLS] i love kobe bryant. [SEP] 分析         上述代码将输入的句子进行分词并将每一个词利用一个 ID 进行映射例如上述代码中101 对应 [CLS]1045 对应 I2293 对应 love24113 对应 kobe12471 对应 bryant1012 对应 . 符号102 对应 [SEP]         input_ids 存储了每一个句子分词后对应的 ID0 表示 padding 的词由于上面测试代码设置了padding因此会将每一个句子自动padding为最长句子的长度padding的词用 0 来表示。         attention_mask 标记了哪些词是真正有意义的只有为 1 的词才会参与后续的 attention 等计算。         利用 decode 可以将词 ID 重新解码为句子。 1-2--常用参数 1-2-1--padding 设置 padding 时可以指定具体的 padding 长度 from transformers import AutoTokenizerif __name__ __main__:checkpoint distilbert-base-uncased-finetuned-sst-2-englishtokenlizer AutoTokenizer.from_pretrained(checkpoint) raw_input [I love kobe bryant.,Me too.]input1 tokenlizer(raw_input, padding longest, return_tensors pt) # padding长度与输入中的最长句子相同input2 tokenlizer(raw_input, padding max_length, return_tensors pt) # padding到最大句子长度默认是512input3 tokenlizer(raw_input, padding max_length, max_length 10, return_tensors pt) # 指定最大长度是10print(After tokenlizer: \n, input1[input_ids].shape)print(After tokenlizer: \n, input2[input_ids].shape)print(After tokenlizer: \n, input3[input_ids].shape)输出结果 After tokenlizer: torch.Size([2, 7]) After tokenlizer: torch.Size([2, 512]) After tokenlizer: torch.Size([2, 10]) 1-2-2--truncation 设置 truncation 时用于截断可以指定截断的长度。 from transformers import AutoTokenizerif __name__ __main__:checkpoint distilbert-base-uncased-finetuned-sst-2-englishtokenlizer AutoTokenizer.from_pretrained(checkpoint) raw_input [I love kobe bryant.,Me too.]# 长度超过5的部分会被截断input1 tokenlizer(raw_input, padding longest, truncation True, max_length5, return_tensors pt)print(After tokenlizer: \n, input1)str1 tokenlizer.decode(input1[input_ids][0]) # 将词ID恢复print(str1: \n, str1) 输出结果 After tokenlizer: { input_ids: tensor([[ 101, 1045, 2293, 24113, 102],[ 101, 2033, 2205, 1012, 102]]), attention_mask: tensor([[1, 1, 1, 1, 1],[1, 1, 1, 1, 1]]) } str1: [CLS] i love kobe [SEP] 2--BertTokenizer的使用 2-1--简单Demo ① 编码两个句子 from transformers import BertTokenizerif __name__ __main__:tokenizer BertTokenizer.from_pretrained(pretrained_model_name_or_path bert-base-chinese)sents [我喜欢科比布莱恩特., 我也是., 我喜欢他的后仰跳投, 我喜欢他的曼巴精神]# 编码两个句子 inputs tokenizer.encode(text sents[0],text_pair sents[1],truncation True, # 截断padding max_length, # padding到最大长度add_special_tokens True,max_length 20, # 设置最大长度return_tensors None # None默认返回list可取值tf,pt,np)print(inputs)print(tokenizer.decode(inputs))输出结果 inputs: [101, 2769, 1599, 3614, 4906, 3683, 2357, 5812, 2617, 4294, 119, 102, 2769, 738, 3221, 119, 102, 0, 0, 0] decode: [CLS] 我 喜 欢 科 比 布 莱 恩 特. [SEP] 我 也 是. [SEP] [PAD] [PAD] [PAD] ② 增强编码 from transformers import BertTokenizerif __name__ __main__:tokenizer BertTokenizer.from_pretrained(pretrained_model_name_or_path bert-base-chinese)sents [我喜欢科比布莱恩特., 我也是., 我喜欢他的后仰跳投, 我喜欢他的曼巴精神]# 增强编码两个句子inputs tokenizer.encode_plus(text sents[0],text_pair sents[1],truncation True, # 截断padding max_length, # padding到最大长度add_special_tokens True,max_length 30, # 设置最大长度return_tensors None, # None默认返回list可取值tf,pt,np,return_token_type_ids True,return_attention_mask True,return_special_tokens_mask True,return_length True)for k, v in inputs.items():print(k, :, v)print(tokenizer.decode(inputs[input_ids])) 输出结果 input_ids : [101, 2769, 1599, 3614, 4906, 3683, 2357, 5812, 2617, 4294, 119, 102, 2769, 738, 3221, 119, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]token_type_ids : [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]special_tokens_mask : [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]attention_mask : [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]length : 30decode: [CLS] 我 喜 欢 科 比 布 莱 恩 特. [SEP] 我 也 是. [SEP] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] ③ 批量编码 from transformers import BertTokenizerif __name__ __main__:tokenizer BertTokenizer.from_pretrained(pretrained_model_name_or_path bert-base-chinese)sents [我喜欢科比布莱恩特., 我也是., 我喜欢他的后仰跳投, 我喜欢他的曼巴精神]# 批量编码句子inputs tokenizer.batch_encode_plus(batch_text_or_text_pairs [sents[0], sents[1]],truncation True, # 截断padding max_length, # padding到最大长度add_special_tokens True,max_length 20, # 设置最大长度return_tensors None, # None默认返回list可取值tf,pt,np,return_token_type_ids True,return_attention_mask True,return_special_tokens_mask True,return_length True)for k, v in inputs.items():print(k, :, v)print(decode: \n, tokenizer.decode(inputs[input_ids][0]))print(decode: \n, tokenizer.decode(inputs[input_ids][1])) 输出结果 input_ids : [[101, 2769, 1599, 3614, 4906, 3683, 2357, 5812, 2617, 4294, 119, 102, 0, 0, 0, 0, 0, 0, 0, 0], [101, 2769, 738, 3221, 119, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]token_type_ids : [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]special_tokens_mask : [[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]length : [12, 6]attention_mask : [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]decode: [CLS] 我 喜 欢 科 比 布 莱 恩 特. [SEP] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD]decode: [CLS] 我 也 是. [SEP] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] [PAD] ④ 批量编码成对的句子 from transformers import BertTokenizerif __name__ __main__:tokenizer BertTokenizer.from_pretrained(pretrained_model_name_or_path bert-base-chinese)sents [我喜欢科比布莱恩特., 我也是., 我喜欢他的后仰跳投, 我喜欢他的曼巴精神]# 批量编码成对的句子inputs tokenizer.batch_encode_plus(batch_text_or_text_pairs[(sents[0], sents[1]), (sents[2], sents[3])],truncation True, # 截断padding max_length, # padding到最大长度add_special_tokens True,max_length 20, # 设置最大长度return_tensors None, # None默认返回list可取值tf,pt,np,return_token_type_ids True,return_attention_mask True,return_special_tokens_mask True,return_length True)for k, v in inputs.items():print(k, :, v)print(decode: \n, tokenizer.decode(inputs[input_ids][0]))print(decode: \n, tokenizer.decode(inputs[input_ids][1])) 输出结果 input_ids : [[101, 2769, 1599, 3614, 4906, 3683, 2357, 5812, 2617, 4294, 119, 102, 2769, 738, 3221, 119, 102, 0, 0, 0], [101, 2769, 1599, 3614, 800, 4638, 1400, 814, 6663, 2832, 102, 2769, 1599, 3614, 800, 4638, 3294, 2349, 5125, 102]]token_type_ids : [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]]special_tokens_mask : [[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1]]length : [17, 20]attention_mask : [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]decode: [CLS] 我 喜 欢 科 比 布 莱 恩 特. [SEP] 我 也 是. [SEP] [PAD] [PAD] [PAD]decode: [CLS] 我 喜 欢 他 的 后 仰 跳 投 [SEP] 我 喜 欢 他 的 曼 巴 精 [SEP] ⑤ 获取字典 from transformers import BertTokenizerif __name__ __main__:tokenizer BertTokenizer.from_pretrained(pretrained_model_name_or_path bert-base-chinese)sents [我喜欢科比布莱恩特., 我也是., 我喜欢他的后仰跳投, 我喜欢他的曼巴精神]# 批量编码成对的句子inputs tokenizer.batch_encode_plus(batch_text_or_text_pairs[(sents[0], sents[1]), (sents[2], sents[3])],truncation True, # 截断padding max_length, # padding到最大长度add_special_tokens True,max_length 20, # 设置最大长度return_tensors None, # None默认返回list可取值tf,pt,np,return_token_type_ids True,return_attention_mask True,return_special_tokens_mask True,return_length True)# 获取字典token_dict tokenizer.get_vocab()print(type(token_dict))print(len(token_dict))print(喜 in token_dict) # 中文是按字来编码的因此喜在字典里print(喜欢 in token_dict) # 同理喜欢不在字典里 输出结果 class dict 21128 True False ⑥ 添加新字典 from transformers import BertTokenizerif __name__ __main__:tokenizer BertTokenizer.from_pretrained(pretrained_model_name_or_path bert-base-chinese)sents [我喜欢科比布莱恩特., 我也是., 我喜欢他的后仰跳投, 我喜欢他的曼巴精神]# 批量编码成对的句子inputs tokenizer.batch_encode_plus(batch_text_or_text_pairs[(sents[0], sents[1]), (sents[2], sents[3])],truncation True, # 截断padding max_length, # padding到最大长度add_special_tokens True,max_length 20, # 设置最大长度return_tensors None, # None默认返回list可取值tf,pt,np,return_token_type_ids True,return_attention_mask True,return_special_tokens_mask True,return_length True)# 添加新词tokenizer.add_tokens(new_tokens[喜欢, 跳投])# 添加新符号tokenizer.add_special_tokens({eos_token: [EOS]})# 获取字典token_dict tokenizer.get_vocab()print(喜欢 in token_dict) # 添加新词后喜欢在字典里print(喜欢: , token_dict[喜欢])print(跳投: , token_dict[跳投])print([EOS]: , token_dict[[EOS]])# 编码新句子测试新词的编码test tokenizer.encode(text 我喜欢科比的后仰跳投[EOS],text_pair None,truncation True,padding max_length,add_special_tokens True,max_length 15,return_tensors None)print(test) 输出结果 True 喜欢: 21128 跳投: 21129 [EOS]: 21130 [101, 2769, 21128, 4906, 3683, 4638, 1400, 814, 21129, 21130, 102, 0, 0, 0, 0]# 将喜欢、跳投和[EOS]直接编码并没有拆开按字来编码
http://www.zqtcl.cn/news/844930/

相关文章:

  • 黄埔做网站江西省建设工程造价管理局网站
  • 适合网站开发的框架网盘视频直接做网站
  • wordpress菜谱网站网站服务公司
  • 跳转网站代码互联网平台构建怎么写
  • 服务器网站建设维护uemo网站源码
  • 浏览器如何做购物网站百度快照提交入口
  • 网站建设的主要步骤有哪些金华网站建设平台
  • 扁平化网站布局稷山网站制作
  • 做画找图网站包装策划与设计专业
  • 适合大学生做的兼职网站深圳企业名录大全
  • 电脑做网站用什么软件培训心得体会2000字
  • 手机网站开发公司哪家最专业html5商业网站开发北大青鸟
  • 做爰全过程教育网站建筑工程公司名字起名大全
  • 如何作做网站网站建设需要掌握什么技术
  • 广州网站建设推广公司做网站怎么合并单元格
  • 网站建设策划书的编制怎样建网站域名
  • 公司做网站的费用怎么记账网站源码html
  • 网站流量数据东莞松山湖华为招聘信息
  • 跨境电商一站式服务平台wordpress用旧的编辑器
  • 上海外贸网站推广方法爱站关键词
  • 网站页面框架设计企业建设流程
  • 网站做留言板如何推广小程序商城
  • 金融社区类网站建设鞍山58同城招聘网
  • 网站搭建策划书wordpress 屏蔽插件更新
  • 做网上购物网站杭州房产网官方网站
  • 汕头市网站建设分站公司站长网站大全
  • c2c的网站名称和网址深圳设计公司办公室
  • 建设银行企业版网站做微网站平台
  • 北京企业网站建设电话长沙建设工程信息网
  • 大型综合门户网站开发扁平化个人网站