构建自己的NLU平台(一)

nlu.png

NLU(自然语言理解)系统是任何现代语音系统的最关键模块。如上图nlu.png所示,第二部分NLP Tool就是我们这篇文章要讨论的,我们这里不讨论NLU和NLP的区别,都以NLU指代。

NLU的输入输出

  1. 输入是一段人类语言文本,如上图1模块所示
  2. 输出是一段结构化数据(json/xml etc.),如上图模块3所示。主要包含意图(Intent)和实体(Entities)的抽取结果

NLU服务提供商

正如上图模块2所指示,现在很多服务以Restful API和SDK形式向外提供服务。

  • 国外:

    1. Dialogflow 也就是改名前的API.ai (被Google收购的公司)
    2. Wit.ai (被Facebook收购的公司)
    3. LUIS (微软的服务)
  • 国内:

    1. UNIT (Baidu服务)
    2. DUI (思必驰服务)

笔者用过Dialogflow做英文,也是支持中文,但是服务国内可能被墙;使用过UNIT做中文;同时了解过其他几个,给出建议是:

  • 英文用Dialogflow,免费好用
  • 中文可以直接试试DUI,思必驰的这个开放比较晚,更接近Dialogflow的感觉,UNIT对于需要大规模自己训练内容的领域来说,泛化效果一般
  • 当然,大家自己都可以试试,有好的结果还望相互交流

自己搭建NLU平台的原因

  1. 数据敏感
    因为前面提到过的平台都是需要将数据上传训练才能获得服务,对于数据敏感的需求,显然不能满足。
  2. 领域效果差
    开放平台都是通用NLU平台,各个公司的不收费还愿意提供服务的原因就是想要更多的数据上传来训练自己的模型,那么你们业务所在领域的模块如果是重要的模型,这些平台不一定开放已经训练好的模型。那么结果就是你自己需要大量的训练。
  3. 本地支持
    如果你还需要本地NLU,而不仅仅是联网NLU,显然也不符合要求。

开源NLU引擎选择

NLU是一个巨大的轮子,没有足够的资源自己是搞不起的,寻找开源方案是最快速实现商业模式的方法,目前找到两家:

  1. Rasa nlu
    • 开源时间长,社区稍微活跃
    • 官方还不支持中文,但是有童鞋已经搭建了中文版,引用并感谢
    • 支持本地部署,但是是python程序,各种平台得自己解决,比如android, ios等等
  2. Snips nlu
    • 刚刚开源
    • 官方不支持中文,也没有童鞋搞过中文版
    • 支持本地部署,而且跨平台支持,是Rust实现

所以结论

本人NLU小白,想要快速达到效果并可实现,得站在巨人肩膀。所以计划如下:

  • 基于Rasa nlu来实现
  • 密切关注Snips nlu
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容

  • 用到的组件 1、通过CocoaPods安装 2、第三方类库安装 3、第三方服务 友盟社会化分享组件 友盟用户反馈 ...
    SunnyLeong阅读 14,582评论 1 180
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,050评论 25 707
  • 问:简单谈谈你对 HashSet 原理的认识? 答:HashSet 在存元素时会调用对象的 hashCode 方法...
    Little丶Jerry阅读 264评论 0 0
  • 在那样一个纬度上,有这样一所房子,每天都可以把脚丫踩进温热细软的白沙里,带着只巧克力色的拉布拉多踩一排大小不一的脚...
    大王老师的日记阅读 226评论 0 1
  • 文I秋晓 (1) 刚毕业那会,进入一家贸易公司工作,说是朝九晚五,但是因为各国时差的关系所以常常晚上九十点钟还泡在...
    慕容秋晓阅读 2,877评论 16 16