极客小将

您现在的位置是:首页 » scratch编程资讯

资讯内容

连机器都开始学习了,你还不学习?用scratch学习人工智能(三)

极客小将2020-12-15-
    上回我们已经在machine learning for kids网站的scratch编程界面创建了一个空的模板项目,今天我们就来继续完成这个小作品吧。     小朋友们学习编程,最重要的是先要理清思路,把复杂的问题分解成简单的小问题,梳理整个程序的逻

    上回我们已经在machine learning for kids网站的scratch编程界面创建了一个空的模板项目,今天我们就来继续完成这个小作品吧。

    小朋友们学习编程,最重要的是先要理清思路,把复杂的问题分解成简单的小问题,梳理整个程序的逻辑和顺序、结构等。
    所以我们就先来理一理。

    1)程序开始时,需要有一个输入框等待小朋友输入给智能助手的命令;

    2)接收到输入以后,需要调用识别模块,判断出是什么指令,就对角色发对应的消息,让角色做对应的动作;

    3)台灯和风扇都分别有两个状态:开和关。台灯的造型比较简单,只有开和关两种状态,当接收到命令时,只要切换相应的造型即可;风扇相对复杂一点,它一共有四个造型

upload/article/images/2020-12-15/56f9b35d0acd7672912d8e577cc8544d.jpg

    要实现转起来的效果,就需要设定一定的间隔时间,让它不停地切换下一个造型;而当收到关风扇的指令的时候,则需要停止,只显示第一个造型。因此,我们需要设定一个风扇状态的变量,当状态为“开”的时候,切换造型,状态为“关”的时候,停止切换。

    理好思路以后,OK,可以开始动手编写程序啦!

    首先把程序的框架搭好。

    upload/article/images/2020-12-15/452623e9702e224c87327aba4aa87e1e.jpg

当程序开始运行时,让智能小助手等待你的输入,并且判断输入的内容,同时添加4个“如果/那么”,用来接收4种指令情况,然后广播对应的消息。

upload/article/images/2020-12-15/82cfb6286762ac39d0c6af9808a0f94e.jpg

台灯的代码:

upload/article/images/2020-12-15/8d32ff3ccd021e9b50e368e536ce5433.jpg

风扇的代码:

upload/article/images/2020-12-15/0ea66a7ad4f4b0f96002d2a92bbac5d0.jpg

    OK,运行一下程序,输入“开灯”、“关灯”、“开风扇”、“关风扇”等命令,看看效果吧!

    哦,等等,有些聪明的小朋友可能会发现问题:“不对啊,这跟我之前编写的逻辑控制程序没什么区别啊,人工智能的程序在哪里呢?”

    没错,到现在为止,我们还仅仅只是用简单的逻辑判断来实现这个程序,并没有用上人工智能。不过这也是程序设计过程中一个常用的方法:先完成框架和流程,然后再修改细节,完成最终的程序。

    接下来,我们就来完成真正的人工智能程序。

    在左侧的积木区里,可以找到这些积木

upload/article/images/2020-12-15/75b2fe9653940f81b0b469002f2e1000.jpg

找到前面的两个

upload/article/images/2020-12-15/5c87a4b4d71059d337c0c0489da69a22.jpg

第一个是 识别的文本(label),这里就是识别出来的分类标签的名字。
第二个是 识别的文本的(confidence),这里就是人工智能的信心指数。还记得我们之前做的测试吗?当你输入文字命令的时候,人工智能对判断的结果都会给出一个相应的信心。

在代码候选区,还有以下四个积木块:

upload/article/images/2020-12-15/c5b06616a8640e04529b24cee8d0e891.jpg

它们其实是变量,表示被识别出来是什么意思,依次是:开灯、关灯、开风扇、关风扇。

我们把主程序里的代码替换一下,变为:

upload/article/images/2020-12-15/718a75ec67ed71a9474ea1a8b116c37d.jpg

好了,这下我们就大功告成啦!

小朋友们可以试试跟人工智能程序说更多的话,看它会作出什么样的反应。比如:

upload/article/images/2020-12-15/16a5d21af8362abee75a0d97566d75e1.jpg

这句话我们之前并没有对程序进行训练,但是人工智能程序依然会作出反应。

如果你想让这个人工智能程序更加智能的话,可以再回去修改你的训练语句,给每个标签多添加一些语句,让智能助手能够识别更多的指令。

快去动手试一试吧!

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除

网友点评

共有5条评论来说两句吧...

在线客服