8 岁以上 · 入门 · Scratch
让我开心:会读心情的虚拟宠物
Make Me Happy
你会做一个会「读心情」的角色:你夸它,它就露出笑脸;你说难听的话,它就难过。先用「写规则」的笨办法试一次,体会为什么写不完;再教电脑自己看例子学会分辨,做出真正聪明的版本。
🧠背后的 AI 概念
电脑本来不懂什么是「友善」、什么是「刻薄」。一种办法是把所有可能的句子都列出来写成规则——但句子无穷无尽,根本列不完。更聪明的办法是给它看例子:一批友善的话、一批刻薄的话,让它从用词和句式里找规律,连没见过的新句子也能判断。这就是「文本分类」,也叫「情感分析」。
动手教程
打开 machinelearningforkids.co.uk,点「Get started」,再点「Log In」输入用户名和密码登录(没有账号就请老师或家长帮你创建)。
点顶部菜单的「Projects」,再点「+ Add a new project」:项目命名为 "make me happy",类型选择识别文字(recognise text),存储方式选「云端 In the cloud」,然后点「Create」。
在项目列表里点进刚建好的项目,点「Make」→「Scratch 3」→「Scratch by itself」打开 Scratch。页面会提醒还没做机器学习,先不用管,我们先用「写规则」的笨办法做第一版。
删掉默认的小猫角色,点画笔图标新建一个角色,在「造型 Costumes」页画一张没有嘴巴的脸。
右键这个造型点「复制 duplicate」,复制出三个造型,在上方白色输入框里分别命名为 "not sure"、"happy"、"sad",再给它们画上嘴巴:not sure 画一条直线,happy 画微笑,sad 画难过的嘴。
切到「代码 Code」页搭脚本:点击绿旗时,先「询问…并等待 ask and wait」让你输入一句话;如果回答是某句夸奖(比如 "I think you are awesome"),就「换成 happy 造型」;如果回答是某句难听话(比如 "You smell bad"),就「换成 sad 造型」。
点「文件 File → 保存到电脑 Save to your computer」保存项目,然后点绿旗测试:输入夸奖会笑,输入难听话会哭,输入其他任何话都没反应。体会一下:想让角色看懂更多话,就得不停加「如果」积木,规则永远写不完。
关掉 Scratch 窗口,回到平台点「< Back to project」,再点「Train」。点「+ Add new label」建两个标签:"kind things"(友善的话)和 "mean things"(刻薄的话)。
在 "kind things" 里点「Add example」输入你能想到的最友善的夸奖,在 "mean things" 里点「Add example」输入难听话,每边至少写 6 句。注意两边数量尽量差不多,长句短句都要有,例子越多样模型越聪明。
点「< Back to project」→「Learn & Test」,再点「Train new machine learning model」开始训练,等一分钟左右让电脑从你的例子里找规律。
训练完成后会出现一个 Test 测试框:输入几句你从没给过它的新句子,看它分得准不准。不满意就回到 Train 补充更多例子,然后务必重新点一次训练。
点「< Back to project」→「Make」→「Scratch 3」→「Open in Scratch」打开 Scratch 编辑器,再点「文件 File → 从电脑中上传 Load from your computer」载入刚才保存的项目。
回到「代码 Code」页改造脚本:用项目新增的「识别文字 recognise text … (label)」积木替换原来的「如果」规则——给它一句话,它会返回 "kind things" 或 "mean things",根据返回值切换到对应造型。
点绿旗测试最终版:随便输入一句友善或刻薄的话,即使从没训练过,角色也会做出相应表情。还可以进阶:让角色开口回复、换成小动物角色,或训练它识别更多种情绪。
准备好动手了?
跟着上面的中文教程一步步做;英文原版 worksheet 可留作对照。