一种用户资料预测方法和系统与流程

文档序号:14872045发布日期:2018-07-07 00:48阅读:154来源:国知局
本发明涉及数据分析
技术领域
,尤其涉及一种用户资料预测方法和系统。
背景技术
:数据缺失是数据分析与处理应用领域必须面对的一个重要问题,它直接影响挖掘模式的正确性和准确性。缺失填充能够为后续处理提供更多信息,在应用中发挥重要作用,成为一种最有效的缺失数据处理方法。缺失填充就是根据观测数据推断或估计缺失数据的过程,传统的方法可以包括回归技术、最近邻方法和均值填充等。在数据挖掘领域,常用的缺失填充方法是k最近邻填充(k-nn,k-nearestneighbor)。k-nn算法属于非线性方法,具有简单、易于实现和填充准确率高等特点。该算法在预测分类型数据和数值型数据时,分别使用了众数和均值的计算方式,但这两种方式忽略了距离对目标预测值的影响,即距离近的训练样本对未知样本的影响要大于距离远的样本。技术实现要素:本发明提供了一种用户资料预测方法和系统。该预测方法解决了对分类型数据和数值型数据的缺失值填充问题,提升了填充缺失值的准确率,且增强了结果的可解释性。第一方面,提供了一种用户资料预测方法,该方法可以包括:对数据集合进行筛选,获取训练数据。根据训练数据的属性信息,确定数据向量。在数据向量中,选取与待预测数据距离最近的至少一个训练数据,以及至少一个训练数据与待预测数据的距离值。根据至少一个训练数据和距离值,获取待预测数据的缺失值。在一种可选的实现中,训练数据为数据集合中样本数据的属性信息与样本数据的取值匹配的数据。在一种可选的实现中,当待预测数据为分类型数据时,根据至少一个训练数据和距离值,获取待预测数据的缺失值,具体包括:根据至少一个训练数据和距离值,获取至少一个训练数据的类别权重值。选取类别权重值中最大的类别权重值所对应的类别为待预测数据的类别。在一种可选的实现中,当待预测数据为分类型数据时,类别权重值的表达式为:预测值表达式为:其中,m为k个最近样本数据中类别为cj的样本数量,wcj表示类别cj的权重值,di表示拥有cj标签的第i个数据与所述待预测数据的距离,为权重集合w中的最大值,cm为最大对应的类别标签,ct为待预测样本的缺失值。在一种可选的实现中,当待预测数据为数值型数据时,根据所述至少一个训练数据和距离值,获取待预测数据的缺失值,具体包括:根据至少一个训练数据和距离值,获取待预测数据的预测值。在一种可选的实现中,当待预测数据为数值型数据时,预测值的表达式为:其中,xt为数据t的待预测值,为k个近邻数据对应数值的平均数,xi表示第i个数据对应的数值,di表示第i个数据与待预测数据的距离。第二方面,提供了一种用户资料预测系统,该系统可以包括:获取单元用于对数据集合进行筛选,获取训练数据。确定单元用于根据训练数据的属性信息,确定数据向量。选取单元用于在数据向量中,选取与待预测数据距离最近的至少一个训练数据,以及至少一个训练数据与待预测数据的距离值。获取单元还用于根据至少一个训练数据和所述距离值,获取待预测数据的缺失值。其中,训练数据为数据集合中样本数据的属性信息与样本数据的取值匹配的数据。在一种可选的实现中,当待预测数据为分类型数据时,获取单元具体用于根据至少一个训练数据和距离值,获取至少一个训练数据的类别权重值。选取单元用于选取类别权重值中最大的类别权重值应的类别为待预测数据的类别。在一种可选的实现中,当待预测数据为分类型数据时,类别权重值的表达式为:预测值表达式为:其中,m为k个最近样本数据中类别为cj的样本数量,wcj表示类别cj的权重值,di表示拥有cj标签的第i个数据与所述待预测数据的距离,为权重集合w中的最大值,cm为最大对应的类别标签,ct为待预测样本的缺失值。在一种可选的实现中,当待预测数据为数值型数据时,获取单元具体用于根据至少一个训练数据和距离值,获取待预测数据的预测值。其中,预测值的表达式为:xt为数据t的待预测值,为k个近邻数据对应数值的平均数,xi表示第i个数据对应的数值,di表示第i个数据与待预测数据的距离。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本发明实施例提供的一种用户资料预测方法的流程图示意图;图2本发明实施例提供的一种用户资料预测系统的结构示意图。具体实施方式下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。在数据挖掘领域中,k最近邻填充算法具有简单、易于实现和填充准确率高等特点。该算法在预测分类型数据和数值型数据时分别使用了众数和均值的计算方式。其中,众数为出现次数最多的数据。本申请在传统的k最近邻填充算法上进行了优化,从而优化了用户资料预测方法。图1为本发明实施例提供的一种用户资料预测方法的流程图示意图。如图1所示,该方法可以包括:步骤110、采集用户资料数据,建立数据集合,数据集合包括多个样本数据。步骤120、对数据集合进行筛选,获取训练数据。对于k近邻算法,由于数据本身就是分类器,因此数据质量直接决定预测效果。为了提升数据质量,需要去除数据中的异常数据,同时保证数据属性的完整性。本申请中的数据质量包括数据的真实性(准确的反映实际发生的业务)和数据的完备性(所有属性都有值)。其中,异常数据为数据的属性值偏离正常取值范围的数据,比如属性“房屋面积”的值为“10000”平方米,即数据的属性信息与正常取值范围的数据不匹配。也就是说,该训练数据为数据集合中样本数据的属性信息与样本数据的取值相匹配的数据。步骤130、根据训练数据的属性信息,进行归一化处理,以确定数据向量。归一化处理的目的是为了把不同来源的数据统一到一个参考系下,防止向量中绝对值过大的元素对距离计算造成绝对的影响。也就是说,根据训练数据的属性信息,划分在一起,以确定数据向量。在k-nn算法中,训练数据用n维数值属性描述,每个样本数据代表n维向量空间的一个点,这样,所有的训练样本都存放在n维数据向量空间中。步骤140、在数据向量中,选取与待预测数据距离最近的至少一个训练数据,以及至少一个训练数据与待预测数据的距离值。给定一个未知样本作为待预测数据,k-nn算法搜索该数据向量空间,找出与待预测数据距离最近的k个训练样本数据,从而获取与待预测数据距离最近的至少一个训练数据,以及至少一个训练数据与待预测数据的距离值,这k个训练样本数据是待预测数据的k个“近邻”。其中,距离的计算方式有多种,可以包括余弦距离、标准化欧式距离、杰卡德相似系数等,本发明实施例在此不作限定。当确定了待预测数据的k个“近邻”后,就可以根据这k个近邻相应的字段值来计算未知样本的缺失值。步骤150、根据至少一个训练数据和距离值,获取待预测数据的缺失值。对于传统数值型数据的计算方式是取k个近邻向量对应数值的均值,但是这两种方法都忽略了数据距离对待预测数值的影响。因此本发明实施例针对以上最常见的两类待预测数据类型,在近邻计算中引入距离权重,获取待预测数据的缺失值,该缺失值可以是数据类别的权重值,也可以是预期值。可选地,在分类型数据预测中,根据数据向量中至少一个训练数据和距离值,获取至少一个训练数据的类别权重值;获取的所有类别权重值构成了一个集合w。由于类别权重值和类别标签是一一对应的关系,取最大权重值所对应的类别作为待预测向量的类别。其中,当待预测数据为分类型数据时,类别权重值的表达式为:预测值表达式为:其中,m为k个最近样本数据中类别为cj的样本数量,wcj表示类别cj的权重值,di表示拥有cj标签的第i个数据与所述待预测数据的距离,为权重集合w中的最大值,cm为最大对应的类别标签,ct为待预测样本的缺失值。可见,所有权重构成了一个集合w。由于权重和类别标签是一一对应的关系,取最大权重值所对应的标签cm作为待预测向量的缺失属性值。在一个例子中,在待预测属性值为分类型数据时,表1是与待预测样本最近邻的k个样本(本示例中k取值为5,下同)。由于样本a和样本b距离待预测样本更近,即样本a和样本b与待预测样本更相似。结合公式一可知,wc为性别权重,经计算女性的权重值大于男性的权重值,即样本a和样本b被赋予了更高的类别权重,从而获得了与样本a和b一致的预测结果。表1样本数据性别距离a女0.1b女0.2c男0.8d男0.8e男0.9表2是传统k-nn算法与表1获取的预测结果的对比表。表2算法预测值传统k近邻算法男改进k近邻算法女表2中传统k近邻算法与本发明实施例提供的改进k近邻算法比较,改进k近邻算法得到的预测值的性别与预测样本更接近。若样本a为男性,样本b为女性,则利用样本a、样本c、样本d和样本e的权重值之和与样本b的权重值作比较,选取权重值大的对应的性别。可选地,在数值型数据预测中,根据数据向量中至少一个训练数据和距离值,获取待预测数据的预测值。其中,预测值的表达式为:xt为数据t的待预测值,为k个近邻数据对应数值的平均数,xi表示第i个数据对应的数值,di表示第i个数据与待预测数据的距离;在一个例子中,在待预测属性值为数值型数据,表3是与待预测样本最近邻的k个样本。由于样本a和样本b距离待预测样本更近,且两个样本的值都大于均值,因此期望获得一个大于均值的预测值。结合公式二,可知预测结果为61,大于均值40(5个样本的均值),与预期相符,因此具有更强的可解释性。表3样本评分距离a600.1b700.2c200.8d300.8e200.9表4是传统的k-nn算法与表1获取的预测结果的对比表。表4算法预测值传统k近邻算法40改进k近邻算法61表4中传统k近邻算法与本发明实施例提供的改进k近邻算法比较,改进k近邻算法得到的预测值与期望值更接近。由此可知,本发明实施例提供的用户资料预测方法将距离权重引入到k近邻算法中,提出了一种新的改进算法,并将其应用到用户资料补全的问题中,提升了预测的准确率和可解释性。与上述方法对应的,本发明实施例还提供一种用户资料预测系统,如图2所示,该系统可以包括:获取单元210,确定单元220和选取单元230。获取单元210用于对数据集合进行筛选,获取训练数据。确定单元220用于根据训练数据的属性信息,确定数据向量。选取单元230用于在所述数据向量中,选取与待预测数据距离最近的至少一个训练数据,以及至少一个训练数据与待预测数据的距离值。获取单元210还用于根据至少一个训练数据和距离值,获取待预测数据的缺失值。其中,训练数据为数据集合中样本数据的属性信息与样本数据的取值匹配的数据。可选地,当待预测数据为分类型数据时,获取单元具体用于根据至少一个训练数据和距离值,获取至少一个训练数据的类别权重值。选取单元230具体用于选取类别权重值中最大的类别权重值所对应的类别为待预测数据的类别。可选地,当待预测数据为分类型数据时,类别权重值的表达式可以表示为:预测值表达式为:其中,m为k个最近样本数据中类别为cj的样本数量,wcj表示类别cj的权重值,di表示拥有cj标签的第i个数据与所述待预测数据的距离,为权重集合w中的最大值,cm为最大对应的类别标签,ct为待预测样本的缺失值。可选地,当待预测数据为数值型数据时,获取单元210具体用于根据至少一个训练数据和距离值,获取待预测数据的预测值。其中,待预测值的表达式可以表示为:xt为数据t的待预测值,为k个近邻数据对应数值的平均数,xi表示第i个数据对应的数值,di表示第i个数据与待预测数据的距离。结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器、闪存、只读存储器、可擦除可编程只读寄存器(英文:erasableprogrammableread-onlymemory,eprom)存储器、电可擦可编程只读存储器存储器(英文:electricallyerasableprogrammableread-onlymemory,eeprom)、硬盘、只读光盘(英文:compactdiscread-onlymemory,cd-rom)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1