一种基于序列数据进行预测的方法及装置的制造方法

文档序号:9375995阅读:384来源:国知局
一种基于序列数据进行预测的方法及装置的制造方法
【技术领域】
[0001] 本发明涉及互联网技术领域,尤其涉及一种基于序列数据进行预测的方法及装 置。
【背景技术】
[0002] 在移动互联网应用中,数据量往往随着用户数量的增长呈指数级增长。移动互联 网数据通常具有覆盖用户广、动态变化大、关联性强等特点。移动互联网数据的这些特性为 数据应用提出一个难题,虽然拥有海量数据,但是却面临无从下手的窘境。因此一个须待解 决的问题是,如何能够让系统自动从数据中抽取有用信息以构建动态模型,而非人为事先 指定数据之间的关联。这样所构建的模型能够在更广泛的领域中被采纳和应用。
[0003] 传感器数据流和用户行为数据成为现今物联网和移动互联网上的主要数据来源, 这些数据主要以序列的方式呈现。在不同的移动应用中所采集到的行为数据含义也有所不 同,可以是用户的地理位置坐标,签到记录,手机程序使用记录等。这些数据随着时间的变 化而不断更新。
[0004] 同时,因为某些特定的原因或情景,在这些序列数据中也会体现出特定的序列模 式。例如,一个人在工作日的移动行为可以在签到序列中表现出{:家,地铁站,公司,地铁 站,家}这样的特定序列模式,其产生的原因是因为工作这一特定情境;而在周末的休闲购 物,则可能产生{:家,商场,超市}这样的序列模式。
[0005] 如果能够构建一种基于序列的动态模型,用以表达数据的潜在成因及其变化关 系,那么便可以通过该模型实现对用户行为模式的抽象描述。对于在线用户行为预测,产品 推荐以及群体行为趋势预测等场景提供有效的解决方案。
[0006] 现有技术中提出了基于隐马尔科夫链(Hidden Markov Chain)的建模算法,为了 简化模型构建,通常采用一阶马尔科夫链来建模动态序列,具体如下:
[0007] 用隐藏状态变量表示一些不可直接观测到的状态,对于这些状态的计算通过系统 推理所得。如图1所示,每一个隐藏状态变量Xt只由其前一个状态变量Xt-I所决定,与更 早的状态无关。例如,今天下雨的状态仅与昨天下雨有关,而与前天的天气无关。隐藏状态 之间通过一个转移矩阵P(Xt IXt-I)来表明各个隐藏状态从当前状态转移到下一个状态的 可能概率。
[0008] 对于所观测到的实际数据,则用一个可观测变量0来表示。在同一时刻,每一个可 观测变量对应一个隐藏状态变量。例如,可以观测到的状态为路上的行人是否打伞这一特 征,而隐藏的状态为天气。系统要做的就是利用观测路人打伞的结果去推断当前的天气。可 观测变量和隐藏状态变量之间的关系,可以用一个输出矩阵P(OtlXt)来表明在一个隐藏 状态下,可能观察到的实际状态的概率。
[0009] 采用一阶马尔科夫链构建的模型主要可以用于以下几个方面:
[0010] a.已知模型参数P(Xt lxt-?)和P(0t Ixt),计算某一特定输出序列概率 P (01,02,…,Ot);
[0011] b.已知模型参数,寻找最可能产生某一特定输出序列的隐藏状态序列{XI,X2,··· ,xt};
[0012] c.已知可观测序列{01,02,···,0?},寻找最可能的状态转移及输出概率 p(xt|xt-i)和 p(ot|xt)。
[0013] 现有技术的不足主要在于,一阶马尔科夫链这种理想化的建模方式虽然简化了计 算过程,但并未准确的表述现实应用中的变量影响情况,难以保证数据分析的准确性,使用 局限性较大。

【发明内容】

