飞桨PaddlePaddle-百度架构师21天零基础实践深度学习系列课程-PaddleHub学习笔记

I. 什么是PaddleHub?

PaddleHub是一个为深度学习而开发的工具。在深度学习领域,人们对模型的需求很大。在学术界,学者们可能致力于发明和探索更好更优化的深度学习模型概念。而工业界,更是将这种新鲜出炉的深度学习模型的应用落到实处。在AI飞速发展的今天,深度学习已经日渐成熟,很多模型落地非常好,可以直接利用到生产生活中并且达到了很好的效果,已经在生活的各个方面服务于人们并为我们的生活提供了非常大的便利。

但是想研究并开发这样一个复杂的模型并训练出最优的方式耗费大量的时间,并且人们其实是在做重复性的工作,写类似的程序将模型建出来只是应用到不同的领域里。这在计算机这个以效率为中心的领域是做这种无意义的重复性操作看起来是不精明的。那我们为什么不能够拥有一个创建好的模型然后拿起来就用呢?PaddleHub就完成了这样一件事情。

PaddleHub是基于飞桨领先的核心框架,精选了一些学术和工业界已经时间并且效果优秀的算法(又“新”鲜,又美味)。这些模型是已经经过百亿级的大数据训练过的,所以不需要开发或者使用者们花费大量时间和设配从头开始训练。

下面是关于PaddleHub的一些实用链接:

  • PaddleHub在Github上的开源链接:https://github.com/PaddlePaddle/PaddleHub
  • PaddleHub的官网:https://www.paddlepaddle.org.cn/hub
  • PaddleHub的课程地址:https://aistudio.baidu.com/aistudio/course/introduce/1070
  • PaddleHub的官方教程地址:https://aistudio.baidu.com/aistudio/personalcenter/thirdview/79927

 

II. PaddleHub如何解决我们在深度学习中遇到的问题?

从学习领域的角度:CV & NLP

1. CV (计算机视觉领域) 的难点

  • 物体尺寸:变化范围很大 -->尺寸不好掌控
  • 物体摆放:角度姿态不定 -->不同方向角度看到的图片形状大小不同,导致同一物品在不同图像中出现不同特征
  • 位置:要检测的物体可能出现在图片的任何地方 -->对象位置不固定
  • 类别:要检测的物体可以有多个类别--> 同一张图片中可同时出现动物和食物的物体。

2. NLP (自然语言处理领域) 对语义的挑战

  • 推理难度大:语言文化的博大精深 。一句讽刺的语句可能会被机器识别为夸赞 (例:“作为失败的典型,你是成功的!”
  • 关联难度大:同一句话使用相同的词,语序不同可能造成意思不同 (例:”谁是王二麻子的儿子?“ vs.”谁的儿子是王二麻子?“
  • 表示难度大:
    1. 词的划分引起的歧义: 断句不同,效果不同 (例:昨天/下午 vs 昨/天下/午
    2. 一词多义引起的歧义:(例:我爱吃苹果 vs. 苹果发布会

 

从深度学习工程角度

深度学习产业级要求 深度学习私人活动
大数据 小样本局限
大模型 模型设计门槛
大算力 计算资源限制

     要想提高深度学习的学习效率和学习水平,用大数据训练是很有必要的。个人用小样本训练出来的模型无疑会有较差的精度和准确性。同样,更加高级复杂的深度学习模型需要精心的设计和优化,而对于个人来讲模型设计就成为了很高的门槛。仅凭一己之力研究出的模型即使设计并实现出非常好的模型,但是在时间上会落后于其他企业为基准的竞争者。再者,深度学习对硬件和计算资源上有相当高的要求。再好的模型如果没有配套的硬件加持,也会在效率上大打折扣。所以,如果小型开发者也能够拥有企业级的加持,一定会有种冲上云霄般的快感。

 

从个人学习角度

我该怎么办?很多像我一样刚入深度学习大门的人会有下列的疑问:

(1)学了Python,我距离AI还有多远?

(2)学了AI 算法,代码怎么这么复杂?

(3)我有好点子,实现起来好难?

PaddleHub 正像是甘露般帮我们一下实现了这看似遥不可及的梦。

飞桨PaddlePaddle-百度架构师21天零基础实践深度学习系列课程-PaddleHub学习笔记_第1张图片

PaddleHub将这些复杂的深度学习步骤一体化从而实现我们可以直接使用并可以拿小数据直接跑应用到我们自己的项目中去。这些新鲜而又经典的模型就像一个精装修的房间,直接拎包入住,不用再自己置办各种家具和处理何种繁杂的事务。类比起来,房间设计就像是模型设计,已经有大的团队将这里打理好从装修,家具到生活用品一应俱全。我们只需要装饰我们自己想要的风格来完成一个家的设计。

 

III. PaddleHub的优势

  1. 遵循Deep learning基本流程,简化设计步骤
  2. 代码量对比 (2行代码可以解决一个人脸识别的问题)
  3. 模型即软件: 一键下载,管理,预测
  4. 迁移学习不同环境下的模型,更好的运用到自己的项目中
  5. 端到端部署:可以将训练好的模型直接部署到服务器上,方便调用
  6. 拥有简单易用的命令行功能

 

IV. PaddleHub 的效果示例

CV场景

飞桨PaddlePaddle-百度架构师21天零基础实践深度学习系列课程-PaddleHub学习笔记_第2张图片

飞桨PaddlePaddle-百度架构师21天零基础实践深度学习系列课程-PaddleHub学习笔记_第3张图片

import paddlehub as hub
import cv2

module = hub.Module(name="ultra_light_fast_generate_face_detector_lmh_640")
res = module.face_detection(images=[cv2.imread('/PATH/TO/IMAGE')])

飞桨PaddlePaddle-百度架构师21天零基础实践深度学习系列课程-PaddleHub学习笔记_第4张图片

import paddlehub as hub
import cv2

module = hub.Module(name="pose_resenet50_mpii")
res = module.keypoint_detect(images=[cv2.imread('/PATH/TO/IMAGE')])

NLP 场景

情感倾向分析:

import paddlehub as hub

senta = hub.Module(name="senta_ilstm")
res = senta.sentiment_classify(texts=["味道不错,确实不算太辣,适合不能吃辣的人,就在长江边上,抬头就能看见长江的风景。鸭肠,黄鳝都比较新鲜。"])

结语:

有了这些工具深度学习变得不再遥不可及,普通人甚至0基础的爱好者也可以轻而易举的玩儿AI!

本人非常非常感谢baidu飞桨提供这么优质的课程供我们学习,而且是免费学习。21一天的学习紧锣密鼓但是收获颇丰。虽然中间有压力也想过退缩,但是群友和老师以及助教老师们的帮助和鼓励给了我很大信心。我终于坚持下来了。我也非常推荐这门课程和百度飞桨其他很有意思的课程。衷心希望百度越办越好,也希望大家一起努力去创造这个AI 生态圈,做我们自己的品牌。在国际形势异常严峻的今天,真的要更加积极努力的学习!我们一起加油!

附课程链接:百度架构师手把手带你零基础实践深度学习 (2020/8/10开班)

https://aistudio.baidu.com/aistudio/course/introduce/1297?activityId=5&directly=1&shared=1&sharedUserId=359933&sharedUserName=AIStudio359933

你可能感兴趣的:(百度,深度学习,人工智能,python)