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

精美旅游网站案例网站建设公司业务在哪里来

精美旅游网站案例,网站建设公司业务在哪里来,手机电子商务网站建设问卷调查,个人微信小程序开店1 构建中文tokenization 参考链接#xff1a;https://zhuanlan.zhihu.com/p/639144223 1.1 为什么需要 构建中文tokenization#xff1f; 原始的llama模型对中文的支持不太友好#xff0c;接下来本文将讲解如何去扩充vocab里面的词以对中文进行token化。 1.2 如何对 原始数…1 构建中文tokenization 参考链接https://zhuanlan.zhihu.com/p/639144223 1.1 为什么需要 构建中文tokenization 原始的llama模型对中文的支持不太友好接下来本文将讲解如何去扩充vocab里面的词以对中文进行token化。 1.2 如何对 原始数据预处理 每一行为一句或多句话。保存为语料corpus 1.3 如何构建中文的词库 一般的目前比较主流的是使用sentencepiece训练中文词库。 运行后会得到tokenizer.model和tokenizer.vocab两个文件。 1.4 如何使用transformers库加载sentencepiece模型 它可以用transformers库里面的tokenizer对象加载读取。 1.5 如何合并英文词表和中文词表 将原始词表中没有的新加入进去vocab.model。 for p in chinese_spm.pieces:piece p.pieceif piece not in llama_spm_tokens_set:new_p sp_pb2_model.ModelProto().SentencePiece()new_p.piece piecenew_p.score 0llama_spm.pieces.append(new_p)1.6 怎么使用修改后的词表 如果我们重新从头开始训练那么其实使用起来很简单 config AutoConfig.from_pretrained(…) tokenizer LlamaTokenizer.from_pretrained(…) model LlamaForCausalLM.from_pretrained(…, configconfig) model_vocab_size model.get_output_embeddings().weight.size(0) model.resize_token_embeddings(len(tokenizer)) 但是如果我们想要保留原始模型embedding的参数那么我们可以这么做 找到新词表和旧词表id之间的映射关系。将模型里面新词表里面包含的旧词表用原始模型的embedding替换。如果新词在旧词表里面没有出现就进行相应的初始化再进行赋值。 具体怎么做可以参考一下这个https://github.com/yangjianxin1/LLMPruner 1.7 总结一下 构建中文tokenization 1、使用sentencepiece训练一个中文的词表。 2、使用transformers加载sentencepiece模型。 3、怎么合并中英文的词表并使用transformers使用合并后的词表。 4、在模型中怎么使用新词表。 2 继续预训练篇 2.1 为什么需要进行继续预训练 我们新增加了一些中文词汇到词表中这些词汇是没有得到训练的因此在进行指令微调之前我们要进行预训练。预训练的方式一般都是相同的简单来说就是根据上一个字预测下一个字是什么。 2.2 如何对 继续预训练 数据预处理 先使用tokenizer()得到相关的输入需要注意的是可能会在文本前后添加特殊的标记比如bos_token_id和eos_token_id针对于不同模型的tokneizer可能会不太一样。这里在input_ids前后添加了21134和21133两个标记。 然后将所有文本的input_ids、attention_mask, token_type_ids各自拼接起来展开后拼接不是二维数组之间的拼接再设定一个最大长度block_size这样得到最终的输入。 2.3 如何 构建模型 我们可以使用同样的英文原模型但是tokenizer换成我们新的tokenizer.由于tokenizer词表个数发生了变化我们需要将模型的嵌入层和lm_head层的词表数目进行重新设置 model_vocab_size model.get_output_embeddings().weight.size(0) model.resize_token_embeddings(len(tokenizer)) 2.4 如何 使用模型 按照transformer基本的使用模型的方法即可。可以用automodel, automodelforcasualLm等方法 3 对预训练模型进行指令微调 3.1 为什么需要对预训练模型进行指令微调 如果需要模型能够进行相应的下游任务我们就必须也对模型进行下游任务的指令微调。 只经过上面的继续与训练模型能够获得基本的知识但是更加领域的特别的精细的指令还需要指令微调来获得。 对数据处理到训练、预测的整个流程有所了解其实基本上过程是差不多的。我们在选择好一个大语言模型之后。比如chatglm、llama、bloom等要想使用它得了解三个方面输入数据的格式、tokenization、模型的使用方式。 3.2 对预训练模型进行指令微调 数据 如何处理 指令微调的数据处理和继续与训练的数据处理相同。 需要注意的是根据微调任务不同 将原本的分类或者预测任务直接转变为特定单词或者句子的生成任务。并且添加特殊的标记。来区分不同的任务以及不同的结果。 3.3 对预训练模型进行指令微调 tokenization 如何构建 与与训练的基本一致。 如果有针对某些特殊的字或者语言需要扩充语料库。可以使用保留字符或者重新进行上面的【构建tokenization】任务 3.4 对预训练模型进行指令微调 模型 如何构建 使用原有的模型进行全参数微调。 也可以使用adapter的结构将模型固定住只训练少量参数 还可以使用prompt等其他的方式。不进行参数调整。只改变输入数据的信息 3.5 是否可以结合 其他库 使用 可以 其它的一些就是结合一些库的使用了比如 deepspeed transformers peft中使用的lora datasets加载数据 需要注意的是 我们可以把数据拆分为很多小文件放在一个文件夹下然后遍历文件夹里面的数据用datasets加载数据并进行并行处理后保存到磁盘上。如果中间发现处理数据有问题的话要先删除掉保存的处理后的数据再重新进行处理否则的话就是直接加载保存的处理好的数据。 在SFT之后其实应该还有对齐这部分就是对模型的输出进行规范比如使用奖励模型基于人类反馈的强化学习等这里就不作展开了。
http://www.huolong8.cn/news/358069/

相关文章:

  • 网站制作 南京安徽住房和城乡建设厅网站
  • 辽宁网站建设招标广州手机网站建设公司
  • 查找南宁网站开发公司福州专业网站开发很专业
  • 天津本地网站网站没备案能访问吗
  • 网站类软文福州网站建设推进
  • 网页设计与网站建设分析刚刚发布了天津的最新消息
  • 网站域名的作用是什么意思备案博客域名做视频网站会怎么样
  • 求一个自己做的网站链接怎样联系自己建设网站
  • 网站风格变化沈阳seo合作
  • 可以做试卷并批改的网站215做网站
  • 网站开发毕业设计收获与体会网站公司建设网站收费模块
  • 互动型网站模板国外做滑板网站
  • 湛江市企业网站seo点击软件网站如何做视频链接地址
  • 专业做公司网站的机构简约 网站
  • 大连网站建设-网龙科技erp软件是什么软件
  • 适合个人站长的网站有哪些宣传 网站建设
  • wordpress插件导出长沙关键词优化新行情报价
  • 织梦网站标题被改金融网站织梦模板
  • 做贸易网站眉山网站建设
  • 一个网站可以做几级链接wordpress便宜主题
  • 大学生个人网站制作网站设计两边为什么要留白
  • 常平营销网站建设公司简介电子版宣传册模板
  • 网站建设 账务处理运动鞋官方网站建设计划书
  • 品牌网站建设只詢大蝌蚪用eclipse做网站模板
  • 服务区里可以做多少个网站口碑优化seo
  • 原创文章网站南京免费发布信息网站
  • 官方智慧团建网站网站开发团队 人员
  • 网站建设需要的人员忻州市住房城乡建设局网站
  • 开虚拟机很伤电脑吗关键词自动优化工具
  • 网站设计主流尺寸域名注册过程