智能家居用户行为预测的方法研究
2016-04-06吕培卓戴洪涛河北冀州中学河北衡水053000
吕培卓 戴洪涛(河北冀州中学,河北 衡水 053000)
智能家居用户行为预测的方法研究
吕培卓 戴洪涛
(河北冀州中学,河北 衡水 053000)
摘 要:随着物联网技术、大数据计算、传感器技术等新兴技术的发展,智能家居更加贴近人类生活。对用户未来活动的预知,将使家居生活更加灵活和智能。本文基于隐马尔科夫模型(hidden Markov model, HMM),提出了对用户家居生活行为预测的方法。首先本文阐述了用户行为预测的方法架构,随后从相似数据筛选、基于HMM的行为模式发现和预测等多个方面详述了用户行为预测的方法。此预测方法能够为用户日常家居生活提供便捷、高效的生活服务。
关键词:智能家居;用户行为预测;隐马尔科夫模型;数据挖掘
1 概述
近年来,随着物联网技术的快速发展,社会上以物联网为中心衍生出来许多相关技术。利用无线传感技术和计算机网络技术,将小区内的普通底层硬件设备(冰箱、台灯、热水器等)聚合在一起,形成一整套智能家居体系;结合大数据技术,将与用户日常行为相关的海量数据存储在云平台,保证数据稳定且高效的存储。通过对用户日常生活行为的挖掘,可以让家居系统更好地了解用户生活习惯,并根据用户习惯设计电器开关时间、电器启动用量,以达到简化用户生活、环保、低功耗的目的。在智能家居领域,用于用户行为预测的常见方法有人工神经网络、支持向量机、决策树分类方法等。本文采用了隐马尔可夫模型的算法,利用隐马尔科夫模型,对每个用户的历史行为数据建模,实现用户的行为挖掘和预测的功能,为智能家居中家电设备的控制提供依据。本文首先介绍了用户行为预测方法的架构,随后详细介绍了方法的具体实现,包括利用余弦相似性筛选与当前行为习惯相似的数据集和基于HMM的用户行为预测的方法等;最后通过实例,展示了在智能家居系统中其应用的方法,为用户日常家居生活提供便捷的生活服务。
2 用户行为预测方法架构
研究表明用户的日常行为中包含明显的行为模式。假设一家中3个用户(爸爸、妈妈和小明),工作日妈妈每天6点钟起床为全家做早餐;爸爸6点钟起床打开热水器,待30分钟后洗漱;小明7点钟起床吃早餐;早晨8点钟大家都已经离开了家上班或者上学。本文的工作重点是对用户的历史行为数据建模,挖掘用户的行为特征,并预测在时间t用户将会有什么行为,从而为智能家居中家电设备的控制找到依据。图1显示了单用户行为预测的模型框架,主要包括以下3个部分:(1)相似数据筛选:用户的行为随着时间可能发生变化,本模块将从历史行为数据中,挑选和当前用户行为习惯相关的数据;(2)当前的行为模式发现:通过筛选的数据集,挖掘用户的行为模式,发现时间和用户行为的关系,获得用户日常行为习惯的时域特征;(3)行为预测:基于用户行为的时域特征,预测用户未来的一个时间点的行为。后文将具体介绍在智能家居下,用户行为预测实现的方法。
图1 用户行为预测的模型架构Figure 1. Structure of our model for user behavior prediction
3 隐马尔科夫模型
自20世纪80年代以来,隐马尔可夫模型被应用于语音识别,取得重大成功。到了90年代,HMM还被引入计算机文字识别和移动通信核心技术“多用户的检测”。近年来,HMM在生物信息科学、故障诊断等领域也开始得到应用。该模型具有研究透彻、算法成熟、效率高、效果好、易于训练的优点。隐马尔可夫模型作为一种统计分析模型,用于分析由马尔科夫过程产生的序列,并且序列中又引入了一个隐含状态,是一个双重随机过程。一般的讲,隐马尔可夫模型可以用五个元素来描述,包括2种状态变量(隐状态和可观察状态)和3个概率矩阵。图2为一个HMM模型的实例。图中的每个节点代表一个随机变量,随机变量s(t)是在时间t的隐状态,在图2的模型中s(t)∈{s1,s2,s3}随机变量o(t)是在时间t的可观察状态,在图2的模型中o(t)∈{o1,o2,o3,o4}。此外,正如图2的箭头所示,隐马尔可夫模型仍然包含2类条件概率:
图2 隐马尔科夫模型实例Figure 2. Example of hidden Markov model
表1 用户行为与数值的映射关系Table 1. Map between user behavior and value
所有变量的联合概率分布,可以简化为:
引入符号λ={A,B,π}来描述隐马尔可夫模型,其中:隐状态转移概率矩阵A是一个N×N矩阵,且Aij=p(Sj∶t+1|Si∶t),1≤i,j,≤N;混杂矩阵B是一个N×M矩阵,且Bij=p(Oi∶t|Sj∶t),1≤i≤M,1≤j≤N;初始状态概率矩阵π是一个1×N向量,且π=[p(s1),p (s2),…p(sN)](N是隐状态数,M是观察状态数)。
隐马尔可夫模型主要关注以下3个问题,这些问题同样关乎到下文用户行为习惯预测的实现。
(1)评估问题(evaluation):给定观测序列(O1O2…Ot)和模型参数λ={A,B,π},怎样有效计算这组观测序列的概率p(O1O2…Ot|λ)。此问题通常通过利用前向算法(forward algorithm)实现,算法中引入迭代计算,降低了算法的复杂度。
(2)解码问题(decode):给定观测序列O1O2…Ot和模型参数λ={A,B,π},怎样寻找最优的隐状态序列:
此问题需要从所有可能的隐状态s1∶t序列中,找到一个序列使得概率p(s1∶t|λ,o1∶t)取最大值。在这类问题通常利用维特比(Viterbi)算法来实现。
(3)学习问题(learning):充分利用所有已知的观察序列O1O2…Ot,通过多次训练,使得λ={A,B,π}能够更好的数据集的特征:
解决此问题通常使用Baum-Welch算法。
4 基于HMM的用户行为预测方法
4.1相似数据筛选
为了挖掘时间和用户行为的关系,将单用户每天的行为数据,转化为一个向量Day。将用户常见的行为映射为数值1至N(N≥1),比如1表示打开热水器、2表示关闭煤气灶等,见表1。以15min为粒度,将全天划分为96个时隙。默认每个时隙k,单用户只会发生一种行为,每个时隙k将对应一个数值x,组成一个96维的向量Day[k]=x。若15min内连续有2或以上的行为发生,则选择出现频次最高的动作x,作为时隙k的取值Day[k]=x。(此外,引入的数值0表示此15分钟内用户没有任何行为)。96维的向量Day的格式如下:Day=(1,2,3,5,4,…,x,y…0,10,12),1≤x,y≤N。用户行为可能随着时间的变化而发生改变。比如暑假期间,小明行为习惯要明显区别与上学期间。准确识别出用户当前的行为模式,明确这种行为模式持续了多久,即包含用户当前行为模式的数据集的时间窗的长度,是非常重要的。鉴于以上原因以及防止模型的过度拟合,在数据筛选时:(a)考虑到一周内不同天,用户行为可能存在的差异,则区分用户一周内每一天的数据;(b)识别包含当前行为模式的时间窗的长度,比如,今天是第i个周一Dayi,找到之前有几个周一的用户行为和今天相似。方法如下:通过余弦相似性计算Dayi和Dayi-1相似度σij。如果σij大于一个阈值Θ,窗的长度继续加一;否则,将跳过Dayi-1,比较Dayi与Dayi-2的相似性σij。如果连续m天,σij均低于Θ,时间窗的长度将不再增加。筛选的数据集中仅包含σij高于阈值Θ的数据。
图4 表征时间和用户行为关系的HMM实例Figure 4. An HMM representing user behavior and their relationships with time slots of a day
4.2基于HMM的行为预测模型定义
借助HMM对单用户的行为建模,发现用户当前的行为模式,HMM模型λ={A,B,π}定义如下:(1)隐状态:用户的N种行为,以及表示用户没有任何行为的状态“0”;(2)可观测状态:用户每天的96个时隙;(3)初始状态概率矩阵π:每种用户行为发生的概率。借助筛选的数据集,计算每种动作x发生的概率p(x),x∈[1,N];(4)转移矩阵A:不同用户行为间转移的概率,即已知状态i(打开洗衣机),状态j(打开扫地机器人)发生的概率aij=p(Sj∶t+1|Si∶t),1≤i,j,≤N;(5)混杂矩阵B:已知用户行为j已经发生,用户处于特定时隙i的概率bij=p(Oi∶t|Sj∶t),1≤i≤96,1≤j≤N。图4为用于行为预测的HMM实例。模型中包含包含5个时隙,并且隐状态有4种用户行为为例。
4.3用户行为预测
预测d天用户在每个时隙可能的行为时,首先要利用用户的d-1天的历史数据,筛选出相似数据,利用它们更新模型λ={A,B,π}。通过模型λ={A,B,π}表征当前用户的行为模式。基于此模型,可以展开未来一天的各个时隙的用户行为预测。结合HMM模型的原理,预测的本质是:已知一个HMM模型λ={A,B,π},找到特定时隙k(观察状态)最有可能的用户行为i(隐状态)。这是一个HMM的解码问题(decode)。比如,今天是2015年11月15日星期日,想预知用户明天的6∶00-7∶00的日常行为。利用维特比算法,结合反映用户当前行为特征的周一的马尔科夫模型λ={A,B,π},识别满足6∶00-7∶00这个时间段,概率最高的一组隐状态序列(用户行为序列)。这组用户行为序列,将是用户行为预测的结果,此结果将为智能家居中家电设备的控制找到依据。实际应用中,可以为家庭中的多用户分别建模,为多用户的日常生活预测提供了可能性,解决了多人的室内环境中建模和预测的局限性。
结语
在现有的智能家居体系下,本文提出了隐马尔可夫模型为基础的用户行为预测的方法。为了保证模型的准确性和鲁棒性,本文利用余弦相似性对历史数据进行数据预处理;随后利用隐马尔可夫模型挖掘用户行为的时域关系,基于此,提供了用户行为预测的方法。此方法可以对家庭中的多用户分别建模和预测,解决了多人在室内环境中建模和预测的局限性;本方法无需复杂的模型训练,算法复杂度低。为推进家居生活的智能化具有一定的理论价值和现实意义。将模型应用到实际的智能家居中,对其稳定性和可行性进行评估是我们后续的研究工作。
参考文献
[1]钟依平.智能家居借势提速发展[N].中国建设报,2013.
[2]孔英会.智能家居中用户行为模式挖掘及控制策略研究[J].电视技术,2013,37(24).
[3]牛邵峰.一种基于云端数据仓库的智能家居用户行为模式研究[D].北京邮电大学,2013.
[4] Fatima I. A unified framework for activity recognition-based behavior analysis and action prediction in smart homes[J].Sensors, 2013, 13(02): 2682-2699.
[5]李勇,桑艳艳.网络文本数据分类技术与实现算法[J].情报学报, 2002 (01):21-23.
[6] Chiang Y T, Hsu J Y, Lu C H, et al. Interaction models for multiple-resident activity recognition in a smart. home[C]// Intelligent Robots and Systems (IROS), 2010 IEEE/RSJ International Conference on. IEEE, 2010: 3753-3758.
中图分类号:TP39
文献标识码:A