一、准备工作

Bert作为一个近几年兴起的深度学习模型框架,凭借其在多个数据集中state-of-the-art的表现,在自然语言处理(Natural Language Processing, NLP)和计算机视觉(Computer Vision, CV)声名鹊起。

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandinghttps://arxiv.org/pdf/1810.04805.pdf飞浆(PaddlePaddle)是目前国内唯一自主研发、开源开放、功能完备的产业级深度学习平
台,集深度学习核心框架、基础模型库、端到端开发套件、工具组件和服务平台于一体。

飞桨PaddlePaddle-源于产业实践的开源深度学习平台https://www.paddlepaddle.org.cn/个人观点:学习一个算法、模型或框架,纯读论文多少有点纸上得来终觉浅的味道。

这里贴一个可以跑通的Bert项目,接下来将逐行分析该项目的代码,以理解Bert。

BERT系列-BERT模型的初步认识 - 飞桨AI Studio - 人工智能学习与实训社区BERT系列(1)-BERT模型的初步认识 - 飞桨AI Studio - 人工智能学习与实训社区https://aistudio.baidu.com/aistudio/projectdetail/1704137一般地,调用主流的库函数如numpy,将其报错信息或API百度一下就可以解决90%的问题,而一些目前较小众的如PaddlePaddle的paddlenlp,其相关信息很难在百度中查找得到,这时候就需要借助其官方文档。

欢迎使用PaddleNLP — PaddleNLP 文档https://paddlenlp.readthedocs.io/zh/latest/index.html

二、代码理解

Cell 1

导包

# 导入所需要的包
from functools import partial
import argparse
import os
import random
import timeimport numpy as np
import paddle
import paddle.nn.functional as Fimport paddlenlp as ppnlp
from paddlenlp.data import Stack, Tuple, Pad
from paddlenlp.datasets import load_dataset
from paddlenlp.transformers import LinearDecayWithWarmup

Cell 2

chnsenticorp是paddlenlp内置的一个中文数据集,全称ChnSentiCorp_htl_all,由谭松波在GitHub中开源。

7000 多条酒店评论数据,5000 多条正向评论,2000 多条负向评论https://github.com/SophonPlus/ChineseNlpCorpus/blob/master/datasets/ChnSentiCorp_htl_all/intro.ipynbload_dataset函数读取了chnsenticorp数据集,splits将其指定划分为训练集(train)、开发集(dev)和测试集(test),该函数的返回值为训练集(train_ds)、开发集(dev_ds)和测试集(test_ds)。

# 下载paddlenlp预置数据
train_ds, dev_ds, test_ds = load_dataset("chnsenticorp", splits=["train", "dev", "test"])
print('训练集规模:', len(train_ds))
print('开发集规模:', len(dev_ds))
print('测试集规模:', len(test_ds))

打印三个集合的规模,观察输出结果可以发现,训练集、开发集和测试集的比例为8:1:1。