[0014] 本发明提供一种基于序列数据进行预测的方法及装置,用以建立序列数据之间的 联系,提高对序列数据预测的准确性。
[0015] 本发明实施例提供的具体技术方案如下:
[0016] 第一方面,本发明提供了一种基于序列数据进行预测的方法,包括:
[0017] 获取终端中存储的第一序列数据;
[0018] 根据预设的采样方法,从所述第一序列数据中获取序列模式,所述序列模式为所 述第一序列数据中满足预设条件的数据元素的组合;
[0019] 利用序列模式图对所述序列模式进行匹配,获取匹配的结果;
[0020] 根据所述匹配的结果,对所述第一序列数据中即将出现的元素进行预测。
[0021] 结合第一方面,在第一方面的第一种可能的实现方式中,所述利用序列模式图对 所述序列模式进行匹配之前,还包括:
[0022] 获取预设数量的历史序列数据;
[0023] 确定所述历史序列数据包含的基元序列模式,所述基元序列模式至少为两个,所 述基元序列模式为所述历史序列数据中满足预设条件的数据元素的组合;
[0024] 根据所述基元序列模式在所述历史序列数据中的起始位置确定所述基元序列模 式之间的关系;
[0025] 根据所述基元序列模式之间的关系构建序列模式图。
[0026] 结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式 中,所述基元序列模式包括第一基元序列模式和第二基元序列模式;
[0027] 根据所述基元序列模式在所述序列数据中的起始位置确定所述基元序列模式之 间的关系,包括:
[0028] 若所述第一基元序列模式的起始位置不在所述第二基元序列模式的起始位置之 前,并且所述第一基元序列模式的终止位置不在所述第二基元序列模式的终止位置之后, 则所述第一基元序列模式被包含在所述第二基元序列模式中;
[0029] 若所述第一基元序列模式的起始位置在所述第二基元序列模式的终止位置之前, 且所述第一基元序列模式的终止位置在所述第二基元序列模式的终止位置之后,则所述第 一基元序列模式前向重叠于所述第二基元序列模式,所述第二基元序列模式后向重叠于所 述第一基元序列模式;
[0030] 若所述第一基元序列模式的起始位置等于所述第二基元序列模式的终止位置加 1,则所述第一基元序列模式前向相邻于所述第二基元序列模式,所述第二基元序列模式后 向相邻于所述第一基元序列模式。
[0031] 结合第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的 实现方式,在第三种可能的实现方式中,所述利用序列模式图对所述序列模式进行匹配,获 取匹配的结果具体包括:
[0032] 遍历所述序列模式图,获取与所述序列模式匹配的第三基元序列模式;
[0033] 根据所述第三基元序列模式在所述序列模式图中的位置,获取符合预设条件的候 选元素;
[0034] 根据所述匹配的结果,对所述第一序列数据中即将出现的元素进行预测包括:
[0035] 确定所述候选元素为所述第一序列数据中即将产生的元素。
[0036] 结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式 中,所述基元序列模式包括模式影响力或模式间关系强度;
[0037] 根据所述第三基元序列模式在所述序列模式图中的位置,获取符合预设条件的候 选元素包括:
[0038] 根据所述第三基元序列模式的模式影响力或模式间关系强度对所述第三基元序 列模式进行排序,获取排列顺序为第一的第三基元序列模式;
[0039] 根据所述排列顺序为第一的第三基元序列模式在所述序列模式图中的位置,确定 所述序列模式在所述序列模式图中的位置;
[0040] 根据所述序列模式在所述序列模式图中的位置,确定候选元素。
[0041] 结合第一方面的第三种可能的实现方式,在第一方面的第五种可能的实现方式 中,所述基元序列模式包括模式影响力或模式间关系强度;
[0042] 根据所述第三基元序列模式在所述序列模式图中的位置,获取符合预设条件的候 选元素包括:
[0043] 根据所述第三基元序列模式在所述序列模式图中的位置确定所述第三基元序列 模式所对应的第一候选兀素;
[0044] 当所述第一候选元素为至少两个时,根据所述第三基元序列模式的模式影响力或 模式间关系强度,对所述第一候选元素进行加权统计,获取所述第一候选元素的加权统计 结果;
[0045] 确定所述加权统计结果中的最大值所对应的第一候选元素为第二候选元素;
[0046] 根据所述匹配的结果,对所述第一序列数据中即将出现的元素进行预测包括:
[0047] 确定所述第二候选元素为所述第一序列数据中即将产生的元素。
[0048] 结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式 中,所述确定所述加权统计结果中的最大值所对应的所述第一候选元素为第二候选元素之 后,还包括:
[0049] 按照预设的第一加分标准对所述第二候选元素所对应的第三基元序列模式的模 式影响力和模式间关系强度进行调整;
[0050] 按照预设的第二加分标准对与所述第二候选元素所对应的第三基元序列模式有 连接关系的基元序列模式的模式影响力和模式间关系强度进行调整。
[0051] 第二方面,本发明提供了一种基于序列数据进行预测的装置,包括:
[0052] 第一获取模块,用于获取终端中存储的第一序列数据;
[0053] 第二获取模块,用于根据预设的采样方法,从所述第一获取模块获取序列模式,所 述序列模式为所述第一序列数据中满足预设条件的数据元素的组合;
[0054] 匹配模块,用于利用序列模式图对所述序列模式进行匹配,获取匹配的结果;
[0055] 预测模块,用于根据所述匹配的结果,对所述第一序列数据中即将出现的元素进 行预测。
[0056] 结合第二方面,在第二方面的第一种可能的实现方式中,所述装置还包括模式图 构建模块,所述模式图构建模块包括获取单元、确定单元,判断单元和构建单元,
[0057] 所述获取单元,具体用于获取预设数量的历史序列数据;
[0058] 所述确定单元,具体用于确定所述历史序列数据中包含的基元序列模式,所述基 元序列模式至少为两个,所述基元序列模式为所述历史序列数据中满足预设条件的数据元 素的组合;
[0059] 所述判断单元,具体用于根据所述基元序列模式在所述历史序列数据中的起始位 置确定所述基元序列模式之间的关系;
[0060] 所述构建单元,具体用于根据所述基元序列模式之间的关系构建序列模式图;
[0061] 所述匹配模块,具体用于利用所述模式图构建模块构建的序列模式图对所述第二 获取模块获取的所述序列模式进行匹配,获取匹配的结果。
[0062] 结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式 中,所述基元序列模式包括第一基元序列模式和第二基元序列模式;
[0063] 所述判断单元具体用于:
[0064] 若所述第一基元序列模式的
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1