![风火少年战AI:人工智能从编程到实践](https://wfqqreader-1252317822.image.myqcloud.com/cover/168/43798168/b_43798168.jpg)
太乙真人的法器库
哪吒回到家后开始犯愁了:这次虽然大胜而归,但全是EasyDL的功劳,万一手边没有EasyDL,那岂不是要一败涂地了?哪吒灵光一现,想起在乾元山金光洞的法器库里见过师父太乙真人的三大法宝:AI Studio、Python和PaddleHub。若是学会这三大法宝的使用方法,即使身边没有EasyDL,依然可以使用人工智能法术,这样岂不是可以永远立于不败之地?
AI Studio
百度AI Studio是针对AI学习者的在线一体化学习与实训社区,集合了AI教程、深度学习样例工程、各领域的经典数据集、云端的超强运算及存储资源,以及比赛平台和社区。其官网地址为https://aistudio.baidu.com/。
进入AI Studio官网后,点击“项目”,即可进入项目列表页面,如图2-30所示。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a30.jpg?sign=1739268532-5Fj6bviVJQ9nKiaM7ONNm9b7ciSNjOkh-0-cbbcf10ae8d0c27c9307c53c109237ee)
图2-30 百度AI Studio项目列表
在该页面中可以创建自己的项目。点击“创建项目”按钮,出现如图2-31所示的界面。创建一个AI Studio项目主要分为以下三步。
1)选择要创建的项目类型,此时我们默认选择Notebook项目。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a31.jpg?sign=1739268532-fsGFVEG4UdiozBLTZksmOo7BZkzzEJsg-0-b0e9a6d6a3835ac432769ca9aa9c214a)
图2-31 创建项目
2)配置项目环境,AI Studio内置了Python 3.7和Python 2.7两个版本,如图2-32所示。我们可以根据需要来选择,这里我们选择了Python 3.7。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a32.jpg?sign=1739268532-4r5cknf4Ks7XbnKZeISXHpRN6UPevrWf-0-61176a9ab49b3a72f09eb7b8310e4343)
图2-32 配置项目环境
3)添加项目的描述信息,如项目名称、项目描述等,此外,还可以为该项目选择项目标签,如图2-33所示。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a33.jpg?sign=1739268532-Ak1dU3FS2GABWnjkXoMM1UJeXY2khRTN-0-f9486853017389e5342d99f1e3002702)
图2-33 添加项目描述信息
点击“创建”按钮,弹出如图2-34所示的窗口。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a34.jpg?sign=1739268532-kJWt9oU0sR318FID3DYZgkfu8pR69CFS-0-13159e4604f9a42989398347387d97ca)
图2-34 项目创建成功
点击“查看”按钮,进入如图2-35所示的界面。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a35.jpg?sign=1739268532-g49MbO1e3JcAULVtdEX9jilCejbMlaBq-0-2fd228549e2b4c0568a8ad75f493e0cc)
图2-35 查看项目详情
点击“启动环境”按钮,弹出如图2-36所示的界面。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a36.jpg?sign=1739268532-GlPtCjQntLJb5N2kYNm1leQtGl9HJ9o0-0-45b66257fdcc402260e3776854b3fbac)
图2-36 选择运行环境
选择该项目的运行环境,包括基础版、高级版、至尊版,默认选择基础版。
点击“确定”按钮后,进入如图2-37所示的界面,就可以开始编写Python代码并运行了。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a37.jpg?sign=1739268532-1YYT7YvaPLKuCsGRe2e8oT6zAHa6NYgo-0-227738864503dbc282b2b42af43ce492)
图2-37 编辑Python代码并运行
对于此环境的使用,可以参考AI Studio帮助文档:https://ai.baidu.com/ai-doc/AISTUDIO/sk3e2z8sb。
Python
我们在做人工智能研究的时候,最常用的计算机编程语言就是Python,它使用简单、方便,提供了强大的数据处理功能,对于初学者也十分友好。下面对Python的基础内容进行介绍。
1)行与缩进。在Python中,一行通常代表一个操作或者一个执行命令。同一个模块中的代码必须行首对齐,模块内部要有四个空格的缩进。如图2-38所示,对于第2~4行,每行为一个单独的模块,因此行首对齐;对于第7~10行,由于第9~10行为模块的内部,因此相对于第7行有四个字符的缩进。Python利用对齐与缩进来标识不同的模块,这是我们在编程过程中尤其需要注意的。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a38.jpg?sign=1739268532-TPDOtGt8hnpHJ51txClcy5FzkmsF99oU-0-f4fcbdf2502e400afc40c782d2c8ae02)
图2-38 代码的行与缩进
2)输入与输出。Python使用input()函数从控制台读取一个输入,使用print()函数进行输出。如图2-39所示,input()函数用内部的文字进行输入提示,Python 3默认的输入数据类型为字符串,第1行表示将输入的字符串赋值给变量s,print(s)表示将s的值输出。可以同时输出多个变量值,比如调用print(s, s, s, s)可以将s输出四次。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a39.jpg?sign=1739268532-ZwAMRdDDbpLGLRpF5jUvuf7Eg92tFWGp-0-8675efe64c0613a4199f36ee7d0af278)
图2-39 输入、输出代码演示
3)注释。所谓注释,就是一些说明性的文字,不是程序所执行的命令。注释用来帮助我们标识函数的功能。
4)循环语句。循环语句是指重复执行的一段代码,通常使用for语句实现循环。比如,我们想一次输出列表中的每个元素,如图2-40所示,有两种方法。第一种方法如3~4行代码所示,表示对于列表a中的每个number,依次输出其值;第二种方法如6~7行代码所示,我们首先使用len(a)获得a的长度,然后使用range(len(a))生成一个整数索引区间[0, 1, 2,…, len(a)-1],里面的数分别代表a中每个元素的下标,从前往后遍历该下标,用a[i]输出第i个位置的元素值。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a40.jpg?sign=1739268532-bDwoMsPfKiHCMQQF7JR29miX9wvB2uZJ-0-39872b653ffd9828f8f3a6579c1f9875)
图2-40 循环语句代码演示
更多Python教程,请参考https://docs.python.org/zh-cn/3/tutorial/index.html。
PaddleHub
PaddleHub是百度公司的深度学习平台PaddlePaddle生态下的模型管理工具,它封装了图像分类、目标检测、视频分类等方面的若干模型,用户通过简短的代码即可实现人工智能任务。
我们可以进入https://www.paddlepaddle.org.cn/hublist网页来查看并选择需要的模型,如图2-41所示。在该界面中,我们可以筛选需要的模型分类,还可以看到具体的模型名称,以及实现方案。
当单击一个模型后,可以看到该模型的具体说明以及使用的示例代码,如图2-42所示。
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a41.jpg?sign=1739268532-kAH4i2XdtAUrF1XzNapiIsW6T9zyEldV-0-e652199d65d442dd1fc669a85a6c5b16)
图2-41 PaddleHub模型搜索
![](https://epubservercos.yuewen.com/97E67D/23075077401797306/epubprivate/OEBPS/Images/2a42.jpg?sign=1739268532-uKmrmehBQIXIXDQz7FZrQhFJ2Ny2G482-0-4973418a8e639095bfa6238205b12312)
图2-42 模型说明及示例代码