【零基础-1】PaddlePaddle学习Bert相关推荐

  1. 【一】零基础入门深度学习:用numpy实现神经网络训练

    (给机器学习算法与Python学习加星标,提升AI技能) 作者 | 毕然 百度深度学习技术平台部主任架构师 内容来源 | 百度飞桨深度学习集训营 本文转自飞桨PaddlePaddle 本课程是百度官方 ...

  2. AI Studio 飞桨 零基础入门深度学习笔记6.3-手写数字识别之数据处理

    AI Studio 飞桨 零基础入门深度学习笔记6.3-手写数字识别之数据处理) 概述 前提条件 读入数据并划分数据集 扩展阅读:为什么学术界的模型总在不断精进呢? 训练样本乱序.生成批次数据 校验数 ...

  3. 1.1机器学习和深度学习综述(百度架构师手把手带你零基础实践深度学习原版笔记系列)

    人工智能.机器学习.深度学习的关系 近些年人工智能.机器学习和深度学习的概念十分火热,但很多从业者却很难说清它们之间的关系,外行人更是雾里看花.在研究深度学习之前,我们先从三个概念的正本清源开始. 概 ...

  4. AI Studio 飞桨 零基础入门深度学习笔记1-深度学习的定义

    AI Studio 飞桨 零基础入门深度学习-笔记 人工智能.机器学习.深度学习的关系 机器学习 机器学习的实现 机器学习的方法论 案例:牛顿第二定律 确定模型参数 模型结构介绍 深度学习 神经网络的 ...

  5. AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍

    AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍 深度学习框架 深度学习框架优势 深度学习框架设计思路 飞桨开源深度学习平台 飞桨开源深度学习平台全景 框架和全流程工具 模 ...

  6. 零基础入门深度学习(二):用一个案例掌握深度学习方法

    导读 本课程是百度官方开设的零基础入门深度学习课程,主要面向没有深度学习技术基础或者基础薄弱的同学,帮助大家在深度学习领域实现从0到1+的跨越.从本课程中,你将学习到: 深度学习基础知识 numpy实 ...

  7. 【二】零基础入门深度学习:用一个案例掌握深度学习方法

    (给机器学习算法与Python学习加星标,提升AI技能) 作者 | 毕然  百度深度学习技术平台部主任架构师 内容来源 | 百度飞桨深度学习集训营 本文转自飞桨PaddlePaddle 导读 从本课程 ...

  8. 飞浆PaddlePaddle-百度架构师手把手带你零基础实践深度学习(学习笔记)

    飞浆PaddlePaddle-百度架构师手把手带你零基础实践深度学习(学习笔记) 百度架构师手把手带你零基础实践深度学习(打卡学习笔记) 为什么学习飞浆PaddlePaddle,不得不说百度最近几年在 ...

  9. 零基础该如何学习Web前端知识?

    想要跳槽到IT行业人在近几年越来越多,大部分都是想要学习web前端技术,但是这其中有很多都是零基础学员,大家都想知道零基础该如何学习Web前端知识?我们来看看下面的详细介绍. 零基础该如何学习Web前 ...

  10. 零基础学python看什么书-转行零基础该如何学习python?很庆幸,三年前的我选对了...

    这似乎是一个如荼如火的行业,对于一直在思考着转行的我,提供了一个不错的方向. 这个行业当然就是python程序员,真正开始决定转行是在24岁的时候,到现在已经有三年多了,我从零开始,每天用业余两个小时 ...

最新文章

  1. Hive代码组织及架构简单介绍
  2. java 只提取数字_如何从字符串中批量的提取数字-百度经验
  3. 前端传值给后台的若干种方式
  4. a 标签中调用js的几种方法
  5. 只是简单读了读《oracle查询优化改写》,就让我获益匪浅,想写好sql,这一本书就够了!
  6. Ubuntu 命令行打开pdf文件和打开命令行当前目录
  7. python try else_python try/except/else与递归
  8. 【ssh登陆问题】no matching cipher found / no matching key exchange method found
  9. 安卓案例:利用帧动画实现游戏特效
  10. Keras ImageDataGenerator参数
  11. Oracle数据库 - 安装教程
  12. Java递归算法实例
  13. 【单片机毕业设计】【mcuclub-jj-035】基于单片机的保险柜的设计
  14. 在Windows Server 2008上用Windows Media Service打造流媒体直播系统
  15. PPT无法打开,打开后总是修复的解决方法
  16. 物联网 长连接 服务器_为什么物联网还有很长的路要走
  17. React+SSM+阿里云部署(JDK, MySQL8, Tomcat)
  18. (十五)覆盖率数据采样、交叉覆盖率_覆盖选项
  19. 白鹭引擎入门教程一(Egret)
  20. python基本语法自学——生成器

热门文章

  1. edp和edt哪个好_不懂香水EDP和EDT?Dior真我系列完美诠释
  2. 如何使用微信邮箱注册?个人邮件邮箱注册
  3. python定时备份为知笔记数据
  4. Win10自定义路径位置安装WSL2 (Ubuntu 20.04) 并配置CUDA
  5. 计算机软件实习每日学习打卡(6)20201227
  6. Android 11日历中添加账户跳转失败
  7. 本地IDEA连接服务器的Redis报错处理
  8. db服务器在游戏服务器组中的作用
  9. html5 ios 键盘挡住输入框,IOS 键盘挡住输入框的问题解决办法
  10. Windows证书对话框权限提升漏洞-CVE-2019-1388