Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >强烈推荐 | 飞桨最全面的工具组件详解

强烈推荐 | 飞桨最全面的工具组件详解

作者头像
用户1386409
发布于 2019-06-14 06:47:13
发布于 2019-06-14 06:47:13
9830
举报
文章被收录于专栏:PaddlePaddlePaddlePaddle

深度学习技术已经具备了很强的通用性,正在推动人工智能进入工业大生产阶段。飞桨(PaddlePaddle)是百度自研的开源深度学习平台,有全面的官方支持的工业级应用模型,涵盖自然语言处理计算机视觉、推荐引擎等多个领域,并开放多个领先的预训练中文模型。并为开发者开放 PaddleHub、PARL、AutoDL Design、VisualDL 等一系列深度学习工具组件,帮助开发者快速落地AI应用。接下来,小编带你一一了解。

十余行代码完成迁移学习PaddleHub

迁移学习(Transfer Learning) 是属于深度学习的一个子研究领域,该研究领域的目标在于利用数据、任务、或模型之间的相似性,将在旧领域学习过的知识,迁移应用于新领域中。迁移学习吸引了很多研究者投身其中,因为它能够很好的解决深度学习中的以下几个问题:

  • 一些研究领域只有少量标注数据,且数据标注成本较高,不足以训练一个足够鲁棒的神经网络;
  • 大规模神经网络的训练依赖于大量的计算资源,这对于一般用户而言难以实现;
  • 应对于普适化需求的模型,在特定应用上表现不尽如人意。

PaddleHub 是基于飞桨(PaddlePaddle)开发的预训练模型管理工具,目前预训练模型覆盖了图像分类、目标检测、词法分析、Transformer、情感分析五大类别。PaddleHub通过命令行工具,可以方便快捷的完成模型的搜索、下载、安装、预测等功能。PaddleHub提供了基于飞桨( PaddlePaddle )实现的 Fine-tune API, 重点针对大规模预训练模型的 Fine-tune 任务做了高阶的抽象,让预训练模型能更好服务于用户特定场景的应用。通过大规模预训练模型结合 Fine-tune,可以在更短的时间完成模型的收敛,同时具备更好的泛化能力。

项目地址:

https://github.com/PaddlePaddle/PaddleHub

一个修饰符实现并行强化学习算法PARL1.1

强化学习作为AI技术发展的重要分支,除了应用于模拟器和游戏领域,在工业领域也正取得长足的进步。强化学习的主要思想是基于机器人(agent)和环境(environment)的交互学习,其中agent通过action影响environment,environment返回reward和state,整个交互过程是一个马尔可夫决策过程。在交互学习的过程中,没有人的示范,而是让机器自主去做一个动作,让机器拥有自我学习和自我思考的能力。强化学习能够解决很多有监督学习方法无法解决的问题。

PARL是一款基于百度飞桨(PaddlePaddle)打造的深度强化学习框架,继1.0版本开源了NeurIPS 2018假肢挑战赛冠军训练代码以及主流强化学习模型后,发布了聚焦于并行的1.1版本。PARL1.1通过一个简单的修饰符(@parl.remote_class)即可实现并行化,并新增支持高质量的并行算法,包括IMPALA、GA3C、A2C,并提供了高性能的并行开发接口。以通过PARL实现的IMPALA算法的评估结果为例,在雅达利这个经典评测环境中 ,pong 游戏最快可在7分钟内达到20分,breakout游戏在25分钟达到400分(1个P40GPU +32CPU)。

项目地址:

https://github.com/PaddlePaddle/PARL

自动化网络结构设计AutoDL Design

基于飞桨(PaddlePaddle)及PARL强化学习框架,百度进行了自动化网络结构设计的探索和尝试,并且开源了其中关于自动化网络结构设计的源代码和对应的预训练模型,将AutoDL这一前沿技术以更低的成本展示给业界和各位开发者,大幅降低了该类技术的上手门槛。

百度的研究员和工程师们所使用的自动网络结构搜索的方法,目标是找到合适的“局部结构”。即,首先搜索得到一些合适的局部结构作为零件,然后类似流行的Inception结构那样,按照一定的整体框架堆叠成为一个较深的神经网络。整个搜索过程,是基于增强学习思想设计出来的。因此很自然地包括了以下两个部分:第一个部分是生成器,对应增强学习中的智能体(agent),用于采样(sample),生成网络结构;第二个部分是评估器,用于计算奖励(reward),即用新生成的网络结构去训练模型,以模型的准确率(accuracy)或者是损失函数(loss function)返回给生成器。

目前已发布用AutoDL Design方法生成的一系列神经网络,以及使用CIFAR10数据在其上训练出来的一共6个模型,包括了网络结构以及对应的权重,开发者可以在这6个模型上进行推理(inference)以及模型融合,获得超过98%的准确率。以及,大家可以下载、安装和运行,尝试生成属于自己的、全新的神经网络结构。

项目地址:

