【从0开发】百度BML全功能AI开发平台【实操:以部署情感分析模型为例】

目录

  • 一、全功能AI开发平台介绍
  • 二、AI项目落地应用流程(以文本分类为例)
    • 2-0、项目开始
    • 2-1、项目背景
    • 2-2、数据准备介绍
    • 2-3、项目数据
    • 2-4、建模调参介绍
    • 2-5、项目的建模调参
    • 2-6、开发部署
    • 2-7、项目在公有云的部署
  • 附录:调用api代码
  • 总结

一、全功能AI开发平台介绍

在这里插入图片描述

全功能AI开发平台是一个综合性的平台,旨在支持各种人工智能(AI)应用的开发、部署和管理。这些平台通常提供一系列工具、库和服务,以帮助开发者、数据科学家和工程师创建和操作各种类型的AI应用。以下是全功能AI开发平台通常提供的一些功能和特性

  • 数据管理:提供数据存储、数据集成、数据清洗和数据标注工具,以支持AI模型的训练和评估。
  • 模型开发:包括模型训练、调优和验证工具,以及深度学习框架集成,使开发者能够创建自定义AI模型。
  • 自动化ML(AutoML):提供自动化工具,可以自动选择和调整模型参数,以简化模型开发流程。
  • 部署和托管:支持AI模型的部署到云端或边缘设备,并提供自动扩展和管理模型的能力。
  • 可解释性和监控:提供模型解释性工具,以及实时性能监控和错误检测,以确保AI应用的可靠性和可解释性。
  • 集成和API:支持将AI功能集成到现有应用程序中,以及提供API,以便其他应用程序可以调用AI模型。
  • 安全性和隐私:提供安全性和隐私保护功能,以确保AI应用的数据和模型的安全性。
  • 可视化工具:提供可视化界面,以简化模型训练和部署的管理和监控。

下面以百度BML全功能AI开发平台为例进行介绍(一站式AI开发流程如下),且底层框架内置文心大模型基座

在这里插入图片描述

二、AI项目落地应用流程(以文本分类为例)

2-0、项目开始

任务抽象

  • 项目有多少个任务场景
  • 每个任务场景需要开发多少个模型
  • 部署场景的约束是什么

任务流程介绍

  • 采集/标注数据
  • 选择预训练模型
  • 数据增强策略
  • 超参数调整
  • 模型训练以及评估
  • 分析报告

2-1、项目背景

项目背景介绍

在我们的生活和工作中,很多事情都可以转化为一个分类问题来解决,比如“上班坐公交还是坐地铁”、“吃米饭还是吃面条”等等可以转化为二分类问题。自然语言处理领域也是这样,大量的任务可以用文本分类的方式来解决,比如垃圾文本识别、涉黄涉暴文本识别、意图识别、文本匹配、命名实体识别等,有着极其广泛的应用场景:

  • 投诉信息分类:训练客服投诉信息的自动分类,将每个用户投诉的内容进行分类管理,节省大量客服人力。
  • 媒体文章分类:训练网络媒体文章的自动分类,进而实现各类文章的自动分类。
  • 文本审核:定制训练文本审核的模型,如训练文本中是否含有违规/偏激性质的描述。

中文新闻文本标题分类任务简介

  • 新闻分类是文本分类中常见的应用场景。在传统分类模式下,往往是通过人工对新闻内容进行核对,从 而将新闻划分到合适的类别中。这种方式会消耗大量的人力资源,并且效率不高。采用深度学习的方法可以取得较高的分类精度,是新闻推荐等场景下的基础任务。

使用BML开发平台,注册账号并且开始使用:官方链接
在这里插入图片描述

2-2、数据准备介绍

项目数据

  • 项目任务需要什么样的数据
  • 如何制作高质量的数据集(图片数据:是否存在高度相似、模糊的图片,进行数据的清洗)
  • 数据量不够怎么办(每一类的图片数量是否大于80张?是否需要增加图片以平衡类别数量?进行上采样?)

高质量数据

  • 数据标注正确
  • 尽量提升数据的类别,提升模型的泛化能力
  • 保证训练数据尽量与业务数据接近,各个类别平衡
  • 数据划分正确,测试集验证集不会泄露。
  • 以结果为导向看数据:看哪个类别的数据模型不太擅长识别,即分析badcase,采用数据增强增加数据数量。

