一种基于大数据的招投标处理系统的制作方法

文档序号:28056382发布日期:2021-12-17 22:18阅读:131来源:国知局
一种基于大数据的招投标处理系统的制作方法

1.本发明涉及计算机技术领域,具体涉及基于大数据的招投标处理系统。


背景技术:

2.招标投标制度始于上世纪80年代,这项制度对提高工程质量、 加强安全管理、控制项目成本等有着极其重要的意义。自2012年以 来,“电子化”和“网络化”已成为招标投标的发展趋势。目前,在 全国公共资源交易过程中每天能够产生海量的招标投标电子化“数 据”,使得将“大数据”技术应用于招标投标提供了重要的前提条件。 通过引入“大数据”技术,对招标投标过程中产生的各种“数据”进 行有益的收集、整理、加工和利用,充分发挥“数据”在加强招标投 标活动的监管中的基础性、预测性和指导性作用,将能够促进招标投 标市场健康可持续发展。但是目前的大数据技术运用在招投标领域的 应用并不成熟,仍存在诸多缺点,例如招标用户在系统前端无法根据 围标串标检测信息进行准确的判断以及系统操作。


技术实现要素:

3.由于现有方法存在上述问题,本发明实施例提出一种基于大数据的招投标处理系统。
4.本发明实施例提出一种基于大数据的招投标处理系统,包括:
5.数据处理模块,用于获取与投标用户对应的测量参数,根据所述测量参数采用基于密度的聚类算法对投标用户进行聚类分析,得到聚类结果;
6.第一数据获取模块,用于获取待分析的投标信息,所述投标信息包括当前招投标活动的投标用户;
7.判断模块,用于根据聚类结果确定当前招投标活动的投标用户中是否存在关联关系;
8.输出模块,用于将第一数据获取模块获得的待分析的投标信息中的根据判断模块确定存在关联关系的投标信息删除,并根据预设的输出选项显示其余待分析的投标信息。
9.可选地,所述测量参数包括地区属性、企业注册资本、成立时间、行业分类、资本类型、企业类型、股东信息、员工人数和/或企业动产抵押信息。
10.可选地,还包括第二数据获取模块,用于获取当前招投标活动的投标用户输入数据,所述投标用户的输入数据包括用户投标信息和用户操作数据;
11.其中所述第二数据获取模块包括:
12.投标信息输入子模块,用于获取投标用户输入的用户投标信息;
13.操作数据记录子模块,用于获取投标用户输入用户投标信息时的真实ip地址。
14.可选地,还包括第三数据获取模块,用于获取当前招投标活动的招标用户的第一输入数据,所述第一输入数据包括至少两个用户的身份信息以及至少两个用户之间的关联关系数据;所述关联关系数据包括用于表征两个用户之间存在关联关系的第一关联关系数
据和用于表征两个用户之间不存在关联关系的第二关联关系数据。
15.可选地,所述数据处理模块得到的聚类结果包括目标集合和噪音点,所述数据处理模块还用于对噪音点数据基于当前招投标活动的招标用户的第一输入数据进行修正。
16.可选地,所述数据处理模块采用的基于密度的聚类算法为具有噪声的基于密度的聚类方法,根据密度可达关系计算最大密度相连的样本集合,得到的样本集合作为聚类结果。
17.可选地,所述数据处理模块的具体处理步骤为:
18.获取投标用户的测量参数作为样本,若样本数量大于设定阈值则根据k空间树或球树搜索最近邻,根据所述最近邻采用欧式距离确定聚类算法中的样本距离,并根据所述样本距离和所述测量参数对投标用户进行聚类分析,得到聚类结果。
19.可选地,所述数据处理模块中设定默认的传递步长,所述数据处理模块还用于根据默认的传递步长更新目标集合;
20.所述传递步长为密度可达关系中两个密度可达样本之间的传递样本的数量。
21.可选地,还包括第四数据获取模块,用于获取当前招投标活动的招标用户的第二输入数据,所述第二输入数据为传递步长调整参数。
22.可选地,所述数据处理模块根据传递步长调整参数修改传递步长,并根据修改后的传递步长更新目标集合。
23.由上述技术方案可知,本发明实施例通过结合基于密度的聚类算法,避免了传统社团检测算法中需要企业参与投标历史数据的问题,能够通过基于密度的聚类算法在没有投标历史数据的情况下仍能及时发现可能存在的围标串标情况,保证投标过程的公平性;同时通过前端的数据获取模块提高数据准确性和参考价值,并且可以灵活获取投标信息。
附图说明
24.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
25.图1为现有方案提供的一种社团检测算法过程的示意图;
26.图2为本发明系统一实施例的具体系统框图;
27.图3为本发明系统一实施例中数据处理模块提供的一种样本聚类过程的示意图;
28.图4为本发明一实施例对于噪音点数据基于用户预定义数据集合进行修正聚类结果的步骤示意图;
29.图5为本发明一实施例聚类结果修正前样本聚类示意图;
30.图6为本发明一实施例聚类结果修正后一样本聚类示意图;
31.图7为本发明一实施例聚类结果修正后另一样本聚类示意图;
32.图8为本发明一实施例中数据处理模块根据第一输入数据数据更新目标集合的步骤示意图;
33.图9为本发明一实施例聚类结果修正前样本聚类示意图;
34.图10为本发明一实施例中数据处理模块根据第二输入数据更新目标集合的步骤
示意图。
具体实施方式
35.下面结合附图,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
36.首先,目前的大数据技术运用在招投标领域的应用并不成熟,例如对于围标串标的违法活动,主要是通过历史投标大数据进行分析来发现围标串标信息,因为围标串标的参与者自然地具备社团属性,因此传统方案通常会想到采用社团检测算法来实现,其主要思想是通过历史数据分析参与招投标的企业之间是否属于同一个社团,即是否存在关联关系。参照图1所示的一种社团检测算法过程,其算法本质是基于图的聚类,点和点之间依靠“边”来进行连系;应用在招投标信息处理时,可以形象地理解为两个企业(点与点)之间需要先建立关联(边),然后进一步地将由点与边组成的图作为输入,进行社团检测分析。反映在具体的算法上,即需要将企业间一同参与投标的次数作为两个顶点之间的权重,得到企业间的招标投标关系加权复杂网络 (例如该网络表示的是企业间一同参加投标的频繁程度)。
37.然而,传统的社团检测算法的问题在于,其输入数据严重依赖于历史招投标信息,通常需要企业间一同参加投标比较频繁才能检测到企业之间可能存在强关联。而实际存在围标串标,但次数并不频繁时难以检测,并且企业也可能通过不停变换、借助第三人身份进行围标串标的操作;并且即使企业间一同参加招投标比较频繁,被检测到时已经参与了多次违法活动,只能予以事后补救,而无法事先预防,这也是目前大数据检测围标串标信息存在的共同问题。
38.基于上述问题,本实施例提供的一种基于大数据的招投标处理系统,参照图2的系统框图,该系统包括:
39.数据处理模块,用于获取与投标用户对应的测量参数,根据所述测量参数采用基于密度的聚类算法对投标用户进行聚类分析,得到聚类结果;
40.第一数据获取模块,用于获取待分析的投标信息,所述投标信息包括当前招投标活动的投标用户;
41.判断模块,用于根据聚类结果确定当前招投标活动的投标用户中是否存在关联关系;
42.输出模块,用于将第一数据获取模块获得的待分析的投标信息中的根据判断模块确定存在关联关系的投标信息删除,并根据预设的输出选项显示其余待分析的投标信息。
43.进一步地,所述测量参数包括地区属性、企业注册资本、成立时间、行业分类、资本类型、企业类型、股东信息、员工人数和/或企业动产抵押信息。
44.测量参数中包括与投标用户(即投标企业)相关的各种信息,不限于上述描述的内容。但值得注意的是,上述测量参数中没有提到招投标数据,即上文中的历史招投标信息。本实施例的数据处理模块中因为采用基于密度的聚类算法,不依赖历史招投标信息,因此测量参数中并不必然需要历史招投标信息。但在测量参数中也可加入招投标数据,从而使聚类结果更加精确,本发明中不对其进行限制。
45.所述聚类结果为根据测量参数对投标用户进行分析后,得到的符合预期的投标用
户的目标集合,其中投标用户指的是样本数据库中的各企业。
46.所述目标集合的用户特征为目标集合中的用户共有的相关特征。具体地是根据用户地区属性、企业注册资本、成立时间等等这些用户自身的测量参数进行分析,得到招投标活动中关联度高的集合。
47.举例来说,在招投标活动中的企业多种多样,各有不同特征,如果无法应用相应的用户(企业)信息,就无法准确分析企业之间的关联度,本实施例可采用例如征信机构数据平台来获取用户的一些基本数据,利用这些数据进行数据处理从而得到聚类结果。
48.第一数据获取模块获取待分析的投标信息,所述投标信息包括当前招投标活动的投标用户,即投标用户的身份信息,并在后续应用这些身份信息进行判断和输出。
49.然后判断模块根据聚类结果确定当前投标活动的投标用户中是否存在关联关系,若根据聚类结果发现当前投标活动的投标用户中存在两个投标用户关联度较高,即两个投标用户对应的身份信息同时出现在一个目标集合中,则表示当前投标活动中很可能存在异常情况,从而需要在输出模块将结果显示给招标用户时,将存在关联关系的投标用户删除。
50.进一步地,在上述实施例的基础上,所述输出模块还用于对投标信息进行可视化输出,预设的输出选项为具体的可视化显示方式,例如采用数字表示其余待分析的投标信息(即经过处理后符合招投标要求,不存在关联关系的投标用户的相关信息,例如符合招投标要求的投标用户的数量)。
51.进一步地,在上述实施例的基础上,所述数据处理模块采用的基于密度的聚类算法为具有噪声的基于密度的聚类方法,根据密度可达关系计算最大密度相连的样本集合,得到的样本集合作为聚类结果。
52.具体地,通过对测量参数的分析,可以将投标用户划分为不同的群体,每种群体对应一个集合,方便后续针对每个集合中的用户进行进一步分析。
53.其中,所述具有噪声的基于密度的聚类算法(dbscan, density

based spatial clustering of applications with noise)将簇定义为密度相连的点的最大集合,能够把具有足够高密度的区域划分为簇,并可在噪声的空间数据库中发现任意形状的聚类。dbscan基于一组邻域来描述样本集的紧密程度,反应不同地区属性、企业注册资本等维度和招投标信息的相关度,参数(∈,minpts)用来描述邻域的样本分布紧密程度,例如在指定维度影响的招投标信息的相关度是否具备明显的聚集性(聚集性越高,证明参数相关性越大)。其中,∈描述了某一样本的邻域距离阈值,minpts描述了某一样本的距离为∈的邻域中样本个数的阈值。
54.举例来说,假设样本集是d=(x1,x2,...,x
m
)(等同于企业注册资本、成立时间、行业分类、资本类型、企业类型、股东信息等),则dbscan 具体的密度描述定义如下:
55.∈