https://github.com/PaddlePaddle/AutoDL/tree/master/AutoDL%20Design

深度学习可视化工具库VisualDL

VisualDL是一个面向深度学习任务设计的可视化工具,VisualDL原生支持Python的使用, 只需要在模型中增加少量的代码,对VisualDL接口进行调用,便可以为训练过程提供丰富的可视化支持。除了Python SDK之外,VisualDL底层采用C++编写,其暴露的C++ SDK也可以集成到其他框架中使用, 实现原生的性能和定制效果。用户也可以通过对C++ SDK进行封装,提供其他脚本语言的SDK。VisualDL 目前支持scalar、histogram、image、audio、text、graphhigh dimensional七种可视化组件。

项目地址:

https://github.com/PaddlePaddle/VisualDL

模型转换工具X2Paddle

深度学习的应用主要包括两个部分,一是通过深度学习框架训练出模型,二是利用训练出来的模型进行预测。开发者基于不同的深度学习框架能够得到不同的训练模型,如果想要基于一种框架进行预测,就必须要解决不同框架的模型之间的匹配问题。基于这种考虑,也为了帮助用户快速从其他框架迁移,飞桨(PaddlePaddle)开源了模型转换工具X2Paddle。

它可以将TensorFlow、Caffe 的模型转换为飞桨(PaddlePaddle)的核心框架Paddle Fluid可加载的格式。同时X2Paddle还支持ONNX格式的模型转换,这样也相当于支持了众多可以转换为ONNX格式的框架,比如PyTorch、MXNet、CNTK等。

项目地址:

https://github.com/PaddlePaddle/X2Paddle

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PaddlePaddle 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
使用Docker buildx 为 .NET 构建多平台镜像
.NET 团队有一篇博客 改进多平台容器支持, 详细介绍了.NET 7 以上的平台可以轻松的使用Docker buildx 工具构建多平台的镜像。 buildx 是 Docker 官方提供的一个构建工具,它可以帮助用户快速、高效地构建 Docker 镜像,并支持多种平台的构建。使用 buildx,用户可以在单个命令中构建多种架构的镜像,例如 x86 和 ARM 架构,而无需手动操作多个构建命令。此外,buildx 还支持 Dockerfile 的多阶段构建和缓存,这可以大大提高镜像构建的效率和速度。
张善友
2023/10/18
5270
使用Docker buildx 为 .NET 构建多平台镜像
【Golang】企业内网/专网离线搭建Go环境实战指南
随着数据泄露问题日益严重和大模型的快速发展,越来越多的公司将研发环境迁移至内网甚至专网。而由于网络限制或安全策略,直接访问外部资源(如Go模块仓库)可能会受到限制。这就需要我们在公司内网中搭建一个离线的Go语言开发环境,以确保能够顺利地进行项目开发。
编码如写诗
2025/04/10
1190
【Golang】企业内网/专网离线搭建Go环境实战指南
【Golang】CGO项目Docker镜像打包优化指南,来点新鲜不一样的多阶段构建
可能是吃了细糠后吃不了糙米,以至于后来看到关于镜像瘦身之类的文档都是嗤之以鼻。千篇一律,还在用以前的多阶段构建,连缓存加速都没有,而且关于Golang的没有一个完整介绍cgo Dockerfile怎么写的。
编码如写诗
2025/01/08
2100
【Golang】CGO项目Docker镜像打包优化指南,来点新鲜不一样的多阶段构建
Golang - 从源码到二进制:探索在国产CPU架构上交叉编译Minio的方法
交叉编译是指在一台主机上为另一种不同架构或操作系统的目标平台生成可执行程序或库。在C++中,交叉编译通常用于在开发机器上编译目标平台的程序,例如在使用x86架构的开发机器上编译ARM架构的程序。
小小工匠
2024/05/26
9040
Golang - 从源码到二进制:探索在国产CPU架构上交叉编译Minio的方法
申威(神/声)(SW)1621 + UOS 20 编译安装 Docker | 容器国产化适配
1.解压 runc 源码至 ~/go/src/github.com/opencontainers 目录;
宋天伦
2023/10/20
1.5K0
使用 Docker Buildx 构建多种系统架构镜像
Docker Buildx 是一个 docker CLI 插件,其扩展了 docker 命令,支持 Moby BuildKit 提供的功能。提供了与 docker build 相同的用户体验,并增加了许多新功能。
没有故事的陈师傅
2021/09/09
1.8K0
深入了解 Golang 多架构编译:交叉编译最佳实践
随着软件开发领域的不断发展,我们面临着越来越多的挑战,其中之一是如何在不同的平台和架构上部署我们的应用程序。Golang(Go)作为一种现代化的编程语言,具有出色的跨平台支持,通过其强大的多架构编译功能,可以轻松实现在各种操作系统和硬件架构上的部署。本文将深入探讨 Golang 多架构编译的原理、方法以及示例。
xcbeyond
2024/06/05
1.8K0
深入了解 Golang 多架构编译:交叉编译最佳实践
Go语言交叉编译工具gox
交叉编译是为了在不同平台编译出其他平台的程序,比如在Linux编译出Windows程序,在Windows能编译出Linux程序,32位系统下编译出64位程序,今天介绍的gox就是其中一款交叉编译工具。
平也
2020/04/03
1.7K0
【Golang】全网首发:Oracle数据库godror驱动docker打包,含CGO Dockerfile终极指南
具体参考:godror https://godror.github.io/godror
编码如写诗
2025/02/18
1090
【Golang】全网首发:Oracle数据库godror驱动docker打包,含CGO Dockerfile终极指南
生成多平台docker镜像
工作中需要在一台x86服务器从写好的golang程序源码生成linux/amd64、linux/arm64 docker镜像,查阅了下资料,这里记录一下操作过程。
jeremyxu
2019/11/07
1.6K0
使用容器方式编译无功能限制的 Drone CI
因为默认版本的 Drone 包含构建次数限制,如果日常高频使用 Drone,不久之后,便会遇到需要“重新初始化”应用才能继续使用的问题,但其实,作为个人用户,我们其实可以不受此限制影响。
soulteary
2021/04/23
1.7K0
使用容器方式编译无功能限制的 Drone CI
因为默认版本的 Drone 包含构建次数限制,如果日常高频使用 Drone,不久之后,便会遇到需要“重新初始化”应用才能继续使用的问题,但其实,作为个人用户,我们其实可以不受此限制影响。
soulteary
2021/04/17
1.3K0
多平台容器镜像构建就看这一篇
孔矾建,腾讯高级工程师。多年云原生技术实践经验,聚焦容器镜像与存储领域,负责腾讯云容器镜像仓库产品开发,Harbor 社区 Maintainer,《Harbor 权威指南》联名作者。 前言 愿景与现实 早在1995年,就有“write once and run anywhere”(WORA,编写一次即可在任何地方运行)用于描述 Java 应用程序。时过20年,Docker 高声喊出了自己的口号——“Build Once, Run Anywhere”(一次构建,随处可用)。 愿望是美好的,然而,现实总比理想
腾讯云原生
2020/12/28
2.1K0
利用 Github Action 一键编译多平台 Docker 镜像
  在技术发展的早期,Java 语言以其“一次编译,随处运行”的特点在众多编程语言中独领风骚。而 Java 语言编译出的 jar 包始终是应用层面上的,如果我们想要运行一个 Web 应用的 jar 包,仍然需要搭建 Tomcat 服务器才能真正运行这个 Java 应用。于是当虚拟化技术出现之后,开始有了同时包含 Tomcat 服务器和 jar 包等其他必要的配置和环境的完整虚拟化镜像。只要在大家的电脑或者服务器上安装了对应的虚拟化软件,运行这个虚拟化镜像就可以看到最终的 Web 界面并正常使用。
