predict.py 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. # coding:utf-8
  2. import re
  3. import datetime
  4. import numpy as np
  5. import jieba
  6. from util.htmltag import Clean, ClearText
  7. import joblib
  8. from loguru import logger
  9. from data.config import china_firstname
  10. from data.config import stop_words_path
  11. from data.config import model_path
  12. seed = int(datetime.datetime.now().timestamp())
  13. np.random.seed(seed)
  14. # 规则
  15. sentence_reg = re.compile('(?isu)[\n|。|!|:|:|;|.]+')
  16. space_reg = re.compile('\\s+|,|\\.|。|,|:|:|、')
  17. ch_check = re.compile(u'[^\u4e00-\u9fa5]') # 检查非中文
  18. # 加载停用词
  19. stop_words = [x.strip() for x in open(stop_words_path, 'r', encoding="utf8")]
  20. stopwords = dict(zip(stop_words, [0] * len(stop_words)))
  21. tfidf, model = joblib.load(model_path)
  22. # 判断是否有多个人名
  23. def has_person_name(seg: str, limit: int = 2):
  24. """
  25. 判断是不是存在人名
  26. :param seg:
  27. :param limit:
  28. :return:
  29. """
  30. if len(seg) < 2:
  31. return False, False, []
  32. ws = [ClearText(x) for x in space_reg.split(seg)]
  33. pns = [x for x in ws if
  34. (len(x) > 0) and (x[0] in china_firstname) and (len(x) <= 6) and (len(x) > 1) and (
  35. x.strip() not in stopwords)]
  36. # 检查
  37. pns_l = np.array([len(x) for x in pns])
  38. return len(pns) >= limit and np.mean(pns_l) < 3.2, len(pns_l) >= limit and np.max(pns_l) <= 4, pns
  39. def predict_expert(content):
  40. """
  41. 预测段落是否说评审专家相关信息
  42. :param content:文本内容
  43. :return: 专家列表
  44. """
  45. review_name_list = []
  46. review_name_res = []
  47. segs = sentence_reg.split(Clean(content))
  48. for index, seg in enumerate(segs):
  49. hasmpn, credible, pns = has_person_name(seg, limit=2)
  50. if hasmpn:
  51. label = ''
  52. for pos in range(1, 5):
  53. if len(label) < 8 and index > pos:
  54. label = space_reg.sub('', segs[index - pos]) + ' ' + label
  55. else:
  56. break
  57. tfid = tfidf.transform((" ".join(jieba.lcut(label)),))
  58. try:
  59. ret = model.predict_proba(tfid)
  60. if ret[0][1] > 0.89:
  61. review_name_list.extend(pns)
  62. except Exception as e:
  63. logger.error(e)
  64. # 去重
  65. review_name_list = list(set(review_name_list))
  66. # 非全中文过滤
  67. for sim_name in review_name_list:
  68. match = ch_check.search(sim_name)
  69. if match or "老师" in sim_name or "先生" in sim_name or "女士" in sim_name:
  70. continue
  71. else:
  72. review_name_res.append(sim_name)
  73. return review_name_res
  74. def extract_expert(contents):
  75. """
  76. 抽取专家
  77. :param contents:
  78. :return:
  79. """
  80. results = {}
  81. for no_key, content in contents.items():
  82. result = predict_expert(content)
  83. results[no_key] = result
  84. return results
  85. # if __name__ == '__main__':
  86. # html = """
  87. # <div class="vF_deail_maincontent">
  88. #
  89. # <div class="vF_detail_main ">
  90. # <div class="vF_detail_header"><h2 class="tc">国家林业和草原局本级林草生态网络感知系统中标公告</h2>
  91. # <p class="tc"><span id="pubTime">2022年08月01日 14:20</span> 来源:<span id="sourceName">中国政府采购网</span> 【<span id="printBtn" style="cursor: pointer;">打印</span>】 <span id="shareTo"></span><span class="displayArti" id="displayGG" style="display: none;">【显示公告正文】</span><span class="displayArti" id="hideGG">【显示公告概要】</span></p></div>
  92. # <!--contentTable-->
  93. # <div class="table" style="display: none;"><h5>公告概要:</h5><table width="600" border="0" cellspacing="1" bgcolor="#bfbfbf" style="text-align:left;"><tbody><tr><td colspan="4"><b>公告信息:</b></td></tr><tr><td class="title" width="128">采购项目名称</td><td colspan="3" width="430">林草生态网络感知系统</td></tr><tr><td class="title">品目</td><td colspan="3"><p><p>服务/信息技术服务/信息技术咨询服务/信息化规划服务</p></p></td></tr><tr><td class="title">采购单位</td><td colspan="3">国家林业和草原局本级</td></tr><tr><td class="title">行政区域</td><td width="168">北京市</td><td class="title" width="128">公告时间</td><td width="168">2022年08月01日 14:20</td></tr><tr><td class="title">评审专家名单</td><td colspan="3">王颖、左崴东、赵红、杜春节、万荣祥、顾炳中、陈永富</td></tr><tr><td class="title">总中标金额</td><td colspan="3">¥3318.000000 万元(人民币)</td></tr><tr><td colspan="4"><b>联系人及联系方式:</b></td></tr><tr><td class="title">项目联系人</td><td colspan="3">邓先生</td></tr><tr><td class="title">项目联系电话</td><td colspan="3">010-87235012</td></tr><tr><td class="title" width="128">采购单位</td><td width="430" colspan="3">国家林业和草原局本级</td></tr><tr><td class="title">采购单位地址</td><td colspan="3">北京市东城区和平里东街18号</td></tr><tr><td class="title">采购单位联系方式</td><td colspan="3">姜先生84239033</td></tr><tr><td class="title">代理机构名称</td><td colspan="3">国信招标集团股份有限公司</td></tr><tr><td class="title">代理机构地址</td><td colspan="3">北京市海淀区常青路和泓四季6号国信招标</td></tr><tr><td class="title">代理机构联系方式</td><td colspan="3">邓先生87235012</td></tr><tr><td colspan="4"><b>附件:</b></td></tr><tr><td class="title">附件1</td><td colspan="3" width="430"><a class="bizDownload" href="//download.ccgp.gov.cn/oss/download?uuid=D82179430CE7EE851DD796274E60E4" id="D82179430CE7EE851DD796274E60E4" title="点击下载">林草生态网络感知系统 招标文件7.6 最终稿.pdf</a></td></tr></tbody></table></div>
  94. # <!--contentTable-->
  95. # <div class="vF_detail_content_container">
  96. # <div class="vF_detail_content">
  97. # <p><strong>一、项目编号:GXTC-C-22780057</strong>(招标文件编号:GXTC-C-22780057)</p> <p><strong>二、项目名称:林草生态网络感知系统</strong></p> <p><strong>三、中标(成交)信息</strong></p> <p>供应商名称:国家林业和草原局林草调查规划院</p><p>供应商地址:北京市东城区和平里东街18号4号楼</p><p>中标(成交)金额:3318.0000000(万元)</p><p><strong>四、主要标的信息</strong></p><table border="3" cellpadding="0" cellspacing="0" style="width: 100%; margin: 0px auto;"> <tbody> <tr> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">序号</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;供应商名称&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;服务名称&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;服务范围&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;服务要求&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;服务时间&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;服务标准&nbsp;&nbsp;</td> </tr> <tr> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">1</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;国家林业和草原局林草调查规划院&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;林草生态网络感知系统&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;1、林草资源数据图层处理分析入库。基于国土三调统一底板,完成2021年林草湿图斑监测数据标准化处理与入库。2、重点区域遥感监测数据处理。河北省林草湿地变化监测和5个国家公园变化监测。3、升级感知系统桌面端和移动端。在原有系统基础上升级,按国家林草局内人员不同业务需求,分配账号使用,初步实现全局范围共享共用,提升管理水平和能力。4、完成中央林草任务落图。在前期年度造林绿化计划任务落图工作基础上,制定规范、加强培训,完善工具软件和审核、展示系统,加快实现中央林草资金任务成果落地上图。5、以国家公园为主的自然保护地基础数据库更新。包括:全面掌握首批5个国家公园资源本底和变化情况,自然保护地数据更新,完善国家公园资源数据库和融合分析系统。6、提高卫星数据应用能力。陆地碳卫星数据处理与接入感知系统;风云四号卫星数据处理与应用。7、感知系统运维与林草融媒体库。包括:感知系统管理与运维,完善林草融媒体库等。&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;详见其它补充事宜&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;自合同签订起一年&nbsp;&nbsp;</td> <td style="border-width: 1px 1pt 1pt; border-style: outset outset outset; padding: 0pt;">&nbsp;&nbsp;&nbsp;本项目各项工作、成果质量,符合相关国家及行业标准、规范的要求&nbsp;&nbsp;</td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </tbody></table> <p><strong>五、评审专家(单一来源采购人员)名单:</strong></p> <p>王颖、左崴东、赵红、杜春节、万荣祥、顾炳中、陈永富</p> <p><strong>六、代理服务收费标准及金额:</strong></p> <p>本项目代理费收费标准:参考原国家计委1980号文服务类标准向中标人收取</p> <p><b>本项目代理费总金额:12.7450000 万元(人民币)</b></p> <p><strong>七、公告期限</strong></p> <p>自本公告发布之日起1个工作日。</p> <p><strong>八、其它补充事宜</strong></p> <p></p><p>服务要求:</p><p>(一)技术要求:</p><p>1、专题图制作与数据服务发布</p><p>(1)遥感数据切片与服务发布:覆盖面积不少于800万平方公里。</p><p>(2)综合监测专题图制作与服务发布:涵盖森林、草原、湿地专题图层不少于170个。</p><p>(3)中央林草任务落图专题图制作与服务发布:不少于10个。</p><p>(4)国家公园专题图制作与服务发布:不少于20个。</p><p>(5)自然保护地专题图制作与服务发布&nbsp; 不少于8个。</p><p>2、业务数据库更新</p><p>(1)林草生态综合监测数据库更新:数据更新不少于31个省级单位;数据量不少于1.5TB;</p><p>(2)中央林草任务落图数据库更新:数据更新不少于全国31个省,2000个县级单位;国土绿化试点示范项目不少于20个;</p><p>(3)国家公园数据库更新:数据覆盖三江源、大熊猫、东北虎、东北豹、海南热带雨林、武夷山5个国家公园;数据内容涵盖基础信息、自然资源、生物多样性、自然环境、社会经济、公众服务、工程项目、管理巡护、动态监测和生态影像等;</p><p>(4)自然保护地数据库更新:数据更新不少于31个省;不少于6000个整合优化后的自然保护地;覆盖面积不少于170万平方公里;</p><p>(5)林草融媒体库更新:不少于5T的各类型视频、图片素材整理、加工、分类、入库。</p><p>3、业务子系统升级完善</p><p>(1)数据目录管理系统:具备林草生态感知数据资源目录多维度编目、元数据信息维护、查询、统计等功能,支持批量导入和接口调用方式获取元数据信息;具备林草生态感知数据资源的预览、共享、调用等功能,按照权限浏览、调用信息资源,对调用情况进行审计,生成信息资源访问审计报告。</p><p>(2)感知系统桌面端、移动端升级完善:基于B/S实现感知系统各业务应用的统一访问门户、集成单点登录和一致的用户体验以及数据接入、查询统计、关联分析、可视化表达(图、表、文档)和分析结果数据导出等功能。</p><p>(3)中央林草任务落图上图APP以及审核管理系统:实现进度管理、落图审核、成果展示、统计分析和查询汇总等功能。</p><p>(4)国家公园数据融合分析系统:整合、构建三江源、大熊猫、海南热带雨林、东北虎豹、武夷山国家公园感知系统基础本底模块、资源环境模块、生物多样性模块、社区管理模块、资源利用模块、保护管理模块、工程项目模块、公众服务模块、公众服务模块、监督监管模块、旅游管理模块等,以及国家公园监控数据接入与处理。</p><p>(5)陆地碳卫星运行监控系统:包括卫星姿态、卫星轨道、载荷状态、载荷数据等监测功能。</p><p>(6)融媒体库管理系统:具有用户、角色权限管理功能;磁盘配额管理及权限管理功能;素材上传、修改、删除、检索功能;日志功能。</p><p>4、外部系统、数据对接迁移</p><p>(1)国家公园监测平台对接及数据迁移:按感知系统标准,开发API接口协议,与国家林草局生态网络感知系统门户进行集成对接,配合门户完成国家公园感知系统的单点登录、统一权限管理和相关数据的集成应用</p><p>(2)林业和草原资金项目大数据管理应用系统对接:按感知系统标准,开发API接口协议,将中央林草任务落图数据对接至林业和草原资金项目大数据管理应用系统。</p><p>5、中央林草任务落图技术支撑、指导培训及质量检查</p><p>(1)不少于全国31个省2000个县级单位;</p><p>(2)落图面积不少于5000万亩;</p><p>(3)国土绿化试点示范项目不少于20个;</p><p>(4)培训人员不少于2000人次;</p><p>(5)检查量不低于5%。</p><p>6、陆地碳卫星及风云四号数据处理</p><p>《陆地碳卫星在轨测试大纲》报告内容完整全面、深度达到相关要求;实验区陆地碳卫星数据处理、成果图制作和入库,面积不少于5000平方公里;风云4号卫星数据接入量不少于3000景。&nbsp;</p><p>7、林草资源变化监测</p><p>(1)河北省林草湿变化监测</p><p>完成河北省不少于6次林草湿变化信息提取;最小监测图斑面积不大于5亩;变化图斑判读的准确率不低于90%。</p><p>(2)国家公园地表覆盖变化监测</p><p>5个国家公园范围内;遥感影像每年覆盖4次;地表覆盖变化图斑判读4次;每次不少于22万平方公里。</p><p>8、网络安全运维和感知系统设备维护保养</p><p>(1)业务系统的安全检查测试,网络安全情况定期巡检,安全设备配置优化,防火墙维护保养,光纤租用:</p><p>(2)感知系统设备维护保养&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p><p>9、系统等级保护测评</p><p>不少于三个业务子系统的初测后的整改工作、达到3级等保的保护能力。</p><p>采用云计算技术的平台在满足网络安全等级保护达三级以上系统通用要求的基础上,要按照《网络安全等级保护基本要求》中的云计算安全扩展要求,《网络安全等级保护安全设计技术要求》中的云安全设计技术要求,对云平台进行特殊保护。应根据用户业务,分析用户系统安全状况进行安全评估与咨询,落实网络安全等级保护制度2.0要求,对系统应用层安全漏洞做定期管理,能够实现安全监控与巡检,并提供安全应急响应。在满足基本安全要求的基础上增加安全措施,满足所建系统的国产化兼容、适配及改造要求,如不满足需提供调研报告说明。制定相关系统升级改造、系统与数据迁移方案及相应应急预案。</p><p>(二)商务要求:</p><p>1、提交成果要求</p><p>完成林草综合监测专题图数据库建库与服务发布;完成重点区域遥感变化监测成果;升级感知系统桌面端和移动端及其操作指南;完成中央林草任务落图;完成以国家公园为主的自然保护地基础数据库更新;实现感知系统总平台运维与林草融媒体库;完成陆地碳卫星在轨测试大纲;实现陆地碳卫星数据处理与接入感知系统;实现风云四号卫星数据处理与应用;完成系统等级保护复测和安全整改。</p><p>2、项目实施团队</p><p>参加项目团队人员包括但不限于林学、草学、环境科学、水土保持、遥感、地图学与地理信息系统、生态学、植物学、动物学、计算机等专业技术人员;团队成员具有林草信息系统建设、林草综合监测、林草专题图制作等工作经验。项目团队成员具有正高职称(教授级高级工程师或研究员)、注册工程咨询师执业证书、注册测绘师执业证书。项目团队总人数不少于100人。项目负责人和技术负责人具有林业专业的正高级(教授级)职称,项目负责人及技术负责人各1人以上。</p><p>3、售后</p><p>在项目实施过程中,提供售后电话咨询,如电话咨询无法解决问题,需免费到现场进行咨询服务。</p><p></p> <p></p> <p></p> <p><strong>九、凡对本次公告内容提出询问,请按以下方式联系。</strong></p> <p>1.采购人信息</p> <p>名 称:国家林业和草原局本级     </p> <p>地址:北京市东城区和平里东街18号        </p> <p>联系方式:姜先生84239033      </p> <p>2.采购代理机构信息</p> <p>名 称:国信招标集团股份有限公司            </p> <p>地 址:北京市海淀区常青路和泓四季6号国信招标            </p> <p>联系方式:邓先生87235012            </p> <p>3.项目联系方式</p> <p>项目联系人:邓先生</p> <p>电 话:  010-87235012</p>  <p></p>
  98. # <div class="bid_attachtab"><table width="700" border="0" cellspacing="1" bgcolor="#efefef" style="text-align: left; width: 100%; margin: 0px auto;"><tbody><tr><td class="bid_attachtab_content">附件下载:<a class="bizDownload" href="//download.ccgp.gov.cn/oss/download?uuid=D82179430CE7EE851DD796274E60E4" id="D82179430CE7EE851DD796274E60E4" title="点击下载">林草生态网络感知系统 招标文件7.6 最终稿.pdf</a><br></td></tr></tbody></table></div></div>
  99. # </div><!--vF_detail_content_container-->
  100. # </div><!--vF_detail_main-->
  101. #
  102. #
  103. # </div>
  104. #
  105. # """
  106. # result = predict_expert(html)
  107. # print(result)