邻域:对于x
j
∈d,其∈

邻域包含样本集d中与x
j
的距离不大于∈的子样本集,如企业注册资本(以字母m表示)在50万和100 万之间的用户样本可表示为d中包含企业注册资本维度在n∈(d)={m ∈d|distance(30.0,50.0)≤∈},这个子样本集的个数记为|n∈(m)|。
56.核心对象:对于任一样本x
j
(m)∈d,如果其∈

邻域对应的n∈(m) 至少包含minpts个样本,即如果|n∈(m)|≥minpts,则m是核心对象。
57.密度直达:如果样本中单用户的数据x位于x
j
(m)的∈

邻域中,且x
j
(m)是核心对
象,则称x由x
j
(m)密度直达。反之不一定成立,此时不能说x
j
(m)由x密度直达,除非且x也是核心对象。
58.密度可达:对于x和x
j
(m),如果存在样本序列p1,p2,...,p
t
,满足p1=x,p
t
=x
j
(m),且p
t+1
由p
t
密度直达,则称x
j
(m)由x密度可达,密度可达满足传递性。此时序列中的传递样本p1,p2,...,p
t
‑1均为核心对象,因为只有核心对象才能使其他样本密度直达。密度可达也不满足对称性,这个可以由密度直达的不对称性得出。其中样本p1与p
t
之间传递样本(p1,p2,...,p
t
‑1)个数记为t

