CN105359170A - 修改学习设备的学习能力 - Google Patents
修改学习设备的学习能力 Download PDFInfo
- Publication number
- CN105359170A CN105359170A CN201480038128.5A CN201480038128A CN105359170A CN 105359170 A CN105359170 A CN 105359170A CN 201480038128 A CN201480038128 A CN 201480038128A CN 105359170 A CN105359170 A CN 105359170A
- Authority
- CN
- China
- Prior art keywords
- study
- learning
- event
- model
- facility
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Abstract
用于修改学习设备的分散式系统内的学习能力的各个实施例,方法包括:在学习设备处接收来自附近设备的信号,基于所接收的信号内的数据来确定所接收的信号是否是学习修改器信号,以及响应于确定所接收的信号是该学习修改器信号来修改一个或多个学习能力。该方法还可以包括:确定是否接收到后来的学习修改器信号;以及响应于确定没有接收到后来的学习修改器信号来重置该经修改的一个或多个学习能力。修改学习能力可以包括启用或禁用该学习设备的学习模式和/或调整用于计算映像的触发权重的变量值。当没有接收到后来的学习修改器信号时,学习设备可以重置经修改的学习能力。
Description
相关申请
本申请要求享有于2013年5月24日提交的、题名为“AMethodandApparatusforContinuousConfigurationofaDevice”的美国临时申请No.61/827,141的优先权的利益,在此出于所有目的将其全部内容通过引用的方式并入本文中。
本申请还涉及与此同时提交的题名为“LearningDeviceWithContinuousConfigurationCapability”的美国专利申请No.14/286,244,针对有关学习设备的进一步细节,将其全部内容通过引用的方式并入本文中。
背景技术
一些智能设备可以学习基于所接收的触发来执行动作。然而,在一些情况下,对于用户来说,智能设备的学习行为可能是不够的或是不期望的。例如,当将新的智能设备带入环境中时,用户可能想要这个新的智能设备具有加快的学习速率以便快速的开始起作用。用户可能需要便捷的方式来控制或调整智能设备的学习能力。
发明内容
各个实施例提供了用于修改学习设备的分散式系统内的学习能力的的系统、计算设备、非暂时性处理器可读存储介质以及方法。可由计算设备(该计算设备是学习设备)的处理器执行的实施例方法可以包括:接收来自附近设备的信号,基于所接收的信号内的数据来确定所接收的信号是否是学习修改器信号,以及响应于确定所接收的信号是所述学习修改器信号来修改所述学习设备的一个或多个学习能力。在一些实施例中,所述方法还可以包括:确定是否接收到后续的学习修改器信号,以及响应于确定没有接收到所述后续的学习修改器信号来重置所述学习设备的经修改的一个或多个学习能力。在一些实施例中,修改所述学习设备的一个或多个学习能力可以包括启用所述学习设备的学习模式,以及重置所述学习设备的经修改的一个或多个学习能力包括禁用所述学习设备的所述学习模式。
在一些实施例中,修改所述学习设备的所述一个或多个学习能力可以包括禁用所述学习设备的学习模式,以及重置所述学习设备的经修改的一个或多个学习能力可以包括启用所述学习设备的所述学习模式。在一些实施例中,修改所述学习设备的所述一个或多个学习能力可以包括基于所述学习修改器信号调整用于计算映像的触发权重的变量值,以及重置所述学习设备的经修改的一个或多个学习能力可以包括将用于计算所述映像的所述触发权重的所述变量值调整为默认值。
在一些实施例中,所述方法还可以包括初始化计时器;以及响应于确定所接收的信号是所述学习修改器信号或确定接收到后续的学习修改器信号来激活或重置所述计时器。在该实施例中,确定是否接收到后续的学习修改器信号可以包括确定在所述计时器到期之前是否接收到后续的学习修改器信号。在一些实施例中,所述计时器可以基于来自所述学习修改器信号的数据来设置。在一些实施例中,所述学习修改器信号包括以下各项中的一项或多项:指示所述学习设备是应当增加还是减小学习速率的学习速率修改器值;指示由所述学习修改器信号影响的一种类型的学习设备的设备类型;指示所述学习设备应当启用还是禁用学习模式的学习模式生效设置;指示由学习修改器信号影响的特定类型的计算的学习速率修改器类型;以及指示所述附近设备将多久发送一次所述学习修改器信号的传输频率。
各个实施例可以包括被配置具有处理器可执行指令以执行上文所描述的方法的操作的计算设备。各个实施例可以包括具有用于执行上文所描述的方法的操作的功能的单元的计算设备。各个实施例可以包括在其上存储有处理器可执行指令的非暂时性处理器可读存储介质,所述处理器可执行指令被配置为促使计算设备的处理器执行上文所描述的方法的操作。各个实施例可以包括系统,所述系统可以包括被配置为执行上文所描述的方法的操作的一个或多个学习设备。
附图说明
并入本文中并且构成本说明书的一部分的附图示出了本发明的示例性实施例,并且与上文给出的总体描述和下文给出的具体描述一起用于解释本发明的特征。
图1A-图1B是示出了实现各个实施例的示例性系统的系统框图。
图1C是适用于各个实施例的实施例学习设备的部件框图。
图1D是适用于各个实施例的学习修改器设备的部件框图。
图2是适用于各个实施例的实施例学习设备的部件框图。
图3A是具有适用于各个实施例的各个部分的实施例事件报告消息结构的组成框图。
图3B是具有适用于各个实施例的各个部分的实施例事件数据结构的组成框图。
图3C-图3H是适用于各个实施例的可由智能盒(或学习设备)利用以识别和/或关联事件的模型的示例性时间窗的图。
图4是适用于各个实施例的由四种模型组成的实施例映像的部件框图。
图5是适用于各个实施例的响应于产生事件的映像系统改变状态的示例性时间线图。
图6是示出了适用于各个实施例的基于现有的映像创建新的映像的示例性时间线图。
图7是示出了适用于各个实施例的训练新创建的映像的示例性时间线图。
图8是适用于各个实施例的针对学习设备的两个示例性学习速率的图。
图9是示出了适用于各个实施例的用于通过反复增加已知映像的触发权重来训练学习设备的回报信号(rewardsignal)的示例性时间线。
图10是示出了适用于各个实施例的用于通过反复减小已知映像的触发权重来训练学习设备的纠正信号(correctionsignal)的示例性时间线图。
图11是示出了产生并处理事件以执行动作或将动作与触发关联的实施例方法的过程流程图。
图12是示出了用于针对学习和忘却来调整触发权重的实施例操作的过程流程图。
图13A-图13C是示出了用户在各个学习设备附近携带实施例学习修改器设备以便调整它们的学习能力的图。
图13D-图13F是示出了放置在各个学习设备附近并且被配置为响应于接收到各个连接来发送学习修改器信号的实施例学习修改器设备的图。
图14A-图14D是示出了根据各个实施例的当学习设备在各个学习状态中时回报信号到已知映像的触发权重的应用的示例性时间线。
图15A-图15D是示出了根据各个实施例的当学习设备在各个学习状态中时纠正信号到已知映像的触发权重的应用的示例性时间线。
图16是学习修改器信号的实施例数据结构的组成框图。
图17A和图17B是示出了用于学习设备响应于接收到来自学习修改器设备的信号来改变其学习能力的实施例方法的过程流程图。
图18A-图18B是示出了用于学习设备响应于接收到来自学习修改器设备的信号通过启用或禁用学习模式来改变其学习能力的实施例方法的过程流程图。
图19是示出了用于学习设备响应于接收到来自学习修改器设备的信号通过调整在计算触发权重中使用的变量值来改变其学习速率的实施例方法的过程流程图。
具体实施方式
将参照附图详细描述各个实施例。在任何可能的地方,贯穿附图将使用相同的附图标记来指代相同或类似部分。对特定例子和实现方式进行的提及是用于说明性的目的,而不是要限制本发明或权利要求的范围。
本文中所使用的词语“示例性”意指“用作例子、实例或说明”。本文中被描述为“示例性”的任何实现方式不必被解释为比其它实现方式更优选或更具优势。
本文所使用的术语“学习设备”、“智能设备”以及“智能盒”指的是能够通过将预定动作关联于与触发有关的信息(诸如,指示用户输入的数据、检测的状态改变、接收的信号或传输、以及在设备处可获得的其它信息)来从所观测的信息中学习行为的计算设备。学习设备可被配置为随时间存储触发与预定动作之间的新关系或关联。响应于检测到已经与预定动作关联的触发,学习设备可以执行预定动作或替代地执行操作以促使其它关联设备执行相关操作。贯穿本公开内容,修饰语“智能”可以用于指示器具(例如,灯)是学习设备。例如,术语“智能灯”指的是被配置成学习设备的灯、耦合于学习设备并由学习设备控制的灯、或以其它方式包括学习设备的部件的灯。
本文所使用的术语“事件”指的是代表已经由一个或多个学习设备检测或产生的动作、状况和/或情况的数据(例如,对象或其它数据结构)。响应于获得指示动作或状况的发生的信息(本文中称作“发生数据”),可以产生(或以其它方式获得)事件并将其本地存储在学习设备上。发生数据可以包括描述动作或状况的各种数据以及识别执行或检测该动作或状况的设备的各种数据,诸如,设备标识符、时间戳、优先信息、增益信息、状态标识符等。发生数据可以由学习设备从来自连接于学习设备的设备(例如,直接耦合于处理器或学习设备的内核的传感器等)的信号或其它信息接收或获得,或以其它方式由学习设备(例如,非可编程的灯等)控制。发生数据还可以由学习设备从接收自其它附近设备的广播消息(本文中称作“事件报告消息”)中接收或获得。例如,在基于本地遇到的传感器数据产生第一事件之后,第一学习设备可以广播具有指示第一事件已经发生的发生数据的事件报告消息,从而使得第二学习设备也能够基于该事件报告消息内的数据产生第一事件。
本文所使用的术语“映像(reflex)”指的是在学习设备内存储的信息,其至少指示触发与该学习设备被配置以执行的动作之间的关联或关系。所存储的映像信息可以包括可匹配于在预定时间窗内产生的、促使学习设备执行映像的动作和/或调整所存储的关于映像的持久性数据(例如,触发权重)的事件的模型。事件可以被认为是映像内的模型的构造块。例如,在映像内存储的触发模型可以由一个或多个事件组成。
学习设备可以被配置为通过在常规操作期间连续并且持续的学习过程经历持续的配置(即,配置不限于定义为与常规操作分离的训练过程)。这种学习过程可以模仿生物系统以使得学习设备能够通过观测用户的交互和/或通过直观的训练方法来容易地配置。学习设备可以被容易地配置为响应于可作为用户动作、其它学习设备的状态改变等的结果而产生的事件来按照期望的方式起作用。通过简单的重复,可以学习各种各样的行为并且因此在不需要预处理或程序员接口的情况下在多个学习设备的分散式系统中实现。使用重复的回报训练输入,用户可以容易地训练该学习设备以响应于各个触发来自动地执行预定任务。按照类似的方式,通过使用重复的校正输入,用户可以容易地训练该学习设备以响应于其它触发来停止自动执行特定任务。学习设备不需要为了执行动作而对事件或与事件有关的上下文有任何深入理解。相反,可以简单地对学习设备进行训练以匹配由一个或多个设备发送的事件的模型以便检测触发和相关的预定义行为。由于其避免了复杂或冗长的设置或编程,这种训练是有益的。
分散式系统内的学习设备可被配置为持续学习触发与设备的各个功能的执行之间的新的关联。例如,智能立体声音响系统针对从附近设备接收到的信号可以持续监控接收机电路,该接收到的信号可以与该立体声音响系统的用于“接通”、“断开”、改变无线电台、调整音量等的预定义动作相配对。然而,可能并不是所有的学习都是用户所期望的。例如,智能TV可以被配置为学习将“接通”(或激活)与由来自附近设备的信号所报告的各个触发相关联。随着时间的推移,智能TV可以学习响应于以下内容来接通:接收指示用户已经坐在配备有传感器的躺椅上的信号(例如,当用户坐下时,来自检测压力的传感器的信号等)、用户已经走进房间的信号(例如,来自运动传感器的信号等)、以及用户说“打开电视”的信号(例如,来自具有附加麦克风的设备的信号等)。然而,用户可能更喜欢当坐在躺椅上时或当进入房间时进行其它的活动,并且因此可能不想要或不需要激活智能TV,除非响应于他/她说“打开电视”。由于智能TV可以不断地尝试学习新的并且有用的关联,所以让用户控制智能TV学习什么而不学习什么是很困难的。出于这些原因,用户可能期望具有用于调整学习设备实际学习的速率、以及选择性地启用或禁用学习的手段。
各个实施例提供了用于修改学习设备的分散式系统内的学习能力的设备、方法、协议、系统以及非暂时性处理器可读存储介质。专用设备(称作“学习修改器设备”)可以促使附近的学习设备调整它们学习的速率,诸如通过抑制学习或调整确定学习设备是否增强或减弱以及增强或减弱多少触发与由学习设备响应于触发而执行的动作之间的关联的参数。当学习修改器设备在学习设备(例如,智能TV、智能灯等)附近时,由学习修改器设备发送的信号可以临时地重配置学习设备,以利用与新行为的学习相关联的经修改的操作。例如,当接近学习修改器设备时,智能灯可以通过在学习接通之前很少需要从智能墙壁开关接收“接通”事件信号来对由学习修改器设备发送的信号做出响应。作为另一个例子,智能灯可能需要很少的纠正信号以学习响应于智能TV的“接通”事件信号来停止接通。作为另一个例子,智能灯可以停止或开始创建在接收信号中指示的事件与智能灯可以执行的动作(例如,接通)之间的新的关联。因此,当学习修改器设备在其信号范围内时,学习设备可以更快地或更慢地学习响应于预先关联的触发来执行(或停止执行)动作和/或简单地启用或禁用学习任何事物的能力。
学习修改器设备可被配置为当被激活时周期性地发送消息(本文称作“学习修改器信号”),其促使接收学习设备调整它们的学习能力。该学习修改器信号可以通过有线或无线介质(诸如,蓝牙LE广播分组或WiFi)发送。在一些实施例中,学习修改器信号可以包括指示接收方学习设备应当将它们的学习(或学习速率)调整到哪种程度的数据,诸如当计算映像的触发权重(或触发权重变化)时,可以由学习设备利用的标量(scalar)、乘数(multiplier)、助力器(booster)和/或阻尼器(dampener)。例如,学习修改器信号可以包括由学习设备使用的可与一个或多个变量(或值)相乘、相除、相加、或相减以计算触发权重的计算结果的整数或浮点值,促使以不同于学习设备的常规方式的方式来计算触发权重(例如,每次计算触发权重增加更多等)。在各个实施例中,学习修改器信号可以促使临时地改变在计算映像的触发权重中使用的增益,从而使得学习设备在学习实际执行关联动作之前需要检测(或接收)更高或更低数量的触发事件。
作为说明,智能立体声音响系统已经学习了将激活智能立体声音响系统中的FM调谐器与来自智能墙壁开关的“接通”事件信号和来自躺椅内的传感器的压力事件信号二者相关联。换言之,可以将第一关联存储为具有高于第一阈值的第一触发权重的第一映像,并且可以将第二关联存储为具有高于第二阈值的第二触发权重的第二映像。然而,用户可能仅期望让智能立体声音响系统响应于来自智能墙壁开关的“接通”事件信号来激活它的FM调谐器。为了使这种情况发生,可能需要将第二映像的第二触发权重降低到第二阈值之下,从而使得不会响应于压力事件信号而激活FM调谐器。通常,用户可能必须多次重复纠正过程以“忘却”压力事件信号和激活FM调谐器之间的关联。例如,用户可能必须重复地坐在躺椅上,等待立体声音响系统自动地激活FM调谐器,并且然后按压智能立体声音响系统上的“纠正”按钮直到该智能立体声音响系统已经将第二映像的第二触发权重降低到第二阈值之下。这种可能冗长费时的常规过程是用户可能不希望执行的。
继续该说明,用户可以使用学习修改器设备来调整智能立体声音响系统的学习速率,并且因此加快忘却压力事件信号与激活FM调谐器之间的关联所需要的时间。特别地,用户可以将学习修改器设备带入该立体声音响系统附近,促使该智能立体声音响系统调整用于计算触发权重的变量。然后用户可以坐在躺椅上,促使压力事件信号在该智能立体声音响系统处被接收,触发该FM调谐器的激活。然后用户可以按压“纠正”按钮,促使该智能立体声音响系统使用基于学习修改器信号调整的变量来计算第二映像的新的触发权重。此后,当用户坐在躺椅上时,因为由于所调整的学习速率,“纠正”按钮的单次按压足以忘却该关联,该智能设备可以不激活FM调谐器。
在各个实施例中,学习修改器设备可以是智能电话、专用信号传输设备或发射机(例如,“魔术棒”设备)、或能够广播被配置为由附近学习设备接收的信号的另一个可编程设备。在一些实施例中,学习修改器设备可以响应于接收到其它信号或用户输入来发送学习修改器信号。例如,学习修改器设备可以响应于在因特网或通过WiFi路由器的局域网上接收命令来开始或停止广播信号。作为另一个例子,学习修改器设备可以响应于用户按压开始按钮或加载、存取、或以其它方式激活在学习修改器设备上的应用来开始或停止发送学习修改器信号。在一些实施例中,当通过短程信号传输(诸如,通过与配对的蓝牙设备(例如,电话)的连接)连接到预先关联的用户设备时,学习修改器设备可以发送学习修改器信号。
在一些实施例中,由学习修改器设备发送的学习修改器信号可以指示接收方学习设备应当启用或禁用(即,进入或退出)学习模式,在该学习模式期间,学习设备能够产生触发与动作之间的新关联和/或调整预先存在的映像的触发权重。例如,当智能立体声音响系统默认不能够产生触发与将要执行的动作之间的关联的新映像时,用户可以使用学习修改器设备临时地将该智能立体声音响系统置于启用的学习模式中,从而使得该立体声音响系统可以学习响应于接收到来自附近智能墙壁开关的“接通”事件信号来“接通”。作为进一步的例子,当用户不想要该智能立体声音响系统学习任何其它关联(并且因此存储映像)时,用户可以将学习修改器设备从房间移除(或将其关闭),将该智能立体声音响系统置于禁用的学习模式中。以这种方式,当将学习修改器设备从位置移除时,位置中的学习设备可以被保护以防止不期望的学习。例如,当客人来访时,主人可以将学习修改器设备从TV房间中移除以便阻止智能TV意外地基于客人的活动来学习关联。
在各个实施例中,一些学习设备可以受或可以不受基于学习修改器信号内的数据的学习修改器设备和/或学习修改器设备的接近程度的影响。例如,当学习修改器信号包括指示只有智能TV将调整它们的学习速率的数据时,智能墙壁开关可以不响应于接收到该学习修改器信号来调整它们的学习速率。
在一些实施例中,学习修改器信号可以被加密或以其它方式被保护以阻止由附近学习设备进行的欺骗或其它不期望的学习。例如,广播学习修改器信号可以包括使用仅与用户的智能设备共享的安全解码密钥产生的哈希信息。当学习修改器设备用于多家庭建筑中(诸如,公寓或联排别墅)时,这种安全措施可以是有益的。
在接下来的说明中,学习设备可以指的是具有下文参考图1C和图2描述的部件的学习设备的特定实施例的一个或多个智能盒。然而,应当认识到的是,具有类似部件和功能的其它学习设备或智能设备也可以被配置为利用本公开内容中描述的各个实施例。
图1A示出了实施例系统100,在该实施例系统100中的各个设备102、104、106、114、115、116可由彼此之间发送并接收信号的智能盒103a-103e控制。在智能盒103a-103e之间传送的信号可以包括使每个智能盒能够识别与系统100内的特定动作或状况的发生事情有关的信号的数据或其它信息。特别地,智能盒103a-103e可以通过射频(RF)传输112或无线通信链路广播包括如下文参考图3A所描述的发生数据的事件报告消息。智能盒103a-103e可以替代地或额外地通过有线连接、光、声音、或这些介质的组合来与彼此通信。
作为例子,由各个实施例启用的系统100可以包括连接于智能盒103a的墙壁开关102,该智能盒发送使墙壁开关102能够控制其它设备的响应(例如,接通落地灯104)的信号。可以通过有线连接110将墙壁开关102与智能盒103a连接,或可以将智能盒103a与墙壁开关102组合到单个单元中。当切换墙壁开关102时,与其相关联的智能盒103a可以检测到这种状态改变,并且通过RF传输112发射可由智能盒103a的发送半径内的任何其它智能盒103b-103e接收到的事件报告消息。一个这种接收智能盒103b可以通过有线连接110b连接于落地灯104。举例来说,可以通过产生促使落地灯104接通的事件来训练落地灯智能盒103b对与墙壁开关102被移动到“接通”位置相对应的事件报告消息作出响应。当落地灯104被接通时,其智能盒103b可以广播包括指示该事件的发生数据的事件报告消息,并且该事件报告消息可以由其它的附近智能盒103c-103e以及连接于墙壁开关102的智能盒103a接收。替代地或额外地,智能盒103a、103c-103e可以包括可以感应来自落地灯104的光的光传感器,从而使得灯的接通可以被视为指示发生/状况/动作的信号。
如图1A所示的那样,各种各样的设备可以耦合于智能盒,诸如,台灯115、立体声音响系统106、移动电话114以及传感器116。尽管智能盒103a-103e被示出为与个体设备102、104、115、116相分离,但是每个设备可以包括内在的智能盒,并且一个设备内的智能盒可以耦合于单独的设备。为了便于描述,对落地灯104、墙壁开关102、台灯115、传感器116以及立体声音响系统106的任何引用也可以指的是其对应的智能盒,除非另有说明。
尽管未在图1A中示出,但非学习设备也可以包括在系统100中以发送可由遍及系统的其它学习设备或智能盒接收并处理的信号(即,事件报告消息)。例如,墙壁开关102可以具有发射机以作为所示智能盒103a的代替。当切换到接通时,墙壁开关可以发送编码的“接通”信号(例如,一比特事件报告消息),而当墙壁开关切换到断开时,其可以发送不同的编码的“断开”信号(例如,两比特事件报告消息)。系统中的另一个智能盒(例如,连接于落地灯104的智能盒103b)可以接收二者中的任一信号并且将其转化为事件,该事件可对应于所存储的映像的关联动作。
智能盒可以典型地被配置为广播或以其它方式发送指示智能盒处的事件(诸如,在智能盒处执行的或由智能盒执行的动作,和/或在智能盒处检测到的状况(例如,传感器数据))的事件报告消息。例如,智能盒或无线连接于智能盒的发射机(“报告器”)可以广播包括指示车库门已经打开的数据的信号。应当了解的是,智能盒可以不典型地被配置为直接与一个位置中的其它智能盒接洽,而是可以仅仅报告发生数据而不请求响应和/或不考虑其它设备的操作。然而,在一些实施例中,智能盒可以通过这种传输112在彼此之间进行直接通信。例如,在一个位置(例如,家、办公室等)内放置的新的智能盒可以向该位置内的其它学习设备发送信号以请求指示它们心仪的(或最高频率遇到的)事件的数据,并且响应于接收到来自其它设备的响应信号,新的智能盒可以被配置为设置偏向。
系统100可以进一步包括能够发送用于由系统100内的各个智能盒103a-e接收的有线或无线信号的学习修改器设备150。特别地,学习修改器设备150可以通过无线传输112’(诸如,蓝牙LE、WiFi直连、RF等)向智能盒103a-103e发送学习修改器信号。例如,学习修改器设备150可被配置为周期性地广播促使第一智能盒103a增加用于计算映像的触发权重的学习速率的学习修改器信号。作为另一个例子,学习修改器设备150可以发送促使第一智能盒103a禁用或启用学习模式(例如,变得能够或不能够产生新映像和/或改变现有映像的触发权重等)的学习修改器信号。
在一些实施例中,学习修改器设备150可以选择性地包括被配置为通过无线或有线连接153提供与因特网152的连接的网络接口。例如,该网络接口可以是能够与广域网(WAN)通信的收发机(例如,WiFi无线设备、蜂窝网络无线设备等)。基于与因特网152的连接,学习修改器设备150可以通过因特网协议与各个设备和数据源(诸如,通过连接155连接于因特网152的远程服务器154)通信。远程服务器154可以是网络服务器、云计算服务器、或与第三方相关联的其它服务器设备。例如,远程服务器154可以是与分布了可被下载并在学习修改器设备150上使用的程序、应用(或应用程序)、命令、指令、脚本、例程、配置或其它信息的网站入口或数据源相关联的服务器。
图1B示出了系统100’中的墙壁开关102可以在内部或通过另一个连接(诸如,有线连接110a)连接于智能盒103a。墙壁开关102可以具有触摸传感器119或切换器。当触摸传感器119被触摸或切换时(例如,墙壁开关102被接通),状态改变可以作为发生数据通过有线连接110a被传送到智能盒103a。智能盒103a可以将由发生数据指示的状态改变解释为事件,并且无线地(诸如,通过RF传输112a、112b)发送与该事件相关联的事件报告消息。事件报告消息可以由墙壁开关102的接收范围123内的任何智能盒接收。在一些实施例中,落地灯104可以包括或耦合于接收RF传输112a的智能盒103b。在通过RF传输112a接收事件报告消息之后的某一时间,落地灯104上的灯开关126可以由用户切换为接通,进而接通灯124。落地灯104可以向它的智能盒103b发送它现在处于“接通”状态的信号,并且智能盒103b可以将该信号解释为发生数据。该信号可以通过灯开关126与智能盒103b之间的有线连接110b发送,或无线地(例如,通过数据链路)发送。当智能盒103b包括给灯通电的开关时,该信号可以是该开关的激励。
在各个实施例中,可以在刚好切换墙壁开关102之前或切换墙壁开关102之后不久(例如,在5-10秒之内),通过用户手动地接通落地灯104,响应于接收到来自墙壁开关智能盒103a的切换信号(即,包括指示切换动作的发生数据的事件报告消息)来将与落地灯104相关联的智能盒103b训练为给落地灯104通电或促使落地灯104接通。为了实现该学习,智能盒103b可以认出与墙壁开关切换(如在事件报告消息中报告的那样)和落地灯104的激活(如通过从落地灯104获得的发生数据报告的那样)相关的事件在预定时间窗内的何时发生。这可以至少部分地通过将从预定时间窗获得的发生数据产生的事件进行缓存、处理并关联存储在缓冲器中的事件、以及在该时间之后从缓冲器删除事件来实现。例如,当墙壁开关102的“接通”事件与落地灯104的灯开关126的“接通”事件在预定时间窗内产生或发生时,连接于落地灯104的智能盒103b可以将这两个事件相关联,以有效地学习到将来墙壁开关102的“接通”事件应当触发落地灯104的激活。在一些实施例中,事件的次序可以是重要的,而在一些实施例中,事件的次序可以是无关紧要的,并且因此只要这些事件在预定时间窗内发生(或产生),这些事件的次序可以颠倒。例如,连接于墙壁开关102的智能盒103a可以将落地灯104的灯开关126的“接通”事件与墙壁开关102的后续的“接通”事件(例如,触摸到触摸传感器119)相关联,以仍然有效地学习到将来墙壁开关102的“接通”事件应当触发落地灯104的激活。如下文更详细描述的那样,这种训练可能需要一些反复以避免无意学习到不期望的行为。
如图1C中示出的那样,实施例智能盒103可以包括被配置为处理从信号接收机142接收的事件报告消息的处理器132(在图1C中指的是中央处理器单元(CPU))。智能盒103可以包括被配置为通过可由其它学习设备或智能盒接收的RF信号发送事件报告消息中的发生数据的信号发射机136。如上文所描述的那样,该事件报告消息内的发生数据可以定义或表征在智能盒103处遇到的状况或执行的动作(即,事件报告消息可以表征智能盒103处产生的事件)。此外,通过它的信号接收机142,智能盒103可以通过类似发送的RF信号从其它设备接收事件报告消息,并且可以将接收到的来自接收信号的发生数据保存为使用如下文所描述的数据结构的存储器138中的缓冲器中的事件。在一些实施例中,存储器138可以包括用于存储具有与贯穿本公开内容所描述的关联模型的映像的存贮器(例如,随机存取存储器(RAM)、闪存等)的量(例如,32千比特(KB)、64KB等)。实施例智能盒103可以包括传感器编码器134以获得指示由智能盒103检测的状态改变的发生数据。例如,如果智能盒103连接于落地灯并且落地灯被接通,则在所连接的智能盒103中的传感器编码器134可以产生发生数据以数字地识别或映射状态的改变。这样的发生数据可以被存储在智能盒103的存储器138中并且在事件报告消息内向其广播范围内的其它学习设备(例如,智能盒)进行广播。其它学习设备可以通过它们的信号接收机接收包括发生数据的事件报告消息,并且最终通过本文所描述的各种学习算法处理相关的事件。在一些实施例中,存储器138可以包括易失性随机存取存储器(RAM)单元和非易失性闪速存储器单元。在该实施例中,RAM单元可以用于操作智能盒103的各个功能,而闪存单元可以用于存储持久性数据(例如,映像等)和日志数据(例如,所获得的事件、信号等)。在一些实施例中,映像(如下文所描述的那样)可以不存储在闪速存储器中而作为替代可以存储在易失性RAM中以便促进高效且简单的学习行为的重置(例如,通过断开电源和擦除RAM中的所有映像来重置为非训练状态)。在一些实施例中,闪速存储器可以大小不同并且以其它方式可以是可选的。例如,闪速存储器可以是等于64MBRAM单元的64MB存贮器单元,二者都包括在图1C中描绘的存储器138内。
此外,智能盒103可以包括马达驱动器140以响应于关联的触发按照学习的映像动作在连接的设备上执行物理动作。例如,如果智能盒103连接于落地灯,并且基于响应于所接收的事件报告消息所产生的事件确定落地灯应当接通,则智能盒103的处理器132可以给马达驱动器140发送信号以激励落地灯上的电源开关。替代马达驱动器140(或除了马达驱动器140之外),智能盒103可以包括中继器,该中继器被配置为响应于关联的触发按照学习的映像动作将电器连接于外部电源(例如,120VAC电源)。
在一些实施例中,智能盒103可以包括耦合于智能盒103的部件的电池143(例如,可充电锂离子电池等)。在一些实施例中,智能盒103可以额外地包括用于接收用于给可充电电池143充电或以其它方式给智能盒103的各个部件提供电力的电流的电线或其它接口144(例如,用于连接交流电(AC)电源出口的插头或插脚等)。
图1D示出了可以包括被配置为处理各种数据(诸如,从远程服务器下载信息的数据和/或用户输入数据)的处理器180的实施例学习修改器设备150。学习修改器设备150可以包括被配置为交换短程信号(诸如,蓝牙广告分组)的信号收发机188。例如,学习修改器设备150可以包括用于发送由附近智能盒接收的学习修改器信号的蓝牙或WiFi无线。学习修改器设备150还可以包括用于与各个通信网络通信的可选的网络接口184。例如,网络接口184可以是广域网收发机、以太网接口、蜂窝网络芯片、和/或能够支持学习修改器设备150通过因特网协议交换消息的其它部件。学习修改器设备150可以包括用户界面部件186,诸如被配置为接收用户输入的触摸屏、能够显示信息的屏幕、和/或用于用户控制或改变由学习修改器设备150进行的学习修改器信号的传输的外围设备。此外,学习修改器设备150可以将数据(例如,用户输入数据、从远程服务器下载的数据等)存储在存储器182的缓冲器中。例如,学习修改器设备150可以将事件数据结构存储在存储器182中。在一些实施例中,学习修改器设备150可以包括耦合于学习修改器设备150的部件的电池190(例如,可充电锂离子电池等)。在其它实施例中,学习修改器设备150可以额外地包括用于接收用于给可充电电池190充电或以其它方式给学习修改器设备150的各个部件提供电力的电流的电线或其它接口192(例如,用于连接交流电(AC)电源出口的插头或插脚等)。
图2示出了智能盒103的实施例架构200,该智能盒103示出了各个功能部件可以如何耦合在一起或通信以便从事件学习新的行为并且响应于随后的事件来执行所学习的行为的例子。智能盒103可以包括事件产生器202、传感器编码器134、以及信号接收机142。事件产生器202可以响应于接收指示已知事件模型(例如,先前学习的或预先编程的模型)的数据来产生一个事件或一个或多个事件的序列。例如,如果事件的模型与接通连接于智能盒103的落地灯的预定义动作相关联,则事件产生器202可以响应于将从在信号内接收的发生数据产生的事件与存储在事件模型存贮器204中的模型相匹配来产生“亮灯”事件。然后通过事件总线214将所产生的事件传送到马达驱动器140以接通连接于智能盒103的落地灯的灯。
智能盒103还可以通过信号接收机142从另一个智能盒接收信号(例如,事件报告消息)内的发生数据。来自由信号接收机142接收的信号的数据可以作为事件通过事件总线214被输送到其它设备部件(诸如,被输送到事件记录器206)。
智能盒103还可以识别来自传感器编码器134的事件,该传感器编码器134可以通过事件总线214将事件传送到其它部件。例如,如果用户手动接通连接于智能盒103的落地灯,则将状态改变转换为事件的传感器编码器134可以对指示状态改变的发生数据(例如,将灯从“断开”切换为“接通”)进行数字地编码。
信号发射机136随后可以发送基于通过事件总线214接收的事件的发生数据,从而使得发生数据也可以通过事件报告消息由另一个智能盒接收。这可以允许将关于事件的信息从一个智能盒103传输到另一个,让智能盒在彼此之间相互学习并且基于由每个单独的智能盒学习的行为来创建复杂的系统行为。与事件有关的数据(即,事件报告消息中的发生数据)的重传或广播可以让智能盒菊花链状连接在一起以延伸给定智能盒的信号范围。
事件记录器206可以从事件总线214接收事件并且将该事件存储在事件模型存贮器204中。在一些实施例中,事件记录器206可以接收发生数据并且基于接收的数据来创建事件以存储在事件模型存贮器204中。事件选择器210可以从事件记录器206接收一个或多个事件。响应于接收事件的特定组合,选择器210可以产生存储模型命令并且将该存储模型命令发送到事件记录器206,指示它将事件的组合存储为事件模型存贮器204中的模型。在一些实施例中,事件选择器210可以从事件总线214直接地接收事件。
在下面的例子中示出了各部件与智能盒103的操作和交互。连接于落地灯的智能盒103可以通过来自墙壁开关的、通过信号接收机142在智能盒103处接收到的事件报告消息来接收指示状态改变的发生数据。智能盒103可以通过信号接收机142将与墙壁开关状态改变有关的事件经由事件总线214传送到事件记录器206。此后不久,用户可以手动地接通连接于智能盒103的落地灯的灯124,以及响应于传感器编码器134可以将这种状态改变转换为事件并且通过事件总线214将该事件传送到事件记录器206。当接收到这些事件时,事件记录器206可以将这些事件发送到选择器210。选择器210可以利用学习算法处理基于墙壁开关切换和落地灯的手动亮灯发生数据所产生的事件的模型。在处理这些事件之后,选择器210可以通过存储模型命令指示事件记录器206将事件模型存储在事件模型存贮器204中。事件模型存贮器204可以将所学习的事件之间的关联存储为具有特定权重关联的映像。在一些实施例中,事件模型存贮器204还可以存储预定模型和/或事件,诸如,用于产生纠正模型、回报模型、触发模型以及动作模型的模型或事件。
取决于所观测的事件和动作之间的关联,选择器210可以与增益调节器212一起工作以改变与所观测的动作模型(例如,观测到用户已经接通落地灯)相关联的事件的权重(例如,增加触发事件的触发权重)和/或与如下文所描述的权重的方程式和/或计算有关的其它属性(即,偏差、比例等)。
可选地,传感器编码器252可以基于所指示动作的开始来提供额外的事件。这些额外的事件可以是所指示的事件实际发生的确认(例如,响应于执行“接通”动作灯实际点亮,等)并且可以作为回报事件(或模型)来处理以帮助智能盒103学习事件和动作之间的关联。
图3A示出了可用于表征发生数据的数据结构300。发生数据可以体现在数据记录中以包括格式部分301、标识部分302、以及状态部分303。智能盒的处理器132(或CPU)(例如,如图1C中所示)可以记录解码信息作为格式部分301。这可以包括协议版本、加密类型、序列号、事项标识符(例如,可用于在不指示方向、次序或顺序的情况下,在各个发生数据与下一个之间进行区分的信息)、记录时间、发送时间等。然而,记录时间和发送时间可以是格式部分301中的可选字段。在一些实施例中,事项标识符(或ID)的值可以是不连续或以其它方式指示次序的编号(例如,顺序地增加或减小)。如上文所描述的那样,智能盒可以被配置为发送至少包括数据结构300的信号(即,事件报告消息),并且其它学习设备可以被配置为接收该信号以及使用该格式部分301来读取数据结构300中的发生数据的其它部分。标识部分302可以指示发起发生数据的设备,并且状态部分303可以对应于发生数据表示的状态或状态改变。在一些实施例中,除了设备的操作状态(例如,“接通”、“断开”等)之外,状态部分303还可以包括模拟状态数据(诸如,伏特(例如,0.02))。
例如,发生数据的数据结构300可以包括“V2.1”的格式部分301、“WALLSWITCH102”的标识部分302以及“ON”的状态部分303。这可以表示在连接于墙壁开关的智能盒上的版本2.1的数据格式,并且可以表示该墙壁开关从“断开”切换到“接通”。继续该例子,可以在墙壁开关(如图1A所示)处产生发生数据和关联事件。一旦产生,发生数据可以在事件报告消息中从与该墙壁开关相关联的智能盒广播,从而使得它可以被它的广播范围内的所有智能盒接收。与落地灯相关联的附近的智能盒可以接收并处理广播的发生数据。由于发生数据可以具有与后面描述的事件数据结构350(在图3B中)相类似的数据部分,因此接收智能盒可以利用发生数据来产生并解码事件。这可以有助于促进事件过滤和模型产生。
图3B示出了可用于记录或表征事件的数据结构350。数据结构350可以可选地包括如上文所描述的格式部分301。事件可以体现在数据记录中以包括时间部分351、标识部分352、以及状态部分353。事件数据结构350类似于上文在图3A中关于发生数据所描述的数据结构300,并且事件可以与发生数据同时产生。智能盒可以使用数据结构300(即,发生数据)以产生数据结构350(即,事件),并且反之亦然。当智能盒通过任何事件发起源(例如,信号接收机142)接收事件的发生数据时,它可以将表征该事件的数据存储在事件记录器206中,事件记录器206可以记录与该事件相关联的时间部分351。时间部分351可以是事件被创建的时间或被接收智能盒观测到的时间。作为替代,时间部分351可以指示在发送事件的发生数据之前由发起智能盒指定的时间(即,动作被执行的时间或状况被观测到的时间等)。标识部分352可以指示发起事件的发生数据的设备,并且状态部分353可以对应于事件表示的状态或状态改变。
例如,事件可以包括17:12:02的时间部分351、“WALLSWITCH102”的标识部分352以及“ON”的状态部分。这可以表示在连接于墙壁开关的智能盒上创建于17:12:02的事件,并且可以表示该墙壁开关从“断开”切换到“接通”。继续该说明,描述该事件的发生数据可以在事件报告消息中从与墙壁开关相关联的智能盒广播到其广播范围内的任何智能盒。与落地灯相关联的智能盒可以接收广播的事件报告消息并且处理所包括的发生数据,以产生用于利用下文所描述的学习算法进行处理的事件。
事件模型可以包括在时间窗或序列中获得、产生、或以其它方式遇到的一个或多个事件。例如,特定事件模型可以包括由学习设备(例如,智能落地灯等)内部产生的第一事件以及由该学习设备响应于接收从另一个设备(例如,智能墙壁开关等)接收的信号获得的第二事件。如后面所描述的那样,事件模型可以是触发模型、动作模型、纠正模型或回报模型。无论哪种类型,事件模型都可以是取决于次序的,从而使得接收特定事件所按照的次序构成模型。替代地,事件模型可以是不取决于次序的,其中该模型不取决于事件的处理次序。例如,第一事件(称作事件A)可以在时间0处获得(例如,基于所接收的发生数据产生),以及第二和第三事件(分别称作事件B和事件C)可以同时在后面的时间1处获得(记为A:0、B:1、C:1)。在取决于次序的模型中,只有在首先获得事件A并且在事件A之后同时获得事件B和事件C(记为A:0、B:1、C:1)时,学习设备才可以识别该模型。然而,如果事件C在时间2处获得,而不是在时间1处获得,则模型(A:0、B:1、C:2)可以不等于模型A:0、B:1、C:1,这是因为事件C是在时间2处而不是在时间1处获得的。因此,通过在时间1处获得事件C创建的第一模型(A:0、B:1、C:1)和通过在时间2处获得事件C创建的第二模型(A:0、B:1、C:2)是不同的,这是因为获得事件C的时间不同。在不取决于次序的模型中,学习设备可以将所获得的事件A:0、B:1、C:1与所获得的事件A:0、B:1、C:2同等对待,这是因为只要事件C在与事件A和事件B相同的预定时间窗内获得,C的时间就不重要。换言之,对于不取决于次序的模型,相同的事件仅需要在特定事件窗内获得。下文将参考图3C-图3H对由智能盒或学习设备观测的时间窗作进一步的描述。
在一些实施例中,多个智能盒或学习设备可以基于单个事件产生模型(例如,触发模型和动作模型)并进行动作。例如,用户可以将墙壁开关从“断开”切换到“接通”,以促使墙壁开关产生单个第一事件。在产生第一事件时,墙壁开关可以将有关的事件报告消息无线地广播到所有附近的学习设备。第一附近学习设备可以是例如落地灯,其可以基于接收的事件报告消息产生第一事件,并且将其转换为触发模型。响应于触发模型,落地灯可以产生动作模型并且基于该动作模型激活该灯。同时,附近的立体声音响系统可以接收相同的事件报告消息并且类似地基于接收的事件报告消息产生第一事件,将其转换为触发模型,产生与落地灯不同的关联的动作模型,并且基于该不同的动作模型播放音乐。因此,与该例子中的第一事件有关的广播的单个事件报告消息促使落地灯激活它的灯并且促使立体声音响系统播放音乐。
在一些例子中,多个智能盒可以基于接收与多个个体事件有关的多个事件报告消息来产生动作模型并且进行对应的动作。例如,用户可以将图1A的墙壁开关从“断开”切换到“接通”,其在墙壁开关处产生第一事件。用户还可以将智能落地灯上的灯开关从断开切换到“接通”,其促使智能落地灯在智能落地灯处产生第二事件。与第一和第二事件有关的事件报告消息(即,分别包括针对第一和第二事件的发生数据)可以在5-10秒的时间窗内从它们各自的智能盒被广播。仍然在该事件窗内,附近的智能立体声音响系统和智能台灯可以都接收到与第一和第二事件有关的事件报告消息。智能立体声音响系统可以基于接收到与第一和第二事件有关的事件报告消息来产生触发模型和对应的动作模型。动作模型的产生可以促使例如立体声音响系统接通并开始播放音乐。同时,智能台灯基于接收到与同样的这两个事件有关的事件报告消息来产生触发模型和不同的动作模型。在产生动作模型时,智能台灯可以例如接通它的灯。
图3C-图3H示出了各个实施例学习设备可以如何使用随时间滚动的时间窗362以识别和/或关联事件的模型。如上文所描述的那样,该时间窗362可以是预定时间量(诸如,数秒(例如,5-10秒)),该预定时间量可以对可以有资格在任何给定时间处被识别为模型或模型的一部分的事件提供时间限制。换言之,在时间窗362内发生或由智能盒获得的事件(例如,具有如上文在图3B中描述的时间部分351的落入时间窗362内的事件)可以组合以产生用在触发动作中和/或用在调整如下文所描述的映像的触发权重中的模型。在一些实施例中,智能盒可以被配置为当获得的事件不再落入预定时间窗362内时,从存储器、缓冲器或其它存贮器移除所获得的事件。
图3C示出了相对于时间线360的示例性时间窗362。所获得的或所观测的事件370-374(在图3C-图3F中称作事件A-E)可能在关于第一时间380a和第二时间380b的时间窗362内已经被智能盒遇到。时间窗362的长度可以是第一时间380a和第二时间380b之间的时间长度。因此,在第二时间380b处,智能盒可以使用所获得的事件370-374中的任何事件以任何组合或次序来产生可匹配于在所存储的映像内的预定义模型的模型。例如,智能盒可以使用事件A-E的任何组合和/或次序(诸如,“A、B、C、D、E”、“A、B、C、D”、“A、B、C”、“A、B”、“A”、“A、B、C、D、E”、“A、C、E”、“E、C、A”、“A、E、C”等)来产生模型。
图3D示出了在第三时间381a和第四时间381b之间的时间窗362中获得的事件371-375(在图3D中称作事件B-F)。例如,在第四时间381b处,事件“A”370可以不再在时间窗362内(即,事件“A”370可以对应于比第三时间381a早的时间);然而,事件B-F371-375的任何组合可以合并以产生可匹配于在智能盒上存储的映像内的预定义信息的模型。在一些实施例中,可以在第四时间381b处,从存储器、缓冲器、或其它存贮器中删除或以其它方式移除事件“A”370。
类似的,图3E示出了在第五时间382a和第六时间382b之间的时间窗362内可以由智能盒获得的事件372-376(在图3E中称作事件C-G)。例如,在第六时间382b处,事件“A”370和事件“B”371可以不再在时间窗362内;然而,事件C-G372-376的任何组合可以合并以产生可匹配于在智能盒上存储的映像内的预定义信息的模型。在一些实施例中,可以在第六时间382b处,从存储器、缓冲器、或其它存贮器中删除或以其它方式移除事件“B”371(即,当它落在时间窗362外部时)。智能盒可以继续以类似方式让时间窗362滚动(或前进(progressing)),持续评估落入时间窗362内的事件以确定它们是否对应于预定义模型。
图3F-图3H示出了关于所识别的模型的各个其它示例性时间窗。如本文所描述的那样,智能盒(或学习设备)可以将事件(诸如,落地灯“接通”事件或墙壁开关“接通”事件)关联于所识别的、发生在该预定义时间窗内的触发或其它模型。例如,响应于检测到特定映像的触发模型(例如,所获得的墙壁开关“接通”事件)的发生,智能盒可以确定该映像的相关的回报模型或纠正模型是否也发生在离触发模型5-10秒的时间窗内。智能盒可以评估所获得的事件以确定是否也已经遇到相关的模型,该事件是在所识别的模型(例如,触发模型)之前和/或之后获得的。
图3F-图3H示出了关于由与所识别的模型相关联的事件“D”373和时间389(在图3F-图3H中称作“id为d模型的时间”)组成的所识别的模型的各个时间窗362a-263c。图3F示出了被配置为包括第一时段392a的第一时间窗362a,该第一时段392a发生于与所识别的模型相关联的时间389(即,事件“D”373)之前并且与第二时段392b相等,该第二时段392b发生在与所识别的模型相关联的时间389之后。智能盒可以被配置为在第一结束时间390a到达之前获得并缓存(或以其它方式存储)可与所识别的模型相关的事件,该第一结束时间390a发生在已经从与所识别的模型相关联的时间389过去第二时段392b之后。在第一时段392a和第二时段392b是相同时段的情况下,在发生于与所识别的模型相关联的时间389之前的时段392a和之后的时段392b内可以潜在地获得相等数量的事件。换言之,利用第一时间窗362a,智能盒能够将事件“B”371、事件“C”372、事件“E”374以及事件“F”375中的任何或所有事件与事件“D”373的所识别的模型相关。作为另一个例子,智能盒可以将事件“D”373的所识别的模型与包括事件“B”371和事件“F”375等的回报模型相关。
图3G示出了被配置为包括第三时段393a的第二时间窗362b,该第三时段393a发生在与所识别的模型相关联的时间389(即,事件“D”373)之前,其短于(或在时间上小于)发生在与所识别的模型相关联的时间389之后的第四时段393b。智能盒可以被配置为在第二结束时间390b到达之前获得并缓存(或以其它方式存储)可与所识别的模型相关的事件,该第二结束时间390b发生在从与所识别的模型相关联的时间389已经过去第四时段393b之后。因此,在所识别的模型之后发生的第四时段393b之内可以潜在地获得更大数量的事件。换言之,利用第二时间窗362b,智能盒能够将事件“C”372、事件“E”374、事件“F”375以及事件“G”376中的任何或所有事件与事件“D”373的所识别的模型相关。例如,智能盒可以将事件“D”373的所识别的模型与包括事件“C”372、事件“E”374以及事件“G”376等的纠正模型相关。
图3H示出了被配置为包括第五时段394a的第三时间窗362c,该第五时段394a发生在与所识别的模型相关联的时间389(即,事件“D”373)之前,其长于(或在时间上大于)发生在与所识别的模型相关联的时间389之后的第六时段394b。智能盒可以被配置为在第三结束时间390c到达之前获得并缓存(或以其它方式存储)可与所识别的模型相关的事件,该第三结束时间390c发生在从与所识别的模型相关联的时间389已经过去第六时段394b之后。因此,在所识别的模型之前发生的第五时段394a内可以潜在地获得并缓存更大数量的事件。换言之,利用第三时间窗362c,智能盒能够将事件“A”370、事件“B”371、事件“C”372以及事件“E”374中的任何或所有事件与事件“D”373的所识别的模型相关。例如,智能盒可以将事件“D”373的所识别的模型与包括事件“C”372和事件“E”374等的纠正模型相关。
如上文所描述的那样,映像可以是所存储的、指示智能盒响应于检测到相关联的触发而可以采取或发起预定义动作的信息。如图4中所示出的那样,映像400可以由四种模型组成,具体为触发模型402、动作模型404、回报模型406以及纠正模型408。模型可以包括一个或多个事件,并且事件可以与数据相关联。然而,在一些实施例中,模型可以与1比特信号有关(例如,中断线变为高位)。例如,1比特信号可以是可被转换为回报模型并且被施加于智能盒的逻辑事件总线上的回报信号。该1比特信号回报模型可以采取传感器编码器路径,如上所述,这是由于中断传感器可以是一种类型的传感器编码器。其它模型类型(例如,动作、触发等)也可以由简单的信号(例如,1比特信号或中断)来定义。
当智能盒获得匹配于已知映像的已知触发模型的一个事件(或多个事件)时,智能盒可以产生对应的动作模型404。映像可以具有预定回报模型和预定纠正模型。当允许智能盒学习时如果其接收了回报模型,则该智能盒可以增加关于触发模型402和动作模型404之间的关联的权重(即,触发权重)。一旦关联权重超出了阈值量,则智能盒将可以响应于触发模型来执行动作模型。类似地,映像400可以具有预定纠正模型408,并且当允许智能盒学习时如果其接收了纠正模型,则该智能盒可以降低触发模型402和动作模型404之间的关联权重。纠正模型408的处理可以修改该关联权重足够的次数,从而使得关联权重可以下降到阈值量以下,并且智能盒将有效地学习不响应于触发模型402去执行动作模型404。以这种方式,智能盒可以学习触发模型402和对应的动作模型404之间的关联,并且忘却不期望的触发/动作关联。在各个实施例中,可以基于由智能盒从另一个智能盒设备(诸如,响应于执行动作、接收输入等来发出事件报告消息的附近设备)接收的数据来获得纠正模型408和/或回报模型406。
在一些实施例中,支持智能盒的“允许学习”状态(或学习模式)的方法可以用于将智能盒的映像400的预定动作模型404与触发模型相关联。该学习模式可以是智能盒的操作状态,在该操作状态期间可以启用智能盒以改变映像400的触发权重。一旦所获得的模型与已知映像400的触发模型402相匹配,则该映像可以进入学习模式。在其它实施例中,当动作模型404产生时,智能盒可以进入学习模式。在其它实施例中,智能盒可以进入不依赖于触发的全局学习模式或状态(例如,打开学习开关),并且在该全局学习模型或状态期间,该智能盒可以基于所获得的事件来改变各个映像的触发权重或以其它方式产生新的映像。在各个实施例中,映像400可以包括指示其各个模式的状态的数据,诸如,指示映像400是否处于活动监控模式、触发模式、学习模式等中的比特、标记、或其它指示符。
智能盒可以被配置为具有一个或多个具有预定动作模型、智能盒的已知能力的映像。尽管智能盒可以利用具有不同对应动作的多个映像,但在一些实施例中,智能盒可以不被配置为执行已知能力的静态集合或智能盒的动作(诸如,在由制造商提供的数据中指示的动作模型)之外的动作。因此,智能盒可被配置为产生具有关联于已知动作的未知触发的新的映像,而不被配置为产生具有非预定义的动作的新的映像。
作为说明,立体声音响系统学习设备(或耦合于学习设备或智能盒的立体声音响系统)可被配置为具有预定动作,该预定动作用于将音量水平设置为音量水平值的有限范围(例如,0-10等)中的任何值、激活收音机(radio)(或无线调谐器)至“打开”、去激活该收音机(或无线调谐器)、将无线电台(radiostation)设置为无线电台值的有限范围(例如,88.1-121.9等)中的任何值、设置调频(FM)配置或调幅(AM)配置等。立体声音响系统学习设备可以存储具有各个触发模型的这些预定动作中的每一个的映像。例如,立体声音响系统学习设备可以存储具有将无线电台设置为第一值(例如,92.3FM)的动作模型和灯“接通”事件的触发模型的第一映像、具有将无线电台设置为第二值(例如,101.5FM)的动作模型和墙壁开关“接通”事件的触发模型的第二映像、具有将音量水平设置为8的动作模型和灯“接通”事件的触发模型的第三映像等。
可以根据在智能盒处获得的一个或多个事件(例如,时间部分、设备部分等)来创建模型,诸如,基于由传感器(例如,光传感器、开关视觉传感器等)获得的发生数据产生的事件和/或基于由信号接收机142接收的发生数据产生的一个或多个事件。事件可以存储在存储器138中并且由事件记录器206使用以创建或识别模型。在评估事件以创建或识别模型之前,可以将过滤器应用于事件以减少可考虑的事件的集合。例如,落地灯智能盒可以忽略与来自立体声音响系统的事件报告消息相关的事件。作为替代的例子,立体声音响系统可以忽略在一天的某个时刻(诸如,11:00PM)之后获得或产生的事件。一旦智能盒产生事件的模型,其可以确定该模型是否匹配于对应于所存储映像的任何已知触发模型。
如果所识别的模型匹配于映像中所存储的触发模型并且该相关的触发权重等于或高于特定阈值,则可以产生与其成对的动作模型。特定映像(Reflexi)的当前触发权重(Wi)可以基于以下方程式来计算:
其中i是映像计数器或标识符,n是与映像的触发模型相关联的事件的数量,k标识映像的触发模型中的个体事件的计数,m是针对映像的触发模型中的个体事件的事件匹配指示符,x是与映像的触发模型中的个体事件相关联的匹配权重,s是应用于映像的触发模型中的个体事件的比例因子,以及b是针对应用于映像的触发模型中的个体事件的整个权重匹配的偏差。因此,Reflexi的当前触发权重Wi等于事件匹配(m)乘以匹配权重(x)和比例因子(s)的总和加上与Reflexi相关联的触发模型中的偏差b。在一些实施例中,匹配权重(x)可以由与它们各自的事件相关联的增益调整,并且如本公开内容中所描述的那样,可以基于学习设备是否在关键时期或稳态时期内来设置增益。在一些实施例中,智能盒可以将值归一化为从0.0到1.0。此外,在一些实施例中,事件的事件匹配指示符(m)可以是在0.0到1.0之间的浮点值,其可以指示事件是否完全匹配(即,1.0的事件匹配值可以表示完全匹配而0.0的事件匹配可以指示完全不匹配)。
作为说明,如果单个事件的所识别的模型匹配于特定映像(Reflexi)的已知触发模型,则可以将该单个事件的事件匹配指示符(m)设置为1。假设基于关联的增益值将单个事件的匹配权重(x)设置为1,比例因子(s)也设置为1,并且Reflexi的偏差(b)设置为0,则Reflexi的新的或当前的触发权重Wi可以等于1。如果再次接收到相同的模型,则匹配权重(x)可以由与映像相关联的当前增益调整,导致随后的新的触发权重(Wi)增加,该新的触发权重(Wi)可能大于触发权重阈值。因此,新的触发权重(Wi)可以增加或减小。例如,假设将mk,i设置为1,将xk,i调整为1.5,将sk,i设置为1,并且将bi设置为0,则第二次接收相同的触发模型可以将触发权重(Wi)增加到1.5。在相同的状况下,如果所识别的模型不匹配于已知触发模型,则m可以等于0,从而导致新的触发权重Wi也等于0。
作为额外的说明,立体声音响系统(例如,如上文在图1A中描述的立体声音响系统106)可以包括或耦合于能够存储并且利用各个映像的智能盒。特别地,立体声音响系统(通过其智能盒)可以存储具有触发模型的第一映像(Ri),该触发模型包括与来自附近吊灯的“接通”信号有关的第一事件和与来自附近躺椅中的存在传感器(例如,压力传感器、运动传感器等)的信号有关的第二事件。例如,第一事件可以对应于当激活时由吊灯(或耦合于该吊灯的智能盒)发送的信号,而第二事件可以对应于当人坐在躺椅中时由躺椅(或耦合于该躺椅的智能盒)发送的信号。第一映像还可以包括响应于立体声音响系统检测到触发模型的发生(即,吊灯和躺椅事件二者)而促使该立体声音响系统接通的动作模型。换言之,基于该第一映像,该立体声音响系统可以响应于在预定时间窗(例如,5-10秒等)内吊灯被接通并且有人坐在躺椅中来激活其收音机并且播放音乐。
下面的表格示出了关于立体声音响系统的第一映像(即,Ri)的方程式的示例性属性。出于下面的例子和表格的目的,当第一映像的触发权重(即,Wi)大于或等于触发阈值1.5时,可以触发第一映像的动作模型(即,接通立体声音响系统并且播放音乐),状况可以响应于该立体声音响系统接收到第一事件和第二事件中的至少一个来发生。第一事件可以是事件k=0而第二事件可以是k=1。此外,除了各个事件的匹配指示符(mn,i)之外,应当了解的是,下面属性中的各个值可以是预定义的,诸如,由制造商、开发者、或用户设置的。例如,事件的匹配权重可以由制造商设置,或可以基于在智能盒处遇到的在先事件。
表A
Wi | 接收的事件(k) | m0,i | x0,i | s0,i | m1,i | x1,i | s1,i | bi |
1 | 0 | 1.0 | 1.0 | 1.0 | 0.0 | 1.0 | 1.0 | 0.0 |
如在上面的表格A的示例性属性中示出的那样,在一个情境中,只有第一事件(即,k=0)可以被立体声音响系统接收到。因此,立体声音响系统的智能盒可以将针对第一事件的事件匹配指示符(m0,i)设置为1.0(即,存在针对第一事件的匹配)并且将针对第二事件的事件匹配指示符(m1,i)设置为0.0(即,不存在针对第二事件的匹配)。第一映像的触发权重可以通过将每个事件的子权重计算结果进行求和来计算得到,从而使得第一事件的子权重计算为1.0。换言之,(m0,i*x0,i*s0,i)+bi=(1.0*1.0*1.0)+0.0=1.0。由于不存在第二事件,所以针对第二事件的事件匹配指示符(m1,i)可以是0.0,并且因此第二事件的子权重计算结果可以是0.0。换言之,(m1,i*x1,i*s1,i)+bi=(0.0*1.0*1.0)+0.0=0.0。因此,第一映像的总触发权重(Wi)是1.0(即,1.0+0.0),其少于触发阈值1.5。因此,在仅接收到第一事件的情况下,第一映像的动作模型可以不被触发(例如,立体声音响系统可以不激活其收音机)。
表格B
Wi | 接收的事件(k) | m0,i | x0,i | s0,i | m1,i | x1,i | s1,i | bi |
1.8 | 0,1 | 1.0 | 1.0 | 1.0 | 0.8 | 1.0 | 1.0 | 0.0 |
如在上面的表格B的示例性属性中示出的那样,在另一个情境中,第一事件(即,k=0)和第二事件(即,k=1)二者都可以被立体声音响系统接收到。因此,智能盒可以将针对第一事件的事件匹配指示符(m0,i)设置为1.0(即,存在针对第一事件的匹配),并且将针对第二事件的事件匹配指示符(m1,i)设置为非零值。然而,在一些情况下,第二事件可能无法得到精确地匹配,并且因此可以将针对第二事件的事件匹配指示符(m1,i)设置为0.8(即,第二事件存在至少部分地匹配)。针对第二事件的事件匹配指示符(m1,i)的值0.8可以指示对于归一化为从0.0至1.0的值的系统,第二事件匹配是不完全匹配,其中1.0表示对于事件匹配的完全匹配的值。
如上文所述的那样,触发权重(Wi)可以通过将每个事件的子权重计算结果进行求和来计算得到,从而使得第一事件的子权重计算为1.0。换言之,(m0,i*x0,i*s0,i)+bi=(1.0*1.0*1.0)+0.0=1.0。此外,第二事件的子权重计算为0.8。换言之,(m1,i*x1,i*s1,i)+bi=(0.8*1.0*1.0)+0.0=0.8。因此,第一映像的总触发权重(Wi)可以是1.8(即,1.0+0.8),其大于触发阈值1.5。因此,在第一事件和第二事件二者都在智能盒处获得的情况下,可以产生第一映像的动作模型,促使动作被执行(例如,立体声音响系统可以激活其收音机并且播放音乐等)。在一些实施例中,响应于第一映像的任何总触发权重(Wi)的计算大于或等于触发阈值(例如1.5),第一映像的动作模型可以被产生并且促使动作被执行。
表格C
Wi | 接收的事件(k) | m0,i | x0,i | s0,i | m1,i | x1,i | s1,i | bi |
1.6 | 1 | 0.0 | 1.0 | 1.0 | 0.8 | 2.0 | 1.0 | 0.0 |
在一些实施例中,基于针对各个事件的匹配权重,智能盒可被配置为响应于获得单个事件来执行动作。例如,立体声音响系统智能盒可被配置为响应于仅接收到指示有人已经坐在躺椅中的信号(即,动作模型可以由与躺椅相关联的存在传感器事件触发)来激活其收音机功能。如在上面表格C的示例性属性中示出的那样,可以不获得第一事件(即,m0,i=0.0),可以获得第二事件(即,m1,i=0.8),并且可以将第二事件的匹配权重(x1,i)设置为值2.0。由于第二事件的较高的匹配权重,当在立体声音响系统处仅获得第二事件时可以激活该立体声音响系统的收音机。换言之,仅基于获得第二事件,第一映像的触发权重可以大于1.5(即,
((m0,i*x0,i*s0,i)+(m1,i*x1,i*s1,i))+bi=((0.0*1.0*1.0)+(0.8*2.0*1.0))+0.0=1.6)。
表格D
Wi | 接收的事件(k) | m0,i | x0,i | s0,i | m1,i | x1,i | s1,i | bi |
2.6 | 0,1 | 0.7 | 1.0 | 2.0 | 0.6 | 1.0 | 2.0 | 0.0 |
在一些实施例中,当事件匹配可能不完全时,诸如在嘈杂的RF环境中,可以调整比例因子从而使得即使当匹配可能较低时也可以触发映像。例如,如上面的表格D中所示的那样,针对第一事件的比例因子(s0,i)和针对第二事件的比例因子(s1,i)可以增加到值2.0,以便即使当匹配指示符少于理想值(例如,少于1.0,少于0.8等)时也能实现触发权重高于阈值1.5。换言之,立体声音响系统可以响应于接收到具有少于理想匹配指示符的第一事件和第二事件二者(例如,分别为0.7和0.6),并且计算出第一映像的触发权重为2.6(即,
((m0,i*x0,i*s0,i)+(m1,i*x1,i*s1,i))+bi=((0.7*1.0*2.0)+(0.6*1.0*2.0))+0.0=2.6)来激活其收音机播放音乐。
表格E
Wi | 接收的事件(k) | m0,i | x0,i | s0,i | m1,i | x1,i | s1,i | bi |
1.8 | 1 | 0.0 | 1.0 | 1.0 | 0.8 | 1.0 | 1.0 | 1.0 |
1.9 | 0 | 0.9 | 1.0 | 1.0 | 0.0 | 1.0 | 1.0 | 1.0 |
在一些实施例中,可以调整用于触发权重计算的偏差值以便促使响应于智能盒获得单个事件来触发动作模型。例如,如在上面表格E中示出的那样,可以将偏差(bi)设置为1.0,其允许第一事件或第二事件单独地促使立体声音响系统通过第一映像激活其收音机。换言之,当仅获得第二事件时(即,
((m0,i*x0,i*s0,i)+(m1,i*x1,i*s1,i))+bi=((0.0*1.0*1.0)+(0.8*1.0*1.0))+1.0=1.8)或当仅获得第一事件(即,
((m0,i*x0,i*s0,i)+(m1,i*x1,i*s1,i))+bi=((0.9*1.0*1.0)+(0.0*1.0*1.0))+1.0=1.9)时,可以触发动作模型。
图5-图7是示出了可以如何将事件(包括动作)识别(或认定)为映像中的模型的时间线图。在这些时间线的描述中,引用墙壁开关和落地灯以作为与那些设备相关联的智能盒的简写(shorthand)。此外,可以将墙壁开关和落地灯用作可耦合于智能盒的设备的类型的说明性例子。因此,引用墙壁开关和落地灯并不是要以任何方式限制权利要求书的范围。
图5是对应于映像的事件传输的时间线图500,其显示发送机510(例如,墙壁开关)和接收机(例如,灯)之间的传输的时间。这些事件传输(或事件报告消息)可以包括可帮助接收机产生事件的发生数据。时间线图以接收机在监控模式506中在时间0(或在图5中示出的t=“t0”)处开始,并且当该接收机在时间“tResumeMonitor”(或t=“tResumeMonitor”)处返回监控模式506时结束。在一些实施例中,示图500中的发送机510可以是广播事件的发生数据的墙壁开关,该发生数据可以由落地灯接收。落地灯可以具有与所存储的每个映像相关联的接收机状态511,其可以在监控模式506或触发模式508中。与落地灯相关联的每个映像的默认状态可以是监控模式506。落地灯还可以具有事件总线214(典型地在其智能盒中),其可以将事件传送到其它智能盒部分。
出于说明的目的,关于所有映像,在时间t=t0处,落地灯可以被视为在监控模式506中。落地灯可以诸如通过其信号接收机142接收事件报告消息502。例如,用户可以将墙壁开关从“断开”切换到“接通”。作为响应,墙壁开关可以利用传感器编码器134(图2中所示)将该切换记录为事件。墙壁开关可以通过该墙壁开关的信号发射机136发送具有与新事件有关的发生数据的事件报告消息502。该事件报告消息502可以被其它智能盒(诸如,落地灯)接收。
在t=tTrigger处,该事件报告消息502可以被落地灯接收。落地灯可以确定基于事件报告消息502产生的事件匹配于映像的触发模型,并且可以进入关于该匹配的映像的触发模式508。在触发模式508期间,落地灯可以继续搜索其它事件以确定是否存在回报和/或纠正模型以分别启用学习或忘却。
在t=tResponse处,落地灯可以产生与匹配映像的动作模型相关联的事件514,其可以激活马达驱动器140以引起动作,诸如接通落地灯的灯124(图1B和图1C中所示)。将事件514置于落地灯的事件总线214上,其最终可被转化为模型并被存储在存储器138中。在一些实施例中,所产生的动作模型可以是针对另外的动作模型的触发模型。例如,接通落地灯可以是用于接通立体声音响系统的触发模型。换言之,可以将多个学习设备菊花状链接在一起,以允许产生触发模型和动作模型,并将对应的数据从设备发送到设备。
在t=tResumeMonitor处,落地灯可以离开触发模式508并重新进入监控模式506,在监控模式506中,落地灯可以搜索并接收新的事件报告消息。
如图5示出的那样,落地灯可以进入关于单个映像的单个触发模式。在一些实施例中,落地灯可以具有存储在存储器中的多个映像,并且可以以重叠的时间间隔获得(或产生)多个事件。假设落地灯获得引起多个触发模型的多个事件,则落地灯可以进入并行触发模式。每个触发模式可以对应于不同的映像。例如,落地灯可以同时地接收来自墙壁开关的与事件A(EventA)有关的事件报告消息和来自立体声音响系统的与事件B(EventB)有关的事件报告消息。事件A可以对应于来自存储在落地灯的存储器中的第一映像的触发模型。作为响应,落地灯可以进入关于第一映像ReflexA的触发模式。事件B可以对应于不同映像ReflexB的不同触发模型。因此,落地灯可以并行地进入关于ReflexB的第二触发模式。每个触发模式可以表现为如图5中示出的那样;然而,落地灯可以独立地处理每个事件、映像及触发模式。
落地灯可以在不同时间处产生针对不同映像的触发模型的事件,其可以促使落地灯在相对于其它映像的其它触发模式不同的时间处进入关于一个映像的触发模式。假设每个映像的触发模式重叠了相同时间段(例如,5秒),则落地灯可以退出关于第一映像的触发模式,但是保持在关于第二映像的触发模式中。最终,落地灯可以退出关于每个映像的触发模式,并且返回关于每个映像的监控模式。
图6是示出了用于创建新映像的学习时间线的时间线图600。示图600示出了可以如何使用已知映像(称作“ReflexF1”或“F1”)来创建新的映像(称作“ReflexF2”或“F2”)。示图600包括新墙壁开关、灯开关、以及落地灯。落地灯具有已知ReflexF1,其具有包括监控模式606和触发模式608的状态618。ReflexF2不是已知的并且最终将创建于时间线601上。时间线601开始于时间0(“t=t0”)处并且结束于时间“ResumeMonitor”(t=“tResumeMonitor”)处。
在t=t0处,落地灯可以在关于ReflexF1的监控模式606中开始。ReflexF1可以包括触发模型(称作MD2)、动作模型(称作MD3)、回报模型(称作MD4)以及纠正模型(称作MD5)。落地灯可以监控针对匹配于ReflexF1的触发模型(MD2)的模型产生的事件。
在t=tMd1-on处,可以将新墙壁开关从“断开”切换到“接通”,产生事件并且促使有关的发生数据(称作“发生数据1”)通过墙壁开关在由落地灯接收的事件报告消息中广播。来自新墙壁开关的事件报告消息中的发生数据可以由落地灯使用以产生可与一个或多个事件合并或可单独用于创建模型(“MD1”)的事件。
在t=tMd1-done处,落地灯可以接收具有“发生数据1”的事件报告消息,产生有关的事件,并且将它(以及存储在缓冲器中的可能的其它事件)转换为被称为模型“MD1”的模型。在此时,落地灯可以将模型MD1置于事件总线上用于进一步处理或临时存储在存储器中。落地灯可以确定模型MD1不匹配于该落地灯的已知映像的任何已知的触发模型并且因此可以继续在监控模式606中操作。
在t=tMd2-on处,可以将灯开关从“断开”切换到“接通”,并且作为响应,落地灯可以基于与状态改变有关的发生数据(称作“发生数据2”)产生事件。同时,落地灯可以将从“发生数据2”产生的事件与作为模型MD2共同处理的其它事件相组合,并且将模型MD2置于事件总线上用于临时存储在存储器中。
在t=tTrigger处,落地灯可以将模型MD2匹配于ReflexF1的触发模型。由于模型MD2匹配于ReflexF1的触发模型,因此落地灯然后可以进入ReflexF1的触发模式608。在一些实施例中,落地灯可以完成内部传输并且将从“发生数据2”产生的事件转换为在t=tTrigger处的模型MD2。
在t=tAction处,落地灯可以产生与位于事件总线上或存储在落地灯的存储器中的ReflexF1的已知触发模型(MD2)相关联的ReflexF1的动作模型(MD3)。模型MD3的产生可以促使马达驱动器连接于落地灯以接通灯。
在t=tNewReflex处,创建了新的映像(称作“ReflexF2”或“F2”),这是由于不存在匹配于模型MD1的具有触发模型的已有映像。仅有的已知触发模型是与ReflexF1相关联的MD2。在创建ReflexF2中,落地灯可以将与ReflexF1相关联的动作模型、回报模型以及纠正模型复制到新映像中,并且可以将在时间线601上接收的模型(MD1)指定给新映像作为它的触发模型。当被复制到新映像时,可以对与所复制的模型相关联的权重进行调整。因此,新映像(ReflexF2)可以具有等于模型MD1并且与从新的墙壁开关接收的发生数据(“发生数据1”)有关的触发模型、等于与接通落地灯相关联的模型MD3的动作模型、等于模型MD4的回报模型、以及等于模型MD5的纠正模型。在一些实施例中,当落地灯可以被配置为执行多于一个动作(例如,接通、断开等)并且因此利用至少两个映像(即,每个动作至少一个映像)时,则响应于检测到未知模型创建的新映像可以从它的触发模式中的已有的映像复制。换言之,为了确定在创建新映像时复制哪个已有映像,落地灯可以执行操作以将事件(或事件的模型)与它们的触发模式中的映像的已知动作相关(即,新映像的模型可以从预先已有的映像复制,该预先已有映像的动作模型是在未知模型/事件的时间窗内遇到的)。图11示出了包括用于智能盒添加新映像的操作的实施例方法。
在t=tReward处,另一个部件可以产生匹配于回报模型(诸如,被称作ReflexF1的回报模型的模型MD4)的事件。例如,当落地灯的灯被接通(在图1B-图1C中所示)时,马达驱动器可以产生等于模型MD4的事件。马达驱动器可以将模型MD4发送给事件记录器。既然模型MD4匹配于ReflexF1(以及新创建的ReflexF2)的回报模型,由于ReflexF1在它的触发模式608中,因此可以增加与ReflexF1相关联的触发权重。在一些实施例中,回报模型可以是自产生模型,从而使得只要落地灯的灯被接通,就总是产生等于模型MD4的回报模型,并且可以增加触发权重。
当在启用学习的模式中时,如果回报模型(MD4)匹配,则可以应用回报增益(例如,增加触发权重等)。在一些实施例中,尽管当在启用学习的模式中时典型地修改了匹配权重(如上文所描述的x),但是当在启用学习的模式中时也可以调整方程式中的任何参数或值。换言之,增加或减小映像的触发权重可以包括调整触发权重方程式中的任何参数。
然而,如果纠正模型(MD5)匹配,则可以应用纠正增益(例如,减小触发权重)。在一些实施例中,回报模型或纠正模型可以由额外的发生事情所产生(诸如,用户可以激活以便提供响应是期望的(或是不期望的)的反馈的输入或按钮)。例如,在接通落地灯的灯之后,用户可以按压落地灯上的按钮,其产生回报模型。基于该回报模型,落地灯可以增加相关映像的触发权重。
在t=tResumeMonitor处,落地灯结束它的针对ReflexF1的触发模式608并且返回监控模式606。在一些实施例中,落地灯随后可以接收模型MD1,其可以促使落地灯基于ReflexF2的触发动作来激活它的灯。
在一些实施例中,无论落地灯以哪种次序接收或获得各个发生数据,都可以产生新的映像。换言之,可以在触发窗之前、期间、之后接收并使用未知的触发模型(MD1),并且因此使得映像的创建不依赖于接收发生数据的次序。例如,如果在落地灯已经进入它的针对ReflexF1的触发模式608之后(即,在接收“发生数据2”并且已经获得MD2之后)接收并使用“发生数据1”以产生模型MD1,则落地灯仍然可以创建ReflexF2,这是因为MD1仍然是发生在与触发模式608有关的时间窗内。
图7示出了从图6新创建的映像ReflexF2可以如何被回报和/或纠正以增加/降低它与沿时间线701的动作的关联。取决于ReflexF2的状态718,落地灯可以在关于ReflexF2的监控模式706或触发模式708中。在监控模式706中,落地灯寻找关于映像匹配的触发模型。如果落地灯产生匹配于所存储的映像的已知触发模型的事件模型,则落地灯可以进入包含该匹配触发模型的映像的触发模式。在示图700中,ReflexF2可以具有等于模型MD1的触发模型、等于模型MD3的动作模型、等于模型MD4的回报模型以及等于模型MD5的纠正模型。
在t=t0处,墙壁开关可以产生事件并且广播具有关于该事件的发生数据的事件报告消息。在监控模式706中,到t=tMD1-Rx为止,落地灯可以接收事件报告消息。
在t=tMD1-Rx处,落地灯接收具有发生数据的整个事件报告消息,作为响应产生事件,并且将事件传送到事件记录器,该事件记录器可以将该事件转换为模型MD1并且将其置于事件总线(如图2中所示)上。落地灯可以将模型MD1从事件总线传送到存储器中的临时存贮器(例如,图2中的事件模型存贮器204)。
在t=tTrigger处,落地灯可以处理模型MD1并且确定其匹配于与ReflexF2相关联的已知触发模型。因此,落地灯可以进入关于ReflexF2的触发模式708,在该触发模式708中落地灯可以针对ReflexF2进行学习或忘却。
在t=tAction处,落地灯可以产生与ReflexF2关联的被置于事件总线上的动作模型(MD3)。马达驱动器可以从事件总线获取动作模型(MD3)并且进行与所产生的动作模型相关联的动作(例如,接通落地灯的灯)。
在t=tReward处,可以从另一个部件产生与ReflexF2关联的回报模型(MD4)。例如,所产生的动作模型(MD3)可以促使马达驱动器接通落地灯。当落地灯接通时,马达驱动器可以接收反馈或传感器编码器可以感应灯上的状态变化,从而产生模型MD4。随后可以将模型MD4存储在事件模型存贮器中。模型MD4可以匹配于ReflexF2的回报模型,并且可以引起与ReflexF2触发模型(MD1)相关联的权重增加。
在一些实施例中,一旦映像的触发权重达到最大等级,则可以不对触发权重作进一步的调整,允许在其它地方使用系统资源。该最大等级可以用于限制权重计算的动态范围或降低包括在学习设备中的RAM量。例如,当针对映像使用触发权重的较少的动态范围时(例如,在最小和最大触发权重之间的较小范围),可以在学习设备中使用较少的RAM(例如,8比特而不是16比特)
在一些实施例中,落地灯的存储器可以具有一种大小,使得它仅可以存储限定数量的模型和/或映像。在这种情况下,如果所存储的映像的触发权重达到最小权重值(例如,“丢弃阈值”),则可以认为触发权重太低以至于其很可能永远不能触发映像。在这种情况下,落地灯可以重新使用(或收回)分配给那个映像的存储器以用于新映像。因此,设置用于纠正具有低触发权重的映像的较低的限制可以让存储器致力于其它模型和/或映像的存储。在其它实施例中,当存在用于存储新映像的受限制的资源时,落地灯可以将最不经常使用或最低可能(通过权重属性)使用的存储器重新分配用于新映像,而不使用最小或“丢弃”阈值(即,落地灯可以轻易地替换最无用的映像)。
在t=tCorrection处,不同的部件可以产生纠正模型(MD5)。例如,如果落地灯在触发模式708内被断开,则传感器编码器可以将这种状态改变转换为事件,可以将该事件传送给事件记录器以创建纠正模型MD5。模型MD5可以匹配于ReflexF2的纠正模型(其在触发模式708中),并且其结果是可以降低触发权重以弱化ReflexF2的触发模型(MD1)与动作模型(MD3)之间的关联。
在t=tResumeMonitor处,落地灯可以退出与ReflexF2关联的触发模式708,并且落地灯可以返回监控模式706。由于已经超时,触发模式708可以简单地结束。例如,触发模式708可以仅持续十秒钟,因此在触发模式708中操作十秒钟之后,落地灯可以退出与ReflexF2相关的触发模式708并且可以进入相应的监控模式706。
图8示出了针对学习设备(诸如,落地灯)的映像的不同类型的学习速率。每个设备可以具有学习的关键学习时期801和稳态学习时期802。换言之,关键学习时期801和稳态学习时期802可以对应于学习设备的不同学习状态或学习状况。例如,关键学习时期801可以对应于快速学习状态,而稳态学习时期802可以对应于慢速或正常学习状态。当在这些时期中的每一个中时,可以将不同的增益集合应用于触发权重。虽然图8示出了两种学习时期801、802,但是应当了解的是,映像可以利用多于两种的学习时期。
关键学习时期801可以典型地与学习设备的初始状态相关联。这可以是这样一种时间,在该时间中训练学习设备的初始行为将对用户更为有利。初始动态映像很有可能在这种状态中创建;意思是与关键学习时期801相关联的各个增益值(在图8中称作“增益集合1”)可以较高(即,高增益集合),并且智能盒更有可能学习和忘却。例如,制造商可以将落地灯设置为在关键学习时期801具有初始高增益,以使得它能够快速地与墙壁开关或任何其它设备相关联。一旦发生首次触发-动作关联,落地灯可以变为稳态学习时期802。
稳态学习时期802可以发生在当特定设备已经被初始训练时,并且允许另外的训练但是想要进行另外的训练是更困难的。与稳态学习时期802相关联的增益(在图8中称作“增益集合2”)可以具有较低增益(即,低增益集合)以使得学习更加困难。例如,如果落地灯具有与有关墙壁开关的“接通”事件相关联的“接通”事件,则落地灯可以处于稳态学习时期802中。当处于稳态学习时期802时,落地灯可以学习另外的关联,诸如响应于从立体声音响系统接收到发生数据来进行激活。然而,代替立即学习立体声音响系统与落地灯之间的关联,在当立体声音响系统接通时落地灯学习接通之前,落地灯可能不得不多次遇到触发模型(例如,基于从立体声音响系统接收的发生数据的立体声音响系统“接通”事件)、动作模型(例如,基于指示灯已经被接通的发生数据的落地灯“接通”事件)、以及回报模型(例如,基于接收到“回报”信号或来自在灯上的用户输入按钮的发生数据)。
与关键学习时期801相关联的增益(“增益集合1”)和与稳态学习时期802相关联的增益(“增益集合2”)的关系可以利用以下方程式进行说明:
GainSet1≥GainSet2
换言之,与GainSet2相比,使用上述方程式的学习设备利用GainSet1可以学习地更快。
在一些实施例中,在不同的操作阶段,每个增益集合可以具有与映像的触发、回报以及纠正模型相关联的各自增益或权重。两个或更多个增益等级可以用于调整更靠近关键时期和稳态时期的增益。例如,可能存在第三种增益集合,其可以是关键时期和稳态时期之间的混合(例如,需要较少的重复来进行学习)。随着增益被调整,可以调整与特定模型相关联的权重以确定系统内的匹配。
特定映像是动态的还是静态的可以影响与学习设备相关联的增益和学习。特定学习设备可以具有内置静态映像,其可以不被调整。例如,落地灯可以具有无论遇到什么样的相关的回报模型或纠正模型都不能够被再加权的内置映像。换言之,学习设备不会通过使用权重调整(例如,纠正)来无效(或“忘却”)静态映像。然而,与此相反,动态映像可以是自发创建的并且可以随时间进行调整。例如,落地灯可以随时间调整动态映像(如上文所示的ReflexF2)的权重,从而使得没有落地灯的动作可以对应于与墙壁开关相关联的触发模型被执行。换言之,学习设备可以降低与触发模型(例如,发生在墙壁开关处)和动作模型(例如,接通落地灯)之间的关联相关的映像的触发权重,从而使得触发权重低于阈值并且因此可以不执行动作。然而,在一些实施例中,可以将动态映像转换为静态映像,从而使得该关联可以不被忘却。在一些实施例中,可以给予动态映像刚性状态,使得难以改变具有动作和触发之间的关联的映像的触发权重,从而使得该动态映像更持久稳固。
图9和图10示出了在图8所示的稳态学习时期802中动态映像的学习和忘却的例子。图9和图10中示出的相同的原理同样适用于关键学习时期801中的动态映像。
图9是示出了对触发-动作关联进行回报是如何改变触发模型的权重直到该触发模型具有等于或高于触发权重阈值925的权重的时间线图900。示图900包括两个已知的映像ReflexF1和ReflexF2。ReflexF1具有触发模型(称作“MD2”),和在它的触发阈值(未示出)之上的第一触发权重。ReflexF1还具有动作模型(称作“MD3”)、回报模型(称作“MD4”)以及纠正模型(称作“MD5”)。ReflexF2与ReflexF1相同,除了ReflexF2具有不同的触发模型(称作“MD1”)并且具有初始低于触发权重阈值925的第二触发权重。示图900示出了事件和反应的时间线901,其可以改变ReflexF2的触发权重。
在时间t=t0处,落地灯可以处于关于ReflexF2的监控模式906中。在监控模式906中,落地灯可以监控与匹配于触发模型ReflexF2的事件有关的输入信号。在监控模式906期间,落地灯可以遇到或获得对应于触发模型MD1的事件。例如,当新的墙壁开关(其可以与第一墙壁开关相同)从“断开”切换到“接通”时,该新的墙壁开关可以向落地灯发送具有发生数据的事件报告消息,落地灯然后可以基于所接收的事件报告消息和发生数据产生触发模型MD1。
在时间t=tNoAction1处,落地灯可以处理ReflexF1和ReflexF2的触发模型MD1。如此前所论述的那样,MD1可以仅与ReflexF2相关联,因此落地灯可以进入与ReflexF2有关的触发模式908。由于ReflexF2具有低于在t=tNoAction1处的触发权重阈值925的在第一触发权重等级921处的当前触发权重,因此落地灯可以不产生ReflexF2的动作模型(例如,MD3)。然而,此后不久,落地灯在接收到具有对应于新墙壁开关的发生数据的另一个事件报告消息之后,可以产生触发模型MD2。例如,新墙壁开关可以从“断开”切换到“接通”并且向落地灯发送相关的事件报告消息,促使落地灯基于该事件报告消息产生触发模型MD2。由于触发模型MD2对应于ReflexF1并且触发权重高于触发阈值,因此落地灯可以产生动作模型MD3。落地灯随后可以产生引起该落地灯接通它的灯的对应的动作事件。一旦灯被接通,该状态改变可以被传感器编码器记录,这创建关联事件并且产生回报模型MD4。
在时间t=tWeightAdjust1处,可以处理回报模型MD4以调整针对ReflexF1和ReflexF2二者的触发权重。当在关于ReflexF2的触发模式908中时,落地灯可以确定模型MD4匹配于ReflexF2的回报模型,并且可以增加MD1和ReflexF2的触发权重。新的触发权重在第二触发权重等级922处,其仍然低于触发权重阈值925。在触发模式908超时之后,落地灯可以再次进入监控模式906。
遇到事件并且产生它们的对应模型MD1、MD2、MD3(或MD3’)以及MD4的过程可以重复引起对ReflexF2的触发权重的调整,以增加到触发权重阈值925之上至在t=tWeightAdjust2处的第三触发权重等级923。
在将ReflexF2的触发权重调整到高于触发权重阈值925之后的任何时间,落地灯可以遇到对应于模型MD1的事件,其可以引起动作模型MD3’的产生,而不需要遇到模型MD2以触发ReflexF1。例如,在落地灯可能仅在当它产生对应于新的墙壁开关的“接通”事件的模型MD2时已经接通之前。现在墙壁开关可以向落地灯发送包括可引起对应于模型MD1的事件的产生的发生数据的事件报告消息,并且因此在落地灯中通过ReflexF2被触发以接通它的灯。
图10是示出了通过调整触发权重直到其低于触发权重阈值1025来纠正触发-动作关联的时间线图1000。示图1000类似于示图900,除了纠正事件是由落地灯遇到的并且落地灯随后产生纠正模型。该纠正模型减小了映像的触发权重。不同于示图900,示图1000中的纠正过程可以仅涉及一个映像。此处,仅涉及ReflexF2并且ReflexF2包括与如示图900中的相同的触发模型MD1、动作模型MD3、回报模型MD4以及纠正模型MD5。还不同于示图900,示图1000中的ReflexF2可以开始于初始触发权重1023高于它的触发权重阈值1025。因此,在产生触发模型MD1时,落地灯可以产生对应的动作模型和关联动作。
在时间t=t0处,落地灯可以在监控模式1006中监控事件。在监控模式1006期间,落地灯可以遇到对应于触发模型MD1的触发事件。例如,新的墙壁开关可以广播具有发生数据的事件报告消息,该发生数据与“接通”事件有关并且对应于模型MD1,这是因为该新的墙壁开关从“断开”切换到“接通”。随着该事件被接收到,落地灯可以产生对应的触发模型。
在时间t=tTriggered1处,落地灯可以接收关于该接通-事件的事件报告消息并且产生模型MD1。该落地灯可以确定该模型MD1是对应于ReflexF2的已知触发模型并且因此可以进入关于ReflexF2的触发模式1008。此后不久,该落地灯可以确定ReflexF2的第一触发权重等级1023高于触发权重阈值1025,并且可以产生动作模型MD3,其引起落地灯接通它的灯的动作事件和物理动作。当在触发模式1008中时,该落地灯还可以遇到对应于纠正模型MD5的事件。例如,该落地灯可以在遇到当用户按压在落地灯上的单独纠正按钮(例如,被标记为“纠正”的按钮)时的事件来产生纠正模型MD5。用户可以按压该按钮来向落地灯发送纠正事件并且作为响应,该落地灯可以产生纠正模型MD5。在替代的例子中,当用户在先前触发模型的短暂时间窗内手动断开落地灯时,落地灯可以产生纠正模型。先前触发模型的相反输入可以对应于纠正模型并且该落地灯可以学习取消触发模型和动作模型的关联。
在时间t=tCorrection1处,落地灯可以确定纠正模型MD5匹配于ReflexF2的纠正模型。因此,落地灯可以将与ReflexF2关联的触发权重降低到第二触发权重等级1022。第二触发权重等级1022仍然高于触发权重阈值1025,因此落地灯仍然可以激活它的灯。最后,触发模式1008由于时间限制而结束并且该落地灯可以再次进入监控模式1006。
当在监控模式1006中时,落地灯可以遇到第二触发事件并且产生第二触发模型MD1。例如,新的墙壁开关可以再次从“断开”切换到“接通”。在时间t=tTriggered2处,落地灯可以确定第二模型MD1匹配于ReflexF2的已知触发模型并且可以进入关于ReflexF2的触发模式1008。由于ReflexF2当前具有高于触发权重阈值1025的第二触发权重等级1022,因此落地灯可以产生动作模型MD3以及相关联的机械动作(例如,接通灯)。尽管落地灯处于具有ReflexF2的触发模式1008,但落地灯可以再次遇到来自纠正按钮的纠正事件并且产生纠正模型MD5。由于模型MD5对应于ReflexF2,因此在时间t=tCorrection2处,触发权重降到低于触发权重阈值1025的第三触发权重等级1021。因此,如果落地灯在时间t=tTriggered3处遇到另一个触发事件并且产生另一个触发模型MD1,则落地灯可以不产生触发模式1008中的对应的动作模型MD3。换言之,落地灯已经有效地忘却ReflexF2的触发动作关联并且在将来产生触发模型MD1时(或至少在重新训练以响应于触发模型的该方式之前)可以不激活它的灯。
在一些实施例中,响应于落地灯进入它的触发模式而没有遇到回报模型,低于它们的关联触发权重阈值的触发权重可以继续降低。例如,在图10中,在时间tTriggered3处,落地灯可以检测到触发模型MD1,而没有检测到随后的回报模型,并且因此,落地灯可以继续将ReflexF2的触发权重减小到第四触发权重等级1019,如时间t=tSubthreshold1处示出的那样。在一些实施例中,一旦触发权重低于它的关联触发权重阈值并且没有遇到回报模型,映像的触发权重就可以随时间周期性地减小(或衰减)。
在一些实施例中,落地灯可以在它的触发权重低于触发权重阈值1025并且存在存储器短缺之后立即移除ReflexF2或在这之后的一段时间移除ReflexF2。因此,如果在已经删除ReflexF2之后落地灯检测到ReflexF2的触发模型(MD1),则落地灯可以创建具有模型MD1的新的映像,就像它的触发模型假设遇到其它状况一样(例如,在触发模式期间具有回报存在)。在一些实施例中,由于存储器短缺(例如,达到所存储的映像的存储器限制),落地灯可以移除具有高于其相关联阈值的触发权重的映像。例如,当落地灯遇到触发模式内的新触发模型,而在本地存储器中没有可用存贮器时,落地灯可以移除所存储的具有高于触发阈值的触发权重但不经常使用的映像、最不可能使用的映像和/或在具有超出它们各自触发权重阈值的触发权重的所有映像中具有最低触发权重的映像。
图11示出了可实现在用于学习与事件关联的动作的智能盒中的实施例方法1100。尽管该实施例方法1100可与任何智能盒一起使用,但是为了便于描述,参考连接于落地灯的智能盒接收来自连接于墙壁开关的智能盒的事件报告消息的例子来描述方法1100。此外,对落地灯、墙壁开关或立体声音响系统的任何提及还包括它们各自对应的智能盒。例如,描述为由落地灯执行的操作可以由与该落地灯相关联的智能盒的处理器执行。这些智能盒实际上执行事件报告消息内的发生数据的交换操作、以及事件和/或模型的处理操作。
在方框1102中,落地灯可以获得事件。例如,落地灯可以通过RF传输从墙壁开关接收包括发生数据的事件报告消息,并且基于事件报告消息中的数据,落地灯可以根据如上文参考图3B描述的数据结构产生事件。在该例子中,事件报告消息可以在用户将墙壁开关从“断开”切换到“接通”时由墙壁开关发送。如上文所描述的那样,落地灯可以基于耦合于落地灯的传感器(例如,光传感器等)和/或响应于执行动作,替代地获得事件。随着时间的推移以及在方法1100和1200的操作的后续重复中,落地灯可以获得可以或可以不与所获得的事件有关的额外的元素。例如,在基于所获得的事件激活触发模式之后,落地灯可以通过获取先前获得并缓存在存储器中的事件(诸如,响应于所接收的事件报告消息和/或由落地灯执行的动作产生的事件)来获得额外的事件。
在判决方框1104中,落地灯可以确定是否应用事件过滤器。事件过滤器可以包括时间过滤器、类型过滤器、设备事件过滤器等。响应于确定应用了事件过滤器(即,判决方框114=“是”),落地灯可以根据方框1106中的进一步处理丢弃该事件,并且在方框1102中继续监控新的输入信号。在一些实施例中,如果事件过滤器是基于时间的过滤器,则可以存在预设的调度以在一天期间丢弃事件。例如,立体声音响系统可以具有时间过滤器,其将忽略从午夜到上午十点的时间获得的事件。在另一个例子中,在落地灯处的事件过滤器可以简单地忽略从立体声音响系统获得的所有事件。在进一步的例子中,立体声音响系统可以忽略所获得的与特定用户相关联的事件。在一些实施例中,墙壁开关可以接收用户ID输入(例如,指纹数据、密码、来自蓝牙或近场通信(NFC)的附近移动设备数据等)并且将该用户ID包括在事件报告消息内的发生数据中。拥有立体声音响系统的父亲可能不希望除了他之外的任何人利用墙壁开关接通他的立体声音响系统。因此,如果所获得事件不包含这个父亲的用户ID时,立体声音响系统可以丢弃所获得的所有事件,进而阻止其他人利用墙壁开关接通该立体声音响系统。然而,如果不应用事件过滤器(即,判决方框1104=“否”),则落地灯可以将该事件存储在位于存储器138(在图1C中所示)中的缓冲器中。
假设不应用事件过滤器,在方框1108中,落地灯可以将事件存储在位于存储器138中的缓冲器中。当落地灯处于监控模式中时,可以将该事件存储在缓冲器中以促进在事件记录器206处产生模型。换言之,当处于监控模式中时,落地灯可以执行事件的缓存。尽管未示出,但是落地灯可以将事件缓存在存储器中特定的时间段(例如,5-10秒),然后丢弃该事件以为新的事件留出空间。
在方框1110中,落地灯可以基于存在于缓冲器中的事件来产生模型。在一些实施例中,落地灯可以基于存在于缓冲器中的多个事件(诸如,通过获取和合并缓存在存储器中的各个事件)来产生模型。例如,落地灯可能已经基于两个事件来产生模型,该两个事件是基于在两个不同的墙壁开关被转动到“接通”位置时接收的事件报告消息而产生的。模型可以通过以下四种方式中的一种来产生:(1)基于事件的时间次序序列;(2)将多个事件降低为单线态(singlet);(3)启发式;(4)在模型产生中移除来自事件的时间。
当基于事件的时间次序序列产生模型时,产生或以其它方式获得事件的时间可能很重要。因此,如果事件不是在特定时间窗内创建的,落地灯就可以不基于该事件产生模型。例如,落地灯可以具有等效于与墙壁开关有关的“接通”事件和与立体声音响系统有关的“接通”事件的触发模型。如果落地灯在时间窗内获得与墙壁开关有关的“接通”事件,但是在时间窗外获得与立体声音响系统有关的“接通”事件,则落地灯可以不识别这些触发事件。在一些实施例中,模型可以仅在事件A在事件B之前获得时产生。例如,如果落地灯获得该立体声音响系统的“接通”事件先于墙壁开关的“接通”事件,则落地灯可以不将这些事件识别为触发模型,这是因为落地灯仅认可当首先获得墙壁开关事件时的触发模型。
在一些实施例中,可以将多个事件降低为单个事件或单线态(singlet)。例如,落地灯可以在不同的时间获得两个“A”事件并且然后获得“B”事件,这些事件被存储在灯事件缓冲器中。落地灯可以基于一个“A”事件和一个“B”事件产生模型,丢弃第二个“A”事件。因此,具有两个“A”事件和一个“B”事件的触发模型可以减小为具有一个“A”事件和一个“B”事件的触发模型。由于“A”事件是在不同的时间重复的,因此落地灯可以忽略该重复的事件。
在一些实施例中,落地灯可以进行一系列启发式计算以确定是否不考虑该事件。这些启发式计算中的一些可以简单地包括计数机制。例如,落地灯可以确定其是否已经接收了三次“A”事件(例如,与墙壁开关有关的“接通”事件),在这点处落地灯可以基于接收三次“A”事件的启发式规则产生对应的模型(诸如,触发模型),这等同于产生触发模型。
在一些实施例中,当根据事件创建模型时,落地灯可以不考虑时间。不考虑时间可以与启发式计算相一致。例如,如果落地灯在存储器138中接收三个“A”事件和一个“B”事件,则落地灯可以执行一系列启发式计算以在没有时间窗的情况下确定是否基于事件产生模型。不考虑时间还可以包括次序独立性。例如,不论落地灯是在“B”事件之后获得“A”事件,还是在“A”事件之后获得“B”事件,它都可以创建相同的模型。
在判决方框1112中,落地灯可以确定是否应用模型过滤器。这可以类似于参考判决方框1104描述的事件过滤器,其可以包括所存储的忽略模型、基于时间的过滤器、设备类型过滤器等。落地灯可以采用模型过滤器来当模型落到阈值(诸如,时间阈值)之下时从存储器(例如,32K存储器、64K存储器等)中移除模型。响应于该落地灯确定应用了模型过滤器(即,判决方框1112=“是”),落地灯可以在方框1113中丢弃该模型并且抑制对该模型的进一步处理。在一些实施例中,落地灯可以过滤掉针对最近进行的动作产生的模型。例如,当落地灯接通时,落地灯可以根据事件产生动作模型。如果没有将该动作模型忽略一段时间,则落地灯可能试图将该动作模型处理成另一个动作的触发模型(例如,接通立体声音响系统)。为了避免创建新的触发-动作关联,落地灯可以创建临时忽略模型过滤器,在该临时忽略模型过滤器中落地灯可以忽略所产生的动作模型一小段时间。在落地灯丢弃该模型之后,落地灯返回方框1102中获得新的事件。在一些实施例中,落地灯可以在方框1102中持续获得事件。
在一些实施例中,如果模型或对应的映像的触发权重低于低阈值,则落地灯可以应用模型过滤器。通过应用模型过滤器,当特定映像的阈值低于特定设定值时,落地灯可以有能力从它的存储器中移除模型。落地灯可以通过贯穿本申请所描述的纠正过程来降低映像的触发权重。移除模型可以让落地灯保存资源(例如,存储器)以用于创建新的映像。在一些实施例中,落地灯可以被配置为利用预定的、限定数量的映像(例如,每个灯2个映像),从而使得不管可用的本地存贮器如何,用户都不太可能对关于落地灯在任何给定时间所学习的能力感到困惑。存储映像的这种限制还可以带来提高性能的额外益处,诸如,通过减少可能需要比较的模型的数量(由于所存储的映像和模型较少)来提高模型匹配的速度。
参考回判决方框1112,响应于确定不应用模型过滤器(即,判决方框1112=“否”),落地灯可以在判决方框1114中确定所产生的模型是否匹配于已知模型。例如,落地灯可以确定所接收的事件在基于时间的过滤器的时间窗内。因此,落地灯继续将事件作为模型处理。落地灯可以确定所产生的模型是否是任何类型的已知模型,诸如,已知的触发模型、已知的纠正模型、已知的回报模型等。
作为例子,在判决方框1114中,落地灯可以确定所产生的模型是否对应于映像的已知触发模型,在上文参考图6描述了映像“ReflexF1”的这种触发模型“MD2”。响应于确定所产生的模型匹配于已知模型(即,判决方框1114=“是”),落地灯可以执行下文参考图12描述的判决方框1202的操作。例如,当至少一个事件对应于与映像相关联的触发模型时,落地灯可以进入与该映像有关的触发模式,并且可以进行与该映像相关联的动作。
然而,响应于确定所产生的模型不匹配于已知模型(即,判决方框1114=否),落地灯可以在判决方框1116中确定是否创建新的映像。例如,如上文在图7的情境中描述的那样,所产生的模型可以是不对应于已知模型的模型“MD1”(即,还没有创建ReflexF2),并且因此落地灯可以确定它是否应当创建具有模型MD1的新映像作为它的新触发模型。落地灯可以基于是否检测到未知模型和映像是否处于它的触发模式中二者来决定是否应当创建新的映像。
响应于落地灯决定不创建新的映像(即,判决方框1116=“否”),落地灯可以在方框1113中丢弃所产生的模型并且在方框1102中开始监控新的事件。在一些实施例中,可以将落地灯切换到落地灯不能够在其中学习新关联的非学习模式,因而禁用其创建新映像的能力。例如,落地灯可以先前已经学习了当墙壁开关发送与接通/断开事件相关联的事件报告消息时对它的灯进行接通/断开。用户可以满足于这种简单的接通/断开关联,并且可以禁止落地灯进行任何额外的学习。因此,落地灯可以不学习与在立体声音响系统或任何其它学习设备处的发生(例如,加电等)的额外的关联。在其它实施例中,落地灯可以具有其它考虑(例如,存储器不够、触发模式超时等)以阻止其学习新的映像。
响应于落地灯决定创建新的映像(即,判决方框1116=“是”),落地灯可以在方框1118中将新模型存储为新映像的触发模型。新映像可以创建为具有预定动作模型、回报模型以及纠正模型。因此,在方框1119中,落地灯可以将动作模型、回报模型以及纠正模型从当前处于它的触发模式中的映像复制到新映像中。例如,如在上面图6中示出的那样,落地灯可以将包含新模型MD1的ReflexF2创建为触发模型,并且从唯一其它已知的ReflexF1复制动作模型、回报模型以及纠正模型。在替代的例子中,落地灯可以通过从处于它的触发模式中的任何其它存储的映像中取得模型来创建新映像。
如前所述,当处于触发模式中时,落地灯可以获得额外的事件,并且这种额外的事件可以与不同的触发相关联或相关。落地灯可以尝试将基于这些额外事件的模型识别为或匹配于存储在存储器中的映像的模型。然而基于这些额外事件的模型可以不对应于所存储的映像的已知模型,并且落地灯可以决定创建新的模型。换言之,当基于该额外事件的模型不对应于与已知映像相关联的触发模型、动作模型、纠正模型以及回报模型中的至少一个时,落地灯可以创建具有触发模型、动作模型、纠正模型以及回报模型的第二映像。
图12示出了从图11的匹配模型的处理继续的实施例方法1200。如上所述,响应于确定所产生的模型匹配于已知模型(即,图11的判决方框1114=“是”),落地灯可以在判决方框1202中确定所产生的模型是否匹配于映像的已知触发模型。例如,落地灯可以确定基于墙壁开关“接通”事件产生的模型是否匹配于所存储的映像的已知触发模型(例如,模型MD1匹配于图6中示出的ReflexF2的触发模型)。响应于落地灯确定所产生的模型匹配于已知触发模型(即,判决方框1202=“是”),落地灯可以在方框1203中激活(或“接通”)与匹配于所产生模型的该已知触发模型相关联的映像的触发模式。激活该触发模式可以去激活与该映像相关联的监控模式。应注意的是,当处于与该映像有关的触发模式中时,落地灯可以接收并识别额外的事件(诸如,与其它映像相关联的其它事件),促使同时地激活触发模式。
落地灯可以在判决方框1204中确定匹配模型的映像的触发权重是否等于或高于触发阈值。继续图11的例子,落地灯可以确定所产生的模型MD1匹配于最近创建的ReflexF2的已知触发模型,并且可以将当前存储的ReflexF2的触发权重与它各自的触发阈值进行比较。在判决方框1204中,落地灯可以确定该触发权重是否等于或高于阈值。响应于确定该触发权重等于或高于阈值(即,判决方框1204=“是”),落地灯可以在方框1216中产生动作,诸如,通过使用匹配触发模型的映像来产生模型或引起促使落地灯进行或执行预定动作的事件。例如,如果ReflexF2的触发权重高于如图9中所述的触发权重阈值925,则落地灯可以接通它的灯124。在各个实施例中,产生动作可以包括产生事件的模型,该事件的模型可以进一步在外部或内部传播,并且可以由马达驱动器使用来驱动激励器。
在一些实施例中,落地灯可以被配置为当处于触发中时产生限定数量的动作。例如,在任何一个触发模式期间,无论在该触发模式期间接收的触发模型的数量如何,落地灯都仅可以产生一个动作。
在可选方框1217中,落地灯可以广播基于所产生的动作的事件报告消息,诸如,广播包括指示所产生的动作(或它引起的事件)的发生数据的消息。响应于落地灯确定该匹配的触发权重不大于或等于该映像的触发阈值(即判决方框1204=“否”),或如果该动作是利用在方框1216中的操作产生的并且广播是利用可选方框1217的操作作出的,则落地灯可以执行下面描述的判决方框1220中的操作。
响应于落地灯确定所产生的模型不匹配于已知触发模型(即,判决方框1202=“否”),落地灯可以在判决方框1206中确定是否允许该落地灯学习。例如,当处于触发模式中时,落地灯可以已经预先处理了该触发模型(例如,MD1),并且当前正监控所产生的回报模型和纠正模型。因此,在接收该触发模型并进入相关联的映像的激活的触发模式之后不久,落地灯可以获得回报事件并且产生对应的回报模型(例如,MD4)。
响应于确定不允许该落地灯学习(即,判决方框1206=“否”),落地灯可以执行在下面描述的判决方框1220中的操作。例如,落地灯可以具有在产生触发模型之后的五秒的指定时间窗以学习/忘却与该触发模型(例如,MD1)相关联的新动作。只要回报模型或纠正模型在该五秒窗内产生,落地灯就可以学习/忘却关于该触发模型(例如,MD1)的动作;然而,如果所接收的回报/纠正模型在该五秒时间窗之外,则落地灯可以不学习新关联或忘却旧关联。在另一个例子中,落地灯可能不能够简单地学习,这是因为相关联的映像处于忘却状态或相关联的映像是不可以学习或忘却的静态映像。
然而,如果落地灯确定允许其学习关于映像的动作-触发关联(即,判决方框1206=“是”),则在判决方框1208中,落地灯可以确定所产生的模型是否匹配于回报模型。在一些实施例中,落地灯可以在学习时间窗内接收或产生回报模型。例如,用户可以在开启墙壁开关和接通落地灯的五秒之内按压落地灯上的回报按钮。通过按压落地灯上的回报按钮,它可以产生回报模型(例如,如在图7中所示的模型MD4)。在替代的例子中,用户可以在接通墙壁开关五秒之内接通附属于落地灯上的灯开关126,促使当该灯激活时落地灯产生确认落地灯被接通的回报模型(例如,MD4)。
在一些实施例中,可以基于落地灯是处于监控模式还是触发模式中来允许其学习。例如,当处于特定映像的监控模式中时,不允许该落地灯关于该映像进行学习;然而,当处于映像的触发模式中时可以允许其学习。在一些实施例中,由于其它因素(诸如,整体状态或落地灯的配置)可以允许学习一个或多个映像。例如,落地灯可以被配置为由于系统设置(诸如,活动调试模式,在该活动调试模式期间可以对各个映像进行测试)禁止任何学习。
如果落地灯确定所产生的模型匹配于回报模型(即,判决方框1208=“是”),则在方框1212a中落地灯可以调整相关联的映像的触发权重。在一些实施例中,落地灯通过增加触发权重来调整与适当的映像相关联的触发权重。例如,如果落地灯在遇到触发模型(例如,MD1)的五秒学习时间窗内接收或产生模型(例如,MD4),则落地灯可以增加该触发模型的映像的触发权重。在调整该触发权重之后,在方框1214中,落地灯可以将该经调整的触发权重存储在存储器138中并且该落地灯可以执行下面描述的在判决方框1220中的操作。
在一些实施例中,在执行方框1212a中的操作之后,落地灯可以可选地执行判决方框1210中的操作。换言之,落地灯可被配置为:不管判决方框1208的判决如何,响应于确定允许其学习(即,判决方框1206=“是”),评估在判决方框1208中回报模型是否已经被匹配以及在判决方框1210中纠正模型是否已经被匹配二者。换言之,落地灯可以并行地检查回报和纠正匹配。
如果落地灯确定所产生的模型不匹配于已知回报模型(即,判决方框1208=“否”),则落地灯可以在判决方框1210中检查纠正模型匹配。在一些实施例中,落地灯可以在学习时间窗内接收或产生纠正模型。例如,用户可以在开启墙壁开关和接通落地灯的五秒之内按压落地灯上的纠正按钮。通过按压纠正按钮,落地灯可以产生纠正模型(例如,如在图7中所示的模型MD5)。在替代的例子中,用户可以在接通墙壁开关五秒之内断开附属于落地灯上的灯开关126,促使当落地灯断开它的灯124时落地灯产生纠正模型(例如,MD4)。
如果落地灯确定所产生的模型匹配于已知纠正模型(即,判决方框1210=“是”),则落地灯可以在方框1212b中调整触发权重。在一些实施例中,落地灯可以在学习时间窗内接收到纠正模型之后减小触发权重。例如,当用户在产生与墙壁开关的“接通”事件相关联的触发模型(例如,MD1)的五秒内“断开”落地灯的灯开关126时,落地灯可以产生纠正模型(例如,模型MD5)。落地灯可以将所产生的模型(MD5)匹配为ReflexF2的纠正模型并且降低与ReflexF2相关联的触发权重。在方框1214中,落地灯可以将经调整的权重存储在存储器138中并且落地灯可以执行在下面描述的判决方框1220中的操作。换言之,当至少一个额外的事件对应于与映像相关联的纠正模型和回报模型中的至少一个时,落地灯可以调整映像的一个或多个触发权重。
响应于落地灯确定所产生的模型不匹配于纠正模型(即,判决方框1210=“否”)、或响应于落地灯确定所匹配的触发权重不大于或等于触发阈值(即,判决方框1204=“否”)、或响应于落地灯确定不允许其学习(即,判决方框1206=“否”)、或响应于落地灯执行方框1217或1214的操作,落地灯可以在判决方框1220中确定是否返回监控模式,诸如基于自进入方框1203中的操作的激活触发模式以来到期的持续时间。去激活该触发模式可以激活与该映像相关联的监控模式。响应于落地灯确定其应当返回监控模式(即,判决方框1220=“是”),落地灯可以在方框1222中去激活该映像的触发模式。响应于落地灯确定其不应当返回监控模式(即,判决方框1220=“否”)或当方框1222的操作已经被执行,落地灯可以继续在上文参考图11描述的方法1100的方框1102中获得事件。
作为基于图6中示出的情景的说明,墙壁开关可以发送具有由落地灯接收的新发生数据(例如,墙壁“接通”事件)的新事件报告消息。落地灯可以执行方框1102、1104、1108以及1110的操作直到它基于所接收的新事件报告消息产生与事件相关联的第一模型(例如,模型MD1)。在相同的时间窗内,落地灯可以基于其它发生数据产生第二模型(例如,模型MD2),并且可以利用上文参考图11描述的方框1102-114和上文参考图12描述的方框1202、1203、1204、1216中的操作来处理该第二模型。落地灯可以基于这些操作将与第二模型相关联的第二映像(例如,ReflexF1)置于触发模式中。
落地灯然后可以执行上文参考图11描述的方框1102、1104、1108以及1110中的操作直到它基于所接收的新事件报告消息产生与该事件相关联的第一模型(例如,模型MD1)。落地灯可以通过执行上文参考图11描述的方框1112、1114、1116、1118、1119的操作、创建具有如它的触发模型的第一模型(例如,模型MD1)的第一映像(例如,ReflexF2),并且(当第二映像处于它的触发模式中)从第二映像(例如,ReflexF1)复制它的动作、回报以及纠正模型来继续处理新模型。
如果落地灯随后基于从墙壁开关接收的其它数据获得相同的事件并且产生第一模型(例如,模型MD1),则落地灯可以根据上文参考图11描述的方框1102、1104、1108、1110、1112以及1114的操作中的第一映像来处理第一模型。在判决方框1114中,落地灯可以确定所产生的与墙壁开关相关联的模型(例如,模型MD1)匹配于已知模型,这是因为与墙壁开关相关联的模型现在被认为是存储在存储器中的第一映像(例如,ReflexF2)的触发模型。因此,落地灯可以继续执行上文参考图12描述的操作,以继续处理所产生的针对墙壁开关“接通”事件的模型。
继续该说明,落地灯可以处理来自新墙壁开关事件的匹配的第一模型(MD1)以及确定该匹配的模型是触发模型匹配(即,判决方框1202=“是”)并且可以激活针对第一映像(例如,ReflexF2)的触发模式。然而,第一映像(例如,ReflexF2)的触发权重可能低于其触发阈值,在这种情况下,落地灯将不在方框1216中产生动作,而作为替代可以继续监控其它事件/模型。另一方面,落地灯可以遇到不同的触发事件,诸如,来自灯开关126的“接通”事件。落地灯可以通过上文参考图11描述的方法1100的方框1102、1104、1108以及1110来处理来自灯开关126的接通-事件,产生与灯开关126的接通-事件相关联的第二模型(例如,模型MD2)。落地灯可以继续通过上文参考图11和图12描述的方框1112、1114以及1202的操作来处理该接通-事件模型。在方法1200的判决方框1202中,落地灯可以确定第二模型(MD2)是匹配于第二映像(ReflexF1)的触发模型,并且在判决方框1204中确定第二映像的触发权重高于阈值。在这种情况下,基于第二映像的触发权重,落地灯可以产生上文参考图12描述的方框1216中的动作模型和关联动作(例如,接通灯)。通过接通灯,落地灯可以在上文参考图11描述的方框1110中产生回报事件和随后的回报模型(例如,模型MD4)。落地灯可以通过上文描述的方法1100和1200来处理回报模型直到在判决方框1208中落地灯确定所产生的回报模型(MD4)匹配于第一映像(ReflexF2)的回报模型。落地灯可以通过增加其触发权重并且将该调整存储在存储器138中来调整与ReflexF2相关联的权重,从而学习墙壁开关处的接通事件和落地灯处的接通事件之间的关联。该处理可以由落地灯重复直到第一映像(例如,ReflexF2)的触发权重高于触发阈值(诸如,如在图9中示出的那样)。
上文参考图11和图12描述的实施例方法可以作为一种类型的递归算法,由于事件是在时间窗获得并缓存的,因此在时间窗期间可以获得任何数量的事件,并且处理缓存的事件以识别匹配模型并学习新的关系或映像可以包含多个事件和事件与映像的组合。为了进一步揭示实施例可以如何起作用以使用户能够训练实施例智能盒和学习设备,下面提供了实现这种设备的用户动作的例子。在该例子中,用户训练两个学习设备,也就是墙壁开关和落地灯,它们没有彼此预先关联。为了易于描述,接下来对落地灯或墙壁开关的提及意味着包括它们的关联智能盒。
在该例子中,落地灯和墙壁开关的每一个均可以具有存储在它们的关联智能盒的存储器中的预定义映像。例如,墙壁开关可以具有存储在存储器中的预定义映像ReflexW,其可以包括触发模型“WT”、动作模型“WA”、纠正模型“WC”以及回报模型“WR”。触发模型WT可以对应于用户将墙壁开关从“断开”切换到“接通”的触发事件。当用户将墙壁开关从“断开”切换到“接通”时,墙壁开关可以产生事件,并且广播包括与该“接通”事件有关的发生数据的事件报告消息。从所产生的与墙壁开关的“接通”事件有关的事件,包括在墙壁开关内的或耦合于墙壁开关的智能盒可以产生触发模型WT。首先,动作模型WA可以不对应于真实生活的动作(诸如,切换开关)。作为替代,WA可以仅仅是准备分配给未来映像的计算机代码。
纠正模型WC可以对应于墙壁开关上被标记为“纠正”的按钮。当用户按压该纠正按钮时,墙壁开关可以产生纠正事件,并且广播具有指示该纠正事件的发生数据的另一个事件报告消息。根据所产生的纠正事件,与该墙壁开关相关联的智能盒可以产生纠正模型WC。回报模型WR可以对应于用户按压墙壁开关上被标记为“回报”的回报按钮的事件。当用户按压该回报按钮时,墙壁开关可以产生回报事件,并且广播具有指示该回报事件的发生数据的另一个事件报告消息。根据所产生的回报事件,与墙壁开关相关联的智能盒可以产生回报模型WR。
类似地,落地灯可以具有存储在存储器中的预定义映像ReflexF2,其可以包括触发模型“MD1”、动作模型“MD3”、纠正模型“MD5”以及回报模型“MD4”。触发模型MD1可以对应于用户在其中将落地灯的灯开关从断开切换到接通的触发事件。当用户将灯开关从“断开”切换到“接通”时,墙壁开关可以产生触发事件,并且广播具有指示该灯的“接通”事件的发生数据的事件报告消息。根据所产生的触发事件,包括在落地灯内的或耦合于落地灯的智能盒可以产生触发模型MD1。动作模型MD3可以对应于落地灯在其中将它的灯从“断开”转为“接通”的事件。当落地灯处于触发模式中时,纠正模型MD5可以对应于在落地灯上被标记为“纠正”的额外的按钮。当用户按压该纠正按钮时,灯可以产生纠正事件,并且广播具有指示灯的纠正事件的发生数据的事件报告消息。根据所产生的纠正事件,与落地灯相关联的智能盒可以产生纠正模型MD5。回报模型MD4对应于在触发模式内当用户接通落地灯时产生回报事件,并且广播具有指示该灯的回报事件的发生数据的事件报告消息。根据该回报事件,与落地灯相关联的智能盒可以产生回报模型MD4。
在以这种方式对墙壁开关和落地灯进行初始配置的情况下,用户可以按照如下方式训练该落地灯响应于该墙壁开关来接通。当墙壁开关在“关”的位置中并且落地灯断开的情况下,用户可以通过手动操作接通该墙壁开关并迅速接通落地灯(例如,轻击设备上的开关)。如果这两个动作在短时间段(例如,5-10秒)内完成,则与落地灯相关联的智能盒可以通过增加与灯-接通映像相关联的权重来开始学习接通动作关联。类似地,用户可以通过断开墙壁开关并迅速断开落地灯来教导该落地灯对墙壁开关被断开做出响应。再一次的,如果这两个动作在短时间段(例如,5-10秒)内完成,则与落地灯相关联的智能盒可以通过增加与灯-断开映像相关联的权重来开始学习断开动作关联。
一个这样的训练周期可能是不够的(除了在一些实施例中先前未训练的智能盒将在单个步骤中学习首次映像-事件关联之外),所以用户可以重复接通墙壁开关并迅速接通落地灯然后在一段时间之后断开墙壁开关并迅速断开落地灯的过程。该一系列步骤可能需要重复三次或三次以上,这取决于与落地灯相关联的智能盒的学习滞后配置。
在两次、三次或更多次重复之后,与落地灯相关联的智能盒已经增加了与灯-接通和灯-断开映像相关联的权重,从而使得随后的墙壁开关的切换将促使落地灯相应地接通或断开。因此,为了训练这种所期望的墙壁开关接通/断开事件与落地灯接通/断开动作的关联,用户可以简单地重复该过程直到落地灯开始响应于用户切换该墙壁开关来接通为止。
用户的这一系列动作促使接下来的动作在与墙壁开关和落地灯相关联的智能盒内发生。当与墙壁开关相关联的智能盒感应到“断开”至“接通”切换时,墙壁开关可以产生触发事件和关联的发生数据,该发生数据可以在事件报告消息中广播以供在它的广播范围(例如,100英尺)内的所有学习设备接收。在墙壁开关的广播范围内的与落地灯相关联的智能盒可以接收该事件报告消息。在接收到时,落地灯可以产生相关的事件并且确定存储在存储器中的事件过滤器是否阻止对所产生的事件进行进一步处理。在默认状态中,落地灯可以不将过滤器应用于所产生的事件,因此落地灯可以将所产生的事件存储在缓冲器中。基于所产生的事件,落地灯可以产生模型MD2。
最初落地灯仅具有存储在存储器中的与ReflexF2相关联的模型(例如,MD1、MD3、MD5以及MD4)。为了这个例子的目的,假设诸如响应于在与产生模型MD2相同的时间窗内产生ReflexF2的触发模型(模型MD1),落地灯已经处于ReflexF2的触发模式内。由于所产生的模型MD2不匹配于ReflexF2的任何模型,所以可以认为所产生的模型MD2是可用作新映像的触发模型的未知模型。落地灯可以确定是否创建具有未知或未匹配模型MD2的新映像。落地灯可以具有许多不同的理由来不创建新映像。例如,落地灯可能处于学习阻止模式(例如,挂起模式)中或落地灯可能被禁止从与特定设备相关联的特定模型创建映像(例如,落地灯将不会从与墙壁开关相关联的模型创建映像)。
在这个例子中,不阻止落地灯创建新映像,所以落地灯可以创建具有作为它的触发模型的未知模型MD2的新映像ReflexF1。新映像ReflexF1将包括动作模型、纠正模型以及回报模型以成为完整的映像。因此,落地灯可以通过复制已经存储在存储器中的动作、纠正以及回报模型(例如,MD3、MD5以及MD4)来使用来自于在触发模式ReflexF2中的唯一已知映像的模型并且将这些模型连同新触发模型MD2一起分配给新ReflexF1。取决于落地灯的设置,落地灯可能刚刚已经学习了在与墙壁开关打开有关的触发事件与落地灯的灯的激活之间的新关联。例如,落地灯可以在关键学习时期801(如图8中所示)中,在该关键学习时期801中落地灯立即学习新映像(例如,在落地灯上执行的单个开/关序列)。因此,一旦墙壁开关从“断开”切换到“接通”,落地灯就可以激活它的灯。然而,出于这个例子的目的,假设落地灯不在关键时期中并且还没有完全学习墙壁开关从“断开”切换到“接通”与落地灯的灯的激活之间的关联。
当用户在切换墙壁开关之后不久接通落地灯时,与落地灯相关联的智能盒可以将具有新映像ReflexF1的灯-接通事件与作为其触发模型的最近学习的模型MD2相关联。断开墙壁开关及随后不久的断开落地灯的动作可以在墙壁开关和落地灯中产生类似的响应。
当墙壁开关第二次从“断开”切换到“接通”时,接通事件的关联发生数据可以再次在事件报告消息中被广播并由落地灯接收。落地灯可以再次处理具有发生数据的相关事件报告消息,产生事件并且最终产生模型MD2。然而,这一次落地灯将所产生的模型MD2匹配于ReflexF1的已知模型。响应于该匹配,落地灯还可以确定在模型MD2和所存储的ReflexF1的触发模型之间存在匹配,并且可以进入关于ReflexF1的触发模式。此外,落地灯可以确定ReflexF1的触发权重是否等于或高于触发权重阈值。在这个例子中,在仅一次训练周期之后,落地灯可以确定由于ReflexF1是新映像,ReflexF1的触发权重不等于或高于触发权重阈值。因此,当处于ReflexF1的触发模式中时,落地灯可以继续监控更多的事件。
当用户在5-10秒时间窗内接通落地灯时,落地灯可以产生回报事件,该回报事件最终促使落地灯产生回报模型MD4。落地灯处理MD4并且确定存在匹配于ReflexF1的回报模型。作为响应,仍然处于关于ReflexF1的触发模式中的落地灯可以增加ReflexF1的触发权重。在调整该权重之后或在5-10秒时间窗之后,落地灯可以退出关于ReflexF1的触发模式并且进入落地灯监控更多事件的监控模式。
一段时间之后,用户可以第三次地切换该墙壁开关至接通,再次促使墙壁开关广播由落地灯接收的具有发生数据的事件报告消息。再次地,基于所接收消息中的数据,落地灯可以产生相关的事件并且然后产生模型MD2。落地灯可以确定在所产生的模型MD2与ReflexF1的触发模型之间存在触发匹配,并且可以第三次进入关于ReflexF1的触发模式。再一次的,落地灯可以确定ReflexF1的触发权重是否等于或高于触发权重阈值。第三次地,由于ReflexF1是新映像,落地灯可以确定ReflexF1的触发权重不等于或高于触发权重阈值。因此,当处于触发模式中时,落地灯继续监控更多事件。
仍然在最近的ReflexF1的触发模式的5-10秒时间窗内,用户可以第三次接通落地灯。作为响应,落地灯产生回报事件,其最终促使落地灯产生回报模型MD4。落地灯可以处理模型MD4并且确定存在匹配于ReflexF1的回报模型。仍处于关于ReflexF1的触发模式中的落地灯可以将ReflexF1的触发权重增加至触发阈值之上。
一段时间之后,当用户第四次将墙壁开关从“断开”切换到“接通”时,发生相同序列的事件,唯有这一次落地灯可以确定ReflexF1的触发权重等于或高于它的阈值,并且因此它产生动作模型MD3。响应于动作模型MD3,落地灯可以产生关联的动作事件,其给接通落地灯的灯的马达控制器提供能量。此后,落地灯将响应于用户将墙壁开关从“断开”切换到“接通”而被接通。
图13A-图13F示出了用于学习修改器设备150调整分散式系统内的学习设备的学习能力的各个场景。特别地,第一智能盒103a可以耦合于墙壁开关102,而第二智能盒103b可以耦合于落地灯104。学习修改器设备150可被配置为广播学习修改器信号从而使得其广播范围1302内的任何学习设备都可以受信号的影响。如上所述,学习修改器设备150可以是专用信号传输设备或能够广播信号(诸如,通过蓝牙无线电)的智能电话。
当不在学习修改器设备150的附近时(即,当在广播范围1302之外时),智能盒103a-103b可以被配置为在“默认学习状态”中操作。换言之,智能盒103a-103b可以不利用经修改的学习能力(例如,增加的/减小的用于计算映像的触发权重的学习速率等)。对于个体学习设备来说,默认学习状态可以是不同的。因此,第一智能盒103a的默认学习状态可以由快于、慢于、或等于第二智能盒103b的默认学习状态的学习速率定义。此外,默认学习状态可以指示智能盒103a-103b是在启用学习模式内还是禁用学习模式内操作。例如,默认地,第一智能盒103a可以被配置为在禁用学习模式中操作,从而使得智能盒103a不会正常地产生如上所述的新的触发-动作关联。
相反地,当智能盒103a-103b在学习修改器设备150的接收范围内时(即,当在广播范围1302内时),它们可以被配置为在“经修改的学习状态”中操作。换言之,基于从学习修改器设备150接收到学习修改器信号,智能盒103a-103b可以利用经修改的学习能力(例如,经调整的用于计算映像的触发权重的学习速率等)。例如,经修改的学习状态可以对应于智能盒103a-103b被配置为当在经修改的学习状态中时学习响应于接收到更少的触发来执行动作(例如,将触发权重增加到阈值之上等)。在一些实施例中,对于个体学习设备来说,经修改的学习状态可以与其有关并且因此不同。例如,第一智能盒103a的经修改的学习状态可以由快于、慢于、或等于第二智能盒103b的经修改的学习状态的学习速率来定义。然而,在一些实施例中,对于所有学习设备来说,经修改的学习状态可以是相同的。例如,可以将智能盒103a-103b的经修改的学习状态定义为通用学习速率以促使在智能盒103a-103b二者中的学习行为相符合。类似于上文参考默认学习状态描述的那样,经修改的学习状态可以指示智能盒103a-103b是在启用学习模式内还是禁用学习模式内操作。例如,当第一智能盒103a被配置为默认在启用学习模式中操作时,第一智能盒103a的经修改的学习状态可以是禁用学习模式。
图13A-图13C示出了携带学习修改器设备150的用户1301在智能盒103a-103b附近以便调整它们的学习状态。学习修改器设备150可被配置为周期性地广播学习修改器信号。学习修改器设备150可被配置为默认地(例如,只要被激活、只要电池插入等)广播信号或替代地响应于来自用户1301的用户输入(例如,在“开始”软按钮上的触摸输入、按压“电源”按钮等)来广播信号。
在图13A中,用户1301和学习修改器设备150可以位于使得智能盒103a-103b中的任何一个都不在学习修改器设备150的广播范围1302内的地方。因此,智能盒103a-103b二者都可以被配置为在它们各自默认的学习状态中操作。例如,如果第一智能盒103a被配置为默认在禁用学习模式中操作,则它可以继续被禁止学习。作为另一个例子,如果第二智能盒103b被配置为默认以常规学习速率学习,则它可以继续以常规学习速率学习。
在图13B中,用户1301和学习修改器设备150可以位于使得第一智能盒103a在学习修改器设备150的广播范围1302内的地方。因此,第一智能盒103a可以被配置为响应于接收到学习修改器信号1320(例如,蓝牙分组等)在经修改的学习状态中操作;然而,第二智能盒103b可以被配置为继续在它的默认学习状态中操作。例如,第一智能盒103a可以增加它的学习速率从而使得在相关的触发权重可能超出阈值之前必须遇到的触发模型更少,并且因此可以响应于随后在第一智能盒103a处遇到的触发来执行相关联的动作。作为另一个例子,如果第二智能盒103b被配置为默认禁止学习新映像(即,在禁用学习模式中操作),则它可以继续不学习新映像。
在图13C中,用户1301和学习修改器设备150可以位于使得智能盒103a-103b二者都在学习修改器设备150的广播范围1302内的地方。因此,智能盒103a-103b二者都可以被配置为响应于接收到来自学习修改器设备150的学习修改器信号1320、1330在它们各自的经修改的学习状态中操作。例如,当用户1301走近被配置为默认在禁用学习模式中操作的智能盒103a-103b时,智能盒103a-103b可以被配置为在启用学习模式中操作。
图13D-图13F示出了学习修改器设备150位于智能盒103a-103b附近(即,在广播接收范围内)的场景。不同于图13A-图13C所示的场景,学习修改器设备150可以不由用户1301携带,而替代地可以在环境(例如,房间等)内的单个位置中保持固定。此外,学习修改器设备150可以被配置为仅响应于接收到预定义信号或用户输入来广播学习修改器信号。例如,学习修改器设备150可以不被配置为默认地(例如,只要被激活、只要电池插入等)广播信号,而替代地可以仅响应于通过短程无线电接收预定义信号来广播信号。例如,图13D显示了位于智能盒103a-103b附近不发送任何信号的学习修改器设备150和在其各自默认学习状态中操作的智能盒103a-103b。
图13E示出了环境内的路由器1370。路由器1370可以是能够促进局域网(LAN)以及通过广域网(WAN)(诸如,因特网)通信的任何设备。例如,路由器1370可以是房屋内的WiFi路由器。学习修改器设备150可以通过无线通信链路1372接收来自路由器1370的信号。该信号可以包括可配置学习修改器设备150开始发送信号的命令、脚本、软件、和/或其它信息。作为响应,学习修改器设备150可以发送促使广播范围1302内的智能盒103a-103b在它们各自的经修改的学习状态中操作的学习修改器信号1320、1330。在一些实施例中,基于经由因特网来自远程服务器或替代地经由LAN来自另一个设备(例如,连接于LAN但是在不同的房间内的用户智能电话等)的通信,路由器1370可以提供促使学习修改器设备150开始发送学习修改器信号1320、1330的经由通信链路1372的信号。例如,基于用户访问用于控制学习修改器设备150的网页,学习修改器设备150可以接收命令以开始广播。
图13F示出了响应于接收到来自由用户1301携带的移动设备1380的信号1382,学习修改器设备150发送学习修改器信号1320、1330。移动设备1380可以预先关联于学习修改器设备150,通过蓝牙配对过程或通过存储移动设备1380的身份标识从而使得其可以在信号1382内被识别(例如,在信号1382的报头信息内报告的设备ID等)。学习修改器设备150可被配置为通过信号1382将移动设备1380的存在识别为开始发送学习修改器信号1320、1330的提示。例如,当用户1301带着他/她的、被配置为通过蓝牙信号传输来广播它的ID的智能电话进入房间时,学习修改器设备150可以检测该智能电话并且开始广播信号以促使智能盒103a-103b在它们各自的经修改的学习状态(例如,启用学习模式、禁用学习模式、增加学习速率、减小学习速率等)中操作。以这种方式,可以控制房间中的学习设备从观测当用户在场时由他/她引起的事件中学习,而不是从在当用户不在场时发生的事件(例如,由宠物、小孩、客人等引起的事件)中学习。
图14A-图14D示出了响应于学习设备在各个学习状态期间获得回报模型来对映像的触发权重的示例性改变。特别地,基于不同类型的学习修改器信号,可以以不同的速率将映像的当前触发权重提高到触发权重阈值1406之上。因此,学习设备能够基于学习修改器信号以不同的速度执行关联的动作。
图14A示出了由于在默认学习状态期间接收的回报信号造成的触发权重改变。换言之,该改变可以发生在当学习设备还没有接收到学习修改器信号时(即,学习修改器设备没有在附近发射信号)。学习设备可以以低于触发权重阈值1406的第一触发权重等级1401来初始化映像的触发权重。在第一时间1410处,学习设备可以获得第一回报模型1411,诸如响应于学习设备接收到与特定事件或发生数据有关的第一事件报告消息。作为响应,学习设备可以将触发权重增加到低于触发权重阈值1406的第二触发权重等级1402。在第二时间1412处,学习设备可以获得第二回报模型1413,诸如响应于学习设备接收到与特定事件或发生数据有关的第二事件报告消息。作为响应,学习设备可以将触发权重增加到高于触发权重阈值1406的第三触发权重等级1403。因此,在其默认学习状态中,学习设备可被配置为在接收两个回报模型1411、1413之后执行映像的动作。
图14B示出了由于在可由增加的学习速率定义的第一经修改的学习状态期间接收的回报信号造成的触发权重改变。换言之,基于在所接收的学习修改器信号内的数据(例如,乘数(multiplier)、标量(scalar)、升降量(booster)等),学习设备可被配置为学习的更快。如上所述,学习设备可以以低于触发权重阈值1406的第一触发权重等级1401来初始化映像的触发权重。在第一时间1410处,学习设备可以获得第一回报模型1411,并且作为响应,学习设备可以将触发权重增加到高于触发权重阈值1406的第三触发权重等级1403。因此,在利用增加的学习速率的第一经修改的学习状态中,学习设备可被配置为在接收更少的回报模型之后执行映像的动作。
图14C示出了由于在可由减小的学习速率定义的第二经修改的学习状态期间接收的回报信号造成的触发权重改变。换言之,基于在所接收的学习修改器信号内的数据(例如,乘数(multiplier)、标量(scalar)、升降量(booster)等),学习设备可被配置为学习的更慢。如上所述,学习设备可以以低于触发权重阈值1406的第一触发权重等级1401来初始化映像的触发权重。在第一时间1410处,学习设备可以获得第一回报模型1411,并且作为响应,学习设备可以将触发权重增加到低于触发权重阈值1406的第四触发权重等级1452。在第二时间1412处,学习设备可以获得第二回报模型1413,并且作为响应,学习设备可以将触发权重增加到低于触发权重阈值1406的第二触发权重等级1402。在第三时间1462处,学习设备可以获得第三回报模型1463,并且作为响应,学习设备可以将触发权重增加到低于触发权重阈值1406的第五触发权重等级1454。在第四时间1464处,学习设备可以获得第四回报模型1465,并且作为响应,学习设备可以将触发权重增加到高于触发权重阈值1406的第三触发权重等级1403。因此,在该第二经修改的学习状态中,学习设备可被配置为在接收更多回报模型之后执行映像的动作(即,更慢地学习)。
图14D示出了由于在可由禁用学习模式定义的第三经修改的学习状态期间接收的回报信号造成的触发权重改变。换言之,基于在所接收的学习修改器信号内的数据,学习设备可被配置为不学习(即,零学习速率)。如上所述,学习设备可以以低于触发权重阈值1406的第一触发权重等级1401来初始化映像的触发权重。在第一时间1410处,学习设备可以获得第一回报模型1411,但是作为响应,学习设备可以不计算新的触发权重,并且因此触发权重可以维持在第一触发权重等级1401。类似的,在第二时间1412处获得第二回报模型1413、在第三时间1462处获得第三回报模型1463、以及在第四时间1464处获得第四回报模型1465之后,学习设备可以不计算新的触发权重,并且因此触发权重可以维持在第一触发权重等级1401。
图15A-图15D示出了响应于学习设备在各个学习状态期间获得纠正模型对映像的触发权重的示例性改变。特别地,基于不同类型的学习修改器信号,可以以不同的速率将映像的当前触发权重降低到触发权重阈值1506之下,并且因此可以禁止学习设备基于学习修改器信号以不同的速度执行关联的动作。
图15A示出了由于在默认学习状态期间接收的纠正信号造成的触发权重改变。换言之,该改变可以发生在当学习设备没有接收到学习修改器信号时(即,学习修改器设备不在附近)。学习设备可以以高于触发权重阈值1506的第一触发权重等级1501来初始化映像的触发权重。在第一时间1510处,学习设备可以获得第一纠正模型1511,诸如响应于学习设备接收到与特定事件或发生数据有关的第一事件报告消息。作为响应,学习设备可以将触发权重减小到高于触发权重阈值1506的第二触发权重等级1502。在第二时间1512处,学习设备可以获得第二纠正模型1513,诸如响应于学习设备接收到与特定事件或发生数据有关的第二事件报告消息。作为响应,学习设备可以将触发权重减小到低于触发权重阈值1506的第三触发权重等级1503。因此,在其默认学习状态中,学习设备可被配置为在接收到两个纠正模型1511、1513之后停止执行映像的动作。
图15B示出了由于在可由增加的学习速率定义的第一经修改的学习状态期间接收的纠正信号造成的触发权重改变。类似于上文参考图14B描述的例子,基于在所接收的学习修改器信号内的数据(例如,乘数(multiplier)、标量(scalar)、升降量(booster)等),学习设备可被配置为学习的更快。学习设备可以以高于触发权重阈值1506的第一触发权重等级1501来初始化映像的触发权重。在第一时间1510处,学习设备可以获得第一纠正模型1511,并且作为响应,学习设备可以将触发权重减小到低于触发权重阈值1506的第三触发权重等级1503。因此,在利用增加的学习速率的第一经修改的学习状态中,学习设备可被配置为在接收到更少的纠正模型之后(诸如,在仅一个纠正模型之后)停止执行映像的动作。
图15C示出了由于在可由减小的学习速率定义的第二经修改的学习状态期间接收的纠正信号造成的触发权重改变。类似于上文参考图14C描述的例子,基于在所接收的学习修改器信号内的数据(例如,乘数(multiplier)、标量(scalar)、升降量(booster)等),学习设备可被配置为学习的更慢。学习设备可以以高于触发权重阈值1506的第一触发权重等级1501初始化映像的触发权重。在第一时间1510处,学习设备可以获得第一纠正模型1511,并且作为响应,学习设备可以将触发权重减小到高于触发权重阈值1506的第四触发权重等级1552。在第二时间1512处,学习设备可以获得第二纠正模型1513,并且作为响应,学习设备可以将触发权重减小到高于触发权重阈值1506的第二触发权重等级1502。在第三时间1562处,学习设备可以获得第三纠正模型1563,并且作为响应,学习设备可以将触发权重减小到高于触发权重阈值1506的第五触发权重等级1554。在第四时间1564处,学习设备可以获得第四纠正模型1565,并且作为响应,学习设备可以将触发权重减小到低于触发权重阈值1506的第三触发权重等级1503。因此,在该第二经修改的学习状态中,学习设备可被配置为在接收到更多纠正模型(诸如,四个纠正模型)之后停止执行映像的动作。
图15D示出了由于在可由禁用学习模式定义的第三经修改的学习状态期间接收的纠正信号造成的触发权重改变。类似于图14D所描述的那样,基于在所接收的学习修改器信号内的数据,学习设备可被配置为不学习(即,零学习速率)。学习设备可以以低于触发权重阈值1506的第一触发权重等级1501来初始化映像的触发权重。然而,由于该禁用学习模式,学习设备可以不响应于在各个时间1510、1512、1562、1564处接收到纠正信号1511、1513、1563、1565来将触发权重从第一触发权重阈值1506改变。
图16示出了可用于表征由学习修改器设备发送的信号(本文称作“学习修改器信号”)内的数据的数据结构1600。数据结构1600可以包括格式部分1602、标识部分1604、时间部分1606以及学习速率修改器值1608。各部分1602-1606可以类似于上文参考图3A-图3B中的格式部分301、标识部分302以及时间部分351描述的例子。特别地,格式部分1602可以包括使得学习设备能够解码、读取、和/或存取数据结构1600中的其余数据的数据或信息,诸如,协议版本、加密类型、序列号、事项标识符(例如,可用于在不指示方向、次序或序列的情况下在各个发生数据与下一个发生数据之间进行区分的信息)等。标识部分1604可以指示发起该发生数据的设备(即,学习修改器设备)。时间部分1606可以指示发送学习修改器信号的时间,诸如,一天中的时间、星期几等。
学习速率修改器值1608可以指示接收学习修改器信号的学习设备是否应当增加或减小它们的学习速率。在一些实施例中,学习速率修改器值1608可以用作如上文所描述的在触发权重计算中的值,诸如,标量(scalar)或乘数(multiplier)等。例如,当值大于“1”时,学习速率修改器值1608可以是为了增加学习速率(即,更快速地调整触发权重)而在计算期间应用于映像的触发权重的标量。作为另一个例子,当值小于“1”时,学习速率修改器值1608可以是为了减小学习速率(即,更慢地调整触发权重)而在计算期间应用于映像的触发权重的标量。在一些实施例中,学习速率修改器值1608可以是在如上所描述的触发权重计算中使用的附加值。例如,用在映像的触发权重的计算中的各个变量(例如,增益、偏差等)可以加上(或减去)学习速率修改器值1608。
数据结构1600还可以包括各个可选的部分1610-1616。特别地,数据结构1600可以包括可选的学习模式生效设置部分1610,其可以指示接收信号内的数据结构1600的设备应当被置于启用学习模式(即,能够学习)中还是禁用学习模式(即,不能够学习)中。在一些实施例中,学习速率修改器值1608可被配置为以与学习模式生效设置1610相同的方式起作用。例如,学习速率修改器值1608的零值可以被学习设备用作将由学习设备计算的任何学习值或权重归零的乘数。作为另一个例子,学习速率修改器值1608的“1”值可以被学习设备用作仅维持由学习设备计算的任何常规学习值或权重的乘数。
数据结构1600可以包括可选的设备类型部分1612,其可以指示可以受学习修改器信号影响的学习设备的类别或类型。例如,设备类型部分1612可以指示智能TV、智能立体声音响系统、智能墙壁开关和/或智能灯中的任何或所有设备可以响应于接收到学习修改器信号来调整它们的个体学习模式和/或学习速率。在一些实施例中,设备类型部分1612可以指示接收学习修改器信号的这些设备中的所有设备或没有设备可以受影响,诸如,当相应的学习修改器设备被配置为不加选择地影响附近设备的学习时。在一些实施例中,设备类型部分1612可以指示可以受包括数据结构1600的学习修改器信号影响的特定设备标识符。例如,设备类型部分1612可以包括可被配置为利用关联的学习修改器信号内的信息的一系列设备标识符或机器接入控制(MAC)地址。
数据结构1600还可以包括可选的学习速率修改器类型部分1614,其可以指示可以受学习修改器信号影响的特定类型的学习计算。学习速率修改器类型部分1614可以指示仅有与回报模型和/或纠正模型有关的计算可以受学习速率修改器值1608影响。例如,学习速率修改器类型1614可以指示各个映像的触发权重可以仅响应于在触发模式期间接收到回报模型来以经调整的速率进行改变。作为另一个例子,学习速率修改器类型部分1614可以指示各个映像的触发权重可以仅响应于在触发模式期间接收到纠正模型来以经调整的速率进行改变。以这种方式,可以发送学习修改器信号以修改针对响应于触发来学习或忘却执行动作的速率。
数据结构1600还可以包括可选的传输频率部分1616,其指示学习修改器设备多长时间发送一次学习修改器信号。该频率信息可以由学习设备使用以确定它们是不再接收学习修改器信号(例如,在学习修改器设备的范围之外等)还是仅仅在信号之间的时段内。例如,当在由来自第一学习修改器信号的传输频率部分1616定义的时间窗内还没有接收到学习修改器信号时,智能TV可以确定它不再处于经修改的学习状态内。
图17A示出了用于学习设备响应于接收到来自学习修改器设备的信号来改变它的学习能力的实施例方法1700。特别地,学习设备可以针对输入的学习修改器信号来监控接收机电路,该学习修改器信号包括指示学习设备进入各个学习状态(诸如,增加的或减小的学习速率的时期和/或启用学习模式)的信息。如上所述,学习设备可被配置为在具有默认学习能力(诸如,通过使用由制造商或用户定义的学习速率)的默认学习状态中操作。然而,响应于接收到从附近学习修改器设备发送的学习修改器信号,学习设备可被配置为在具有不同的或经修改的学习能力的经修改的学习状态中操作。当学习设备停止接收学习修改器信号时,学习设备可以继续在默认学习状态中操作。
在方框1701中,学习设备的处理器可以针对输入信号来监控接收机电路,诸如通过监控输入消息缓冲器来检测从附近设备接收到的新的短程无线消息(例如,蓝牙分组)。此时,学习设备可以不利用经修改的学习能力,并且因此考虑在默认学习状态中操作。在判决方框1702中,学习设备的处理器可以确定所接收的信号是否是学习修改器信号。例如,学习设备可以使用在所接收的信号中的元数据、报头信息、和/或任何其它数据,其可以指示信号是否由学习修改器设备发送,或以其它方式包括可以改变学习设备被配置学习的方式的信息。响应于确定所接收的信号不是学习修改器信号(即,判决方框1702=“否”),学习设备可以继续针对输入信号进行监控以处理方框1701中的操作。
然而,响应于确定所接收的信号是学习修改器信号(即,判决方框1702=“是”),学习设备的处理器可以基于在方框1704中接收的信号来修改学习设备的一个或多个学习能力以在经修改的学习状态中操作。当在经修改的学习状态中时,学习设备可以改变存储在设备上的各个设置、配置、值或其它数据以便调整学习行为。下文参考图18A、图18B和图19描述了经修改的学习能力的具体例子。在一些实施例中,基于在方框1704中的操作中作出的调整,可以改写用于定义学习设备的当前学习能力的变量、设置、寄存器、和/或其它信息的默认值。例如,可以利用在所接收的学习修改器信号中指示的经修改的增益值(例如,1.5等)来改写在计算触发权重中使用的默认增益变量值(例如,1等)。然而,可以在晚些时候(诸如,当学习设备不再处于经修改的学习状态中时)存储和重载该默认信息。在一些实施例中,学习设备可以利用标记、系统变量、或其它存储信息来指示其是否在经修改的学习状态中操作。
在判决方框1706中,学习设备的处理器可以确定是否接收到后来的学习修改器信号。例如,学习设备可以针对输入信号来监控接收机电路,所述输入信号是在学习设备基于所接收的学习修改器信号修改其学习能力(即,进入经修改的学习状态)的时间之后收到的。学习设备可以确定是否在距接收到先前的学习修改器信号的特定时间频率内和/或特定时间窗内接收到后来的学习修改器信号。换言之,后来的学习修改器信号可能需要足够接近的一起被接收以维持该学习设备在经修改的学习状态中操作。例如,当在接收到第一学习修改器信号之后的预定义时间段(例如,一秒等)内接收第二学习修改器信号、在接收到第二学习修改器信号之后的该时间段内接收第三学习修改器信号等时,学习设备可以维持被配置为在经修改的学习状态中操作。在一些实施例中,如下文参考图17B描述的那样,每个后来的学习修改器信号均可以促使学习设备刷新或重置倒计时机制或计时器。
响应于确定接收到后来的学习修改器信号(即,判决方框1706=“是”),学习设备可以维持在具有经修改的学习能力的经修改的学习状态中并且可以继续判决方框1706中的操作。然而,响应于确定没有接收到后来的学习修改器信号或在接收到第一学习修改器信号之后的特定时间段内没有接收到后来的学习修改器信号(即,判决方框1706=“否”),在方框1708中学习设备的处理器可以重置学习设备的学习能力以在默认学习状态中操作。换言之,如果与用于创建触发与动作之间的关联(即,产生映像)和/或改变所学习的关联的触发权重(即,增加或减小所存储的映像的触发权重)的计算、例程、配置和/或其它功能相关联的信息(例如,变量、配置、模式、设置等)已经存在任何调整,则学习设备可以将经调整的信息返回到其默认的设置、状况、内容和/或值。例如,学习设备可以无效、移除、取消或以其它方式重置在学习修改器信号中接收的用于调整触发权重的计算的乘数。图18A、图18B和图19示出了学习设备响应于退出经修改的学习状态可能做出的特定调整。在各个实施例中,当学习设备重置学习能力时,为了改写在学习修改器信号中接收的数据,可以从学习设备的存储器(例如,非易失性的等)中恢复或加载存储在该存储器内的用于设置、配置、方程等的默认值。学习设备可以继续方框1701中的操作,以针对要处理的额外信号进行监控。
图17B示出了用于学习设备响应于接收到来自学习修改器设备的信号来改变其学习能力的实施例方法1750。方法1750可以类似于上文参考图17A描述的方法1700,除了方法1750可以包括用于确定何时利用经修改的学习能力的额外的操作。特别地,一旦响应于接收到学习修改器信号处于经修改的学习状态中,学习设备可以持续评估计时器(或其它计时机制,诸如计数器)以确定在时间段内是否接收到后来的学习修改器信号。当在由计时器定义的时间段间内没有接收到该后来的信号时,学习设备可以将其学习能力返回到它们的默认配置,并且因此不再在经修改的学习状态中操作。
作为说明,学习设备可以响应于基于从附近学习修改器设备接收的第一学习修改器信号来修改学习能力(例如,增加的学习速率等)来开启计时器。在计时器消逝之前,学习设备可以接收第二学习修改器信号并且可以重置该计时器。当用户物理地移动该学习修改器设备,使其远离在学习修改器设备的广播范围以外的学习设备(例如,到另一个房间或建筑中)时,学习设备可能将不会接收后来的学习修改器信号,并且最终该计时器的时间将消逝。因此,学习设备可以停止使用经修改的学习能力并且返回到默认学习状态(例如,默认学习速率等)。
在一些实施例中,计时器可以用于测量预定时间段,诸如针对所有学习设备的标准时段。在一些实施例中,对于不同的学习设备类型(例如,智能TV、智能立体声音响系统等)、制造商和/或学习修改器设备,时间段可以是不同的。在一些实施例中,时间段可以基于用于学习修改器信号的通信信道和/或通信协议的可靠性,诸如针对通过蓝牙发送的学习修改器信号的第一时间段和针对通过WiFi发送的学习修改器信号的第二时间段等。在一些实施例中,计时器的时间段可以基于在学习设备处接收的信号内的信息。例如,可以基于来自指示附近学习修改器设备的广播频率的学习修改器信号的数据来设置计时器的默认(或最大)值(即,由计时器表示的计时器时段)。
在方框1751中,当学习设备开始在经修改的学习状态中操作时,学习设备的处理器可以初始化计时器。该计时器可以初始地被设置为具有过期的或以其它方式未生效的设置,因此指示学习设备在其默认学习状态中操作而不是在经修改的学习状态中操作。如下文所描述的那样,该计时器可以响应于接收到来自学习修改器设备的学习修改器信号而被激活。一旦被激活并且未过期,计时器可以被学习设备有规律地调整(例如,增加、减小等)。在一些实施例中,计时器可被配置为将值向上增加到最大值或替代地可被配置为将值向下减小到最小值。例如,学习设备可以基于时钟信号(每毫秒、每秒等)增加(即,正计时)或减小(即,倒计时)该计时器的值。
在一些实施例中,学习设备可以利用多个计时器,每个计时器与不同的学习修改相关联。例如,学习设备可以使用第一计时器来指示学习设备是否在与第一映像有关的经修改的学习状态中操作以及使用第二计时器来指示学习设备是否在与第二映像有关的经修改的学习状态中操作。
在判决方框1752中,学习设备的处理器可以确定计时器的时间是否已经消逝。例如,当计时器被配置为倒计时至最小值时,当计时器的当前值等于或低于最小值(例如,零)时,学习设备可以确定计时器的时间已经消逝。作为另一个例子,当计时器被配置为正计时至最大值时,当计时器的当前值等于或高于最大值时,学习设备可以确定计时器的时间已经消逝。直到接收到第一学习修改器信号并且学习设备已经进入经修改的学习状态,学习设备可以总是确定该计时器已经到期就像它还没有被激活一样。
响应于确定该计时器的时间已经消逝(即,判决方框1752=“是”),学习设备的处理器可以重置该学习设备的学习能力以在如上所述的方框1708中的默认学习状态中操作。在一些实施例中,方框1708中的操作可以仅当学习设备已经修改了学习能力时执行。换言之,当计时器还没有被激活时方框1708中的操作可以是多余的并且因此可以被跳过。例如,当学习设备已经执行方法1750的操作环路的先前循环中的方框1708中的操作并且随后还没有接收到任何学习修改器信号(即,还没有进入经修改的学习状态)时,用于计算触发权重的变量值可以已经被设置为它们的默认值并且因此可能不需要再重新设置。
响应于确定该计时器的时间还没有消逝(即,判决方框1752=“否”),或方框1708中的操作已经被执行,学习设备的处理器可以在判决方框1754中确定是否接收到信号。例如,学习设备可以监控输入消息缓冲器以检测是否已经从附近设备接收到新的短程无线消息(例如,蓝牙分组)。响应于确定还没有接收到信号(即,判决方框1754=“否”),学习修改器设备可以继续判决方框1752中的用于评估计时器的操作。
响应于确定已经接收到信号(即,判决方框1754=“是”),学习设备的处理器可以在方框1756中评估所接收的信号以识别所接收的信号的源和/或消息类型。特别地,学习设备可以评估所接收的信号内表示的数据以识别如上文参考图16描述的各个数据元素。例如,学习设备可以解码、解析、读取、和/或分析所接收的信号内的数据以确定发送该信号的设备的身份标识(例如,设备标识符或ID等)、信号的类型(例如,事件报告消息、学习修改器信号等)、以及其它描述属性(例如,时间戳信息、格式、相关的协议、版本等)。在一些实施例中,学习设备可以基于包括在信号中的报头信息或元数据来识别源和/或消息类型。
如上所述,在判决方框1702中,学习设备的处理器可以确定所接收的信号是否是学习修改器信号。特别地,学习设备可以基于如上文参考方框1756中的操作描述的对所接收的信号的评估(例如,所识别的源和/或消息类型)来作出该确定。例如,学习设备可以响应于来自所接收的信号的设备标识符匹配于所存储的与经许可的学习修改器设备相关联的标识符来确定所接收的信号是学习修改器信号。作为另一个例子,学习设备可以基于识别对应于学习修改器信号的所接收的信号内的代码或描述符(例如,与学习修改器设备预先关联的信号类型码等)来确定所接收的信号是学习修改器信号。在一些实施例中,学习设备可以响应于识别指示学习修改的命令、代码、信息等(诸如,存在针对增益的乘数值)来确定所接收的信号是学习修改器信号。例如,当包括与禁用或启用学习模式和/或改变用于计算存储在学习设备上的映像的触发权重的变量值有关的脚本或命令时,可以确定信号为学习修改器信号。
响应于确定所接收的信号不是学习修改器信号(即,判决方框1702=“否”),学习设备的处理器可以在方框1758中将所接收的信号处理为事件报告消息。换言之,学习修改器设备可以通过执行如上文所述的图11的方法1100中的操作来处理所接收的信号。例如,学习设备可以获得事件并且基于所获得的基于所接收的信号的事件来产生模型。学习修改器设备可以继续判决方框1752中用于确定计时器是否已经到期的操作。在一些实施例中,学习设备可以响应于确定其不是学习修改器信号(即,判决方框1702=“否”)来忽略或以其它方式丢弃所接收的信号。
响应于确定所接收的信号是学习修改器信号(即,判决方框1702=“是”),学习设备的处理器可以在可选的判决方框1760中确定所接收的学习修改器信号是否适用于学习设备。可选的判决方框1760中的判决可以是可选的,这是因为在许多情况下,学习修改器信号可以促使任何学习设备进入经修改的学习状态。然而,取决于所接收的学习修改器信号包括的信息,学习设备可以确定所接收的学习修改器信号是不相关的。例如,基于在所接收的学习修改器信号中指示的设备类型(例如,智能TV、智能立体声音响系统等),学习设备可以确定该信号是不适用的,这是因为学习设备不是所指示的设备类型中的一种类型(例如,学习设备可能是智能灯等)。作为另一个例子,基于在所接收的学习修改器信号内的时间或格式信息,学习设备可以确定该信号是不适用的,这是因为该时间不在用于评估信号的学习设备的时间窗内和/或该格式与该学习设备不兼容。作为另一个例子,当所接收的学习修改器信号包括不匹配于存储在学习设备上的数据的密码或密钥(例如,信任代码)时,其可以是不适用的。
在一些实施例中,当学习设备不能够进入经修改的学习状态时,其可以确定所接收的学习修改器信号是不适用的。例如,当与学习设备的学习模式相关联的物理设置(例如,开关、切换、杠杆等)被设置为“关”时,具有该物理设置的学习设备不能够进入经修改的学习状态。
响应于确定所接收的学习修改器信号不适用于该学习设备(即,可选判决方框1760=“否”),学习修改器设备可以继续判决方框1702中用于评估计时器的操作。响应于确定所接收的学习修改器信号适用于该学习设备(即,可选判决方框1760=“是”),学习设备的处理器可以在方框1704中基于如上文所描述的所接收的信号修改学习设备的学习能力中的一种或多种能力以在经修改的学习状态中操作。
在方框1762中,学习设备的处理器可以针对经修改的学习状态来激活或重置计时器。例如,学习设备可以激活被配置为通过将当前计时器值设置为最大值而持续倒计时的计时器机制。当基于方法1750的先前循环该计时器已经被激活并且还没有到期时,学习设备可以将计时器的当前值重置为它的最大值或最小值,这取决于该计时器是被配置为随时间倒计时还是正计时。例如,当该计时器被配置为持续地倒计时、被激活、并且还没有到期(例如,计时器值还没有达到零值等)时,学习设备可以将该计时器的当前值重置为最大值。作为另一个例子,当计时器被配置为持续地正计时、被激活、并且还没有到期(例如,计时器值还没有达到最大值或顶值等)时,学习设备可以将计时器的当前值重置为它的最低值(例如,零)。学习修改器设备可以继续判决方框1702中的用于评估计时器的操作。
在一些实施例中,学习设备可以基于所接收的学习修改器信号的数据来设置计时器的参数。特别地,学习设备可以基于所接收的学习修改器信号内包括的传输频率数据来存储计时器的最大和最小值。换言之,发送所接收的学习修改器信号的学习修改器设备可以教导该学习设备何时预期下一个学习修改器信号。可以将该最大计时器值设置为传输频率,而将该最小计时器值设置为零值。例如,当在第一学习修改器信号中指示的传输频率是若干秒时,学习设备可以将该最大计时器值设置为该若干秒,从而使得如果学习设备在距离接收该第一学习修改器信号的该若干秒内没有接收到第二学习修改器信号则计时器的时间可以消逝,学习设备可以返回到默认学习状态。
图18A-图18B示出了用于学习设备响应于接收到来自学习修改器设备的信号来启用或禁用学习模式的实施例方法1800、1850。方法1800、1850类似于上文描述的方法1700、1750,并且特别地,图18A-图18B的方框1702和1751-1762中的操作可以类似于上文参考图17A-图17B描述的那些。然而,方法1800、1850可以包括用于阻止或允许由学习设备进行学习的激活/去激活操作模式的特定操作。特别地,学习设备可被配置为在可许可该学习设备学习各个触发和学习设备可以执行的动作之间的新关联(即,产生新映像)的学习模式中操作。当该学习模式被激活或启用时,该学习可以创建并存储可以立即执行或可以不立即执行的新关联。例如,新映像可以具有低于触发权重阈值的初始触发权重,从而使得学习设备可以不执行相关的动作直到遇到足够的回报模型以将触发权重提升到触发权重阈值之上。相反,当该学习模式被禁用或去激活时,学习设备不能够创建新关联(即,没有新映像可以被创建并存储)。
在一些实施例中,学习模式还可以控制学习设备是否可以调整映像的触发权重。例如,当在活动的或启用的学习模式中操作时,学习设备可以响应于接收到相关的回报模型来增加映像的触发权重和/或响应于接收到相关的纠正模型来减小该触发权重。然而,当该学习模式被禁用或去激活时,无论接收到回报模型还是纠正模型,学习设备都不能够改变映像的触发权重。在一些实施例中,学习模式的设置(例如,启用或禁用)可以指示学习设备是否能够创建新映像和学习设备是否能够调整现有映像的触发权重二者。
可以执行图18A以便将学习设备配置为只有当接收到来自附近学习修改器设备的学习修改器信号时才能够学习(即,启用其学习模式)。换言之,默认地,该学习设备可以不学习新映像和/或可以不调整现有映像的触发权重,但是可以简单地使用已经学习的映像和/或它们已经建立的触发权重。例如,当将学习修改器设备带入房间时,同样在该房间中的立体声音响系统学习设备可以被配置为启用学习模式,因而许可该立体声音响系统学习设备学习将智能墙壁开关“接通”事件信号与调谐至特定无线电台相关联。然而,当将该学习修改器设备移出房间时,该立体声音响系统学习设备不能够学习将智能落地灯“接通”事件信号与调高立体声音响系统上的音量相关联。作为另一个例子,当将该学习修改器设备带入房间时,立体声音响系统学习设备可以响应于接收到回报信号(例如,指示用户按压立体声音响系统上的“回报”按钮的信号等)来增加映像的触发权重。然而,当将该学习修改器设备移出房间时,该立体声音响系统学习设备可以不响应于接收到回报信号来增加映像的触发权重。
在图18A中,方框1702、1751-1762的操作可以类似于上文参考图17A-图17B描述的那样。响应于确定计时器的时间已经消逝(即,判决方框1752=“是”),在方框1802中学习设备的处理器可以禁用学习模式,诸如通过设置系统变量、标记或存储在学习设备上的其它信息。例如,学习设备可以设置指示学习设备在默认学习状态中的标记,并且因此可以不产生新映像和/或可以不调整所存储的映像的触发权重。在一些实施例中,当学习模式已经基于方法1800的先前循环被禁用时,该学习设备可以跳过方框1802中的操作,这是因为该操作是不必要的。学习设备可以响应于执行方框1802中的操作或响应于确定计时器的时间还没有消逝(即,判决方框1752=“否”)来执行判决方框1754中的操作。
响应于确定所接收的学习修改器信号适用于该学习设备(即,可选判决方框1760=“是”),学习设备可以在方框1804中启用学习模式,诸如通过设置系统变量、标记、或存储在学习设备上的其它信息。例如,学习设备可以设置指示学习设备在经修改的学习状态中的标记,并且因此可以产生新映像和/或可以调整所存储的映像的触发权重。响应于启用该学习模式,方法1800可以继续方框1762中的操作,以激活或重置针对经修改的学习状态的计时器。
图18B中示出的方法1850可以类似于图18A的方法1800,除了学习设备可以执行方法1850以便将该学习设备配置为只有当接收到来自附近学习修改器设备的学习修改器信号时才不能够学习(即,禁用其学习模式)。换言之,默认地,该学习设备能够学习新映像和/或改变已经学习的映像的触发权重。只有当学习设备正接收来自附近学习修改器设备的学习修改器信号时,才可以禁止学习设备学习。
在方法1850中,响应于确定计时器的时间已经消逝(即,判决方框1752=“是”),学习设备的处理器可以在方框1804中启用其学习模式,并且可以执行在判决方框1754中的操作。响应于确定所接收的学习修改器信号适用于该学习设备(即,可选判决方框1760=“是”),学习设备可以在方框1802中禁用该学习模式,并且可以在方框1762中激活或重置针对经修改的学习状态的计时器。
图19示出了用于学习设备响应于接收到来自学习修改器设备的信号通过调整用在计算触发权重中的变量值来改变其学习速率的实施例方法1900。方法1900类似于上文所描述的方法1700、1750,并且特别地,图19的方框1702和1751-1762中的操作可以类似于上文参考图17A-图17B描述的那些。然而,方法1900可以包括用于调整用在针对映像的触发权重的方程或计算中的变量值的特定操作。特别地,响应于确定计时器的时间已经消逝(即,判决方框1752=“是”),学习设备的处理器可以在方框1902中将用于计算映像的触发权重的变量值调整回它们的默认值。换言之,如果由于学习设备响应于接收到学习修改器信号进入经修改的学习状态,用于计算触发权重(例如,增益值等)的任何信息(例如,变量、配置、设置等)已经被调整,则学习设备可以将经调整的信息返回到其默认状况(例如,内容、值、设置等)。例如,学习设备可以无效、移除、取消或以其它方式重置添加到方程中以调整学习速率的乘数。在各个实施例中,默认值可以是可用于如上所述的方程内的默认的或原始的系数、变量值、以及其它数据。学习设备可以响应于执行方框1902中的操作或响应于确定计时器的时间还没有消逝(即,判决方框1752=“否”)来执行判决方框1754中的操作。
响应于确定所接收的学习修改器信号适用于该学习设备(即,可选判决方框1760=“是”),学习设备可以进入经修改的学习状态。因此在方框1904中,学习设备的处理器可以基于所接收的信号来调整用于计算映像的触发权重的变量值。例如,基于指示学习速率修改器值中的一个的数据(例如,正乘数、负乘数、加数等),学习设备可以将变量添加到用于计算触发权重的方程中和/或改变方程的预先存在的变量的值,以便促使学习设备以不同的方式计算触发权重。学习设备计算各个映像的触发权重的方式的这种变化可以改变各个映像的学习速率。例如,增加特定值可以增加学习设备学习执行与触发相关联的动作的速度。作为另一个例子,减小另外的值可以减慢学习设备学习执行与触发相关联的动作的速度。
在一些实施例中,基于所接收的学习修改器信号,学习设备可以作出调整从而使得只有特定类型的计算才可以被调整。例如,所接收的学习修改器信号可以包括指示只有回报信号和纠正信号才会被区分利用的学习速率修改器类型,促使学习设备调整针对回报或纠正触发权重的计算。响应于调整变量值,方法1900可以继续方框1762中的操作,以激活或重置针对经修改的学习状态的计时器。
前述方法描述和过程流程图仅提供为说明性例子且不旨在要求或暗示各个方面的步骤必须以所呈现的次序来执行。如所属领域的技术人员将了解的那样,可以以任何次序来执行前述方面中的步骤的次序。例如“随后”、“接着”、“下一个”等词语不旨在限制步骤的次序;这些词语仅用于引导读者通读方法的描述。此外,例如使用冠词“一(a)”、“一个(an)”或“所述”以单数形式对权利要求元素的任何提及不应解释为将所述元素限制于单数形式。
结合本文公开的各方面描述的各种说明性逻辑块、模块、电路和算法步骤可以实现为电子硬件、计算机软件,或两者的组合。为了清楚地说明硬件与软件的这种可交换性,上文已经大体上依照各种说明性部件、块、模块、电路和步骤的功能性对它们进行了描述。至于这样的功能是实现为硬件还是软件,取决于特定应用和施加于整个系统的设计约束。熟练的技术人员可以针对每一特定应用以变通的方式来实现所描述的功能,但这样的实现决策不应解释为导致与本发明的范围的偏离。
用于实现结合本文所公开的方面来描述的各种说明性逻辑、逻辑块、模块和电路的硬件(诸如,智能盒103)可以是利用被设计为执行本文所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑设备、分立门或晶体管逻辑、分立硬件部件或其任何组合来实现或执行的。通用处理器可以是微处理器,但在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器也可以实现为计算装置的组合,例如DSP与多处理器的组合、多个多处理器、结合DSP内核的一个或多个多处理器,或任何其它这样的配置。或者,一些步骤或方法可以由特定于给定功能的电路来执行。
在一个或多个示例性方面中,所描述的功能可以实现在硬件、软件、固件或其任何组合中。如果实现在软件中,那么可以将该功能作为一个或多个指令或代码存储在非暂时计算机可读存储介质、非暂时计算机可读介质或非暂时处理器可读存储介质上。本文公开的方法或算法的步骤可以体现在可驻留在非暂时计算机可读或处理器可读存储介质上的处理器可执行的软件模块中。非暂时计算机可读或处理器可读存储介质可以是可由计算机或处理器存取的任何存储介质。通过举例而非限制性的方式,这样的非暂时计算机可读或处理器可读介质可以包括RAM、ROM、EEPROM、FLASH存储器、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或可以用于存储呈指令或数据结构的形式的所需程序代码且可通过计算机存取的任何其它介质。如本文所使用的磁盘(Disk)与光盘(disc)包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘利用激光来光学地复制数据。上述内容的组合也应当包含于非暂时计算机可读和处理器可读介质的范围内。另外,方法或算法的操作可作为一个代码和/或指令或代码和/或指令的任何组合或集合而驻留在非暂时处理器可读介质和/或计算机可读介质上,所述介质可以并入到计算机程序产品中。
提供对所公开实施例的先前描述以使所属领域的任何熟练的技术人员能够制造或使用本发明。对这些实施例的各种修改对于所属领域的技术人员将是显而易见的,且在不脱离本发明的精神或范围的情况下,本文定义的一般原理可以应用于其它实施例。因此,本发明不旨在限于本文所展示的实施例,而是应被赋予与所附权利要求书以及本文公开的原理和新颖特征一致的最广范围。
Claims (30)
1.一种用于修改学习设备的分散式系统内的学习能力的方法,包括:
在学习设备处接收来自附近设备的信号;
在所述学习设备中基于所接收的信号内的数据来确定所接收的信号是否是学习修改器信号;以及
响应于确定所接收的信号是所述学习修改器信号来修改所述学习设备的一个或多个学习能力。
2.根据权利要求1所述的方法,还包括:
在所述学习设备中确定是否接收到后来的学习修改器信号;以及
响应于确定没有接收到后来的学习修改器信号来重置所述学习设备的经修改的一个或多个学习能力。
3.根据权利要求2所述的方法,其中:
修改所述学习设备的所述一个或多个学习能力包括启用所述学习设备的学习模式;以及
重置所述学习设备的经修改的一个或多个学习能力包括禁用所述学习设备的所述学习模式。
4.根据权利要求2所述的方法,其中:
修改所述学习设备的所述一个或多个学习能力包括禁用所述学习设备的学习模式;以及
重置所述学习设备的经修改的一个或多个学习能力包括启用所述学习设备的所述学习模式。
5.根据权利要求2所述的方法,其中:
修改所述学习设备的所述一个或多个学习能力包括基于所述学习修改器信号调整用于计算映像的触发权重的变量值;以及
重置所述学习设备的经修改的一个或多个学习能力包括将用于计算所述映像的所述触发权重的所述变量值调整为默认值。
6.根据权利要求2所述的方法,还包括:
初始化所述学习设备中的计时器;以及
响应于确定所接收的信号是所述学习修改器信号和确定接收到所述后来的学习修改器信号中的一项,激活或重置所述计时器;
其中,在所述学习设备中确定是否接收到后来的学习修改器信号包括在所述学习设备中确定在所述计时器到期之前是否接收到后来的学习修改器信号。
7.根据权利要求6所述的方法,其中,所述计时器是基于来自所述学习修改器信号的数据设置的。
8.根据权利要求1所述的方法,其中,所述学习修改器信号包括以下各项中的一项或多项:指示所述学习设备应当增加还是减小学习速率的学习速率修改器值;指示受到所述学习修改器信号影响的学习设备的类型的设备类型;指示所述学习设备应当启用还是禁用学习模式的学习模式生效设置;指示受到学习修改器信号影响的计算的特定类型的学习速率修改器类型;以及指示所述附近设备将多久发送一次所述学习修改器信号的传输频率。
9.一种计算设备,包括:
用于在学习设备的分散式系统内接收来自附近设备的信号的单元;
用于基于所接收的信号内的数据来确定所接收的信号是否是学习修改器信号的单元;以及
用于响应于确定所接收的信号是所述学习修改器信号来修改所述计算设备的一个或多个学习能力的单元。
10.根据权利要求9所述的计算设备,还包括:
用于确定是否接收到后来的学习修改器信号的单元;以及
用于响应于确定没有接收到所述后来的学习修改器信号来重置所述计算设备的经修改的一个或多个学习能力的单元。
11.根据权利要求10所述的计算设备,其中:
用于修改所述计算设备的所述一个或多个学习能力的单元包括启用所述计算设备的学习模式;以及
用于重置所述计算设备的经修改的一个或多个学习能力的单元包括禁用所述计算设备的所述学习模式。
12.根据权利要求10所述的计算设备,其中:
用于修改所述计算设备的所述一个或多个学习能力的单元包括禁用所述计算设备的学习模式;以及
用于重置所述计算设备的经修改的一个或多个学习能力的单元包括启用所述计算设备的所述学习模式。
13.根据权利要求10所述的计算设备,其中:
用于修改所述计算设备的所述一个或多个学习能力的单元包括基于所述学习修改器信号调整用于计算映像的触发权重的变量值;以及
用于重置所述计算设备的经修改的一个或多个学习能力的单元包括将用于计算所述映像的所述触发权重的所述变量值调整为默认值。
14.根据权利要求10所述的计算设备,还包括:
用于初始化计时器的单元;以及
用于响应于确定所接收的信号是所述学习修改器信号和确定接收到后来的学习修改器信号中的一项来激活或重置所述计时器的单元;
其中,用于确定是否接收到后来的学习修改器信号的单元包括用于确定在所述计时器到期之前是否接收到后来的学习修改器信号的单元。
15.根据权利要求14所述的计算设备,其中,所述计时器是基于来自所述学习修改器信号的数据设置的。
16.根据权利要求9所述的计算设备,其中,所述学习修改器信号包括以下各项中的一项或多项:指示所述计算设备应当增加还是减小学习速率的学习速率修改器值;指示受到所述学习修改器信号影响的学习设备的类型的设备类型;指示所述计算设备应当启用还是禁用学习模式的学习模式生效设置;指示受到学习修改器信号影响的计算的特定类型的学习速率修改器类型;以及指示所述附近设备将多久发送一次所述学习修改器信号的传输频率。
17.一种计算设备,包括:
处理器,其被配置为具有处理器可执行指令以执行包括以下的操作:
在学习设备的分散式系统内接收来自附近设备的信号;
基于所接收的信号内的数据来确定所接收的信号是否是学习修改器信号;以及
响应于确定所接收的信号是所述学习修改器信号来修改所述计算设备的一个或多个学习能力。
18.根据权利要求17所述的计算设备,其中,所述处理器被配置为具有处理器可执行指令以执行操作,所述操作还包括:
确定是否接收到后来的学习修改器信号;以及
响应于确定没有接收到后来的学习修改器信号来重置所述计算设备的经修改的一个或多个学习能力。
19.根据权利要求18所述的计算设备,其中,所述处理器被配置为具有处理器可执行指令以执行操作从而使得:
修改所述计算设备的所述一个或多个学习能力包括启用所述计算设备的学习模式;以及
重置所述计算设备的经修改的一个或多个学习能力包括禁用所述计算设备的所述学习模式。
20.根据权利要求18所述的计算设备,其中,所述处理器被配置为具有处理器可执行指令以执行操作从而使得:
修改所述计算设备的所述一个或多个学习能力包括禁用所述计算设备的学习模式;以及
重置所述计算设备的经修改的一个或多个学习能力包括启用所述计算设备的所述学习模式。
21.根据权利要求18所述的计算设备,其中,所述处理器被配置为具有处理器可执行指令以执行操作从而使得:
修改所述计算设备的所述一个或多个学习能力包括基于所述学习修改器信号调整用于计算映像的触发权重的变量值;以及
重置所述计算设备的经修改的一个或多个学习能力包括将用于计算所述映像的所述触发权重的所述变量值调整为默认值。
22.根据权利要求18所述的计算设备,还包括计时器,其中,所述处理器被配置为具有处理器可执行指令以执行操作,所述操作还包括:
初始化所述计时器;以及
响应于确定所接收的信号是所述学习修改器信号和确定接收到后来的学习修改器信号中的一项,激活或重置所述计时器;
其中,确定是否接收到后来的学习修改器信号包括确定在所述计时器到期之前是否接收到后来的学习修改器信号。
23.根据权利要求22所述的计算设备,其中,所述计时器是基于来自所述学习修改器信号的数据设置的。
24.根据权利要求17所述的计算设备,其中,所述学习修改器信号包括以下各项中的一项或多项:指示所述计算设备应当增加还是减小学习速率的学习速率修改器值;指示受到所述学习修改器信号影响的学习设备的类型的设备类型;指示所述计算设备应当启用还是禁用学习模式的学习模式生效设置;指示受到学习修改器信号影响的计算的特定类型的学习速率修改器类型;以及指示所述附近设备将多久发送一次所述学习修改器信号的传输频率。
25.一种非暂时性处理器可读存储介质,具有存储于其上的处理器可执行指令,所述处理器可执行指令被配置为促使计算设备的处理器执行包括以下的操作:
在学习设备的分散式系统内接收来自附近设备的信号;
基于所接收的信号内的数据来确定所接收的信号是否是学习修改器信号;以及
响应于确定所接收的信号是所述学习修改器信号来修改所述计算设备的一个或多个学习能力。
26.根据权利要求25所述的非暂时性处理器可读存储介质,其中,所存储的处理器可执行指令被配置为促使所述计算设备的所述处理器执行操作,所述操作还包括:
确定是否接收到后来的学习修改器信号;以及
响应于确定没有接收到所述后来的学习修改器信号来重置所述计算设备的经修改的一个或多个学习能力。
27.根据权利要求26所述的非暂时性处理器可读存储介质,其中,所存储的处理器可执行指令被配置为促使所述计算设备的所述处理器执行操作从而使得:
修改所述计算设备的所述一个或多个学习能力包括启用所述计算设备的学习模式;以及
重置所述计算设备的经修改的一个或多个学习能力包括禁用所述计算设备的所述学习模式。
28.根据权利要求26所述的非暂时性处理器可读存储介质,其中,所存储的处理器可执行指令被配置为促使所述计算设备的所述处理器执行操作从而使得:
修改所述计算设备的所述一个或多个学习能力包括禁用所述计算设备的学习模式;以及
重置所述计算设备的经修改的一个或多个学习能力包括启用所述计算设备的所述学习模式。
29.根据权利要求26所述的非暂时性处理器可读存储介质,其中,所存储的处理器可执行指令被配置为促使所述计算设备的所述处理器执行操作从而使得:
修改所述计算设备的所述一个或多个学习能力包括基于所述学习修改器信号调整用于计算映像的触发权重的变量值;以及
重置所述计算设备的学习能力中经修改的一个或多个学习能力包括将用于计算所述映像的所述触发权重的所述变量值调整为默认值。
30.根据权利要求26所述的非暂时性处理器可读存储介质,其中,所存储的处理器可执行指令被配置为促使所述计算设备的所述处理器执行操作,所述操作还包括:
初始化计时器;以及
响应于确定所接收的信号是所述学习修改器信号和确定接收到后来的学习修改器信号中的一项,激活或重置所述计时器;
其中,确定是否接收到后来的学习修改器信号包括确定在所述计时器到期之前是否接收到后来的学习修改器信号。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361827141P | 2013-05-24 | 2013-05-24 | |
US61/827,141 | 2013-05-24 | ||
US14/286,515 US20140351182A1 (en) | 2013-05-24 | 2014-05-23 | Modifying Learning Capabilities of Learning Devices |
US14/286,515 | 2014-05-23 | ||
PCT/US2014/039469 WO2014190340A2 (en) | 2013-05-24 | 2014-05-24 | Modifying learning capabilities of learning devices |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105359170A true CN105359170A (zh) | 2016-02-24 |
Family
ID=51134267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480038128.5A Pending CN105359170A (zh) | 2013-05-24 | 2014-05-24 | 修改学习设备的学习能力 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20140351182A1 (zh) |
EP (1) | EP3005252A2 (zh) |
JP (1) | JP2016524226A (zh) |
KR (1) | KR20160016875A (zh) |
CN (1) | CN105359170A (zh) |
WO (1) | WO2014190340A2 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107277055A (zh) * | 2017-08-03 | 2017-10-20 | 杭州安恒信息技术有限公司 | 一种基于离线缓存的网站防护技术 |
CN111277246A (zh) * | 2018-12-04 | 2020-06-12 | 南亚科技股份有限公司 | 驱动电平自动调整系统、方法及电脑可读取的记录媒体 |
CN111406266A (zh) * | 2017-12-01 | 2020-07-10 | 瑞典爱立信有限公司 | 选择学习模型 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747554B2 (en) | 2013-05-24 | 2017-08-29 | Qualcomm Incorporated | Learning device with continuous configuration capability |
US9679491B2 (en) | 2013-05-24 | 2017-06-13 | Qualcomm Incorporated | Signaling device for teaching learning devices |
US9509763B2 (en) | 2013-05-24 | 2016-11-29 | Qualcomm Incorporated | Delayed actions for a decentralized system of learning devices |
US10540597B1 (en) | 2014-06-25 | 2020-01-21 | Bosch Sensortec Gmbh | Method and apparatus for recognition of sensor data patterns |
US9898175B2 (en) * | 2014-08-05 | 2018-02-20 | Fibar Group S.A. | Home network manager for home automation |
US20180018565A1 (en) * | 2016-07-14 | 2018-01-18 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device, display system, and electronic device |
KR20200100367A (ko) * | 2019-02-18 | 2020-08-26 | 삼성전자주식회사 | 루틴을 제공하기 위한 방법 및 이를 지원하는 전자 장치 |
WO2020217762A1 (ja) * | 2019-04-25 | 2020-10-29 | ソニー株式会社 | 通信装置、通信方法、及び通信プログラム |
CN112270403B (zh) * | 2020-11-10 | 2022-03-29 | 北京百度网讯科技有限公司 | 构建深度学习的网络模型的方法、装置、设备和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202003556U (zh) * | 2010-10-13 | 2011-10-05 | 蒋水秀 | 基于智能家居控制系统项目的dsp应用技术教学设备 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5398302A (en) * | 1990-02-07 | 1995-03-14 | Thrift; Philip | Method and apparatus for adaptive learning in neural networks |
US6834208B2 (en) * | 1999-12-30 | 2004-12-21 | Microsoft Corporation | Method and apparatus for providing distributed control of a home automation and control system |
JP2003340760A (ja) * | 2002-05-20 | 2003-12-02 | Sony Corp | ロボット装置およびロボット制御方法、記録媒体、並びにプログラム |
US7734749B2 (en) * | 2002-10-16 | 2010-06-08 | Xerox Corporation | Device model agent |
US7446671B2 (en) * | 2002-12-19 | 2008-11-04 | Koninklijke Philips Electronics N.V. | Method of configuration a wireless-controlled lighting system |
US7113773B2 (en) * | 2003-05-16 | 2006-09-26 | Qualcomm Incorporated | Reliable reception of broadcast/multicast content |
US7039397B2 (en) * | 2003-07-30 | 2006-05-02 | Lear Corporation | User-assisted programmable appliance control |
CN101006480B (zh) * | 2004-08-24 | 2013-03-27 | 皇家飞利浦电子股份有限公司 | 与待控制设备相关联的物体的定位方法和控制该设备的方法 |
US8156500B2 (en) * | 2005-07-01 | 2012-04-10 | Microsoft Corporation | Real-time self tuning of planned actions in a distributed environment |
US8417481B2 (en) * | 2008-09-11 | 2013-04-09 | Diane J. Cook | Systems and methods for adaptive smart environment automation |
JP5330138B2 (ja) * | 2008-11-04 | 2013-10-30 | 本田技研工業株式会社 | 強化学習システム |
US8249117B2 (en) * | 2009-12-21 | 2012-08-21 | Qualcomm Incorporated | Dynamic adjustment of reordering release timer |
CN102378394B (zh) * | 2010-08-12 | 2015-04-15 | 华为技术有限公司 | 一种网络连接方法和系统 |
US9251463B2 (en) * | 2011-06-30 | 2016-02-02 | Wsu Research Foundation | Knowledge transfer in smart environments |
US8622314B2 (en) * | 2011-10-21 | 2014-01-07 | Nest Labs, Inc. | Smart-home device that self-qualifies for away-state functionality |
EP4224800A1 (en) * | 2011-10-21 | 2023-08-09 | Google LLC | Automated control-schedule acquisition within an intelligent controller |
US9247549B2 (en) * | 2012-01-25 | 2016-01-26 | Electronics And Telecommunications Research Institute | Apparatus and method for SHF/EHF band wireless transmission on multi-level cell configuration |
US9143402B2 (en) * | 2012-02-24 | 2015-09-22 | Qualcomm Incorporated | Sensor based configuration and control of network devices |
US9357385B2 (en) * | 2012-08-20 | 2016-05-31 | Qualcomm Incorporated | Configuration of a new enrollee device for use in a communication network |
US8620841B1 (en) * | 2012-08-31 | 2013-12-31 | Nest Labs, Inc. | Dynamic distributed-sensor thermostat network for forecasting external events |
US9679491B2 (en) * | 2013-05-24 | 2017-06-13 | Qualcomm Incorporated | Signaling device for teaching learning devices |
US20140351181A1 (en) * | 2013-05-24 | 2014-11-27 | Qualcomm Incorporated | Requesting proximate resources by learning devices |
US9509763B2 (en) * | 2013-05-24 | 2016-11-29 | Qualcomm Incorporated | Delayed actions for a decentralized system of learning devices |
US9747554B2 (en) * | 2013-05-24 | 2017-08-29 | Qualcomm Incorporated | Learning device with continuous configuration capability |
US9438440B2 (en) * | 2013-07-29 | 2016-09-06 | Qualcomm Incorporated | Proximity detection of internet of things (IoT) devices using sound chirps |
US9313320B2 (en) * | 2014-02-19 | 2016-04-12 | Qualcomm Incorporated | Automatic switching of modes and mode control capabilities on a wireless communication device |
US9313863B2 (en) * | 2014-06-02 | 2016-04-12 | Qualcomm Incorporated | Methods, devices, and systems for controlling smart lighting objects to establish a lighting condition |
US20160121487A1 (en) * | 2014-11-03 | 2016-05-05 | Qualcomm Incorporated | Communicating Configurable Instruction Sets to Robots for Controlling Robot Behavior |
US9377525B1 (en) * | 2014-12-12 | 2016-06-28 | Qualcomm Incorporated | Methods and systems for assisting positioning determination of a mobile device |
US9501061B2 (en) * | 2015-02-24 | 2016-11-22 | Qualcomm Incorporated | Near-flight testing maneuvers for autonomous aircraft |
US10250403B2 (en) * | 2015-11-23 | 2019-04-02 | International Business Machines Corporation | Dynamic control of smart home using wearable device |
US9473514B1 (en) * | 2016-02-04 | 2016-10-18 | International Business Machines Corporation | Efficient sensor data delivery |
-
2014
- 2014-05-23 US US14/286,515 patent/US20140351182A1/en not_active Abandoned
- 2014-05-24 WO PCT/US2014/039469 patent/WO2014190340A2/en active Application Filing
- 2014-05-24 EP EP14736079.6A patent/EP3005252A2/en not_active Withdrawn
- 2014-05-24 KR KR1020157036201A patent/KR20160016875A/ko not_active Application Discontinuation
- 2014-05-24 JP JP2016515138A patent/JP2016524226A/ja not_active Ceased
- 2014-05-24 CN CN201480038128.5A patent/CN105359170A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202003556U (zh) * | 2010-10-13 | 2011-10-05 | 蒋水秀 | 基于智能家居控制系统项目的dsp应用技术教学设备 |
Non-Patent Citations (1)
Title |
---|
JASPAL S SANDHU ET AL: "wireless sensor networks for commercial lighting control:decision making with multi-agent systems", 《AAAI WORKSHOP ON SENSOR NETWORKS》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107277055A (zh) * | 2017-08-03 | 2017-10-20 | 杭州安恒信息技术有限公司 | 一种基于离线缓存的网站防护技术 |
CN107277055B (zh) * | 2017-08-03 | 2020-01-03 | 杭州安恒信息技术股份有限公司 | 一种基于离线缓存的网站防护方法 |
CN111406266A (zh) * | 2017-12-01 | 2020-07-10 | 瑞典爱立信有限公司 | 选择学习模型 |
CN111277246A (zh) * | 2018-12-04 | 2020-06-12 | 南亚科技股份有限公司 | 驱动电平自动调整系统、方法及电脑可读取的记录媒体 |
CN111277246B (zh) * | 2018-12-04 | 2023-03-31 | 南亚科技股份有限公司 | 驱动电平自动调整系统、方法及电脑可读取的记录媒体 |
Also Published As
Publication number | Publication date |
---|---|
US20140351182A1 (en) | 2014-11-27 |
JP2016524226A (ja) | 2016-08-12 |
EP3005252A2 (en) | 2016-04-13 |
KR20160016875A (ko) | 2016-02-15 |
WO2014190340A2 (en) | 2014-11-27 |
WO2014190340A3 (en) | 2015-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105359170A (zh) | 修改学习设备的学习能力 | |
CN105359171A (zh) | 具有持续配置能力的学习设备 | |
CN105408920A (zh) | 用于教导学习设备的信号传输设备 | |
JP6832389B2 (ja) | 音響的存在検証を伴う遠隔警報解除 | |
US9509763B2 (en) | Delayed actions for a decentralized system of learning devices | |
US9716675B2 (en) | Method and system for controlling internet of things (IoT) device | |
CN102136184B (zh) | 被控设备与遥控器之间的配对方法及被控设备 | |
US20150340909A1 (en) | System and Method for a Self-system Analysis in a Wireless Power Transmission Network | |
US9879944B1 (en) | Systems and methods for cooperation among weapons, holsters, and recorders | |
WO2016073103A1 (en) | Communicating configurable instruction sets to robots for controlling robot behavior | |
CN103765339A (zh) | 用于设备的早期引导的自适应感测 | |
CN107277746A (zh) | 用于处理在信标中操作的终端的位置信息的方法和设备 | |
TW201336324A (zh) | 無線麥克風對頻系統與方法 | |
KR102269473B1 (ko) | 제어 장치, 그의 제어 방법 및 통합 제어 시스템 | |
CN104009837A (zh) | 密钥更新方法、装置及终端 | |
CN117529754A (zh) | 用于设备上人员辨识和智能警报的供应的系统和方法 | |
JP7326903B2 (ja) | 情報処理装置及びプログラム | |
CN110611903B (zh) | 一种设备绑定方法、装置、设备及存储介质 | |
KR20210007654A (ko) | 무인기 기반 무선 센서 네트워크의 운영방법 및 장치 | |
Moseley | Creating an ambient intelligence network using insight and merged reality technologies | |
CN105356915B (zh) | 无线投影简报接收器及无线投影简报接收器的操作方法 | |
KR102469981B1 (ko) | 분할 기능을 이용한 양방향 자동 보안 로그인 처리 방법 및 시스템 | |
Farahani | An Alternating Qubit Protocol and Its Correctness Checking | |
WO2022046088A1 (en) | Home toy magic wand management platform interacting with toy magic wands of visitors | |
JP2021105270A (ja) | スマートエントリシステム、制御装置、携帯装置、報知装置、情報処理装置、およびコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20190301 |
|
AD01 | Patent right deemed abandoned |