数据增强(以图片的数据增强为例)

  • 对比度
  • 色平衡
  • 亮度
  • 锐化
  • 目标框裁剪
  • 标注框旋转
  • 标注框翻转
  • 水平裁剪

BML平台优势

  • 智能标注
  • 多人标注
  • 数据质检报告
  • 支持与数据采集设备直连
  • BML自动化数据清洗:去近似、去模糊、裁剪、旋转、镜像。
  • 自动数据增强。开放超过40种算子,灵活配置

在这里插入图片描述

2-3、项目数据

本文采用中文新闻文本标题分类数据集进行示例:数据

在这里插入图片描述

  • 点击数据集管理,并创建数据集。

在这里插入图片描述

  • 在创建数据集界面,设置好相关信息并点击完成

在这里插入图片描述

  • 填写导入配置信息: 设置数据的标注状态,是否为有标注信息,从本地导入,上传txt文本。之后点击上传txt文本将下载好的数据上传。
    在这里插入图片描述

  • 数据集创建完成后,可以在数据集管理界面看到导入的数据,并可以查看到导入状态、标注状态等信息。
    在这里插入图片描述

2-4、建模调参介绍

建模调参

  • 选择什么样的模型
  • 有没有精度更高的模型
  • 如何调优,进一步提升性能
  • 要不要购买服务器?

BML平台优势

  • 提供预置模型调参、NoteBook建模、自定义作业建模等三种开发方式,满足不同需求的开发者。

在这里插入图片描述

  • 自动调参:以某种高级策略搜索超参组合,自动获得优秀的模型效果
    在这里插入图片描述

2-5、项目的建模调参

  • 选择使用预置模型调参,选择自然语言处理模型,点击创建任务
    在这里插入图片描述
  • 选择类型为文本分类-类型为单文本单标签。
    在这里插入图片描述
  • 创建完成后点击新建运行。
    在这里插入图片描述
  • 添加数据可以选择刚才导入的数据集,也可以选择公开数据集(二分类。数据量较少),需要注意的是,如果选择公开数据集,可以跳过前边的所有步骤。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 在配置模型阶段,可以进行相关预训练模型的配置以及超参数的设置。Tiny版本模型更小,训练速度更快,但是精度略差。之后设置训练资源,以及选择计算节点。提交运行任务。
    在这里插入图片描述
    在这里插入图片描述
  • 训练结束后点击评估报告,可以查看模型的表现情况(由于时间原因,我这里选择的是公开二分类数据进行训练), 点击配置详情可以查看训练时设置的参数,训练可视化可以查看训练过程中的指标变化

在这里插入图片描述
在这里插入图片描述

  • 进一步测试模型可以点击发布按钮进行模型的发布, 发布模型之后可以在发布模型这一列看到已经发布的模型,这时候点击评估报告可以看到模型校验按钮,可以进行模型的校验,输入文本进行校验。

在这里插入图片描述
在这里插入图片描述

2-6、开发部署

部署环境

云端:公有云部署,即将模型部署为在线服务,从而以REST API的方式提供推理预测能力。且公有云部署是最快捷的模型部署方式,不同类型的模型在执行公有云部署时的流程基本一致,当部署后在线API的接口与模型有关。

  • 易于部署迭代
  • 可使用大模型,快速上线
  • 高延迟
  • 成本线性升高

边缘端

  • 算力限制
  • 前期开发部署成本高
  • 低延迟
  • 成本可控

在线服务说明:在线服务当前仅允许一个模型版本处于上线状态,若上线时有其他模型版本在线,则会将当前版本下线并且上线新的版本。服务状态以及其含义说明如下所示:

在这里插入图片描述

在这里插入图片描述

2-7、项目在公有云的部署

  • 在模型仓库中选择发布的模型版本,之后进行在线服务部署。
    在这里插入图片描述
    在这里插入图片描述
  • 在线服务设置:设置服务名称以及接口地址,模型配置阶段设置已经发布的模型以及对应版本,在资源配置阶段设置好需要使用的配置,按照小时计费。
    在这里插入图片描述
  • 创建好在线服务之后,创建应用,之后调用接口进行服务调用

在这里插入图片描述
在这里插入图片描述

  • 之后使用ak、sk以及请求url来进行接口的调用
    在这里插入图片描述
    在这里插入图片描述

附录:调用api代码