1,定义两个样本之间最短传递路径中传递样本的个数为传递步长,则传递步长为t

1。
59.密度相连:对于x和x
j
(m),如果存在核心对象样本x
k
(m),使x和x
j
(m)均由x
k
(m)密度可达,则称x和x
j
(m)密度相连。密度相连关系是满足对称性的。
60.举个直观的例子来阐述上述算法,如图3所示,图中minpts=5 箭头连接的点都是核心对象,因为其∈

的邻域至少有5个样本。除箭头连接的点以外的点是非核心对象。所有核心对象密度直达样本在以核心对象为中心的球体内,如果不在球体内则不能密度直达。图中用箭头连起的核心对象组成了密度可达的样本序列。在这些密度可达的样本序列的∈

邻域内所有的样本相互都是密度相连的。
61.具体地,dbscan的聚类很简单:由密度可达关系导出的最大密度相连的样本集合,得到最终聚类的一个类别或者说一个簇,作为聚类结果。一个dbscan的簇里面可以有一个或者多个核心对象。如果只存在一个核心对象,则簇里其他的非核心对象样本都在这个核心对象的∈

邻域里;如果存在多个核心对象,则簇里的任意一个核心对象的∈

邻域中一定有一个其他的核心对象,否则这两个核心对象无法密度可达。这些核心对象的∈

