CN106372670A - 基于改进最近邻算法的忠诚度预测方法 - Google Patents
基于改进最近邻算法的忠诚度预测方法 Download PDFInfo
- Publication number
- CN106372670A CN106372670A CN201610804842.1A CN201610804842A CN106372670A CN 106372670 A CN106372670 A CN 106372670A CN 201610804842 A CN201610804842 A CN 201610804842A CN 106372670 A CN106372670 A CN 106372670A
- Authority
- CN
- China
- Prior art keywords
- loyalty
- classification
- test data
- data set
- training
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Operations Research (AREA)
- Artificial Intelligence (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于改进最近邻算法的忠诚度预测方法。该方法包括:在忠诚度分类预测时,首先利用贝叶斯算法对数据集进行预处理,筛选出非忠诚客户和忠诚客户(包含忠诚度高的客户和忠诚度低的客户);再用最近邻算法对忠诚客户做进一步分类,从而得到高忠诚度客户,完成忠诚度预测。本发明降低K值即选择多少个邻居对最近邻算法的影响;减少其内存开销;具有明显的时间优势;提高忠诚度分类的准确率。
Description
技术领域
本发明涉及数据挖掘分类预测领域,具体地说是一种基于改进最近邻算法的忠诚度预测方法。
背景技术
分类的目的是为任何给定的测试实例预测结果。给定一个测试实例,在训练集中没有与之相同的属性集,该算法应该能够正确预测该测试实例的类标签。预测的准确度决定了该算法有多好。通常单一分类技术,像贝叶斯,决策树,K最近邻等被用于预测新实例的类。
基于分类技术进行客户忠诚度预测,目前是大型互联网巨头的研发热点。例如Zhang Yongli(Zhang Yongli.Prediction and implementation of customer loyaltybased on Data Mining[J].brand,2011(2):15-16)提出使用神经网络算法对客户忠诚度进行评价和预测,取得较好的效果,但模型结构很难确定且容易造成泛化能力下降;TianHui(Tian Hui.Research on the application of data mining in the field ofautomobile sales CRM[D].Zhejiang,China:College of Computer Science andTechnology,Zhejiang University of Technolog,2012)将分类决策树(C4.5)算法和KNN算法相结合,提出的忠诚度预测模型,当计算开销大时,算法的效果就会变得不理想,而且要选取多少个邻居即K值很难确定;Liu Pengfei(Liu Pengfei.Research and systemimplementation of customer loyalty prediction model[D].Jilin,China:College ofComputer Science and Technology,Jilin University,2011)提出基于贝叶斯算法建立客户忠诚度预测模型,可有效预测各电信客户的忠诚度高低,但它无法处理特征符合所发生的变更,对缺失数据的补充效果会影响准确度。
发明内容
本发明的目的在于提出一种基于改进最近邻算法的忠诚度预测方法,提高忠诚度预测的准确度和效率,该方法将K最近邻(K nearest neighbor,KNN)算法和贝叶斯算法相结合作为分类预测策略。首先利用贝叶斯算法对数据集进行预处理,筛选出非忠诚客户和忠诚客户(包含忠诚度高的客户和忠诚度低的客户);再用最近邻算法对忠诚客户做进一步分类,得到了高忠诚度客户。
实现本发明目的的技术方案为:一种基于改进最近邻算法的忠诚度预测方法,包括以下步骤:
步骤1,已知忠诚度类别的训练数据集D,其包含N个属性和M个忠诚度类别,将属于同一忠诚度类别的训练数据个数除以训练数据集D的总个数,获得该类的先验概率即P(Ci);
步骤2,待分类未知类别的测试数据集X,其包含N个属性,计算测试数据集X中一条测试数据的指定属性列上指定值出现的概率,即类条件概率P(X|Ci);
步骤3,在训练数据的基础上预测一条测试数据的忠诚度类别即P(X|Ci)P(Ci);
步骤4,重复步骤1-3,直到将测试数据集X遍历完毕;
步骤5,将测试数据集X的类别标签为忠诚客户的数据放入集合S中,集合S包括忠诚度高的客户和忠诚度低的客户,此时将集合S作为测试数据集;
步骤6,设置一个长度为j且按距离由大到小排列的优先级队列,用于存储最近邻训练元组;
步骤7,随机从已知类别的原训练数据集D中提取j个元组作为初始的最近邻元组;
步骤8,设F1=(f11,f12,...,f1n)和F2=(f21,f22,...,f2n)为2个样本特征向量,fij代表样本Fi的第j个特征的值,则F1和F2的欧式距离公式为根据该公式从S中取一条测试数据,分别计算其与这j个元组的距离d,且将训练元组的忠诚度类别和距离存入该优先级队列;
步骤9,计算训练数据集D中某条训练数据与该条测试数据的距离d,将其距离d与优先级队列中的距离最大值dmax比较;如果d<dmax,则删除优先级队列中与之距离最大的元组,将当前该条训练数据的类别和距离存入优先级队列;否则舍弃该条训练数据,访问下一条训练数据;重复此步骤,直至训练数据集D遍历完毕;
步骤10,将队列j中占多数的忠诚度类别作为测试元组的类别,从而得到高忠诚度客户,重复步骤7-9,直到将测试数据集S遍历完毕;
步骤11,计算该算法所消耗的时间T;读入目标数据集O,其为测试数据集X的真实类别,并读入上述所有测试数据集的预测类别,将其与目标数据集O进行逐一比较,从而获取算法的正确率W。
本发明与现有技术相比,其显著优点为:(1)降低K值即选择多少个邻居对最近邻算法的影响;(2)减少其内存开销;(3)具有明显的时间优势;(4)提高了忠诚度分类的准确率。
说明书附图
图1是本发明的算法流程图。
图2是不同K值下KNN算法和贝叶斯算法的客户忠诚度预测的总时间耗费以及正确率比较。
图3是本发明基于改进最近邻算法的忠诚度预测方法和KNN算法的客户忠诚度预测的总时间耗费以及正确率比较。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明。
如图1所示,一种基于改进最近邻算法的忠诚度预测方法,具体方法步骤如下:
目标:忠诚度预测
输入:已知忠诚度类别的训练数据集D,其中包含M个已知忠诚度类别,待分类未知类别测试数据集X,目标数据集O
输出:测试数据集X的忠诚度类别标签C,算法运行消耗的时间T和正确率W
第一步,已知忠诚度类别的训练数据集D,其包含N个属性和M个忠诚度类别,将属于同一忠诚度类别的训练数据个数除以训练数据集D的总个数,获得该类的先验概率即P(Ci);
第二步,待分类未知类别的测试数据集X,其包含N个属性,计算测试数据集X中一条测试数据的指定属性列上指定值出现的概率,即类条件概率P(X|Ci);
第三步,在训练数据的基础上预测一条测试数据的忠诚度类别即P(X|Ci)P(Ci);
第四步,重复第一至三步,直到将测试数据集X遍历完毕;
第五步,将测试数据集X的类别标签为忠诚客户的数据放入集合S中,集合S包括忠诚度高的客户和忠诚度低的客户,此时将集合S作为测试数据集;
第六步,设置一个长度为j且按距离由大到小排列的优先级队列,用于存储最近邻训练元组;
第七步,随机从已知类别的原训练数据集D中提取j个元组作为初始的最近邻元组;
第八步,设F1=(f11,f12,...,f1n)和F2=(f21,f22,...,f2n)为2个样本特征向量,fij代表样本Fi的第j个特征的值,则F1和F2的欧式距离公式为根据该公式从S中取一条测试数据,分别计算其与这j个元组的距离d,且将训练元组的忠诚度类别和距离存入该优先级队列;
第九步,计算训练数据集D中某条训练数据与该条测试数据的距离d,将其距离d与优先级队列中的距离最大值dmax比较;假如d<dmax,则删除优先级队列中与之距离最大的元组,将当前该条训练数据的类别和距离存入优先级队列;否则舍弃该条训练数据,访问下一条训练数据;重复此步骤,直至训练数据集D遍历完毕;
第十步,将队列j中占多数的忠诚度类别作为测试元组的类别,从而得到高忠诚度客户,重复第七至九步,直到将测试数据集S遍历完毕;
第十一步,计算该算法所消耗的时间T;读入目标数据集O,其为测试数据集X的真实类别,并读入上述所有测试数据集的预测类别,将其与目标数据集O进行逐一比较,从而获取算法的正确率W,以此来对算法建立的模型进行评价。
本文以保险公司基准(COIL 2000)的数据集为实验数据集,比较了KNN算法与贝叶斯算法、一种基于改进最近邻算法的忠诚度预测方法和KNN算法的分类性能。该数据集是由荷兰的数据挖掘公司有情机研究提供,是基于现实世界的商业问题。该数据集包含保险公司的客户信息。要求预测哪些客户会有兴趣购买一个旅行车保险政策,并解释为什么这些客户会购买一个车队的政策。训练集包含5822个客户的描述,包括他们是否有一个旅行车保险政策的信息。每个客户记录包含86个属性,包含社会人口数据(属性1-43)和产品所有权(属性44-86)。社会人口数据来自邮政编码。所有客户都生活在同一个邮政编码地区具有相同的社会人口属性。第86个属性,“旅行车:移动家庭政策”,是目标变量。目标只有两个类别:0和1,若目标为1,则表明该客户的忠诚度较高,可能对旅行车保险政策感兴趣。测试集包含4000个客户,与训练集有相同的格式,只有目标缺失,只有组织者知道他们是否有旅行车保险政策。
本文实验环境是i5 2.30GHZ 2 core CPU、2GB DDR3内存的Windows7操作系统,JDK1.7,Eclipse集成开发环境(IDE)。
表1
表1是不同K值下KNN算法和贝叶斯算法的客户忠诚度预测的总时间耗费以及正确率比较,其柱状图比较结果如图2所示。KNN算法与贝叶斯算法相比,算法运行所消耗的时间少,正确率相对而言较高。然而当数据量较大时,K值影响KNN算法的时间耗费与正确率。当K值设定的较小,虽然算法运行消耗的时间少,但是正确率却相对低。所以需选择不同的K值进行实验。
表2
表2是本发明基于改进最近邻算法的忠诚度预测方法和KNN算法的客户忠诚度预测的总时间耗费以及正确率比较,其柱状图比较结果如图3所示。基于改进最近邻算法的忠诚度预测方法和KNN算法相比,消耗的时间较短且正确率较高。本方法先是通过贝叶斯算法得到目标为1的忠诚客户(包括忠诚度高的客户和忠诚度低的客户)和目标为0的非忠诚客户,再用KNN算法对预测目标为1的忠诚客户做进一步预测,将该目标再进行分类,这样所得的目标结果为1的客户就拥有更高的忠诚度,对旅行车保险政策非常感兴趣,这些客户愿意置办旅行车保险政策的可能性十分大。本方法结合了贝叶斯和KNN算法的优点,并且减少了时间开销,进一步提高了准确率。
贝叶斯是数据挖掘领域中最优雅、最简单的分类器之一,不论其特征独立性的假设,它都超越了其他的分类技术,产生非常好的性能。而由于K最近邻算法简单、易于理解和比较高的性能分类,因此本发明将贝叶斯算法融入K最近邻算法学习模型中,不仅可以减少内存开销,降低K值对最近邻算法的影响,而且利用概率背景和先验知识对忠诚客户进行筛选,提高了准确率。
Claims (1)
1.一种基于改进最近邻算法的忠诚度预测方法,其特征在于包括以下步骤:
步骤1,已知忠诚度类别的训练数据集D,其包含N个属性和M个忠诚度类别,将属于同一忠诚度类别的训练数据个数除以训练数据集D的总个数,获得该类的先验概率即P(Ci);
步骤2,待分类未知类别的测试数据集X,其包含N个属性,计算测试数据集X中一条测试数据的指定属性列上指定值出现的概率,即类条件概率P(X|Ci);
步骤3,在训练数据的基础上预测一条测试数据的忠诚度类别即P(X|Ci)P(Ci);
步骤4,重复步骤1-3,直到将测试数据集X遍历完毕;
步骤5,将测试数据集X的类别标签为忠诚客户的数据放入集合S中,集合S包括忠诚度高的客户和忠诚度低的客户,此时将集合S作为测试数据集;
步骤6,设置一个长度为j且按距离由大到小排列的优先级队列,用于存储最近邻训练元组;
步骤7,随机从已知类别的原训练数据集D中提取j个元组作为初始的最近邻元组;
步骤8,设F1=(f11,f12,...,f1n)和F2=(f21,f22,...,f2n)为2个样本特征向量,fij代表样本Fi的第j个特征的值,则F1和F2的欧式距离公式为根据该公式从S中取一条测试数据,分别计算其与这j个元组的距离d,且将训练元组的忠诚度类别和距离存入该优先级队列;
步骤9,计算训练数据集D中某条训练数据与该条测试数据的距离d,将其距离d与优先级队列中的距离最大值dmax比较;如果d<dmax,则删除优先级队列中与之距离最大的元组,将当前该条训练数据的类别和距离存入优先级队列;否则舍弃该条训练数据,访问下一条训练数据;重复此步骤,直至训练数据集D遍历完毕;
步骤10,将队列j中占多数的忠诚度类别作为测试元组的类别,从而得到高忠诚度客户,重复步骤7-9,直到将测试数据集S遍历完毕;
步骤11,计算该算法所消耗的时间T;读入目标数据集O,其为测试数据集X的真实类别,并读入上述所有测试数据集的预测类别,将其与目标数据集O进行逐一比较,从而获取算法的正确率W。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610804842.1A CN106372670A (zh) | 2016-09-06 | 2016-09-06 | 基于改进最近邻算法的忠诚度预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610804842.1A CN106372670A (zh) | 2016-09-06 | 2016-09-06 | 基于改进最近邻算法的忠诚度预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106372670A true CN106372670A (zh) | 2017-02-01 |
Family
ID=57900148
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610804842.1A Pending CN106372670A (zh) | 2016-09-06 | 2016-09-06 | 基于改进最近邻算法的忠诚度预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106372670A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109190797A (zh) * | 2018-08-03 | 2019-01-11 | 北京航空航天大学 | 一种基于改进k最近邻的大规模路网状态短时预测方法 |
CN115049114A (zh) * | 2022-05-30 | 2022-09-13 | 中国银行股份有限公司 | 用户数据分析方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330476A (zh) * | 2008-07-02 | 2008-12-24 | 北京大学 | 一种垃圾邮件动态检测方法 |
CN102081655A (zh) * | 2011-01-11 | 2011-06-01 | 华北电力大学 | 基于贝叶斯分类算法的信息检索方法 |
CN103927872A (zh) * | 2014-04-28 | 2014-07-16 | 武汉大学 | 一种基于浮动车数据预测多时段行程时间分布的方法 |
CN104348741A (zh) * | 2013-08-06 | 2015-02-11 | 南京理工大学常熟研究院有限公司 | 基于多尺度分析和决策树的p2p流量检测方法和系统 |
CN104883734A (zh) * | 2015-05-12 | 2015-09-02 | 北京邮电大学 | 一种基于地理指纹的室内被动定位方法 |
CN105307111A (zh) * | 2014-07-07 | 2016-02-03 | 南京理工大学常熟研究院有限公司 | 一种基于增量近邻查询的位置隐私保护方法 |
-
2016
- 2016-09-06 CN CN201610804842.1A patent/CN106372670A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330476A (zh) * | 2008-07-02 | 2008-12-24 | 北京大学 | 一种垃圾邮件动态检测方法 |
CN102081655A (zh) * | 2011-01-11 | 2011-06-01 | 华北电力大学 | 基于贝叶斯分类算法的信息检索方法 |
CN104348741A (zh) * | 2013-08-06 | 2015-02-11 | 南京理工大学常熟研究院有限公司 | 基于多尺度分析和决策树的p2p流量检测方法和系统 |
CN103927872A (zh) * | 2014-04-28 | 2014-07-16 | 武汉大学 | 一种基于浮动车数据预测多时段行程时间分布的方法 |
CN105307111A (zh) * | 2014-07-07 | 2016-02-03 | 南京理工大学常熟研究院有限公司 | 一种基于增量近邻查询的位置隐私保护方法 |
CN104883734A (zh) * | 2015-05-12 | 2015-09-02 | 北京邮电大学 | 一种基于地理指纹的室内被动定位方法 |
Non-Patent Citations (4)
Title |
---|
GUAN CHUN等: "recognition of multiple power quality disturbances using KNN-bayesian", 《INTERNATIONAL REVIEW OF ELECTRICAL ENGINEERING(I.R.E.E)》 * |
刘鹏飞: "电信客户忠诚度预测模型研究和系统实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
孙晓燕等: "用于不均衡数据集分类的KNN算法", 《计算机工程与应用》 * |
田慧: "数据挖掘在汽车销售领域CRM中的应用研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109190797A (zh) * | 2018-08-03 | 2019-01-11 | 北京航空航天大学 | 一种基于改进k最近邻的大规模路网状态短时预测方法 |
CN115049114A (zh) * | 2022-05-30 | 2022-09-13 | 中国银行股份有限公司 | 用户数据分析方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RColorBrewer et al. | Package ‘randomforest’ | |
CN106528874B (zh) | 基于Spark内存计算大数据平台的CLR多标签数据分类方法 | |
Yi et al. | Multi-valued attribute and multi-labeled data decision tree algorithm | |
Baltrunas et al. | Matrix factorization techniques for context aware recommendation | |
Wang et al. | Dynamic Multi-label Learning with Multiple New Labels | |
Tang et al. | Dynamic personalized recommendation on sparse data | |
Langone et al. | Kernel spectral clustering and applications | |
CN116594748B (zh) | 针对任务的模型定制处理方法、装置、设备和介质 | |
CN110019790A (zh) | 文本识别、文本监控、数据对象识别、数据处理方法 | |
CN106934410A (zh) | 数据的分类方法及系统 | |
Haddad et al. | Temporalnode2vec: Temporal node embedding in temporal networks | |
CN107066328A (zh) | 大规模数据处理平台的构建方法 | |
CN107193940A (zh) | 大数据优化分析方法 | |
Chiang et al. | The Chinese text categorization system with association rule and category priority | |
Guo et al. | Active semi-supervised K-means clustering based on silhouette coefficient | |
CN106372670A (zh) | 基于改进最近邻算法的忠诚度预测方法 | |
CN101226521A (zh) | 一种用于多义性数据对象预测建模的机器学习方法 | |
Bakhtyar et al. | Freight transport prediction using electronic waybills and machine learning | |
Annam et al. | Entropy based informative content density approach for efficient web content extraction | |
Olorunnimbe et al. | Intelligent adaptive ensembles for data stream mining: a high return on investment approach | |
CN107103095A (zh) | 基于高性能网络架构的数据计算方法 | |
Sun et al. | Key nodes discovery in large-scale logistics network based on MapReduce | |
Li et al. | A Novel Semi-supervised Adaboost Technique Based on Improved Tri-training | |
CN106559290B (zh) | 基于社团结构的链路预测的方法和系统 | |
Xiao et al. | One-step classifier ensemble model for customer churn prediction with imbalanced class |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170201 |