使用Alexa,客户只需通过语音即可控制数千种不同的智能家居设备,如灯、插头、开关、门锁、摄像头和恒温器。但Alexa智能家居界面不仅仅是基于语音的遥控器。
2018年,我们推出了Hunches(直觉提醒),这是一项Alexa设置,当Alexa认为您忘记关灯或锁门时,它会提供提醒。此后,我们将Hunches扩展为一项名为“自动操作”(Automatic Actions)的主动体验:当客户睡着或离家时,系统会自动关闭灯并调节恒温器。如今,得益于Hunches和Routines( routines)等预测性和主动性功能,四分之一的智能家居交互是由Alexa主动发起的,无需客户说任何话。
在家中采取主动行动是我们认真对待的责任,我们的机器学习模型需要达到高标准才能满足客户的期望。在发起操作之前,多个模型会进行决策,包括估计光照水平、预测客户是否已入睡或离家,以及预测应控制哪些设备。
这些组件中的每一个都是研究和创新的活跃领域,但在本文中,我们将重点讨论如何决定控制哪个设备。我们通过将客户的智能家居使用模式映射到一组原型来实现这一点。
我们通过设备的命名方式、分组方式以及使用方式来获取关于设备的洞察。观察示例设备状态数据时间线图中的“开启”状态时间段。我们可以看到典型的浴室灯模式:白天短时间开启,晚上开启时间较长。另一个在客厅的设备主要在晚上使用。第三个设备仅被称为“插头1”,但其使用行为与客厅高度相关。Alexa可以推断出这个插头位于客厅。例如,它可能连接在圣诞树上。如果模型能确定这一点,就可以为客户提供一个Routine,将圣诞树灯与节日音乐同步。
主动式Routines面临两个挑战:
许多服务的核心问题归结为客户希望设备处于何种状态:这正是驱动自动操作和Hunches的原因。为了回答这个问题,我们训练了一个编码器模型,该模型生成一个设备表示(一个嵌入向量),该向量编码了设备的历史状态和家庭配置,包括设备名称、设备类型和设备分组。从该嵌入向量中,解码器模型可以预测设备的未来状态。
但预测的家庭状态并不能直接回答诸如是否应该关灯或发送Hunch之类的问题。为此,我们使用了一个模型来预测给定的Hunch是否会被接受。Hunch接受模型使用了家庭状态预测模型的编码器,该编码器可以计算每个家庭或每个设备的嵌入向量。我们将每个设备的嵌入向量称为深度设备嵌入。
在此模型中,嵌入编码器的权重代表了跨客户收集的信息;使用模式相似的设备在嵌入空间中的表示彼此接近。例如,一些浴室灯可能带有“浴室灯”的标签,但其他浴室灯可能通过设备分组或使用模式来识别。使用嵌入空间使我们能够抽象掉这些个体特征。
虽然深度设备嵌入对于预测Hunches很有用,但我们也发现嵌入空间在可视化时具有一些有趣的属性。
在这个空间中有趣的一点是存在可以附加使用语义的聚类。在示例可视化中,我们使用k-means定义了60个聚类,并对其中一些进行了着色。每个聚类的标题是其中在完整数据集中归一化频率最高的名称。我们发现聚类携带着语义信息;例如,由“外部”和“门廊”(蓝色和棕色)聚类组成的孤立岛屿很可能是每次长时间开启的户外设备。
虽然赋予聚类的标签是主要名称,但它们并不是与聚类相关联的唯一名称。例如,我们还在户外聚类中发现了标记为“First Light”的设备。嵌入不仅能够根据设备的命名和分组方式,还能基于其使用方式来标记设备。
因此,设备嵌入空间提供了一种自动化方法,将不同家庭中的设备使用模式映射到一个公共空间中,该空间可用于驱动诸如自动操作或Hunches等服务。
尽管Hunches和自动操作带来了诸多便利,但我们仍看到让智能家居变得更智能的机会。
例如,我们将所有客户的设备使用情况投射到通用角色中。虽然这在数据稀疏时很有帮助,但我们也希望为客户提供更个性化的智能家居服务。我们最近实现了一种称为深度家庭嵌入的新表示方法,该方法聚合了家庭中所有设备的信息,使我们能够创建从整体上考虑家庭状态的主动自动化。
大多数智能家居都是从一两个联网设备开始,并随着时间的推移逐渐增加。我们一直在努力寻找方法,为所有Alexa智能家居客户自动化重复性任务、提供提高便利性的相关提醒,并提供有用的建议。
致谢:Charles Brett, Maisie Wang, Michael Dillon, Paul Savastinuk, Usman AleemFINISHED
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。