邻域里所有的样本的集合组成的一个 dbscan聚类簇。
62.在聚类过程中,任意选择一个没有类别的核心维度作为种子,然后找到所有这个核心维度能够密度可达的样本集合,即为一个聚类簇 (一群特定维度的用户聚集);接着继续选择另一个没有类别的核心对象去寻找密度可达的样本集合,这样就得到另一个聚类簇;一直运行到所有维度都找到自己的核心用户区,然后把偏远维度或者说少量游离于簇外的样本点,标记为噪音点。
63.dbscan聚类算法在维度权重中的具体应用如下:
64.输入:样本集d=(地区属性、企业注册资本、成立时间、行业分类、资本类型、企业类型、股东信息、员工人数、企业动产抵押信
……
),邻域参数(∈,minpts),样本距离度量方式。
65.输出:簇划分c。
66.dbscan聚类算法在实际应用过程中,包括以下详细步骤:
67.(1)、初始化核心对象集合初始化聚类簇数k=0,初始化未访问样本集合γ=d,簇划分
68.(2)、对于j=1,2,...m,按下面的步骤找出所有的核心对象:
69.通过距离度量方式,找到样本xj(m)的∈

邻域子样本集n∈(m);或,如果子样本集样本个数满足|n∈(m)|≥minpts,将样本m加入核心对象样本集合:ω=ω∪{m};
70.(3)、如果核心对象集合ω=

,则算法结束,否则转入步骤(4);
71.(4)、在核心对象集合ω中,随机选择下一个核心对象o(地区属性),初始化当前簇
核心对象队列ωcur={o(地区属性)},初始化类别序号k=k+1,初始化当前簇样本集合c
k
={o(地区属性)},更新未访问样本集合γ=γ

{o(地区属性)};
72.(5)、如果当前簇核心对象队列ωcur=

,则当前聚类簇c
k
生成完毕,更新簇划分c={企业注册资本,地区属性,...},更新核心对象集合ω=ω

c
k
,转入步骤(3);
73.(6)、在当前簇核心对象队列ωcur中取出一个核心对象o

, 通过邻域距离阈值∈找出所有的∈

邻域子样本集n∈(o

),令δ=n∈(o

) ∩γ,更新当前簇样本集合c
k
=c
k
∪δ,更新未访问样本集合γ=γ
‑ꢀ
δ,更新ωcur=ωcur∪(δ∩ω)

o

,转入步骤(5)。
74.输出结果为:簇划分c={c1,c2,

,c
k
}
75.进一步地,在上述系统实施例的基础上,所述数据处理模块的具体处理步骤为:
76.获取投标用户的测量参数作为样本,若样本数量大于设定阈值则根据k空间树或球树搜索最近邻,根据所述最近邻采用欧式距离确定聚类算法中的样本距离,并根据所述样本距离和所述测量参数对投标用户进行聚类分析,得到聚类结果。
77.与传统的k

