利用投标相似度辅助围串标判定
摘要
围标(bid rigging)是一种非法的竞争行为,对市场公平性和公共资源分配造成严重影响。本文探讨了如何利用投标相似度来辅助判定围标行为。通过详细分析投标文件的内容相似性,选取适当的指标进行相似度计算,并结合实际案例验证其有效性。
引言
围标行为通常通过提交高度相似的投标文件实现,传统的人工审查难以有效识别这些行为。利用人工智能和自然语言处理(NLP)技术,可以对投标文件进行深度分析,识别出潜在的围标行为。本研究重点在于通过相似度分析来辅助围标判定。
相似度计算的指标
在分析投标文件的相似度时,需要选取多个关键指标进行衡量。以下是几个主要的相似度衡量指标及其具体实现方法:
1. **词频-逆文档频率(TF-IDF)**:
- **原理**:TF-IDF是一种统计方法,用于评估一个词语在一个文档中的重要程度。TF表示词频,即一个词在文档中出现的次数。IDF表示逆文档频率,用于衡量词语的普遍性。
- **实现步骤**:
1. 对每份投标文件进行分词处理,去除停用词和标点符号。
2. 计算每个词在文档中的TF值。
3. 计算词语在整个文档集中的IDF值。
4. 乘积得到每个词的TF-IDF值,生成文档的TF-IDF向量。
2. **余弦相似度(Cosine Similarity)**:
- **原理**:余弦相似度用于计算两个向量之间的相似度,通过计算向量夹角的余弦值来判断相似程度。其值在-1到1之间,值越接近1表示相似度越高。
- **实现步骤**:
1. 将每份投标文件的TF-IDF值向量化。
2. 计算两个向量的点积。
3. 计算两个向量的模。
4. 计算点积与模的比值,得到余弦相似度。
3. **Jaccard相似度(Jaccard Similarity)**:
- **原理**:Jaccard相似度用于衡量两个集合的相似度,是两个集合交集与并集的比值。其值在0到1之间,值越接近1表示相似度越高。
- **实现步骤**:
1. 对每份投标文件进行分词处理,生成词集。
2. 计算两个词集的交集大小。
3. 计算两个词集的并集大小。
4. 计算交集大小与并集大小的比值,得到Jaccard相似度。
4. **编辑距离(Edit Distance)**:
- **原理**:编辑距离用于衡量两个字符串之间的差异,表示将一个字符串转换为另一个字符串所需的最少编辑操作次数。编辑操作包括插入、删除和替换。
- **实现步骤**:
1. 对每份投标文件进行预处理,生成字符串。
2. 计算两个字符串之间的编辑距离。
3. 根据编辑距离的大小来衡量文档的相似度。
应用案例
在实际应用中,可以将上述相似度计算方法结合使用,以提高判定的准确性。以下是一个具体案例:
1. **数据收集**:收集某一项目的所有投标文件,进行文本预处理。
2. **特征提取**:对每份投标文件计算TF-IDF值,生成TF-IDF向量。
3. **相似度计算**:使用余弦相似度、Jaccard相似度和编辑距离分别计算每对投标文件的相似度分数。
4. **综合评估**:根据相似度分数设定阈值,超过阈值的文件对被标记为可能存在围标行为。
5. **人工审核**:对标记的异常文件进行人工审核,结合其他信息确认是否存在围标行为。
结果分析
通过上述方法,对某市政府公开招标项目的历史数据进行分析,结果表明基于相似度计算的异常检测方法能够有效识别出潜在的围标行为。统计分析显示,结合多种相似度指标的方法比单一指标的方法具有更高的准确性和召回率。
讨论
相似度计算在防围串标系统中具有显著的优势,但也面临一些挑战:
1. **数据质量**:投标数据的质量直接影响检测结果,需要进行数据清洗和预处理。
2. **阈值设定**:不同项目的阈值设定可能需要调整,以适应不同的投标环境和数据特点。
3. **模型综合**:将多种相似度计算方法综合使用,能够提高检测的准确性,但也增加了计算复杂度和处理时间。
结论与未来工作
基于相似度计算的异常检测在防围串标系统中展示了广阔的应用前景。未来,可以进一步研究结合深度学习的方法,提升检测的准确性和实时性。此外,加强多部门的数据共享和协作,构建更全面的防围串标系统,也是未来的发展方向。
参考文献
1. Salton, G., Wong, A., & Yang, C. S. (1975). A vector space model for automatic indexing. *Communications of the ACM*, 18(11), 613-620.
2. Manning, C. D., Raghavan, P., & Schütze, H. (2008). Introduction to Information Retrieval. Cambridge University Press.
3. Cohen, W. W., Ravikumar, P., & Fienberg, S. E. (2003). A comparison of string distance metrics for name-matching tasks. In *IIWeb* (pp. 73-78).
通过本文,希望能够对利用相似度计算进行围标行为判定的原理和应用有一个全面的了解,为进一步研究和实践提供参考。
相关文章:
利用投标相似度辅助围串标判定
摘要 围标(bid rigging)是一种非法的竞争行为,对市场公平性和公共资源分配造成严重影响。本文探讨了如何利用投标相似度来辅助判定围标行为。通过详细分析投标文件的内容相似性,选取适当的指标进行相似度计算,并结合实…...
iOS 开发者的 Flutter 入门课
作为一名 iOS 开发者,入门 Flutter 需要了解一些新的工具和概念,但也能利用你已有的知识和技能。以下是一个详细的入门指南,帮助你快速上手 Flutter: 1. 环境设置 首先,你需要设置开发环境。 安装 Flutter SDK 前往…...
单机版k8s搭建
环境配置: 关闭防火墙和交换内存 systemctl stop ufwsudo swapoff -a安装Docker 更新安装包 sudo apt-get update安装依赖 sudo apt install -y curl gnupg2 software-properties-common apt-transport-https ca-certificates获取证书 curl -fsSL http://mirrors.a…...