import requests
import jsonAPI_KEY = ""
SECRET_KEY = ""def main():url = "https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify?charset=&access_token=" + get_access_token()payload = json.dumps("")headers = {'Content-Type': 'application/json','Accept': 'application/json'}response = requests.request("POST", url, headers=headers, data=payload)print(response.text)def get_access_token():"""使用 AK,SK 生成鉴权签名(Access Token):return: access_token,或是None(如果错误)"""url = "https://aip.baidubce.com/oauth/2.0/token"params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}return str(requests.post(url, params=params).json().get("access_token"))if __name__ == '__main__':main()

参考文章:
百度BML全功能开发平台官网.
数据集管理.
EasyDL文本价格整体说明.
开发文档训练、部署等.
鉴权认证机制.
服务与支持文档.
示例代码中心.


总结

人有悲欢离合,月有阴晴圆缺,此事古难全。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/158162.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百度车牌识别AI Linux使用方法-armV7交叉编译

1、获取百度ai的sdk 百度智能云-登录 (baidu.com) 里面有两个版本的armV7和armV8架构。v7架构的性能比较低往往需要交叉编译,v8的板子性能往往比较好,可以直接在板子上编译。 解压到ubuntu里面。这里介绍v7架构的。 2、ubuntu环境配置 ubuntu下安装软件…

Bootstrap-媒体类型

加上媒体查询之后,只有在特定的设备之下才能起作用!!!

Win10找不到hosts文件的解决方案

正常情况下,Windows10系统的C:\Windows\System32\drivers\etc目录下应该有hosts文件,但偏偏有些电脑没有,哪怕你打开了查看“隐藏的项目”也没见到hosts文件,如下: 解决方案 1、先点击查看,再点击选项&…

Ant Design Form.List基础用法

使用 Form.List 使用 项目中需要在新增可以多个如图 代码如下 // An highlighted block <Card title"产品信息" bordered{false}><Form.List name"productList" >{(fields, {add, remove}) > (<>{fields.map((field) > (<Ro…

苹果放出快捷指令专题介绍页面,大大提高了 Mac 使用效率

近日&#xff0c;苹果发布 macOS Sonoma 更新的同时&#xff0c;还上线了“《快捷指令》助你效率倍增”专题页面&#xff0c;其目标是在 Mac 上让好用的 App 更强大。 快捷指令功能可以让设备自动完成常用或繁琐的操作&#xff0c;大大提升 Mac 的效率。 快捷指令能帮你在《邮…

JVM上篇之类加载子系统

目录 类加载子系统 内存结构 类的生命周期 类的加载过程 加载 加载class文件方式 连接 验证 验证阶段 准备 解析 初始化 类加载器 介绍 作用 分类 引导类加载器 自定义类加载器 ClassLoader 获取ClassLoader途径 双亲委派机制 介绍 执行流程 好处 打破…

软件UI自动化测试应该怎么做?对软件产品起到什么作用?

在软件开发过程中&#xff0c;开发人员需要编写大量的代码来实现软件产品的功能。而这些功能往往需要在用户界面上进行展示和操作&#xff0c;称为UI(User Interface)。UI自动化测试是为了检测软件界面是否符合预期的设计和用户操作&#xff0c;通过自动化测试工具和脚本&#…

Idea执行Pom.xml导入jar包提示sun.misc.BASE64Encoder jar找不到---SpringCloud工作笔记197

奇怪之前都是好好的,这个是因为,jdk的版本不对,重新打开以后自动被选择成jdk11了...记录一下 原因是从jdk9的时候,这个jar包已经被删除了,所以会报错,如果你用的是jdk自带的这个jar包就会报错,那么还可以,修改,不让他用jdk的,让他用 用org.apache.commons.codec.binary.Base64…

NSDT编辑器实现数字孪生

数字孪生的强大功能来自于将真实世界的资产与真实世界的数据联系起来&#xff0c;因此您可以更好地可视化它们。数字孪生使跨职能团队能够以交互式和沉浸式方式协作设计、构建、测试、部署和操作复杂系统。 如何创建数字孪生&#xff1f; 数字孪生是通过导入概念模型&#xf…

PBA.客户需求分析 需求管理

一、客户需求分析 1 需求的三个层次: Requirement/Wants/Pains 大部分人认为&#xff0c;产品满足不了客户需要&#xff0c;是因为客户告知的需求是错误的&#xff0c;这听起来有一些道理&#xff0c;却没有任何意义。不同角色对于需求的理解是不一样的。在客户的需求和厂家的…