means算法相比,dbscan最大的不同就是不需要输入类别数k,优势在于可以发现任意形状的聚类簇。具体在解决 dbscan距离度量问题时,根据用户样本采用最近邻方法,采用某一种距离度量(例如欧式距离)来衡量样本距离。当用户样本量相对较少时,寻找最近邻可直接计算所有样本的距离;当用户样本量相对较大时,可采用k空间树或者球树来快速地搜索最近邻。
78.进一步地,参照图2,在上述系统实施例的基础上,还包括第二数据获取模块,用于获取当前招投标活动的投标用户输入数据,所述投标用户的输入数据包括用户投标信息和用户操作数据;
79.其中所述第二数据获取模块包括:
80.投标信息输入子模块,用于获取投标用户输入的用户投标信息;
81.操作数据记录子模块,用于获取投标用户输入用户投标信息时的真实ip地址。
82.在实际的招投标处理系统中,投标用户需要通过客户端输入相关信息,而如前文所述,实际存在围标串标时,投标用户可能通过不停变换、借助第三人身份进行围标串标的操作。现有的数字化招投标系统可通过操作信息在一定程度上判断存在围标串标,例如某些用户利用不同的投标用户身份同时进行投标,而在通过网页端输入相关信息时采用同样的输入设备或同一网络,此时可通过mac地址识别判断或通过ip地址识别判断。但现实中存在某些用户通过虚拟mac地址或ip地址来规避检测。由于第二数据获取模块获取数据来自投标用户,直接关系到是否实质上存在围标串标情况,因此真实ip地址数据如同从征信机构数据平台来获取用户的一些基本数据,利用这些数据进行数据处理从而得到基础的聚类结果,该聚类结果作为后续聚类结果进行修正的基础。相应地,下文中描述的第三数据获取模块、第四数据获取模块所获取的数据并非与投标用户直接关联,反映的只是当前招标用户所掌握的数据(不一定真实)或选择偏好,因此基于第三数据获取模块、第四数据获取模块所获取的数据进行目标集合的更新(包括噪音点的修正)不作为后续其他招投标活动中聚类结果进行修正的基础。
83.本发明系统一具体实施例中,可采用b/s(browser/server)架构,其中所述第二数据获取模块采用webapi实现:
84.投标信息输入子模块采用webapi获取投标用户输入的用户投标信息;与此同时,
webapi也实现了操作数据记录子模块,在投标用户输入用户投标信息时,能够同时获取网页操作对应地真实ip地址,避免用户通过虚拟ip地址来规避检测(例如采用http代理),具体实现真实ip地址获取的程序代码在此无需赘述。
85.首先,投标用户在网页端操作时必然需要输入数据,此时利用 webapi同步实现上述两个子模块可在接收输入数据时直接获取真实 ip地址,所述测量参数进一步包括真实ip地址,可有效找出关联性较高的投标用户,利用用户需要网页操作的步骤获取真实ip地址,显著增加聚类结果的准确性;其次,测量参数中地区属性与真实ip 地址从两个维度来反映投标用户的地域信息,因为地区属性是企业无法通过技术手段进行修改的,而ip地址与地区属性存在一定的对应关系,若ip地址与地区属性的关联关系存在某种程度上的不一致,则反映出可能存在一定问题,因此测量参数中地区属性与真实ip地址从两个维度的结合可使得聚类结果的精度大幅提升。
86.进一步地,参照图2,在上述系统实施例的基础上,还包括第三数据获取模块,用于获取当前招投标活动的招标用户的第一输入数据,所述第一输入数据包括至少两个用户的身份信息以及至少两个用户之间的关联关系数据;所述关联关系数据包括用于表征两个用户之间存在关联关系的第一关联关系数据和用于表征两个用户之间不存在关联关系的第二关联关系数据。
87.所述第三数据模块可获取由招标用户提供的额外信息,该额外的信息并不预先存在于系统的原始数据库中;其可能是招标用户所掌握的信息,例如已知甲企业与乙企业为关联企业,过往有过投标违规的记录,或者已知甲企业与乙企业为非关联企业,可信任其不存在围标串标操作;也可能是招标用户的偏好,例如系统中认为甲企业与乙企业为关联度较高,但该招标用户认为甲企业与乙企业之间的关联并不足以认定为存在围标串标操作,因此该招标用户将甲企业与乙企业之间的关系标记为不存在关联关系的第二关联关系数据。
88.所述第三数据获取模块获取当前招投标活动的招标用户的第一输入数据并存储至预定义数据集合。例如已知用户a与b存在关联关系,则在预定义数据集合中存入用户a与b的信息,并标记a与 b之间存在第一关联关系;例如已知用户a与b确定不存在关联关系,则在预定义数据集合中存入用户a与b的信息,并标记a与b 之间存在第二关联关系。
89.进一步地,所述数据处理模块得到的聚类结果包括目标集合和噪音点,所述数据处理模块还用于基于当前招投标活动的招标用户的第一输入数据对噪音点数据进行修正。
90.参照图4,若数据处理模块中计算得到的聚类结果中表明某样本点投标用户c为噪音点时,可基于第三数据模块获取的预定义数据集合对样本点(投标用户c)进行再次验证,若某样本点(投标用户c) 存在于预定义数据集合中,且与其他样本点(投标用户d)存在第一关联关系,则表示实际上该样本点应该归属于某一个簇样本集合c
j
,因此通过预定义数据集合可防止因为大数据集的数据不完整而造成的对围标串标情况的遗漏检测,或者是通过预定义数据集合反映当前招标用户对围标串标的关联程度上的偏好选择,利用当前用户所掌握的信息对大数据聚类结果进行补充或修正。
91.进一步地,在上述系统实施例的基础上,所述数据处理模块中设定默认的传递步长,并根据默认的传递步长更新目标集合;所述传递步长在上文中已定义,即为密度可达关系中两个密度可达样本之间的传递样本的数量。
92.对应到具体的关联关系检测上,由于围标串标认定的标准需要相对严格,以避免将实际上存在一定弱关联的用户误认为存在本发明中所要求的围标串标才具有的强关联关系,在具体实施例中可设定默认的传递步长,将聚类结果中的目标集合分解为多个目标集合,则其中原本存在于同一目标集合中的样本点在目标集合分解之后属于不同的目标集合,可以理解为需要更强的关联关系才能被认定为可能存在围标串标。以图5为例,若将其中默认的传递步长设置为3,由于原图中点p1至点p5的传递步长为4,则原来的一个簇中将分解为两个簇,如图6和图7所示。
93.进一步地,在上述系统实施例的基础上,根据预定义数据集合对聚类结果进行修正,参照图8,其修正方式可包括以下两种:
94.(1)根据预定义数据集合中的第一关联关系数据,增加传递步长,并根据传递步长更新目标集合。
95.参照图8,首先读取预定义数据集合中存在第一关联关系的数据,例如用户a与b之间存在第一关联关系;判断基于默认的传递步长分解后的某个目标集合中是否同时存在a和b;若同时存在a和b,则表示默认的传递步长设置未发现不合理,无需更新目标集合;若任一目标集合中都不同时存在a和b,则表示默认的传递步长设置不合理,需增加传递步长以扩大目标集合,使更新后的目标集合同时存在 a和b,此时目标集合中其他用户之间的关联关系才能够更准确。
96.假设在上述实施例的基础上,默认的传递步长设置为3,由于原图5中点p1至点p5的传递步长为4,则原来的一个簇中将分解为两个簇,如图6和图7所示。此时又在预定义数据集合中发现点p1与点p5存在第一关联关系,则此时需要将传递步长增加至4使更新后的目标集合同时存在a和b,相当于需要将如图6和图7所示的两个簇合并为如图5所示一个簇。
97.特殊情况下,若最开始数据处理模块计算的聚类结果(未设置传递步长前)中不同时存在a和b,则此时无论如何增加传递步长都不能使更新后的目标集合同时存在a和b,此时需要将a所在的簇c
m
与b所在的簇c
n
进行融合,其中a、b也可以是噪音点。
98.如图9所示,假设在上述实施例的基础上,默认的传递步长设置为3,图9中点p1至点p5的传递步长为4,则原来的一个簇中将分解为两个簇,这四个簇中的核心对象数据点(样本序列)分别为{p1, p2,p3,p4},{p2,p3,p4,p5},如图6和图7所示;同样的,图9 中点p6至点p
12
的传递步长为6,则原来的一个簇中将分解为四个簇,这四个簇中的核心点(样本序列)分别为{p6,p7,p8,p9},{p7,p8, p9,p
10
},{p8,p9,p
10
,p
11
},{p9,p
10
,p
11
,p
12
}。同时,假设a 为图中点p
10
,b为图中点p3,分别将包含a的目标集合与包含b的目标集合合并,依照核心对象数据点之间的连接关系(即如图9中所示的箭头)进行合并,得到的目标集合中,对应簇中的核心对象数据点分别为{p1,p2,p3,p4,p7,p8,p9,p
10
},{p1,p2,p3,p4,p8, p9,p
10
,p
11
},{p1,p2,p3,p4,p9,p
10
,p
11
,p
12
},{p2,p3,p4, p5,p7,p8,p9,p
10
},{p2,p3,p4,p5,p8,p9,p
10
,p
11
},{p2,p3, p4,p5,p9,p
10
,p
11
,p
12
},{p7,p8,p9,p
10
,p1,p2,p3,p4},{p8, p9,p
10
,p
11
,p1,p2,p3,p4},{p9,p
10
,p
11
,p
12
,p1,p2,p3,p4}, {p7,p8,p9,p
10
,p2,p3,p4,p5},{p8,p9,p
10
,p
11
,p2,p3,p4, p5},{p9,p
10
,p
11
,p
12
,p2,p3,p4,p5},目标集合合并后不需要增加传递步长即可使更新后的目标集合同时存在a和b,此时再根据当前设定的传递步长4对上述合并的目标集合进行分解,最后得到相应的更新后的目标集合。以其中一个合并的目标集合为例,其对应簇中的核心对象数据点为{p1,p2,p3,p4,p7,p8,p9,p
10
},则分解后得到5个对应簇中的核心对象数据点分别为{p1,p2,
p3,p4},{p2,p3,p4,p7},{p3,p4,p7,p8},{p4,p7,p8,p9},{p7,p8, p9,p
10
},因此相对于更新前的目标集合,增加了3个新的目标集合。
99.(2)根据预定义数据集合中的第二关联关系数据,减少传递步长,并根据改变后的传递步长更新目标集合。
100.参照图7,数据处理模块首先读取预定义数据集合中存在第二关联关系的数据,例如用户a与b之间存在第二关联关系;判断基于默认的传递步长分解后的某个目标集合中是否同时存在a和b;若同时存在a和b,则表示默认的传递步长设置不合理,需减少传递步长以缩小目标集合,使更新后的目标集合不同时存在a和b,此时目标集合中其他用户之间的关联关系才能够更准确;则表示默认的传递步长设置未发现不合理,无需更新目标集合;若任一目标集合中都不同时存在a和b,则表示默认的传递步长设置合理,无需更新目标集合。
101.特殊情况下,若最开始数据处理模块计算的聚类结果(未设置传递步长前)中同时存在a和b,且传递步长为1(相当于a由b密度直达或者b由a密度直达),则此时无法使更新后的任一目标集合中都不同时存在a和b;另一特殊情况下,若最开始数据处理模块计算的聚类结果(未设置传递步长前)中同时存在a和b,且传递步长为2,则此时只有减少传递步长至1才能使更新后的任一目标集合中都不同时存在a和b,但减少传递步长至1也可能不合理。上述两种特殊情况下,需要设定一个传递步长的下限,例如将下限值设置为 3,或者需要设定一个传递步长减少量的上限,例如限定传递步长最多减少2,再更新目标集合,此时传递步长的减少体现了对聚类结果的修正,但是仍可能存在某个目标集合中同时存在a和b,因此需要添加例外情况,即使a与b存在第一关联关系,此时也不认为a与 b代表的用户之间存在围标串标的关联关系。
102.对于dbscan聚类算法,其主要缺点在于调参相对于传统的 k