IDEA创建Spring项目无法使用Java8的解决方案
文章目录 一,创建Project,无法选择Java81,无法选择Java82,选择JDK17报错 二,原因分析1,Spring Boot将来会全力支持Java17,不再维护支持Java8的版本 三,解决方案1,使用国内…...
无障碍快捷方式图标
问题背景 测试反馈,无障碍快捷方式和setting里的无障碍图标不一致。 无障碍快捷方式悬浮窗 1、悬浮窗在systemui中 frameworks\base\packages\SystemUI\src\com\android\systemui\accessibility\floatingmenu\AccessibilityTargetAdapter.java 图标获取方式&…...

基于LangChain的RAG开发教程(二)
v1.0官方文档:https://python.langchain.com/v0.1/docs/get_started/introduction/ 最新文档:https://python.langchain.com/v0.2/docs/introduction/ LangChain是一个能够利用大语言模型(LLM,Large Language Model)能…...

Nifi 与 Kettle
01 Kettle简介 Kettle是一个开源的ETL(Extract-Transform-Load)工具,可以用于数据集成、数据转换和数据处理等任务。它提供了一组可视化的设计工具,使得用户可以通过简单的拖拽和连接来构建数据流程,并且还支持多种数据…...

uniapp安卓端实现语音合成播报
最初尝试使用讯飞语音合成方式,能获取到语音数据,但是数据是base64格式的,在安卓端无法播放,网上有说通过转成blob格式的url可以播放,但是uniapp不支持转换的api;于是后面又想其他办法,使用安卓插件播报原生安卓语音播报插件 - DCloud 插件市场 方案一(讯飞语音合成) 1.在讯飞…...

Studying-代码随想录训练营day31| 56.合并区间、738.单调递增的数字、968.监控二叉树、贪心算法总结
第31天,贪心最后一节(ง •_•)ง💪,编程语言:C 目录 56.合并区间 738.单调递增的数字 968.监控二叉树 贪心算法总结 56.合并区间 文档讲解:代码随想录合并区间 视频讲解:手撕合并区间 题目…...