zhonger
2022/10/28
2.3K0
利用 Github Action 一键编译多平台 Docker 镜像
为你的Go应用创建轻量级Docker镜像?
go build使用的是静态编译,会将程序的依赖一起打包,这样一来编译得到的可执行文件可以直接在目标平台运行,无需运行环境(例如 JRE)或动态链接库(例如 DLL)的支持。
iginkgo18
2021/06/25
7620
【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践
在现代计算机系统中,X86和ARM64是两种常见的处理器架构。为了满足不同架构的需求,Docker镜像也需要支持双架构编包形式。本文将介绍Docker镜像双架构编包统一的实践
粲然忧生
2023/10/12
2.2K0
【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践
【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践
在现代计算机系统中,X86和ARM64是两种常见的处理器架构。为了满足不同架构的需求,Docker镜像也需要支持双架构编包形式。本文将介绍Docker镜像双架构编包统一的实践
粲然忧生
2023/04/01
8.3K0
【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践
使用docker部署caddy暨buildx编译多架构镜像
由于 caddy 使用了 cf 的 dns 插件,更新的时候比较麻烦,所以想着使用 docker 来部署,自己只需要 build 最新的 caddy 镜像就可以了。
tanmx
2023/10/18
1.2K0
基于Docker的Golang交叉编译
在现代软件开发中,跨平台支持变得越来越重要。Golang(Go)作为一种强类型、编译型语言,天生具有跨平台的优势。通过交叉编译,开发者可以在一个平台上生成适用于另一个平台的可执行文件。为了简化和规范这个过程,我们可以利用Docker,这是一种轻量级的容器化技术,可以提供一致的开发环境。
Michel_Rolle
2024/06/16
2.9K0
使用 docker buildx 构建多 CPU 架构镜像
在工作中,遇到了需要将应用程序打包成 Docker 镜像并同时运行在不同的 CPU 架构(X86 和 ARM)的环境中。
donghui
2020/05/18
4K0
推荐阅读
相关推荐
使用Docker buildx 为 .NET 构建多平台镜像
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档