means之类的聚类算法稍复杂,主要需要对距离阈值∈,邻域样本数阈值minpts联合调参,不同的参数组合对最后的聚类效果有较大影响。上述实施例的数据处理模块中采用设置传递步长的方式,在计算聚类结果之后不会因为需要修正数据再进行联合调参,避免了大量的重新计算,同时也提高聚类精度;特别是在本发明实施例中引入对噪音点的再次验证,避免系统中每一次根据噪音点的修正都需要重新联合调参,同时也为招标用户的偏好设置提供便利,单个招标用户的偏好与其他招标用户不会相互影响。
103.上述实施例详细说明了数据处理模块根据第三数据获取模块获取当前招投标活动的招标用户的第一输入数据进行修正的步骤,其主要是根据招标用户所掌握的关联关系信息对聚类结果进行自动修正。然而在某些情况下采用上述自动修正的方式可能无法达到理想的结果,例如实际应用中发现,大多数公司在招标时为了避免舞弊,会要求参与投标的用户(企业)需要大于一定数量,否则无法启动招标流程,然而本发明系统具体实施例中根据数据处理模块得到的聚类结果可能得到符合要求的投标用户数量不足,因此除了让招标用户输入第一输入数据之外,还可采用让招标用户输入传递步长调整参数。
104.进一步地,在上述系统实施例的基础上,所述数据处理模块还包括第四数据获取模块,用于获取当前招投标活动的招标用户的第二输入数据,所述第二输入数据为传递步长调整参数。
105.招标用户输入第一输入数据(包括关联关系数据等)后,数据处理模块会根据具体情况修改传递步长从而实现对聚类结果的修正,但是传递步长的增加或减小可控性不高。
因此,在本发明一些实施例中,第四数据获取模块直接获取传递步长调整参数进行调整,例如根据数据处理模块得到的聚类结果得到符合要求的投标用户数量不足时,减少传递步长,从而使修改后的目标集合数量增加,相应的符合要求的投标用户数量增加;同时可在输出模块进一步将新增的符合要求的投标用户进行显示,具体显示形式可根据预设的输出选项,例如显示新增的数量或者采用可视化形式来显示,而具体的选取新增的符合要求的投标用户的方式可以是在每个目标集合中选取一个,上述的每个目标集合不包括当前招投标活动的投标用户所在的目标集合,以此保证新增的符合要求的投标用户中相互之间不存在关联关系。对于新增的符合要求的投标用户,可在本发明系统中设置投标信息发送模块,用于发送投标邀请信息给新增的这部分投标用户(因为这部分投标用户是新增的,因此不在当前招投标活动的参与投标用户名单中)。因此招标用户可根据系统提供的上述新增的符合要求的投标用户作为系统推荐投标用户,以用于解决符合要求的投标用户数量不足的问题。
106.所述传递步长调整参数可以是以下两种:(1)、具体的步长调整值;(2)、步长调整方向。
107.参照图10,第一种情况下,所述传递步长调整参数为具体的步长调整值时,数据获取模块直接根据传递步长调整参数进行调整,例如步长调整值为step=1时表示传递步长加1,传递步长调整值为 step=

