Bert源码(一)

Bert源码阅读系列
1. Bert源码(一) run_classifier.py
2. Bert源码(二)modeling.py

Bert源码(一)run_classifier.py

run_classifier.py是Bert模型在句子分类、句子对推理等任务上微调的脚本,所以想要把bert用于下游的部分任务,这个文件的代码必须要完全弄懂。

参数设置

开始部分通过tf.flags.FLAGS来设置参数,分为必选参数和可选参数。

必选参数

  • data_dir 数据集所在目录
  • bert_config_file bert预训练模型的config文件,以json文件形式储存
  • task_name 任务名称,默认带了’cola’, ‘mnli’, ‘mrpc’, 'xnli’四个任务
  • vocab_file 预训练模型的vocab.txt文件
  • output_dir 微调过后模型保存的目录

可选参数

  • init_checkpoint 保存的bert预训练模型
  • do_lower_case 是否将输入文本转为小写,如果是uncased bert模型就设置为true,否则设置为false,默认为true
  • max_seq_length 经过WordPiece切词后的最长输入长度,序列过长将被切割,序列过短将被填充。最大长度不能超过bert预训练模型中的max_position_embeddings
  • do_train 是否在train上训练
  • do_eval 是否在dev上测试
  • do_predict 是否在test上进行预测结果
  • train_batch_size
  • eval_batch_size
  • predict_batch_size
  • learning_rate
  • num_train_epochs 默认为3
  • warmup_proportion 默认为0.1
  • save_checkpoints_steps 默认1000步保存一次模型
  • iterations_per_loop
  • use_tpu
  • tpu_name
  • tpu_zone
  • gcp_project
  • master
  • num_tpu_cores

数据类

1. InputExample类

InputExample类充当的是数据样例结构体,里面包含四个成员变量

  • guid 每个样例的唯一id
  • text_a 第一个句子
  • text_b 第二句子,可为空
  • label 标签
2. PaddingInputExample类

PaddingInputExample类里面啥也没有,算是一个空的InputExample

3. InputFeatures类

InputFeatures类是将InputExample实例向量化后的结果,里面有五个成员变量

  • input_ids 每个token的id
  • input_mask 每个token是否被mask,取值范围是0或者1
  • segment_ids 0表示第一个句子,1表示第二个句子
  • label_id label
  • is_real_example 好像是
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
知识图谱BERT码是指实现了BERT模型的代码。BERT(Bidirectional Encoder Representations from Transformers)是由Google研究团队开发的一种自然语言处理模型。它基于Transformer架构,具有双向编码能力,能够更好地理解和表达句子的语义。 知识图谱BERT码的主要作用是实现BERT模型的训练和预测功能。通过预训练数据和任务特定数据的训练,BERT模型能够提取出句子中的语义信息,并生成句子的表示向量。这些表示向量可以用于各种自然语言处理任务,如文本分类、命名实体识别和句子相似度计算等。 知识图谱BERT码的实现通常基于深度学习框架,如TensorFlow或PyTorch。它主要包括模型的网络结构定义、损失函数的定义以及训练和预测的代码逻辑。在训练阶段,码会加载预训练的BERT模型参数,并根据具体的任务数据进行微调。在预测阶段,码会根据输入的文本,通过前向传播得到句子的表示向量,并根据具体任务的需求,进行相应的后续处理。 知识图谱BERT码的使用需要一定的编程知识和对深度学习的理解。使用者可以根据自身的需求进行码的修改和扩展,以适应不同的任务和数据。此外,为了获得更好的性能和效果,使用者还需要对模型的超参数进行调优,如学习率、批量大小等。 总之,知识图谱BERT码是实现BERT模型的代码,它可以用于训练和预测自然语言处理任务,帮助我们更好地理解和处理文本数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值