近年来, 我国的社会发展与经济建设取得了举世瞩目的成绩. 社会的发展过程离不开工程建设, 工程建设招标和投标是在市场经济条件下进行工程建设的一种经济活动, 其实质是一种市场竞争行为. 在甲方市场的条件下, 招标人可以通过招标活动在众多投标人中选定报价合理、工期较短、信誉良好的承包商、供应商来承担工程建设任务[1]. 工程建设的招投标不仅具有高报价、高复杂性和高竞争性等问题, 还存在人工评标效率低和识别围标、串标行为难的问题[2, 3]. 这些问题都在不同程度上阻碍了工程的建设和企业的发展, 同时也给招标投标的工作带来了不小的挑战. 因此招标投标的各个环节是否能够遵守高效、客观、科学、公平、公正、公开的原则至关重要[4].
目前招投标领域正在由纸质化招标向电子化招标的方向发展, 这也为利用计算机分析电子化招投标文件提供了可能. 首先, 利用计算机对标书进行评估, 可以实现对标书的预选, 为人工评分提供了参考和客观依据; 其次, 计算机的应用与分析为构建电子化招投标系统和标书文本分析工作提供了条件; 最后, 利用计算机分析招投标过程信息和背景信息, 可以为识别围标、串标行为提供参考. 但是目前招投标实践中, 标书评估主要还是依靠人工评标, 缺少全面、科学的技术辅助手段. 招投标研究领域中, 利用大数据分析标书并识别围标、串标的技术仍然不完善, 缺乏通用性. 这主要是因为投标过程具有高复杂性, 现有的方法仅仅针对一个或两个指标进行定量分析, 这显然是不够的. 标书文本的分析不仅要考虑内部、外部等多个指标, 还需将定量分析与定性分析相结合, 从而实现更加全面、完整、科学的标书评估.
随着深度学习在NLP领域的发展, 利用NLP进行自然语言理解(natural language understanding, NLU)和自然语言生成(natural language generation, NLG)已经越来越普遍[5]. 文本是语言信息的主要载体, 利用文本信息进行挖掘并提取关键信息, 对于人们快速准确地获取文本内容具有重要的作用. 语义相似度计算(semantic textual similarity)是联系文本信息表示和潜在上层应用之间的纽带[6], 重复率常用于大型网页和巨量文本的量化计算[7, 8]. 在相似度和重复率的实践上, 目前Simahash算法和Shingling算法[9]被认为是当前最好的算法之一[10, 11]. 采用这两种算法计算投标文件间的相似度与重复率, 可以为标书文本的评估和识别围标、串标行为提供量化指标.
本文提出了基于文本分析的标书评估模型, 从定量分析和定性分析两个方面分别处理标书文本, 实现对标书的综合评估. 本文第1节介绍评估模型的框架和基本思路, 第2节介绍涉及到的关键算法与改进, 第3节介绍模型的评估指标及计算方法, 第4节进行实际案例分析, 第5节总结评估模型, 提出不足与展望.
1 评估模型框架当前招投标研究领域主要存在两个主要问题: (1) 识别围标、串标行为主要依赖评标现场进行人工识别和判断, 但是评标现场时间有限, 并且围标和串标行为往往不易发现, 缺少有效的机器辅助手段; (2) 当前评标工作中, 利用计算机分析标书时缺少有效合理的评价指标和评价方法, 现有评价指标往往侧重于对少数几个方面进行定量分析, 缺少结合定量分析与定性分析的全面评价体系.
本文提出了基于文本分析的标书综合评估模型, 模型通过基于定量分析的文本评估和基于定性分析的文本评级实现对标书的综合评估. 文本评估模型是通过定量分析计算5项指标及权重得到标书评分, 通过评分对标书进行排序, 为实际评标工作中的标书评分提供参考. 文本评级模型是通过定性分析利用7项指标分别对标书文本进行评级得到评级结果, 通过评级结果识别投标企业是否疑似出现围标、串标行为, 模型识别再结合人工核查确认最终的识别结果, 模型为评标工作中识别围标、串标行为提供参考. 文本评估和文本评级的结果分别实现了对标书的定量计算和定性分析, 两者结果综合集成后即可实现对标书的综合评估, 标书评估模型框架图见图1.
本文的研究语料来源于中国水利电力物资集团有限公司工程建设中的招投标文件, 投标文件通常包含投标函部分、商务标部分和技术标部分. 由于投标文件是非结构化文本数据, 而且文件中不仅含有大量的文字信息, 还有表格和图片信息. 这些非结构化信息给开标现场的评标带来了不少困难, 尤其是投标企业出现围标、串标行为时, 评标专家难以在评标现场短时间内进行定量或定性识别. 《中华人民共和国招投标法》《招投标实施条例》《招投标实施细则》等法律法规规定了对出现围标、串标行为的处罚条例, 但是缺少于围标、串标行为的界定标准.
在文本分析方面, 构建招投标过程文件查重对比模型, 通过基于NLP的权重改进的Simhash算法和Shingling算法对投标文件进行分析, 得到投标文件之间的相似度和重复率. 再通过匹配和对比得到招标文件目录的匹配度、资质与报价的一致性和投标价格的上(下)浮率指标. 这些指标通过定量分析为评标专家的评标工作提供更加客观、准确、科学的依据, 同时也为识别围标、串标的行为提供了参考.
在行为分析方面, 构建异常检测模型, 针对投标企业在投标过程中出现的异常行为进行分析, 从而识别企业是否存在围标、串标的嫌疑. 其中异常行为包括: 故意废标、开标前几家企业同时撤回标书、不同企业的保证金出自同一账户、投标文件签名字迹一致、标书出现明显的错误等.
在背景分析方面, 构建企业资质审查模型, 首先建立基于知识图谱的文本知识库, 实现知识的智能存储、智能关联、智能推理, 通过企业与项目之间的关系, 形成网状的知识结构, 利用知识问答、实体查询、关系查询、逻辑推理等功能, 实现对企业关联度的分析计算. 然后利用基于OCR技术的企业资质审查模型, 对投标企业资质进行审查, 通过OCR识别自动抽取投标文件中的企业资质等证书图片信息, 获取证书的名称、编号和印章信息, 将证书名称和编号上传至查验网站进行真伪查验, 再对印章信息进行真实性查验, 确定证书的真实性和有效性. 然后利用政府的公开信息查询企业是否出现违规、失信等情况, 得到企业的信用度.
基于文本分析的标书综合评估模型在传统的评估指标上加入文本方面、行为方面和背景方面的综合分析, 构成了更加全面、客观的标书综合评估模型, 模型的评估指标框架图见图2.
2 算法介绍与改进标书文本分析的核心技术为文本相似度和重复率计算, 文本相似度是定性分析两个文本是否具有相似性, 文本重复率是定量计算两个文本的重复程度.
2.1 改进的Simhash算法
传统的文本相似度是通过计算文本特征词所构成的特征向量的夹角余弦值实现的, 面对长文本, 传统的方法由于整个特征向量的维度高, 导致计算的时间和空间复杂度都很高. 面对几万字的标书, 传统的相似度计算方法效率过低.
Simhash算法解决了无法处理长文本的问题, 并常常被用于实践, Simhash是一种局部敏感哈希, 局部敏感是指假如两个字符串具有一定的相似性, 这种相似性在哈希之后仍然会被保持, 这种特性常用于海量文本之间的相似度计算, 最早被Google应用于对海量文本进行去重处理[12]. Simhash是一种降维的思想, 它将高维的向量映射成低维的向量并得到一个Simhash值, 即一个
Simhash算法是由Manku、Jain、Sarma 3位Google工程师提出并通过实验验证了采用64位的指纹时, 文本间的海明距离取
传统的Simhash算法在权重计算时通常直接设置为1或者特征词的词频, 这就无法体现出词汇的分布特征, 导致信息的丢失和准确率降低. 为了解决传统Simhash算法中权重计算不充分的问题, 受文献[16]的启发, 本文在权重计算中使用词频-逆向文件频率(TF-IDF)和信息熵的基础上, 加入了特征词偏向性权重, 并人为判断特征项是否能够作为算法特征项进行计算, 最终形成了基于熵-特征词偏向性加权的Simhash算法, 具体计算方法如下.
(1)词频-逆向文件频率定义为:
$ {w_k} = tf{\text{(}}{t_k}, {d_j}{\text{)}} \times idf{\text{(}}{t_k}{\text{)}} $ | (1) |
其中,
(2)左右信息熵和熵量分别定义为:
$ {H_l}{\text{(}}w{\text{)}} = - \sum\limits_{\forall a \in A} {P{\text{(}}aw|w{\text{)}} \times lbP{\text{(}}aw|w{\text{)}}} $ | (2) |
$ {H_r}{\text{(}}w{\text{)}} = - \sum\limits_{\forall b \in A} {P{\text{(}}wb|w{\text{)}} \times lbP{\text{(}}wb|w{\text{)}}} $ | (3) |
$ {H_k}{\text{(}}w{\text{)}} = \frac{{{H_l}{\text{(}}w{\text{)}} + {H_r}{\text{(}}w{\text{)}}}}{2} $ | (4) |
其中,
(3)特征词偏向性权重定义为:
$ {E_k} = \max {\text{(}}{a_i}{\text{)}} $ | (5) |
其中,
(4)基于熵-特征词偏向性加权公式:
$ W{\text{(}}t_k, d_j{\text{)}} = \sqrt {\frac{{{{{\text{(}}{w_k}{\text{)}}}^2} + {{{\text{(}}{H_k}{\text{)}}}^2}{\text{ + (}}{E_k}{{\text{)}}^2}}}{3}} $ | (6) |
上述公式的物理意义是: 特征项
(5)特征项的二次选择
经过上述步骤计算出来的特征项及对应的权重在带入Simhash算法进行计算之前, 需要结合标书文本的特殊性和本次投标所属行业关键信息的专业性利用预定的阈值进行人工二次选择, 通过二次选择提高特征项的准确性和代表性, 从而提高Simhash算法的计算效果.
(6) Simhash值和海明距离的计算
Simhash算法主要有2个主要步骤: 计算simhash值和计算文本间的海明距离.
1) 计算Simhash值.
首先, 对于给定的标书文本, 利用停用词表过滤掉符号、助词、语气词等无效字符, 然后通过分词库进行分词, 将文本转换为一些特征词的集合
2) 计算海明距离(Hamming distance).
由于相似文本的指纹信息只有少量的不同, 因此可以通过计算文本的指纹信息即Simhash值的相似程度来判断文本的相似程度. 海明距离表示两个文本Simhash值每一个索引位置值不同的数量, 假设两个文本
$ H(a, b) = \sum\limits_{i = 1}^n {{a_i} \otimes {b_i}} $ | (7) |
其中,
Simhash算法中, 首先将文本信息映射得到指纹信息, 再通过计算海明距离
Shingling算法是一种降低特征维度去检测文本相似性的方法[18]. Shingling算法是将文本的相似性转化为词语集合的相似性, 首先将文本
$ {r_w}(A, B) = \left| {\frac{{S(A, w) \cap S(B, w)}}{{S(A, w) \cup S(B, w)}}} \right| $ | (8) |
式(8)得到的
基于文本分析的标书综合评估模型由文本评估模型和文本评级模型组成, 两者的计算结果共同实现了对标书的综合评估.
3.1 文本评估模型在传统的评标中, 通常是评标专家对投标文件的3个主要部分: 商务标部分、技术标部分和报价部分进行打分, 每部分得分与权重相乘后累加即可得到专家评分结果. 在这个过程中, 围标、串标行为的识别往往依靠评分专家的主观判断, 缺少客观的评定指标.
基于文本分析的标书综合评估模型分为标书文本评估和文本评级. 文本评估模型是在传统的评分指标“商务标部分
本实验中标书的评标基准价采用平均值法, 评标基准价的计算方法[21]为:
$ C\text{(}评标基准价\text{)=}A(所有有效标书的平均价格) $ | (9) |
价格得分
重复率指标
目录匹配度指标
$ P=\frac{n\text{(}成功匹配数\text{)}}{n\text{(}总数\text{)}}\times 100{\text{%}} $ | (10) |
匹配度
为了获取到指标
$ X = \sum\limits_{i = 1}^5 {{X_i} \times {a_i}} $ | (11) |
文本评估模型通过对5项指标进行定量计算, 得到了指标权重, 并进一步得到各标书的得分. 文本评估模型的指标权重是基于评标专家的经验, 采用半定量的层次分析法确定. 文本评估模型的各项指标综合了传统评估指标、重复率和目录匹配度, 是一种更加全面的评价方法, 具有一定的通用性. 文本评估模型的指标列表见表1.
3.2 文本评级模型在传统的评标中, 招投标行为是否出现围标、串标行为往往是通过评标专家现场进行人工识别, 一方面效率较低且难以发现围标、串标行为的有效证据, 另一方面, 人工难以有效的挖掘标书的深层次信息.
文本评级模型识别围标串标行为的方法是通过7个指标对标书分别进行评级, 进行风险等级划分, 最终综合7个评级结果, 通过综合评级式(18)得到最终的标书评级, 7个指标分别是: 利用基于权重改进的Simhash算法得到的两个标书文本全文之间的相似度指标
$ {Y}_{1}/{Y}_{2}=\left\{ {\begin{array}{l}1\; (正常),\\ 0 \;(疑似),\\ -1 \;(高度疑似), \end{array}\begin{array}{l}H\text{(}A, B\text{)} > 10\\ 3 < H\text{(}A, B\text{) < 10}\\ H\text{(}A, B\text{)}\leqslant 3\end{array}} \right. $ | (12) |
基于知识图谱的投标企业关联度指标
$ {Y}_{3}=\left\{ {\begin{array}{l}1\;(正常),\\ 0\;(疑似),\\ -1\;(高度疑似),\end{array}\begin{array}{l}C(A, B)\leqslant 2\\ 2 < C\text{(}A, B\text{) < 5}\\ C\text{(}A, B\text{) > 5}\end{array}} \right. $ | (13) |
投标企业的企业资质与投标价格的一致性指标
$ {Y}_{4}=\left\{ {\begin{array}{l}1\;(正常),\\ 0\;(疑似),\\ -1\;(高度疑似),\end{array}\begin{array}{l}\left|a-b\right|+\left|a-c\right|\leqslant 3\\ 3 < \left|a-b\right|+\left|a-c\right|\leqslant \text{5}\\ \left|a-b\right|+\left|a-c\right|\text{ > 5}\end{array}} \right. $ | (14) |
投标价的价格上(下)浮率指标
$ {Y}_{5}=\left\{ {\begin{array}{l}\;1(正常),\\ 0\;(疑似),\\ -1\;(高度疑似),\end{array}\begin{array}{l}5{\text{%}} < \left|F\text{(}A, C\text{)}\right| < 20{\text{%}}\\ 2{\text{%}} < \left|F\text{(}A, C\text{)}\right|\leqslant 5{\text{%}}\\ 其他\end{array}} \right. $ | (15) |
基于政府信息公开的投标企业诚信度指标
$ {Y}_{6}=\left\{ {\begin{array}{l}1\;(正常),\\ 0\;(疑似),\\ -1\;(高度疑似),\end{array}\begin{array}{l}J\text{(}A\text{)=}0\\ 1\leqslant J\text{(}A\text{)}\leqslant 3\\ J\text{(}A\text{)} > 3\end{array} } \right.$ | (16) |
基于异常行为的指标
$ {Y}_{7}=\left\{ {\begin{array}{l}1\;(正常),\\ 0\;(疑似),\\ -1\;(高度疑似),\end{array}\begin{array}{l}M\text{(}A\text{)=}0\\ 1\leqslant M\text{(}A\text{)}\leqslant 3\\ M\text{(}A\text{)} > 3\end{array}} \right. $ | (17) |
对于评级指标
评级指标
$ {Y}_{{r}_{i}}=\left\{ {\begin{array}{l}正常,\\ 疑似,\\ 高度疑似,\end{array}\begin{array}{l}R{{(r}}_{i}\text{=1)}\geqslant \text{5}\\ 其他\\ R{{(r}}_{i}\text{=1)}\leqslant \text{3}或R{{(r}}_{i}{=-1)}\geqslant \text{3}\end{array}} \right. $ | (18) |
其中,
文本评估模型的创新之处在于该模型考虑了文本层面的分析、企业关联分析、背景分析与行为分析等因素, 通过7个指标的评级结果综合分析得到识别围标串标的结果, 为围标、串标行为的检测提供了支撑, 文本评级指标列表见表2.
3.3 综合评估标书评估实践中, 最重要的两个步骤是对标书进行评分得到排序和识别围标、串标行为, 从而确定最终入围的标书. 但在技术研究中, 往往只少数文献对某些方面进行了分析, 并未考虑到标书分析的全面性和客观性问题.
本文提出的标书评估模型分别从文本评估(指标X1–X5)和文本评级(指标Y1–Y7)两个方面进行标书的定量计算和定性分析. 文本评估(
本节将中国水利电力物资集团有限公司工程建设中两个招投标项目的文本和数据作为实际案例数据进行实验, 通过基于文本分析的标书综合评估模型的计算结果与真实结果进行对比, 展示本文模型的有效性.
在文本评估中的指标
实际案例数据分别采用“某电厂入厂次干道”项目和“某电站公用及辅机控制设备”项目的案例数据. “某电厂入厂次干道”招标项目共有4家企业进行投标, 即共有4份标书文本. 经过标书文本的数据处理得到“某电厂入厂次干道”项目的指标数据与综合评估结果, 见表3. 其中有3家企业的标书被识别为“正常”, 1家企业的标书被识别为“疑似围标、串标”. 投标企业4被识别为“疑似围标、串标”, 这是由于投标企业4的文本评级结果中有两项评级为“–1”, 根据文本评级式(18), 故被识别为“疑似围标、串标”.
“某电厂入厂次干道”项目的招标文件规定了根据评标分数选择评分最高的3家企业作为“晋级”企业. 实验数据也采用评分排序前3的企业为“晋级”企业, 进入候选标书名单. 经过综合评估结果与专家评标结果和评标报告进行对比, 发现实验评分结果与专家评标的真实评分结果吻合, 识别围标、串标结果为评分结果提供参考, 为人为识别围标、串标行为提供依据, 实验结果见表4.
对“某电站公用及辅机控制设备”项目标书文本进行处理, 项目共有6家企业进行投标, 经过标书文本的处理, 最终得到“某电站公用及辅机控制设备”项目的指标数据与综合评估结果分析, 见表5. 经过综合评估结果与专家评标结果和评标报告进行对比, 发现实验结果与专家的真实结果吻合, 实验结果见表6.
通过2个项目共10个标书的案例分析, 并将实验结果与真实结果进行对比, 发现通过标书综合评估模型的计算结果与真实结果吻合, 表明了基于文本分析的标书综合评估模型的在本节2个项目案例分析上的有效性. 该模型的评估从定量计算和定性分析两个方面分别实现了文本评估和文本评级, 两者的结果共同构成了综合评估的结果. 在实践中, 文本评估模型为专家打分提供数据支持, 提高了人工评标的效率; 文本评级模型能够为招投标过程中围标、串标行为的识别提供依据, 大大提升识别围标、串标行为的效率和效果, 识别为疑似或高度疑似存在围标、串标行为的企业标书需进行人工核查, 得到围标、串标行为的识别结果.
5 结论与展望
招投标是工程建设中的重要环节, 高效地识别围标、串标行为是招投标过程的一大难题, 在实践领域人工识别围标、串标行为效率较低、成本高, 在研究领域缺少全面、完善的评估方法. 本文的创新点在于提出了融合文本评估和文本评级的综合评估模型, 模型基于定量计算和定性分析两个方面进行标书处理, 同时将Shingling算法和改进的Simhash算法用于标书文本分析之中. 通过建立基于文本分析的标书综合评估模型, 提取文本的数据信息, 对标书建立文本评估模型和文本评级模型, 实现了对标书的定量和定性的分析, 进而实现对标书的综合评估. 该模型不仅能够为标书评估提供更加客观、合理的得分依据, 为识别投标企业围标串标行为提供有效的参考, 还能提高标书评分的效率. 除此之外, 也能为构建电子化招投标系统和建立标书分析模型提供条件与准备. 基于文本分析的标书综合评估模型对工程建设项目中的标书评标工作具有重要的意义, 基于标书数据形成的知识图谱也为电子化招投标中属性关系的建立和未来的深度探索提供有力的支撑.
基于文本分析的标书综合评估模型仍可在以下几个方面进行改进: 首先, 随时招投标领域向电子化方向发展, 标书评估中用到的评估指标还需要根据国家政策法规、招投标实际情况、招投标工程领域等方面进行补充和完善; 其次, 针对较多数量的标书, 需要采取更加高效、快速的方法识别文本之间的相似度和重复率; 最后, 需要采取不同的方法论证本文模型的有效性和可解释性.
[1] |
聂军民. 企业招标投标工作中存在的问题及对策. 现代商贸工业, 2021, 42(5): 118-119. DOI:10.19311/j.cnki.1672-3198.2021.05.058 |
[2] |
张坤, 唐勇, 胡剑炜. 电子化招投标中围标串标防治措施. 招标采购管理, 2020(3): 42-43. DOI:10.3969/j.issn.2095-4123.2020.03.015 |
[3] |
白臻. 工程项目招投标围标串标防范对策研究. 中国科技投资, 2020(5): 179-180. |
[4] |
王志强, 邵良杉. 基于AHP的标书模糊综合评价方法. 科技情报开发与经济, 2007, 17(9): 176-178. DOI:10.3969/j.issn.1005-6033.2007.09.105 |
[5] |
奚雪峰, 周国栋. 面向自然语言处理的深度学习研究. 自动化学报, 2016, 42(10): 1445-1465. DOI:10.16383/j.aas.2016.c150682 |
[6] |
韩程程, 李磊, 刘婷婷, 等. 语义文本相似度计算方法. 华东师范大学学报(自然科学版), 2020(5): 95-112. DOI:10.3969/j.issn.1000-5641.202091011 |
[7] |
邵恒, 冯兴乐, 包芬. 基于深度学习的文本相似度计算. 郑州大学学报(理学版), 2020, 52(1): 66-71, 78. DOI:10.13705/j.issn.1671-6841.2019007 |
[8] |
Gharghe ZE, Bidgoli BM. Weighted shingling: An adaptation of shingling for weighted shingles. Proceedings of 2009 IEEE International Conference on Innovations in Information Technology (IIT). Al Ain: IEEE, 2009. 150–154.
|
[9] |
Ye SZ, Wen JR, Ma WY. A systematic study on parameter correlations in large-scale duplicate document detection. Knowledge and Information Systems, 2008, 14(2): 217-232. DOI:10.1007/s10115-007-0071-9 |
[10] |
陈二静, 姜恩波. 文本相似度计算方法研究综述. 数据分析与知识发现, 2017, 1(6): 1-11. |
[11] |
马成前, 毛许光. 网页查重算法Shingling和Simhash研究. 计算机与数字工程, 2009, 37(1): 15-17, 108. DOI:10.3969/j.issn.1672-9722.2009.01.004 |
[12] |
张庆颖. 基于Simhash和CNN的相似新闻推荐[硕士学位论文]. 成都: 电子科技大学, 2020.
|
[13] |
余意, 张玉柱, 胡自健. 基于Simhash算法的大规模文档去重技术研究. 信息通信, 2015(2): 28-29. |
[14] |
董博, 郑庆华, 宋凯磊, 等. 基于多SimHash指纹的近似文本检测. 小型微型计算机系统, 2011, 32(11): 2152-2157. |
[15] |
Manku GS, Jain A, Sarma AD. Detecting near-duplicates for web crawling. Proceedings of the 16th International Conference on World Wide Web. Banff, Alberta: ACM, 2007. 141–150.
|
[16] |
张航, 盛志伟, 张仕斌, 等. Simhash算法在文本去重中的应用. 计算机工程与应用, 2020, 56(11): 246-251. DOI:10.3778/j.issn.1002-8331.1902-0246 |
[17] |
Shivakumar N, Garcia-Molina H. Finding near-replicas of documents on the Web. Proceedings of International Workshop WebDB’98. Valencia: Springer, 1998. 204–212.
|
[18] |
于建坤. 云环境下搜索引擎系统关键技术研究[硕士学位论文]. 南京: 南京邮电大学, 2016.
|
[19] |
郝忠翁. 大规模Web文本快速分类关键技术研究[硕士学位论文]. 哈尔滨: 哈尔滨工程大学, 2015.
|
[20] |
葛慧. 相似性的块级重复数据删除算法的研究[硕士学位论文]. 沈阳: 辽宁大学, 2018.
|
[21] |
徐原, 王蕾. 优化价格评分方法防范围标串标风险. 招标采购管理, 2020(3): 44-47. DOI:10.3969/j.issn.2095-4123.2020.03.016 |
[22] |
王莹. 建设工程中价格偏离淘汰法与围标串标的关系研究[硕士学位论文]. 深圳: 深圳大学, 2018.
|