1时表示传递步长减1,此时根据具体的步长调整值更新目标集合。然后可以在输出模块对符合招投标要求的投标用户的数量进行可视化输出。此时若招标用户注意到投标用户的数量仍然不符合预期时,可再次通过第四数据获取模块输入传递步长调整参数进行调整,直至结果符合预期。
108.参照图10,第二种情况下,所述传递步长调整参数为具体的长调整方向时,传递步长调整参数仅表示传递步长是增加(dir=1)还是减小(dir=

1)。以传递步长调整参数仅表示传递步长减小为例,参照前述实施例以及附图5

7可知,更新后的目标集合数量增加,一个目标集合中同时存在的数据点减少,因此表示有关联关系的数据点减少,对应地表示符合要求的投标用户数量增加。具体的更新方式可采用最小传递步长修改值step
min
以及设定投标用户数量阈值user
th
结合,例如设定传递步长调整参数dir=

1,传递步长减小,最小传递步长修改值为step
min
=1,则每一次更新目标集合前将传递步长值减1,更新后判断符合条件的投标用户数量是否大于设定投标用户数量阈值,若是则完成修正,若否,则继续将传递步长值减1,更新后判断投标用户数量,如此循环直至更新后符合条件的投标用户数量大于设定投标用户数量阈值。
109.通常是数据处理模块得到的聚类结果得到符合要求的投标用户数量不足时采用设定传递步长调整参数dir=