四、RIP动态路由实验

拓扑图&#xff1a; 基本ip的配置已经配置好了&#xff0c;接下来对两台路由器配置rip协议&#xff0c;两台PC进行跨网段通讯 RIPv1版本只能识别ABC的大类网段&#xff0c;不能区分子网掩码&#xff0c;v2版本可以识别子网掩码 首先进入R1&#xff0c;进入rip&#xff0c;宣告…

栈实现深度优先搜索

引言 之前刚学DFS的时候并不完全理解为什么递归可以一直往下做&#xff0c;后来直到了递归的本质是栈&#xff0c;就想着能不能手写栈来代替递归呢。当时刚学&#xff0c;自己觉得水平不够就搁置了这个想法&#xff0c;今天上数据结构老师正好讲了栈的应用&#xff0c;其中就有…

华为云云耀云服务器L实例评测 | 实例评测使用之硬件参数评测:华为云云耀云服务器下的 Linux 网络监控神器 bmon

华为云云耀云服务器L实例评测 &#xff5c; 实例评测使用之硬件参数评测&#xff1a;华为云云耀云服务器下的 Linux 网络监控神器 bmon 介绍华为云云耀云服务器 华为云云耀云服务器 &#xff08;目前已经全新升级为 华为云云耀云服务器L实例&#xff09; 华为云云耀云服务器是什…

Python一步到位实现图像转PDF自动化处理详解

什么是 img2pdf 库&#xff1f; img2pdf 是一个 Python 库&#xff0c;它可以让你轻松地把多张图像转换为 PDF 文件。它支持多种图像格式&#xff0c;如 JPG, PNG, GIF, BMP 等&#xff0c;并且可以自动调整图像的大小和方向&#xff0c;以适应 PDF 的页面大小和方向。它还可以…

数据仓库DW-理论知识储备

数据仓库DW 数据仓库具备 采集数据、分析数据、存储数据的功能&#xff0c;最后得出一些有用的数据&#xff0c;一些目标数据来使用。 采集来自不同源的数据&#xff0c;然后对这些数据进行分析和计算得出一些有用的指标&#xff0c;提供数据决策支持。 数据的来源有&#xff…

供应链 | 零售商-供应商柔性承诺契约:一种鲁棒优化方法 (一)

论文解读&#xff1a;毕鑫宇 作者&#xff1a;Aharon Ben-Tal, Boaz Golany, Arkadi Nemirovski, Jean-Philippe Vial 引用&#xff1a;Ben-Tal, A., Golany, B. , Nemirovski, A., & Vial, J. P… (2005). Retailer-supplier flexible commitments contracts: a robust op…

SpringBoot篇之集成Jedis、Lettuce、Redisson

目录 前言一、详解Jedis、Lettuce 和 Redisson的区别二、SpringBoot集成2.1 集成Jedis2.2 集成Lettuce2.3 集成Redisson 总结 前言 大家好&#xff0c;我是AK&#xff0c;最近在做新项目&#xff0c;基于旧项目框架修改&#xff0c;正好最近也在整理springboot相关知识&#x…

游戏中的随机——“动态平衡概率”算法

前言 众所周知计算机模拟的随机是伪随机&#xff0c;但在结果看来依然和现实中的随机差别不大。 例如掷硬币&#xff0c;连续掷很多很多次之后&#xff0c;总有连续七八十来次同一个面朝上的情况出现&#xff0c;计算机中一般的随机函数也能很好模拟这一点。 但在游戏中&…

使用ChatGPT和MindShow一分钟生成PPT模板

对于最近学校组织的实习答辩&#xff0c;由于时间太短了&#xff0c;而且小编也特别的忙&#xff0c;于是就用ChatGPT结合MindShow一分钟快速生成PPT&#xff0c;确实很实用。只要你跟着小编后面&#xff0c;你也可以快速制作出这个PPT&#xff0c;下面小编就来详细介绍一下&am…

C语言中的文件操作函数

C语言中的文件操作函数_c语言文件操作函数_点子李的博客-CSDN博客C语言文件操作_c语言文件操作函数https://blog.csdn.net/qq_53332052/article/details/128470575?utm_mediumdistribute.pc_relevant.none-task-blog-2~default~baidujs_utm_term~default-1-128470575-blog-125…