物联网应用中的策略自动生成器
2019-10-21张美楠郑潍雯王骄阳
张美楠 郑潍雯 王骄阳
摘 要:本文围绕实现物联网应用领域中的只能家居方面的策略的自动生成展开,旨在将研究小组的项目开发成果,策略自动生成器的软件开发过程进行描述。开发过程主要包括:基于Python语言实现的各大中文语义开发平台的中文自然语言分析,其中BosonNLP开发平台占据主要部分;基于SQL数据库实现的智能家居领域语言的关键词,近义词等的统计工作;科大讯飞推出的以语音为核心的人机交互解决方案-AIUI开放平台,实现智能手机上的语音识别功能;以及基于当前app主流开发工具Android Studio开发的应用程序-策略自动生成器。项目主要解决的问题,捕获关于智能家居领域家电控制方向的自然语言。理解语义并作出相应的回馈指令,从而实现语音控制智能家居的目的。
关键词:物联网;策略自动生成器;BonsonNLP;SQL数据库;AIUI
本项目内容围绕实现智能家居等可控智能领域的策略自动生成器展开;此策略自动生成器致力于给出问题的最优解决方案,相较于类似传统的家居领域的电视遥控器等事先设定好的内部逻辑,此项目致力于实现各个电器的智能控制,最大的特点是使用语音控制家电,捕获用户语言中的关键信息,实现家居产品的控制工作。(例如,某传统电器-空调,摆脱了传统的控制遥控器之后,当前市面上的很多智能音箱等产品已经可以实现语音控制。但是命令中若涉及到繁琐的不易理解的用户输入语言“当室内温度超过30℃时,请打开空调制冷功能”,“只要室内温度大于30℃了,就请你打开空调...”可能难以区分)由此,此项目内容中的策略自动生成器致力于针对智能家居领域中的几个典型家电,基于NLP开放平台提供的开发者接口,通过大量的语句测试,来统计并丰富指定领域语言流中的关键信息,结合中文分词算法,实现关键字提取,进行数据分析,匹配,对智能终端执行控制命令,讓大众发出的即使再平常的语音指令,也能轻松被机器识别。
一、NLP以及简单的数据库
自然语言处理(NLP)是人工智能和语言学领域的一个分支学科,同时也是机器学习中最热的一个方向之一。试想想,机器可完全明白人类的语言,并且可以娴熟地使用自然语言与人类沟通,这不就是人工智能的目标?幸好,现在各种文本预处理、文本挖掘技术已日渐成熟,可以帮助我们从文本中提取出更多有意义的信息。此项目主要使用了一款NLP开放平台-玻森,此团队专注于中文语义分析技术,其通过自主研发的中文分词、句法分析、语义联想和实体识别技术,为开发者提供了简单、强大、可靠的中文语义分析云端API。
通过此平台,项目组的成员主要进行了以下一些测试,关键词提取“现在外面的天气真热啊”,利用Python执行代码之后得到的关键词有“天气,热”。语义联想“打开空调”,执行后得到的相近语义有“翻开,拆开等”。针对各种类型的家电产品,首先通过各种中文分析工具,提取出每一条控制语句中的关键字,并加之适当的语义分析,将统计结果录入数据库,建立一套关于针对智能家居控制领域的语法,便于后续程序的开发。数据库可以直观的理解为存放数据的仓库,那么我们将家电的控制指令中的关键字提取出来后,将其存储于数据库。想要达到完全智能化的控制,需要通过大量的机器训练或是提供大量的数据。
二、语音识别平台
众所周知,科大讯飞、云知声、思必驰是几家专注于语音识别技术的公司,依靠垂直语音技术领域,长期盘踞主流语音市场,拥有先发优势。那么此次软件开发过程中,小组成员经过调研后,毫不犹豫的选择接入了科大讯飞的语音识别平台技术。AIUI是科大讯飞2015年推出的一套以语音为核心的人机交互解决方案,意在使应用和设备能够快速具备能听会说,能理解会思考的能力。此策略自动生成器的最大的功能之一,语音控制智能家居的能力通过接入AIUI得到了简单方便的实现。
三、程序开发
搭建程序的界面,实现其内部的逻辑功能,建立前后台的连接,引入各个平台的API,相信是众多app开发者最熟悉的操作内容。首先在开发工具的选择上,小组选择了当前主流的集成开发工具AS,其拥有完善的插件管理,支持多种代码管理工具,智能且有GOOGLE官方支持等多项优点。在项目的实际开发过程中,界面的设计上基本没有遇到什么问题,实际接入AIUI平台的SDK时,由于项目开发的不熟练,以及官方使用文档的理解能力不够,开发初期饶了很多的弯路,但是好在经过大家的共同努力,基本达成了预期的目标成果。用户输入一段及其控制语音指令,程序反馈出对应的机器操作指令。实际软件中已经基本实现了冰箱,空调,电灯,电视机的开关等控制,欢迎感兴趣的小伙伴体验这款(物联网应用中的)策略自动生成器软件并提供您宝贵的建议。
四、总结
事实上,想要达到真正的智能,绝不仅仅是简单的软件开发,今年早些时候,Google DeepMind的AlphaGo打败了韩国的围棋大师李世乭九段。在媒体描述DeepMind胜利的时候,将人工智能(AI)、机器学习(machine learning)和深度学习(deep learning)都用上了。机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。与传统的为解决特定任务、硬编码的软件程序不同,机器学习是用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务。尽管我们此次的研究仅仅是针对于简单易用的软件的开发,但是站在深远发展的角度上,我们的下一步目标可能会是深入人工智能领域的研究,毕竟人工智能时代正在悄然改变着我们的生活。
参考文献:
[1]朱子龙.人工智能技术在电气自动化控制中的运用探讨[J].科技创新与应用,2012(17):14.
[2]张德.自然语言处理技术在司法过程中的应用研究[J].信息与电脑(理论版),2017(17).
[3]晏立.从社会需求的角度探索软件工程教育[J].计算机教育。2008.22:141-142.
[4]侯亚君.计算机语言识别技术应用的探索[J].电脑开发与应用。2014(03).