springboot装修接单平台-计算机毕业设计源码25005
摘要 随着装修行业的快速发展和数字化趋势,传统的装修接单方式已显不足以满足用户需求,因此建立一个便捷高效的平台具有重要意义。通过利用Java语言的跨平台特性和强大的编程能力,结合SpringBoot框架的快速开发特性和Mysql数据库的稳定性&…...

matlab仿真 信道(下)
(内容源自详解MATLAB/SIMULINK 通信系统建模与仿真 刘学勇编著第四章内容,有兴趣的读者请阅读原书) 之前的内容还剩下simulink的仿真过程。 3.simulink中的AWGN模块仿真 系统框图如图所示,TX和RX 模块需要单独实现…...

华宇携TAS应用中间件亮相2024年山东江信智能信创产品推介会
信创产业是数据、网络安全的基础,也是“新基建”的重要内容,将成为拉动经济发展的重要抓手之一。 7月5日,以“信守时代机遇,创造辉煌未来”为主题的山东江信智能信创产品推介会在济南举办。本次产品推介会汇聚了国内众多信息技术…...
单向链表的数据存储(申请堆空间)
函数功能: 0.排序(逆置和顺序排序) 1.回显 2.头插 3.位插 4.尾插 5.尾删 6.头删 7.位删 8.查找 (按值或按位查找) 9.修改 (按值或按位修改) 10.退出 main.c …...
MySQL8之mysql-community-common的作用
在MySQL 8中,mysql-community-common是一个软件包,它提供了MySQL服务器和客户端库所需的一些共同文件。具体来说,mysql-community-common的作用包括但不限于以下几点: 1. 提供基础配置和错误信息 错误信息和字符集包:…...
Emacs有什么优点,用Emacs写程序真的比IDE更方便吗?
Emacs 是一个功能强大的文本编辑器和应用程序框架,它拥有众多的优点,这些优点使得它在某些情况下成为编程的强大工具。然而,是否用 Emacs 写程序比 IDE 更方便,这很大程度上取决于个人的工作习惯和偏好。 Emacs 的主要优点包括&a…...

如何切换手机的ip地址
在数字时代的浪潮中,智能手机已成为我们日常生活中不可或缺的一部分。然而,随着网络安全问题的日益凸显,保护个人隐私和数据安全变得尤为重要。其中,IP地址作为网络身份的重要标识,其安全性与隐私性备受关注。本文将详…...

前端画图引擎ZRender,echarts的渲染器,你知道吗?
Zrender是一个轻量级的Canvas和SVG渲染库,它提供了一个高性能的图形绘制和交互的解决方案,用于在Web页面上创建丰富的数据可视化和交互式图形。 可能大部分小伙伴不知道这个类库,本文给大家科普一下。 一、Zrender是谁? 该项目…...

web前端开发——标签一
今天我来针对web前端开发讲解标签一 Html标签_标题&段落&换行 注释标签:Ctrl/ Ctrl/ ,用户可能会获取到注释标签 注释的原则: •和代码逻辑一致 •尽量使用中文 •正能量 标题标签:<h1></h1> h1-h6 标题标签有6…...
【深度学习】探讨最新的深度学习算法、模型创新以及在图像识别、自然语言处理等领域的应用进展
深度学习作为人工智能领域的重要分支,近年来在算法、模型以及应用领域都取得了显著的进展。以下将探讨最新的深度学习算法与模型创新,以及它们在图像识别、自然语言处理(NLP)等领域的应用进展。 一、深度学习算法与模型创新 新型…...

使用 mongo2neo4j 和 SemSpect 通过各种方式进行图探索
用于可视化和探索每个 MEAN 堆栈背后的数据图的 ETL 您是否正在努力回答有关 MEANS Web 服务数据的紧急问题?哪里有 BI 可以快速回答“上个季度哪些亚洲的artisan.plus 用户触发了订单?”这个问题,而无需编写查询?使用 mongo2neo4…...

第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
MySQL账号权限管理指南:安全创建账户与精细授权技巧
在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则…...