【DuerOS开发日记】3.打造属于自己的小度(2):小白小白!——唤醒词替换

目录

【Minecode|开发日记】1.据说小度在等待帅的人把它唤醒

【Minecode|开发日记】2.打造属于自己的小度(1):使用PythonSDK

【Minecode|开发日记】3.打造属于自己的小度(2):小白小白!——唤醒词替换

(未完持更)


写在前面

上一教程中,我们成功使用Python SDK并将其部署到我们自己的开发者账号中,那么这一节,我们开始让DuerOS真正成为我们的专属AI。

叫惯了小度小度,想给它换个喜欢的名字怎么办?Let's do it!

【本节基于上一节的成果完成,如果没有通过SDK唤醒,建议先查看第二篇教程。】


训练唤醒词

评估唤醒词

为了保证识别精准性,并不是所有的唤醒词都适合。所以先前往DuerOS开放平台->控制台->进入你所创建的服务的服务配置页面->选择唤醒词评估就可以了。

如图所示,评级三星三星以上才可以作为唤醒词,否则这种识别率之下的人工智能只能是人工智障了

image.png

开始训练

确定好唤醒词之后,下面进入训练阶段。

训练使用Snowboy平台,https://snowboy.kitt.ai/。平台支持很多种语言,也很高兴看到中文的模型越来越多了。

选择训练关键词(当然也可以参与别人的模型训练)image.png

填写模型信息,然后录制三次即可完成初次训练

image.png

选择训练好的模型,下载即可

image.png

下载好的***.pmdl模型先留着,一会要用到。


配置Snowboy

训练完snowboy之后,我们需要下载Snowboy Python版到树莓派,从而读取模型。

该部分在文档中的讲解比较笼统,缺失了很多关键步骤。所以这里我们着重讲解。

获取Snowboy Python

git clone https://github.com/Kitt-AI/snowboy.git

直接从git仓库clone即可

swig not found问题原因*

如果你跟随文档走到这一步,很有可能遇到了如下图所示情况。

swig not found.png

提示写的很明确:缺失swig。那么,我们现在来安装swig

安装swig

首先在swig官网下载最新版,http://www.swig.org/download.html。本文使用的是3.0.12

swig webpage.png

解压swig

sudo tar -xzvf swig-3.0.12.tar.gz

安装swig需要g++和PREC支持,如果没有安装,请先安装g++和pcre,否则会出现下图报错

need g++ and prec.png

安装g++和pcre

sudo apt-get install g++
sudo apt-get install libpcre3 libpcre3-dev

然后进入刚刚解压的目录,开始swig的安装

./configure --prefix=/usr/local/swig3.0.12
make
sudo make install

最后设置环境变量

sudo vim /etc/profile

vim中,按i进入编辑状态,编辑完成后按ESC,输入:wq保存退出

vim path.png

现在,我们成功安装了swig

生成平台代码

进入Snowboy目录,生成

cd snowboy/swig/Python
make

python make.png

这一次,我们就正常生成了.so文件

替换识别模块

将snowboy/examples目录下的Python目录更名为snowboy,然后替换DuerOS-Python-Clien目录的app/snowboy

注意:请备份原有的app/snowboy,一会还要用到

image.png

复制过来之后,会发现resource文件夹、.py、.so文件有感叹号。这是因为软拷贝的问题。

有一个简单的解决方法:将原来的snowboy文件夹中的Resource文件夹拷贝过来并替换。

将snowboy/swig/Python中对应的snowboydetect.py和snowboydetect.so这两个文件拷贝过来并替换。

最后,把刚刚的pmdl模型文件拷贝至snowboy目录,完成整个文件替换过程。

修改识别模块代码

修改了模块,我们接下来在代码中完成修改

修改app/snowboy/snowboydecoder.py

修改__ init __()函数,并添加feed_back方法

对齐代码.png

修改terminate方法

修改代码2.png


修改app/wakeup_trigger_main.py

在main方法中更新模型,如图

替换模型.png

完成修改。

注意:python对于代码对齐很敏感,请一定注意对齐,如下图错误

没有对齐报错.png




大吉大利,晚上吃鸡

恭喜,现在已经成功的完成了唤醒词的替换,现在的小度成为了属于你自己的人工智能。接下来,我们可以根据自己需求进行更加个性化的开发


实测视频:


视频链接:http://v.youku.com/v_show/id_XMzEzMzUxNjM4MA==.html?spm=a2h3j.8428770.3416059.1



如果有任何疑问,欢迎在下方评论留言~

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值