【幻灯片分享】Siri:I,robot! Siri语音识别系统详解 | 新浪 张俊林 | iOS DevCamp
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》 | iOS DevCamp
【讲师现场靓照】
【幻灯片在线观看】*:
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林 from Shining @DevCamp
备注:* 因为炫姐姐对SlideShare这一平台的偏爱,尽管需要使点小技巧才能上传分享,但是炫姐姐还是坚持选择了这一功能强大却简洁好用的平台。一来对国外这些开发出优秀的工具和平台、造福于互联网和人类的团队表示致敬,二来则是对国内对于这些优秀的工具和平台的限制表示一下立场。读者如果不能正常浏览,那么需要像炫姐姐一样用点小技巧。而对于那些还是不知道炫姐姐在说什么的小白读者,可以移步到这里查询原因。
【幻灯片下载页面】: iOS DevCamp幻灯片下载:Siri:I,robot! Siri语音识别系统详解 | 新浪 张俊林 -来自CSDN下载频道(不需要积分,自由下载)
【幻灯片内容刚要】:
1. iOS DevCamp Produced by CSDN Website: h5p://devcamp.csdn.net Weibo: h5p://weibo.com/cmdnclub 1
2. Siri: I, Robot ! 张俊林 2012.07.27 2
3. About me?? 中科院软件所 博士?? 《这就是搜索引擎:核心技术详解》作者?? 现任职新浪微博,从事语义分析,搜索,推荐系 统,社交挖掘方面研发工作?? 微博:张俊林say http://www.weibo.com/ malefactor 3
4. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 4
5. Siri初体验 5
6. Siri不是什么以及Siri是什么!?? Siri不只是 ? 语音识别系统; ? 持续自学习系统; ? 上下文感知系统; ? 传统的AI基础架构;?? Siri是什么 ? 集成上述优点的服务导向的新型AI架构 ? 本质上是个通过多轮对话的用户意图识别系统 ? 集成了语音识别、自然语言处理、用户意图分析、任务控制系统 等多种技术的综合AI框架 6
7. Siri的血统与出身!?? DARPA项目Contract numbers FA8750-07- D-0185/0004) ? Personalized Assistant That Learns Program(PAL); ? Personalized Assistant That Learns Program(CALO);?? via SRI International’s Artificial Intelligence Center?? 超过40年的研究?? 2010年4月被苹果公司收购?? 集成进入Iphone 4S 7
8. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 8
9. (云+客户端+外部服务)架构! 9
10. Siri的功能粗粒度划分!?? 多模态输入->文本表示?? 文本表示->用户意图 ? 深层NLP ? 会话控制 ? 任务控制?? 用户意图->功能服务 ? 服务管理?? 功能服务->多模态输出 10
11. Siri整体架构图! 11
12. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 12
13. Siri整体架构图-Where Are We Now! 13
14. Siri的输入系统!?? 输入系统包含三个目的 ? 支持多通道输入模式 ? 进行早期消除歧义 ? 尽可能引导用户到Siri能够提供的服务?? 多模态输入 ? 语音 ? 文本输入 ? 地理位置信息输入(GPS etc) ? GUI选择界面 ? 事件驱动(闹钟,事件提醒等主动触发通知事件) 14
15. Siri的输入系统! GUI 15
16. Siri的输入系统! 16
17. Siri的输入系统!?? 语音识别 NO YES 17
18. Siri的输入系统!?? 语音识别系统 ? 购自Nuance通信公司 ? 为苹果公司的Siri作出了定制化改造 ?? 语言模型 ? 自动判断多种可能的字符流,哪种更符合语言表达习惯 ? Candidate1:P1(我 喜欢 苹果)=p(我)*p(喜欢|我)*p(苹果|喜欢) =0.35 ? Candidate2:P2(我 稀饭 苹果) )=p(我)*p(稀饭|我)*p(苹果|稀饭) =0.05 18
19. Siri的输入系统!?? 语音识别系统 ? 语言模型的定制化改造 ?? 商业实体信息 ?? 用户个性化信息 ? 语法语义检查 ?? Candidate1:Italian food for lunch ?? Candidate2:Italian shoes for lunch 19
20. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 20
21. Siri整体架构图-Where Are We Now! 21
22. 活跃本体(Active Ontology)!?? Siri系统最核心部分,驱动调用大部分其他数据、 模型和功能!?? 类似于人的记忆系统的“工作记忆”,提供当前分 析内容相关激活的本体等信息的临时存储以及集 成调用各种模块进行处理!?? 类似于人工智能领域的“黑板系统” 22
23. 领域模型—omain Model)!?? 是实际管理各个领域ontology的地方!?? 领域模型包括?一个领域内的概念,实体,关系, 属性和实例 ? 维护领域本体信息 ? 单词分类到领域 ? 推理功能: local mexican food--->find restaurants with style=mexican ? 组织领域有关服务地址,比如哪个网站提供餐馆评论 ? 语义转写 23
24. 用户个性化模型!?? 包含两个子系统,用来对个性化建模 ? 短期记忆系统(short term) ? 长期记忆系统(long term)?? 短期记忆系统 ? 最近用户和Siri的对话记录 ? 用户在GUI所做的选择:播放过哪些视频等 ? 最近用户发出的请求 ? UI点击记录 ? 设备信息:时间,地理位置,光强,音强,动作 24
25. 用户个性化模型!?? 长期记忆系统 ? 用户的个人信息(姓名,偏好,个人账户,居住地址等) ? 记录:书签,clipping ? 个人to-do list,闹钟,事件提醒等 ? 商业/娱乐实体信息:喜欢的商品等 ? 商品购买历史记录和想买列表,折扣和优惠信息 ? 订票订餐等历史事务?? 两个记忆系统的作用 ? 在从文本映射为语义或者意图的时候进行消除歧义 ? 增加亲和力(知道你个人信息,在交互时候增加亲切感) 25
26. 语言模式识别系统(language pattern recognizer system)!?? 对表层,语法层,习惯用语和成语等进行模式匹 配的模块 ? 其实就是我们常说的模板系统; ? 非代码形式,而是以模式定义形式存在,代码解析模式定义; ? 内部采用正则表达式,状态机等实现. ? 使用场合:引导用户输入,NLP解析,识别任务类型和对话类型 等.?? Examples: ? 常用语:whats happening ? 被认为是“事件计划任务”以及“本地事件"类型 26
27. 词汇表!?? 词汇表(Vocabulary Component) ? 主要用来维护表层单词表述和深层语义概念之间的映射关系 27
28. 活跃本体(Active Ontology)! 28
29. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 29
30. Siri整体架构图-Where Are We Now! 30
31. 语言解释器(language Interpreter)!?? 分析用户文本输入并做多层次解析 ? 使用了句法分析器;句法结构分析; ? 使用了语义分析器:即将单词映射到ontology层级 ? 语法与语义消除歧义 ? 自动补全功能的语法与语义检查 ? 语音输入候选文本的语法与语义检查?? 领域实体数据库—omain Entity Databases)! ? 存储各个领域的实体的表单,比如餐馆名称,餐馆地点等 ? 领域实体的存储和查询管理支持 ?? 商业领域 ?? 娱乐领域(电影,视频,歌曲 etc) ?? 事件 ?? 地理信息(城市,街道,国家等的位置信息) 31
32. 语言解释器(language Interpreter)! / / 32 语言解释器工作流程
33. 语言解释器(language Interpreter)!?? 例子 ? Input: Who is playing this weekend at the filmore?(本周末 谁会在filmore进行演出?) ? 解析: ?? 上下文环境:时间地点 ?? 单词/短语匹配 ? Playing->事件场所 or 体育运动 ? This weekend:确定具体日期 ? Filmore:场所名称 ?? 语义一致性 ? Playing:场所时间 because “Filmore” ? 解析结果:这是用户的一个问句查询,查询内容是一个当地事件(local event),时间是本周周末,如果候选事件的场地名称包含filmore,那么这就是满足 用户需求的答案 33
34. 对话流控制系统—ialog Flow Model Component)!?? 对话流控制系统是在将用户的文本表示解析为内 部用户意图之后发挥作用; ? 即语言解释器将解析结果传递给对话流控制器?? 功能 ? 用于识别用户意图所属任务类型 ?? (想要干什么?比如要找?一家餐馆); ? 对于确定的任务类型或者问题,给出意图的内部表示,判别需要 哪些参数. ?? ”给我找?一个附近的受欢迎的川菜馆“ 参数:附近、受欢迎、川菜 ?? 这些参数也被称作约束条件; ? 根据还需要哪些约束条件以及用户的个性化信息(长期记忆以及 短期记忆系统),决定下面应该引导用户说什么(套出需要的信 息) 34
35. 对话流控制系统—ialog Flow Model Component)! / 对话控制系统运行流程图 35
36. 对话流控制系统—ialog Flow Model Component)! 对话控制系统运行实例 36
37. 任务流控制系统(Task Flow Model Component)!?? 任务流模型是指某种类型的任务(要解决的某类 问题),由哪些步骤构成,步骤之间的依赖关系 等; ? 餐厅预约任务 ?? step1:先找到?一个饭馆 ?? step2:查看是否还有剩余空位 ?? step3:预订某个时间段的座位 37
38. 任务流控制系统(Task Flow Model Component)!?? ?一个通用任务模型+若干从通用任务中集成的领域 任务 构成(类似于编程中的父类和子类关系);?? 通用任务模型 ? 从具体任务中抽象出的,与领域无关,最高抽象级别 的任务模型 ? 有多种通用任务模型 ? 比如对于某个事务性(Transaction)通用任务 ?? 首先确定需要事先收集哪些数据 ?? 执行事务 ?? 事务输出结果 38
39. 任务流控制系统(Task Flow Model Component)! “ ” “受限选择”通用任务模型 39
40. 任务流控制系统(Task Flow Model Component)!?? 受限选择中的“语义转写”与“信息提示” ? Input: Chinese food in Menlo park ? 解析结果: ?? 任务类型=受限选择 ?? 领域类别=餐馆 ?? 约束条件: ? 地点=Menlo park,CA ? 菜系=Chinese food ? 如果没有找到相关服务 ?? 语义转写: Sorry, I can’t find any Chinese food near Menlo park ?? 信息提示: you should try other cuisines or location. 40
41. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 41
42. Siri整体架构图-Where Are We Now! 42
43. 服务(Service)相关系统!?? 三个与服务相关模块; ? 服务模块(service component) ? 服务能力模型(service capability model) ? 服务整合模块(service orchestration component) 43
44. 服务(Service)相关系统!?? 服务模块(service component) ? 服务API信息描述 ? 包括三类 ?? 外部Web服务API; ?? 本地应用API; ?? 内部API:LBS etc; ? 例子:订餐相关服务 ?? 根据指定的时间地点等约束条件可以返回满足条件的餐馆名称 ?? 根据指定的餐馆名称可返回其评级信息 ?? 根据指定的餐馆名称可返回其它用户的评论信息 ?? 可以在地图上根据坐标进行定位 ?? 可以对某个餐馆进行预订的功能 44
45. 服务(Service)相关系统!?? 服务能力模型(service capability model); ? 服务的具体描述信息 ? 记录机读信息 ?? 哪些服务能够回答什么样的查询 ?? 哪些服务能进行什么样的事务 ?? 服务暴露哪些接口参数等 45
46. 服务(Service)相关系统!?? 服务整合模块(service orchestration component); ? 是核心的服务有关模块,调用另外两个服务模块提供 内容记录机读信息?? 功能包括 ? 动态决定哪些服务能够满足用户请求 ? 动态地以?一定顺序组合多个服务 ? 动态的将任务参数转换为满足API格式要求 ? 动态监控服务是否可用,是否好用 ? 将多个服务最终结果整合后规范输出格式 46
47. 服务(Service)相关系统! 外部 内部 APP YES NO服务整合模块执行流程 47
48. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 48
49. Siri整体架构图-Where Are We Now! 49
50. Siri输出子系统!?? 从统?一的内部表示转换为多模态输出形式 ? 语音对话 ? 领域实体答案 ? 餐馆名称地址 ? 电影、商品等 ? 领域服务结果 ? 天气情况,航班等?? 生成多模态组合的输出结果 ? GUI,文本短信,邮件内容,语音,动画等?? 个性化界面 50
51. 大纲?? Siri简介?? Siri整体架构!?? 输入系统!?? 活跃本体!?? 执行系统!?? 服务系统!?? 输出系统!?? Siri的现在和未来! 51
52. Siri的现在和未来!?? 中文版本 ? 中文版本效果远不如英文版; ?? 技术复杂性. ?? 对应的丰富中文服务API不够丰富?? 垂直领域扩展?? 服务类型扩展 ? Siri会成为APP的入口么?类似于1999年的雅虎??? 扩展设备类型 ? TV控制,车载控制 etc?? 前途光明,任重道远 52
53. Thanks!! 53