1,传递步长减小的方式进行修正。极少数情况下也可能是数据处理模块得到的聚类结果得到符合要求的投标用户数量过多而需要进行修正,此时的符合要求的投标用户数量显然是大于设定的投标用户数量阈值user
th
,因此设定传递步长调整参数dir=1,在具体计算过程中以最小传递步长修改值为 step
min
=1进行计算,使符合要求的投标用户数量相应减少,但要保证计算结果能够大于阈值user
th
。通常进行一次计算即可,因此为了避免计算过程陷入正反馈循环,符合要求的投标用户数量小于阈值 user
th
时,退回到根据传递步长更新目标集合之前的状态,并且直接设定为完成修正过程。例如数据处理模块得到的聚类结果得到符合要求的投标用户数量为50,而设定投标用户数量阈值
user
th
=20,传递步长为4,因为设定传递步长调整参数dir=1,且最小传递步长修改值为step
min
=1,则传递步长修正为5进行计算,假设计算结果得到符合要求的投标用户数量为15,此时符合要求的投标用户数量小于阈值 20,需要退回到根据传递步长为5更新目标集合之前的状态,即回到根据传递步长为4更新目标集合的状态。
110.通过传递步长调整参数以及输出模块进行可视化显示的结合,本发明系统可在网页客户端直接实现符合招标用户需求的聚类结果的修正,不需要重新从头开始计算聚类结果,计算速度快,并且修正的结果可以仅仅用于当前招投标活动的计算,不影响之后其他招标用户招投标活动的判断,从而在增加计算速度的同时避免了单个用户偏好对其他用户的影响。
111.以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
112.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1