CN111292099B - 一种智能车站反刷票方法和反刷票系统 - Google Patents
一种智能车站反刷票方法和反刷票系统 Download PDFInfo
- Publication number
- CN111292099B CN111292099B CN202010090896.2A CN202010090896A CN111292099B CN 111292099 B CN111292099 B CN 111292099B CN 202010090896 A CN202010090896 A CN 202010090896A CN 111292099 B CN111292099 B CN 111292099B
- Authority
- CN
- China
- Prior art keywords
- user
- data
- ticket
- request
- calculation
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000004364 calculation method Methods 0.000 claims abstract description 80
- 238000012545 processing Methods 0.000 claims abstract description 54
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 45
- 238000013528 artificial neural network Methods 0.000 claims abstract description 42
- 238000012549 training Methods 0.000 claims abstract description 38
- 241000283690 Bos taurus Species 0.000 claims abstract description 33
- 238000004458 analytical method Methods 0.000 claims abstract description 30
- 238000003062 neural network model Methods 0.000 claims abstract description 17
- 238000007781 pre-processing Methods 0.000 claims abstract description 9
- 230000006399 behavior Effects 0.000 claims description 66
- 230000001680 brushing effect Effects 0.000 claims description 22
- 230000003111 delayed effect Effects 0.000 claims description 16
- 230000002159 abnormal effect Effects 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 11
- 238000007405 data analysis Methods 0.000 claims description 7
- 238000007619 statistical method Methods 0.000 claims description 7
- 238000013461 design Methods 0.000 claims description 6
- 230000000903 blocking effect Effects 0.000 claims description 5
- 230000001537 neural effect Effects 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000007789 sealing Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims 1
- 238000010276 construction Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005251 gamma ray Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- 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
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
- G06Q30/0185—Product, service or business identity fraud
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Marketing (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computational Linguistics (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Tourism & Hospitality (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种智能车站反刷票方法和反刷票系统,所述系统包括:数仓工具Hive、数据库、计算引擎Flink、历史数据行为分析模块、模糊神经网络算法模块、后台业务系统模块;所述方法包括:S1:对历史购票数据进行数据预处理,得到下一步算法需要的各个指标点;S2:进行按账号作为用户唯一标识进行用户画像构建并存储;S3:构建并训练模糊神经网络模型;S4:采用经过训练的模糊神经网络,对实时购票请求进行分析处理,得到的结果反馈给下游业务系统;业务系统接收分析处理结果,根据惩罚规则进行放行或惩罚。本发明可解决第一批次放票以及黄牛自身也利用大量用户账号也进行候补购票的问题。
Description
技术领域
本发明涉及智能交通领域,更具体地,涉及一种智能车站反刷票方法和反刷票系统。
背景技术
随着信息技术不断发展,互联网技术和物联网技术为人们的生活带来了极大的便利。其中,高铁、普通列车的购票方式也主要从线下改成线上。但购票方式网络化也带来黄牛等违倒卖车票的行为大量出现,黄牛凭借优于普通用户的购票技术条件,大量抢票囤票,影响了广大普通用户的出行。现有技术主要是候补购票以及对高频次发起购票请求的ip进行针对性封禁两个手段。
2018年年底上线的候补购票能很大程度上缓解黄牛刷票的问题。但是仍旧无法解决第一批次放票以及黄牛自身也利用大量用户账号也进行候补购票的问题。特别的,部分用户刷票速度过快,但是非团伙刷票行为,单纯只是购买自身出行需要的车票,这种情况下单纯依靠封禁请求频率过高的ip,可能导致错误封禁该非黄牛用户的IP。
发明内容
本发明为克服上述现有技术所述的反刷票技术仍旧无法解决第一批次放票以及黄牛自身也利用大量用户账号也进行候补购票的问题的缺陷,提供一种智能车站反刷票方法和反刷票系统。
所述智能车站反刷票方法包括以下步骤:
S1:将历史购票数据集存入大数据计算分析系统的Hive数据仓库中,并进行数据预处理,得到下一步算法需要的各个指标点;
S2:使用K-Means算法进行按账号作为用户唯一标识进行用户画像构建并存储;
S3:构建模糊神经网络模型,使用历史数据结合用户画像生成训练集,并由专家统计分析给出算法所需隶属函数,进而训练模糊神经网络模型;
S4:采用经过训练的模糊神经网络,对实时购票请求进行分析处理,得到的结果反馈给下游业务系统;业务系统接收分析处理结果,根据惩罚规则进行放行或惩罚。
优选地,S1包括以下步骤:
S1.1:在大数据计算分析系统的Hive中建立购票请求数据表和用户账号数据表;并将往年历史数据导入两张表中;
S1.2:根据请求多种原始购票和账号数据统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"T_MOST_TYPE":"成功订单座位类型总数的有座与无座次数差值",
"USER_PREFER_SRC":"常用乘车的出发站点",
"USER_PREFER_DES":"最多次数乘车的目的地站点",
"USER_GPS":"设备定位地址(如果购票方式是通过手机)",
"IP_LOCATION":"发出请求的IP归属地(默认为unKnow)",
"REQ_DENSITY":"每秒请求次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"USER_ADDRESS":"推测居住地"。
S1.3:根据S1.2的统计结果统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"USER_GPS_COUNT":"手机购票次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"T_MOST_TYPE":"成功订单座位中的有座票与无座票次数差值",
"USER_ADDRESS_REQ_RATIO":"于推测居住地发起购票次数于与总购票次数比值"。
S1.3得到的数据将用于K-Means算法的输入数据集。
优选地,推测居住地的推测方法为:
若存在移动设备定位地址则使用最多次相同定位地址为准,若不存在则使用USER_PREFER_SRC的所在城市作为推测居住地"。
优选地,步骤S2中通过大数据计算平台中的Flink计算引擎利用K-Means算法进行用户画像的构建,最终得到的用户画像。用户画像包含多个指标数据,最关键的指标是系统处理用户购票请求的优先度,优先度为1-5,数字越高表示越优先处理,S2包括以下步骤:
S2.1:构建系统处理用户购票请求的优先度规则,优先度为1-5,数字越高表示越优先处理:
手机购票次数越多的用户,优先度增加;
ip或账号的单个时间内请求次数也就是频率越大,优先度降低;
购票ip归属地长期非账户推测居住地,优先度降低;
T_MOST_TYPE的值高于所有用户的平均水平,优先度越高。
S2.2:S1.3的数据中,USER_ID和T_IDSER只是标识数据所属于哪个用户,不参与相似度计算。通过对USER_ID和T_IDSER两个指标以外的指标进行归一化,然后根据S2.1的优先度规则给出五个初始训练样本,从上到下对应优先级5至1:
(x1,y1,1.00,0.00,1.00,1.00,5),
(x2,y2,0.80,0.25,0.80,0.80,4),
(x3,y3,0.50,0.50,0.50,0.50,3),
(x4,y4,0.25,0.80,0.25,0.25,2),
(x5,y5,0.00,1.00,0.00,0.00,1)
其中,上述五个样本的格式为:(USER_ID,T_IDSER,USER_GPS_COUNT_NORMAL,CHECK_TIME_AVG_NORMAL,USER_ADDRESS_REQ_RATIO_NORMAL,T_MOST_TYPE_NORMAL,PRI_LABEL);
PRI_LABEL为优先级标签,后缀为_NORMAL的表示原字段值归一化后的结果
x1-x5,y1-y5分别表示不同的USER_ID,T_IDSER;
S2.3:根据S2.2给出的五个自定义样本点作为簇中心,从上到下分别为μ1,μ2,μ3,μ4,μ5,将S1.3中所描述的预处理后的用户购票;
使用S2.2给出的五个自定义样本点为中心,使用Kmeans算法将历史数据集中的所有数据聚集成为5类优先级数据(也可理解为分成5类优先级)。比如A数据聚集在给出μ1样本点周围,而μ1样本点数属于优先级5级的数据,那么A会被认为属于5级优先级数据。
历史数据集作为输入;每条数据称为一个样本xm,m∈[1,n],n表示数据总数;按照以下过程进行计算:
(1)计算每个样本xm与各“簇中心”向量的欧式距离,根据距离最近的“簇中心”向量确定xm的簇标记:
γm=argmin||xm-μi||2,i=1,2,…5
其中argmin是使目标函数取最小值时的变量值。
(2)更新各个簇中心:
其中ni表示为属于簇i的样本总数;
(3)判断簇标签是否达到收敛精度,若达到,则输出各簇中心;若未达到,则返回步骤(2);直到簇标签达到预设的收敛精度为止;
S2.4:通过Flink计算引擎得出的处理优先度,还需在计算中关联S1所述历史数据中每个账号本身的其他数据,由于通过S2.3用用户数据计算出了每个用户的请求处理优先级顺序,但是用户画像除了优先级外还需要别的更丰富的特征,所有需要以用户ID(USER_ID)为分辨标识,将刚算好的优先级和之前S1.2中的部分特征组合一起,成为多个特征的用户画像数据。从而每个用户ID都有自己的画像数据。也称为关联某数据。
,才是完整的用户画像数据,完整数据格式为:
"USER_ID":"用户账号","T_IDSER":"身份证号码",
"USER_PREFER_SRC":常用的乘车出发站点,
"USER_PREFER_DES":"常用的乘车目的地站点,
"USER_ADDRESS":"推测居住地,
"PRI_LABEL":"请求的处理优先级";
上述格式的数据直接存储至Redis数据库中,在售票期间供实时计算过程使用。
优选地,S3需要构建并训练模糊神经网络,并使用Flink计算引擎的利用训练后的算法模型实时辨识购票请求是否属于黄牛的异常购票行为,并将识别后的结果发送给下游业务系统,S3包括以下步骤:
S3.1:提出购票期间的异常购票行为识别根据:
(1)同一ip或者账号请求频率大于正常行为数据集得到的均值;
(2)同一ip或者账号购票请求包含不同乘车人数量大于正常平均值;
(3)同一ip或者账号以大于正常平均值的次数购买自身画像定义常来往车站之外的车站车票的次数;
(4)S2.4中获得的处理优先级,缺失则默认为(3);
以上包含的正常行为平均值数据在进行历史数据分析时一并计算得出并存入数据库用于下一步训练模型和实时计算中使用。
S3.2:建立并训练模糊神经网络模块模型,内容包括:
S3.3:利用训练后的模型完成计算任务;
1)将经过训练的模型文件,存储到大数据计算分析系统中等待调用;
2)实时购票数据进入运行中的计算分析系统进行计算;
3)将输出的y值交给下游业务系统。
其中,y值是用户实时购票请求数据所展现的特征,表示跟黄牛刷票行为的特征的相似度是多少,为0.0到1.0中间的一个数。
优选地,S3.2包括以下步骤:
S3.2.1:确定数据来源:
实时计算中,将实时请求数据提取后将进行计算,并不断累积同账号的购买行为参数。实时的用户请求数据结合S2.4存至Redis的用户画像数据,得到的计算样本将是4个维度的向量,在训练模型时使用历史请求数据一样可以获得以下指标参数:
"REQ_FREQUENCE":"100ms内请求频率","T_USER_COUNT":"包含不同乘车人数量",
"T_STATION_COUNT":"购买常来往车站之外的次数,
"PRI_LABEL":"请求的处理优先级"。
S3.2.2:建立模糊神经网络模型:
1)输入层:将4个维度的向量中内个维度的值用xm表示,即向量(x1,x2,x3,x4)为的模糊神经网络的输入;
2)模糊化层:每个特征,即xm的隶属函数由专家根据不同历史数据集统计分析给出,根据函数定义域划分为若干个函数分支,每个分支对应模糊化层的一个节点;
例如(x1,x2,x3,x4)对应的八组隶属函数分别有3、5、3、5个分支,其中μ1i(x1),i=1,2,3;μ2i(x2),i=1,2,3,4,5;…;μ4i(x4),i=1,2,3,4,5;其中,μ1i(x1),i表示。
故模糊化层一共10个节点;并且每个节点根据本身代表的隶属函数与上一层中跟这个隶属函数对应的特征输入节点相连;即模糊化层输出为:
4)与层:与层的节点数量为模糊规则数,模糊化层中共四组节点,四个组中分别选出一个与其他组选出的一个节点连接,所以与层一共有3*5*3*5=225个节点;每个节点的输出为上一层输入到这个节点的所有信号的乘积,即k4表示与层第几个节点,j为第二层隶属函数组的序号,i为每组函数中的一个分支的序号;
5)或层:节点数按照输出变量模糊度划分的个数确定,输出变量为当前数据属于刷票行为数据的可能性,所以或层有1个节点,每个节点与上一层为全互连,连接权值为其中k5表示本层第几个节点,这里k5=1;j=1,2,…,255;权值在训练中不断调整,故:
数值y即当前样本属于黄牛刷票行为的可能性,是一个0到1之间的小数。
S3.2.3:训练模糊神经模型得到经过训练的模糊神经网络;
优选地,S3.2.3中训练模糊神经模型使用的激活函数是ReLU函数(线性整流函数),其表达式为y=max(x,0),具体训练过程为:
S3.2.3.1:训练数据分为两类,正常和异常购票行为;将输出y定为其中一种;
S3.2.3.2:选择样本集合的一个样本(x,label),x为数据,label为x所属类别;
S3.2.3.3:将样本送入模糊神经网络,计算模糊神经网络的实际输出y;
S3.2.3.5:根据误差loss调整权重矩阵W;
S3.2.3.6:对每个样本重复上述过程,直到整个样本集的误差不超过规定范围,一般预测准确率达到93%以上。
优选地,S4包括以下步骤:
S4.1:提出以下惩罚处理规则:
将请求数据代入训练完毕的模糊神经网络模型进行计算,计算结果是一个概率值,表示此短时间内此账号购票行为是黄牛刷票的可能性,
设计算结果0.0-0.1,0.1-0.2,0.2-0.4,0.4-0.7,0.7-0.9,0.9-1.0分别表示当前购票行为数据是黄牛刷票的可能性为0到5级一共六种;
依次对应六种惩罚方式分别为:
0级放行,1级ip延后处理5%,2级ip延后处理10%,3级ip延后处理40%,4级ip延后处理90%,5级ip直接封禁。
S4.2:根据S4.1给出的惩罚等级进行惩罚处理;
根据S4.1给出的惩罚等级,如果是0级则直接正常处理,1级以上则根据不同等级对应的延后处理百分比,将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁。
本发明中用户画像构建的整体流程,先用Hive数据完成预处理,然后使用Flink计算引擎基于KMeasn算法进行用户特征聚类得出优先度,最后Flink将每个账号对应的用户购票请求处理优先度和预处理的数据中其他有代表性的用户特征参数,一并写入Redis数据库。至此完成用户画像构建。
本发明基于KMeans算法实现用户行为特征分类。先提出关于优先度分级的四个规则。涉及使用手机购票次数、请求频率、请求的ip归属地、成功购票订单座位类型四个方面。然后进行用户画像的特征选择,包括常用的乘车出发站点、推测居住地等多个特征。给出五个对应优先级5至1的初始聚类中心。最后,根据给出的五个初始聚类中心作为簇中心,预处理后的用户购票历史数据集作为输入,按照KMeans算法通用的计算过程完成聚类任务。
此外,本发明还提出购票期间的异常购票行为识别根据,包括:同一账号或ip的请求频率、同一账号或ip下单不同乘车人的数量、同一账号或ip购买自身画像定义的常来往车站之外的其他车站车票次数。
本发明所述算法的输入参数选型、算法的输出。包括:
输入:实时的用户请求数据结合S2.4存至Redis的用户画像数据,得到的计算样本将是4个维度的向量。
输出:一个概率值,表示短时间内此账号的综合购票行为是黄牛刷票的可能性。
本发明还提出根据模糊神经网络计算结果分出六种惩罚级别的办法。包括:模糊神经网络的计算结果0.0-0.1,0.1-0.2,0.2-0.4,0.4-0.7,0.7-0.9,0.9-1.0分别表示当前购票行为数据是黄牛刷票的可能性为0到5级一共六种。
然后指定各级别的惩罚方式,包括:0级放行,1级ip延后处理5%等。其中延后处理百分比是指将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁。
本发明所述智能车站反刷票系统包括:数仓工具Hive、数据库、计算引擎Flink、历史数据行为分析模块、模糊神经网络算法模块、后台业务系统模块;
数据库存储历史数据;
数仓工具Hive用来完成数据预处理;
计算引擎Flink完成离线计算任务,也就是历史购票行为数据分析;
历史数据行为分析模块将经过预处理后的历史购票数据,利用K-Means算法进行用户画像的构建,最终得到的用户画像;
模糊神经网络算法模块首先对模糊神经网络模型使用历史购票数据进行训练;购票请求经过使用Flink计算引擎的计算分析,调用经过训练的模糊神经网络算法,结合账号对应的用户画像和本文将会介绍的三个规则辨识购票请求是否属于黄牛的异常购票行为,最后将识别后的结果发送给后台业务系统;
后台业务系统根据模糊神经网络算法模块的识别结果进行相应的购票限制;分别为无需延后处理,延后处理5%、10%、40%、90%、ip直接封禁六个限制级别进行购票限制;惩罚百分比指的是将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁。
本发明算法模型与整个系统的整合应用,先定义四个维度的输入数据格式,确定输出,根据经典的或专家给定的隶属度函数,完成模糊化层构建,后续按照模型自身规则完成与层、或层、反模糊化层的构建。然后使用历史购票数据进行模型训练,得到经过训练的模糊神经网络,最后将模型代码文件通过Flink计算引擎实现工程应用,完成实时反刷票业务。
与现有技术相比,本发明技术方案的有益效果是:
(1).目前已有的系统直接对请求频率过高的ip进行封禁,本发明提出根据多个其他维度的判断依据,可以更准确地涵盖刷票行为的相关特征,使用模糊神经网络计算出属于黄牛行为的可能性,可以根据本发明提出的不同惩罚手段,避免了部分非黄牛用户某些特殊情况下被封禁Ip的风险。
(2).此外,2018年底上线的候补购票能很大程度上缓解黄牛刷票的问题。但是仍旧无法解决第一批次放票以及黄牛自身利用大量用户账号也进行候补购票的问题。本发明通过历史数据分析的相关指标为依据,加上模糊神经网络模型,在购票期间对用户类别进行实时鉴定,可以有效解决上述问题。
(3)本发明使用模糊神经网络,其中的隶属函数可以根据历史数据分析统计,或者根据专家经验进行给出,可以很好地解决一些模糊的度量概念,比如购票请求频次过高,多少属于过高,频次属于高的范畴下是否有多个不同范围,这有利于对刷票行为严重性进行分辨,从而可以得到刷票行为的严重级别,针对性采取惩罚方式。
附图说明
图1为实施例1所述智能车站反刷票方法流程图;
图2为模糊神经网络架构图;
图3为实施例2所述智能车站反刷票系统示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本实施例提供一种智能车站反刷票方法,如图1所示,所述方法包括以下步骤:
S1:将历史购票数据集存入大数据计算分析系统的Hive数据仓库中,并进行数据预处理,得到下一步算法需要的各个指标点;
S2:使用K-Means算法进行按账号作为用户唯一标识进行用户画像构建并存储;
S3:构建模糊神经网络模型,使用历史数据结合用户画像生成训练集,并由专家统计分析给出算法所需隶属函数,进而训练模糊神经网络模型;
S4:采用经过训练的模糊神经网络,对实时购票请求进行分析处理,得到的结果反馈给下游业务系统;业务系统接收分析处理结果,根据惩罚规则进行放行或惩罚。
下面结合图1对本实施例进行详细说明:
S1:将历史购票数据集存入大数据计算分析系统的Hive数据仓库中,并进行数据预处理,得到下一步算法需要的各个指标点;
S1.1:在大数据计算分析系统的Hive中建立购票请求数据表和用户账号数据表。并将往年历史数据导入两张表中。
S1.2:根据请求多种原始购票和账号数据统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"T_MOST_TYPE":"成功订单座位类型总数的有座与无座次数差值",
"USER_PREFER_SRC":"常用乘车的出发站点",
"USER_PREFER_DES":"最多次数乘车的目的地站点",
"USER_GPS":"设备定位地址(如果购票方式是通透手机)",
"IP_LOCATION":"发出请求的IP归属地(默认为unKnow)",
"REQ_DENSITY":"每秒请求次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"USER_ADDRESS":"推测居住地,若存在移动设备定位地址则使用最多次相同定位地址为准,若不存在则使用USER_PREFER_SRC的所在城市作为推测居住地"。
S1.3:根据S1.2的计算结果统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"USER_GPS_COUNT":"手机购票次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"T_MOST_TYPE":"成功订单座位中的有座票与无座票次数差值",
"USER_ADDRESS_REQ_RATIO":"于推测居住地发起购票次数于与总购票次数比值"。
本实施例S1.3得到的数据将用于下一步K-Means算法的输入数据集。S1.3所提出的各种参数,是本实施例研究与设计的计算指标,并对其他模块的业务有重要作用。
S2:使用K-Means算法进行按账号作为用户唯一标识进行用户画像构建并存储;
步骤S2中通过大数据计算平台中的Flink计算引擎利用K-Means算法进行用户画像的构建,最终得到的用户画像。用户画像包含多个指标数据,最关键的指标是系统处理用户购票请求的优先度,优先度为1-5,数字越高表示越优先处理,具体步骤包括:
S2.1:提出以下规则
手机购票次数越多的用户,优先度增加。
ip或账号的单个时间内请求次数也就是频率越大,优先度降低。
购票ip归属地长期非账户推测居住地,优先度降低。
T_MOST_TYPE的值高于所有用户的平均水平,优先度越高。
S2.2:S1.3的数据中,USER_ID和T_IDSER只是标识数据所属于哪个用户,不参与相似度计算。通过对上述两个指标以外的指标进行归一化,然后根据S2.1规则给出五个初始训练样本,从上到下对应优先级5至1。
(x1,y1,1.00,0.00,1.00,1.00,5),
(x2,y2,0.80,0.25,0.80,0.80,4),
(x3,y3,0.50,0.50,0.50,0.50,3),
(x4,y4,0.25,0.80,0.25,0.25,2),
(x5,y5,0.00,1.00,0.00,0.00,1)
其中,上面五个样本的格式为:
(USER_ID,T_IDSER,USER_GPS_COUNT_NORMAL,CHECK_TIME_AVG_NORMAL,USER_ADDRESS_REQ_RATIO_NORMAL,T_MOST_TYPE_NORMAL,PRI_LABEL)
PRI_LABEL为优先级标签,后缀为_NORMAL的表示原字段值归一化后的结果;x1-x5,y1-y5分别表示不同的USER_ID,T_IDSER。
S2.3:根据S2.2给出的五个自定义样本点作为簇中心,从上到下为μ1,μ2,μ3,μ4,μ5,将S1.3中所描述的预处理后的用户购票;
历史数据集作为输入。每条数据称为一个样本xm,m∈[1,n],n表示数据总数。按照以下过程进行计算:
S2.3.1:计算每个样本xm与各“簇中心”向量的欧式距离,根据距离最近的“簇中心”向量确定xm的簇标记:γm=argmin||xm-μi||2,i=1,2,…5。
其中argmin是使目标函数取最小值时的变量值。
S2.3.2:更新各个簇中心。
S2.3.3:直到簇标签达到预设的收敛精度为止,否则重复S2.3.2-S2.3.3步的计算。
收敛精度可以多次训练选择最好的收敛精度,本实施例初次可以设置为精度为0.05。
S2.4:通过Flink计算引擎得出的处理优先度,还需在计算中关联S1所述历史数据中每个账号本身的其他数据,才是完整的用户画像数据,完整数据格式为"USER_ID":"用户账号","T_IDSER":"身份证号码",
"USER_PREFER_SRC":常用的乘车出发站点,
"USER_PREFER_DES":"常用的乘车目的地站点,
"USER_ADDRESS":"推测居住地,
"PRI_LABEL":"请求的处理优先级"。
这些格式的数据直接存储至Redis数据库中。在售票期间供实时计算过程使用。
S3:构建模糊神经网络模型,使用历史数据结合用户画像生成训练集,并由专家统计分析给出算法所需隶属函数,进而训练模糊神经网络模型;
S3需要构建并训练模糊神经网络,并使用Flink计算引擎的利用训练后的算法模型实时辨识购票请求是否属于黄牛的异常购票行为,并将识别后的结果发送给下游业务系统,具体步骤包括:
S3.1:提出以下三种购票期间的异常购票行为识别根据:
(1)同一ip或者账号请求频率大于正常行为数据集得到的均值。
(2)同一ip或者账号购票请求包含不同乘车人数量大于正常平均值。
(3)同一ip或者账号以大于正常平均值的次数购买自身画像定义常来往车站之外的车站车票的次数。
(4)S2.4中获得的处理优先级,缺失则默认为3。
以上包含的正常行为平均值数据在专人进行历史数据分析时一并计算得出并存入数据库用于下一步训练模型和实时计算中使用。
S3.2:建立并训练模糊神经网络模块模型,内容包括:
S3.2.1:确定数据来源:
实时计算中,将实时请求数据提取后将进行计算,并不断累积同账号的购买行为参数。实时的用户请求数据结合S2.4存至Redis的用户画像数据,得到的计算样本将是4个维度的向量,在训练模型时使用历史请求数据一样可以获得以下指标参数:
"REQ_FREQUENCE":"100ms内请求频率","T_USER_COUNT":"包含不同乘车人数量",
"T_STATION_COUNT":"购买常来往车站之外的次数,
"PRI_LABEL":"请求的处理优先级"。
S3.2.2:建立模型,如图2所示:
1)输入层:将4个维度的向量中内个维度的值用xm表示,即向量(x1,x2,x3,x4)为的模糊神经网络的输入;
2)模糊化层:每个特征即xm的隶属函数由专家根据不同历史数据集统计分析给出,根据函数定义域划分为若干个函数分支,每个分支对应模糊化层的一个节点。
例如(x1,x2,x3,x4)对应的八组隶属函数分别有3、5、3、5个分支,其中μ1i(x1),i=1,2,3;μ2i(x2),i=1,2,3,4,5;…;μ4i(x4),i=1,2,3,4,5
故模糊化层一共10个节点。并且每个节点根据本身代表的隶属函数与上一层中跟这个隶属函数对应的特征输入节点相连。即模糊化层输出为
4)与层:这层的节点数量为模糊规则数,模糊化层中共四组节点,四个组中分别选出一个与其他组选出的一个节点连接,所以与层一共有3*5*3*5=225个节点。每个节点的输出为上一层输入到这个节点的所有信号的乘积即:k4表示与层第几个节点,j为第二层隶属函数组的序号,i为每组函数中的一个分支的序号;
5)或层:节点数按照输出变量模糊度划分的个数确定,本设计一共只会有一种输出,即是当前数据属于刷票行为数据的可能性,所以这一层有1个节点,每个节点与上一层为全互连,连接权值为其中k表示本层第几个节点,这里k5=1;j=1,2,…,255。权值在训练中不断调整,故:
数值y即当前样本属于黄牛刷票行为的可能性,是一个0到1之间的小数。
如图2所示,本实施例以X1、X2、X3、X4对应的四组隶属函数分别有3、5、3、5个分支为例。
S3.2.3:训练模型得到经过训练的模糊神经网络
其中,使用的激活函数可以是ReLU函数(线性整流函数),其表达式为y=max(x,0)。具体训练过程为:
1)训练数据分为两类,正常和异常购票行为。将输出y定为其中一种;
2)选择样本集合的一个样本(x,label),x为数据,label为x所属类别;
3)样本送入网络,计算网络的实际输出y;
5)根据误差loss调整权重矩阵W;
6)对每个样本重复上述过程,直到整个样本集的误差不超过规定范围(预测准确率93%以上)。
S3.3:训练后的模型完成计算任务
1)将经过训练的模型文件,存储到大数据计算分析系统中等待调用;
2)实时购票数据进入运行中的计算分析系统进行计算;
3)将输出的y值交给下游业务系统。
其中,y值是用户实时购票请求数据所展现的特征,表示跟黄牛刷票行为的特征的相似度是多少,为0.0到1.0中间的一个数。
S4:采用经过训练的模糊神经网络,对实时购票请求进行分析处理,得到的结果反馈给下游业务系统;业务系统接收分析处理结果,根据惩罚规则进行放行或惩罚。
此模块根据S3的识别结果进行相应的购票限制。一共有无需延后处理,延后处理5%、10%、40%、90%、ip直接封禁六个级别的处理控制。具体内容如下:
S4.1:提出以下惩罚处理规则:
将请求数据进行代入训练完毕的模糊神经网络模型进行计算,计算结果是一个概率值,表示此短时间内此账号购票行为是黄牛刷票的可能性,
计算结果0.0-0.1,0.1-0.2,0.2-0.4,0.4-0.7,0.7-0.9,0.9-1.0分别表示当前购票行为数据是黄牛刷票的可能性为0到5级一共六种。
惩罚方式分别为:
0级放行,1级ip延后处理5%,2级ip延后处理10%,3级ip延后处理40%,4级ip延后处理90%,5级ip直接封禁。
S4.2:惩罚处理
根据上一个步骤给出的惩罚等级,如果是0级则直接正常处理,1级以上则根据不同等级对应的延后处理百分比,将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁。
实施例2
本实施例提供一种智能车站反刷票方法,应用于智能车站(高铁站或者火车站)下反刷票,使用车站票务系统历史数据,以及基于KMeans算法实现用户行为分类。运营期间产生实时的购票数据时,结合用户画像数据,经过大数据实时计算分析平台的模糊神经网络计算得出刷票请求是否属于刷票行为的结果,并交由下游业务系统决定是否需要惩罚以及如何惩罚。
如图3所示,本实施例所述系统包含数仓工具Hive、数据库、计算引擎Flink、历史数据行为分析模块、模糊神经网络算法模块、后台业务系统模块
数据库为所述系统提供历史数据;
Hive完成数据预处理,提供算法需要的数据。
计算引擎Flink完成离线计算任务,也就是历史购票行为数据分析。
历史数据行为分析模块将经过预处理后的历史购票数据,利用K-Means算法进行用户画像的构建,最终得到的用户画像,供下游实时计算业务使用。
模糊神经网络算法模块首先对模糊神经网络模型使用历史购票数据进行训练。售票系统运营期间,购票请求会经过使用Flink计算引擎的计算分析,调用经过训练的模糊神经网络算法,结合账号对应的用户画像和本文将会介绍的三个规则辨识购票请求是否属于黄牛的异常购票行为,最后将识别后的结果发送给下游业务系统。
后台业务系统根据模糊神经网络算法模块的识别结果进行相应的购票限制。一共有无需延后处理,延后处理5%、10%、40%、90%、ip直接封禁六个级别的处理控制。
惩罚百分比指的是将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁。
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (5)
1.一种智能车站反刷票方法,其特征在于,所述方法包括以下步骤:
S1:将历史购票数据集存入大数据计算分析系统的Hive数据仓库中,并进行数据预处理,得到下一步算法需要的各个指标点;
S2:使用K-Means算法按账号作为用户唯一标识进行用户画像构建并存储;
S3:构建模糊神经网络模型,使用历史数据结合用户画像生成训练集,并由专家统计分析给出算法所需隶属函数,进而训练模糊神经网络模型;
S4:采用经过训练的模糊神经网络,对实时购票请求进行分析处理,得到的结果反馈给下游业务系统;业务系统接收分析处理结果,根据惩罚规则进行放行或惩罚;
S1包括以下步骤:
S1.1:在大数据计算分析系统的Hive中建立购票请求数据表和用户账号数据表;并将往年历史数据导入购票请求数据表和用户账号数据表中;
S1.2:根据请求多种原始购票和账号数据统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"T_MOST_TYPE":"成功订单座位类型总数的有座与无座次数差值",
"USER_PREFER_SRC":"常用乘车的出发站点",
"USER_PREFER_DES":"最多次数乘车的目的地站点",
"USER_GPS":"设备定位地址",
"IP_LOCATION":"发出请求的IP归属地",
"REQ_DENSITY":"每秒请求次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"USER_ADDRESS":"推测居住地";
S1.3:根据S1.2的统计结果统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"USER_GPS_COUNT":"手机购票次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"T_MOST_TYPE":"成功订单座位中的有座票与无座票次数差值",
"USER_ADDRESS_REQ_RATIO":"于推测居住地发起购票次数于与总购票次数比值";
S2包括以下步骤:
S2.1:构建系统处理用户购票请求的优先度规则,优先度为1-5,数字越高表示越优先处理:
手机购票次数越多的用户,优先度增加;
ip或账号的单个时间内请求次数也就是频率越大,优先度降低;
购票ip归属地长期非账户推测居住地,优先度降低;
T_MOST_TYPE的值高于所有用户的平均水平,优先度越高;
S2.2:通过对USER_ID和T_IDSER两个指标以外的指标进行归一化,然后根据S2.1的优先度规则给出五个初始训练样本,从上到下对应优先级5至1:
(x1,y1,1.00,0.00,1.00,1.00,5),
(x2,y2,0.80,0.25,0.80,0.80,4),
(x3,y3,0.50,0.50,0.50,0.50,3),
(x4,y4,0.25,0.80,0.25,0.25,2),
(x5,y5,0.00,1.00,0.00,0.00,1)
其中,上述五个样本的格式为:(USER_ID,T_IDSER,USER_GPS_COUNT_NORMAL,CHECK_TIME_AVG_NORMAL,USER_ADDRESS_REQ_RATIO_NORMAL,T_MOST_TYPE_NORMAL,PRI_LABEL);
PRI_LABEL为优先级标签,后缀为_NORMAL的表示原字段值归一化后的结果;
x1-x5,y1-y5分别表示不同的USER_ID,T_IDSER;
S2.3:根据S2.2给出的五个自定义样本点作为簇中心,从上到下分别为μ1,μ2,μ3,μ4,μ5,将S1.3中所描述的预处理后的用户购票;
历史数据集作为输入;每条数据称为一个样本xm,∈[1,n],n表示数据总数;按照以下过程进行计算:
(1)计算每个样本xm与各“簇中心”向量的欧式距离,根据距离最近的“簇中心”向量确定xm的簇标记:
γm=argmin||xm-μi||2,i=1,2,…5
其中argmin是使目标函数取最小值时的变量值;
(2)更新各个簇中心:
其中ni表示为属于簇i的样本总数;
(3)判断簇标签是否达到收敛精度,若达到,则输出各簇中心;若未达到,则返回步骤(2);直到簇标签达到预设的收敛精度为止;
S2.4:通过Flink计算引擎得出的处理优先度,还需在计算中关联S1所述历史数据中每个账号本身的其他数据,才是完整的用户画像数据,完整数据格式为:
"USER_ID":"用户账号","T_IDSER":"身份证号码",
"USER_PREFER_SRC":常用的乘车出发站点,
"USER_PREFER_DES":"常用的乘车目的地站点,
"USER_ADDRESS":"推测居住地,
"PRI_LABEL":"请求的处理优先级";
上述格式的数据直接存储至Redis数据库中,在售票期间供实时计算过程使用;
S3包括以下步骤:
S3.1:提出购票期间的异常购票行为识别根据:
(1)同一ip或者账号请求频率大于正常行为数据集得到的均值;
(2)同一ip或者账号购票请求包含不同乘车人数量大于正常平均值;
(3)同一ip或者账号以大于正常平均值的次数购买自身画像定义常来往车站之外的车站车票的次数;
(4)S2.4中获得的处理优先级,缺失则默认为(3);
以上包含的正常行为平均值数据在进行历史数据分析时一并计算得出并存入数据库用于下一步训练模型和实时计算中使用;
S3.2:建立并训练模糊神经网络模块模型,内容包括:
S3.3:利用训练后的模型完成计算任务;
1)将经过训练的模型文件,存储到大数据计算分析系统中等待调用;
2)实时购票数据进入运行中的计算分析系统进行计算;
3)将输出的y值交给下游业务系统;
其中,y值是用户实时购票请求数据所展现的特征,表示跟黄牛刷票行为的特征的相似度是多少,为0.0到1.0中间的一个数;
S4包括以下步骤:
S4.1:提出以下惩罚处理规则:
将请求数据代入训练完毕的模糊神经网络模型进行计算,计算结果是一个概率值,表示此短时间内此账号购票行为是黄牛刷票的可能性,
设计算结果0.0-0.1,0.1-0.2,0.2-0.4,0.4-0.7,0.7-0.9,0.9-1.0分别表示当前购票行为数据是黄牛刷票的可能性为0到5级一共六种;
依次对应六种惩罚方式分别为:
0级放行,1级ip延后处理5%,2级ip延后处理10%,3级ip延后处理40%,4级ip延后处理90%,5级ip直接封禁;
S4.2:根据S4.1给出的惩罚等级进行惩罚处理;
根据S4.1给出的惩罚等级,如果是0级则直接正常处理,1级以上则根据不同等级对应的延后处理百分比,将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁。
2.根据权利要求1所述的智能车站反刷票方法,其特征在于,推测居住地的推测方法为:
若存在移动设备定位地址则使用最多次相同定位地址为准,若不存在则使用USER_PREFER_SRC的所在城市作为推测居住地"。
3.根据权利要求1所述的智能车站反刷票方法,其特征在于,S3.2包括以下步骤:
S3.2.1:确定数据来源:
实时计算中,将实时请求数据提取后将进行计算,并不断累积同账号的购买行为参数;实时的用户请求数据结合S2.4存至Redis的用户画像数据,得到的计算样本将是4个维度的向量,在训练模型时使用历史请求数据一样可以获得以下指标参数:
"REQ_FREQUENCE":"100ms内请求频率","T_USER_COUNT":"包含不同乘车人数量",
"T_STATION_COUNT":"购买常来往车站之外的次数,
"PRI_LABEL":"请求的处理优先级";
S3.2.2:建立模糊神经网络模型:
1)输入层:将4个维度的向量中内个维度的值用xm表示,即向量(x1,x2,x3,x4)为的模糊神经网络的输入;
2)模糊化层:每个特征,即xm的隶属函数由专家根据不同历史数据集统计分析给出,根据函数定义域划分为若干个函数分支,每个分支对应模糊化层的一个节点;
故模糊化层一共10个节点;并且每个节点根据本身代表的隶属函数与上一层中跟这个隶属函数对应的特征输入节点相连;即模糊化层输出为:
4)与层:与层的节点数量为模糊规则数,模糊化层中共四组节点,四个组中分别选出一个与其他组选出的一个节点连接,所以与层一共有3*5*3*5=225个节点;每个节点的输出为上一层输入到这个节点的所有信号的乘积,即k4表示与层第几个节点,j为第二层隶属函数组的序号,i为每组函数中的一个分支的序号;
5)或层:节点数按照输出变量模糊度划分的个数确定,输出变量为当前数据属于刷票行为数据的可能性,所以或层有1个节点,每个节点与上一层为全互连,连接权值为其中k5表示本层第几个节点,这里k5=1;j=1,2,…,255,权值在训练中不断调整,故:
数值y即当前样本属于黄牛刷票行为的可能性,是一个0到1之间的小数;
S3.2.3:训练模糊神经模型得到经过训练的模糊神经网络。
5.一种智能车站反刷票系统,其特征在于,所述系统包括:数仓工具Hive、数据库、计算引擎Flink、历史数据行为分析模块、模糊神经网络算法模块、后台业务系统模块;
数据仓库存储历史数据;
数仓工具Hive用来完成数据预处理;
计算引擎Flink完成离线计算任务,也就是历史购票行为数据分析;
历史数据行为分析模块将经过预处理后的历史购票数据,利用K-Means算法进行用户画像的构建,最终得到的用户画像;
模糊神经网络算法模块首先对模糊神经网络模型使用历史购票数据进行训练;购票请求经过使用Flink计算引擎的计算分析,调用经过训练的模糊神经网络算法,结合账号对应的用户画像和本文将会介绍的三个规则辨识购票请求是否属于黄牛的异常购票行为,最后将识别后的结果发送给后台业务系统;
后台业务系统根据模糊神经网络算法模块的识别结果进行相应的购票限制;分别为无需延后处理,延后处理5%、10%、40%、90%、ip直接封禁六个限制级别进行购票限制;惩罚百分比指的是将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁;
数仓工具Hive包括以下步骤:
S1.1:在大数据计算分析系统的Hive中建立购票请求数据表和用户账号数据表;并将往年历史数据导入购票请求数据表和用户账号数据表中;
S1.2:根据请求多种原始购票和账号数据统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"T_MOST_TYPE":"成功订单座位类型总数的有座与无座次数差值",
"USER_PREFER_SRC":"常用乘车的出发站点",
"USER_PREFER_DES":"最多次数乘车的目的地站点",
"USER_GPS":"设备定位地址",
"IP_LOCATION":"发出请求的IP归属地",
"REQ_DENSITY":"每秒请求次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"USER_ADDRESS":"推测居住地";
S1.3:根据S1.2的统计结果统计出以下的数据指标:
"USER_ID":"用户账号",
"T_IDSER":"身份证号码",
"USER_GPS_COUNT":"手机购票次数",
"CHECK_TIME_AVG":"平均请求时间间隔",
"T_MOST_TYPE":"成功订单座位中的有座票与无座票次数差值",
"USER_ADDRESS_REQ_RATIO":"于推测居住地发起购票次数于与总购票次数比值";
历史数据行为分析模块包括以下步骤:
S2.1:构建系统处理用户购票请求的优先度规则,优先度为1-5,数字越高表示越优先处理:
手机购票次数越多的用户,优先度增加;
ip或账号的单个时间内请求次数也就是频率越大,优先度降低;
购票ip归属地长期非账户推测居住地,优先度降低;
T_MOST_TYPE的值高于所有用户的平均水平,优先度越高;
S2.2:通过对USER_ID和T_IDSER两个指标以外的指标进行归一化,然后根据S2.1的优先度规则给出五个初始训练样本,从上到下对应优先级5至1:
(x1,y1,1.00,0.00,1.00,1.00,5),
(x2,y2,0.80,0.25,0.80,0.80,4),
(x3,y3,0.50,0.50,0.50,0.50,3),
(x4,y4,0.25,0.80,0.25,0.25,2),
(x5,y5,0.00,1.00,0.00,0.00,1)
其中,上述五个样本的格式为:(USER_ID,T_IDSER,USER_GPS_COUNT_NORMAL,CHECK_TIME_AVG_NORMAL,USER_ADDRESS_REQ_RATIO_NORMAL,T_MOST_TYPE_NORMAL,PRI_LABEL);
PRI_LABEL为优先级标签,后缀为_NORMAL的表示原字段值归一化后的结果;
x1-x5,y1-y5分别表示不同的USER_ID,T_IDSER;
S2.3:根据S2.2给出的五个自定义样本点作为簇中心,从上到下分别为μ1,μ2,μ3,μ4,μ5,将S1.3中所描述的预处理后的用户购票;
历史数据集作为输入;每条数据称为一个样本xm,m∈[1,n],n表示数据总数;按照以下过程进行计算:
(1)计算每个样本xm与各“簇中心”向量的欧式距离,根据距离最近的“簇中心”向量确定xm的簇标记:
γm=argmin||xm-μi||2,i=1,2,…5
其中argmin是使目标函数取最小值时的变量值;
(2)更新各个簇中心:
其中ni表示为属于簇i的样本总数;
(3)判断簇标签是否达到收敛精度,若达到,则输出各簇中心;若未达到,则返回步骤(2);直到簇标签达到预设的收敛精度为止;
S2.4:通过Flink计算引擎得出的处理优先度,还需在计算中关联S1所述历史数据中每个账号本身的其他数据,才是完整的用户画像数据,完整数据格式为:
"USER_ID":"用户账号","T_IDSER":"身份证号码",
"USER_PREFER_SRC":常用的乘车出发站点,
"USER_PREFER_DES":"常用的乘车目的地站点,
"USER_ADDRESS":"推测居住地,
"PRI_LABEL":"请求的处理优先级";
上述格式的数据直接存储至Redis数据库中,在售票期间供实时计算过程使用;
模糊神经网络算法模块包括以下步骤:
S3.1:提出购票期间的异常购票行为识别根据:
(1)同一ip或者账号请求频率大于正常行为数据集得到的均值;
(2)同一ip或者账号购票请求包含不同乘车人数量大于正常平均值;
(3)同一ip或者账号以大于正常平均值的次数购买自身画像定义常来往车站之外的车站车票的次数;
(4)S2.4中获得的处理优先级,缺失则默认为(3);
以上包含的正常行为平均值数据在进行历史数据分析时一并计算得出并存入数据库用于下一步训练模型和实时计算中使用;
S3.2:建立并训练模糊神经网络模块模型,内容包括:
S3.3:利用训练后的模型完成计算任务;
1)将经过训练的模型文件,存储到大数据计算分析系统中等待调用;
2)实时购票数据进入运行中的计算分析系统进行计算;
3)将输出的y值交给下游业务系统;
其中,y值是用户实时购票请求数据所展现的特征,表示跟黄牛刷票行为的特征的相似度是多少,为0.0到1.0中间的一个数;
后台业务系统包括以下步骤:
S4.1:提出以下惩罚处理规则:
将请求数据代入训练完毕的模糊神经网络模型进行计算,计算结果是一个概率值,表示此短时间内此账号购票行为是黄牛刷票的可能性,
设计算结果0.0-0.1,0.1-0.2,0.2-0.4,0.4-0.7,0.7-0.9,0.9-1.0分别表示当前购票行为数据是黄牛刷票的可能性为0到5级一共六种;
依次对应六种惩罚方式分别为:
0级放行,1级ip延后处理5%,2级ip延后处理10%,3级ip延后处理40%,4级ip延后处理90%,5级ip直接封禁;
S4.2:根据S4.1给出的惩罚等级进行惩罚处理;
根据S4.1给出的惩罚等级,如果是0级则直接正常处理,1级以上则根据不同等级对应的延后处理百分比,将当前需要惩罚的用户请求放到全量请求队列的前百分之多少进行排队等候或者直接封禁。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010090896.2A CN111292099B (zh) | 2020-02-13 | 2020-02-13 | 一种智能车站反刷票方法和反刷票系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010090896.2A CN111292099B (zh) | 2020-02-13 | 2020-02-13 | 一种智能车站反刷票方法和反刷票系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111292099A CN111292099A (zh) | 2020-06-16 |
CN111292099B true CN111292099B (zh) | 2023-04-25 |
Family
ID=71025581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010090896.2A Active CN111292099B (zh) | 2020-02-13 | 2020-02-13 | 一种智能车站反刷票方法和反刷票系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111292099B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112801668A (zh) * | 2021-02-05 | 2021-05-14 | 绿盟科技集团股份有限公司 | 一种防止自动刷票的方法 |
CN116451190B (zh) * | 2023-06-15 | 2023-08-18 | 恺恩泰(南京)科技有限公司 | 基于互联网医疗业务系统的数据权限设置方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512739A (zh) * | 2015-12-25 | 2016-04-20 | 北京奇虎科技有限公司 | 一种用于网络订票的方法及系统 |
CN105574597A (zh) * | 2015-12-25 | 2016-05-11 | 北京奇虎科技有限公司 | 一种网络订票的实现方法及系统 |
CN106453357A (zh) * | 2016-11-01 | 2017-02-22 | 北京红马传媒文化发展有限公司 | 一种网络购票异常行为的识别方法、系统及设备 |
-
2020
- 2020-02-13 CN CN202010090896.2A patent/CN111292099B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512739A (zh) * | 2015-12-25 | 2016-04-20 | 北京奇虎科技有限公司 | 一种用于网络订票的方法及系统 |
CN105574597A (zh) * | 2015-12-25 | 2016-05-11 | 北京奇虎科技有限公司 | 一种网络订票的实现方法及系统 |
CN106453357A (zh) * | 2016-11-01 | 2017-02-22 | 北京红马传媒文化发展有限公司 | 一种网络购票异常行为的识别方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111292099A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liao et al. | Integrated FAHP, ARAS-F and MSGP methods for green supplier evaluation and selection | |
US11138524B2 (en) | Cascaded boosted predictive models | |
US7472097B1 (en) | Employee selection via multiple neural networks | |
CN105761481B (zh) | 面向出租车动态合乘的智能调度方法和系统 | |
US20010021912A1 (en) | Method and apparatus for providing availability of airline seats | |
CN111292099B (zh) | 一种智能车站反刷票方法和反刷票系统 | |
US20080281643A1 (en) | Competitive Availability Tools | |
Ragab et al. | HRSPCA: Hybrid recommender system for predicting college admission | |
CN110431574A (zh) | 用于基于可共享网络的最佳的车辆车队规模制定、搭乘共享和实时调度的数据驱动系统 | |
WO2021147412A1 (zh) | 服务位置推荐方法、装置、电子设备及可读存储介质 | |
Nahmias-Biran et al. | From traditional to automated mobility on demand: a comprehensive framework for modeling on-demand services in SimMobility | |
CN113850550A (zh) | 面向高校园区的配餐订单智能派送方法、存储介质、计算机 | |
Jiau et al. | Services-oriented computing using the compact genetic algorithm for solving the carpool services problem | |
CN113554387A (zh) | 基于司机偏好的电商物流订单分配方法、装置、设备及存储介质 | |
Schönberger | Scheduling constraints in dial-a-ride problems with transfers: a metaheuristic approach incorporating a cross-route scheduling procedure with postponement opportunities | |
CN108737138A (zh) | 服务提供方法及服务平台 | |
Gattermann-Itschert et al. | Using machine learning to include planners’ preferences in railway crew scheduling optimization | |
CN114372680A (zh) | 一种基于工人流失预测的空间众包任务分配方法 | |
Chen et al. | A public traffic demand forecast method based on computational experiments | |
Wu et al. | Knowledge and Behavior‐Driven Fruit Fly Optimization Algorithm for Field Service Scheduling Problem with Customer Satisfaction | |
CN111241162A (zh) | 高速铁路成网条件下旅客出行行为分析方法及存储介质 | |
CN111353093A (zh) | 问题推荐方法、装置、服务器及可读存储介质 | |
KR20050010099A (ko) | 아웃바운드 콜센터를 위한 통화 추천 시스템 | |
Odeyale et al. | PERFORMANCE EVALUATION AND SELECTION OF BEST MODE OF TRANSPORTATION IN LAGOS STATE METROPOLIS. | |
Pérez et al. | Predicting trip cancellations and no-shows in paratransit operations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |