CN112632953A - 一种快速准确侦测多次上传的物料清单属于同一产品的方法 - Google Patents

一种快速准确侦测多次上传的物料清单属于同一产品的方法 Download PDF

Info

Publication number
CN112632953A
CN112632953A CN202011534261.3A CN202011534261A CN112632953A CN 112632953 A CN112632953 A CN 112632953A CN 202011534261 A CN202011534261 A CN 202011534261A CN 112632953 A CN112632953 A CN 112632953A
Authority
CN
China
Prior art keywords
bill
materials
similarity
days
difference
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.)
Granted
Application number
CN202011534261.3A
Other languages
English (en)
Other versions
CN112632953B (zh
Inventor
施海昕
刘云锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ickey Shanghai Internet Technology Co ltd
Original Assignee
Ickey Shanghai Internet Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ickey Shanghai Internet Technology Co ltd filed Critical Ickey Shanghai Internet Technology Co ltd
Priority to CN202011534261.3A priority Critical patent/CN112632953B/zh
Publication of CN112632953A publication Critical patent/CN112632953A/zh
Application granted granted Critical
Publication of CN112632953B publication Critical patent/CN112632953B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • G06Q10/0875Itemisation or classification of parts, supplies or services, e.g. bill of materials
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Marketing (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Evolutionary Computation (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据信息处理技术领域,特别涉及一种快速准确侦测多次上传的物料清单属于同一产品的方法。本发明的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其综合考虑文件名的字符串相似度、文件上传日期差异、BOM条目明细3个维度,从而快速准确的获取多次上传的物料清单是否属于同一产品,提高了侦测容错性和准确性。

Description

一种快速准确侦测多次上传的物料清单属于同一产品的方法
技术领域
本发明涉及数据信息处理技术领域,特别涉及一种快速准确侦测多次上传的物料清单属于同一产品的方法。
背景技术
在采购过程中,客户和销售会协商增加/删除/修改BOM(物料清单)文件中的条目明细,然后多次上传。在整理、统计客户和销售上传的BOM时,我们需要知道哪些BOM文件实际是同一产品的BOM,以便于清洗数据,得到唯一准确的信息,本质上,这是一个分组问题。
现有技术下,一般采用按照文件名全字符匹配的方式侦测物料清单,可以找出一些,但找不完整,因为客户和销售通常在文件名加后缀,比如:日期或者版本号。
发明内容
为了解决现有技术的问题,本发明提供了一种快速准确侦测多次上传的物料清单属于同一产品的方法,其综合考虑文件名的字符串相似度、文件上传日期差异、BOM条目明细3个维度,从而快速准确的获取多次上传的物料清单是否属于同一产品,提高了侦测容错性和准确性。
本发明所采用的技术方案如下:
一种快速准确侦测多次上传的物料清单属于同一产品的方法,包括以下步骤:
A、读取物料清单的所有文件名列表;
B、按照用户ID分组,并从第一个用户开始;
C、判断此用户上传的物料清单的次数,如果次数<2,则删除记录;如果次数≥2,则计算同用户组内的字符串相似度,基于所述的字符串相似度做聚类分析,并标记文件名的组ID;
D、判断是否有下一个用户,如果有则重复步骤C,如果没有,则去除掉只有一次上传记录的组;
E、对于每个文件名组,计算上传天数差异和物料清单条目明细相似度;
F、最终上传天数差异小和物料清单条目相似度度高的物料清单属于同一产品。
步骤C中,计算字符串相似度选用计算Levenshtein编辑距离的方式进行。
步骤E中,计算物料清单条目明细相似度的具体方法包括:
E1、比较两组物料清单中每行的参数和型号,相同的参数或者型号归为一行相同;
E2、物料清单的相似度=相同行数/平均值(第一组物料清单的行数+第二组物料清单的行数)。
步骤E中,如果天数差异大于N,且所述的物料清单条目明细相似度≤M,则需要将所述的文件名组拆分为不同的子分组,并标注子分组ID;且去除掉只有一次上传记录的子分组。
天数差异值N至少为3天。
天数差异值N为3天,所述的M为0。
先判断所述物料清单条目明细相似度,如果所述的物料清单条目明细相似度不为0,再判断天数差异。
本发明提供的技术方案带来的有益效果是:
本发明的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其利用字符串相似度代替全字符匹配,增加了算法的容错性,能找出更多多次上传的物料清单。同时,比较上传日期和物料清单中的明细条目,根据上传日期差异和物料清单的明细条目的相似度控制算法的准确性,从而方便系统更快更准确的找到多次上传的物料清单是否属于同一产品,进而简化系统显示,提高系统效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的一种快速准确侦测多次上传的物料清单属于同一产品的方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
如附图1所示,一种快速准确侦测多次上传的物料清单属于同一产品的方法,包括以下步骤:
A、读取物料清单的所有文件名列表;
B、按照用户ID分组,并判断是否为第一个用户;
C、如果是第一个用户,则判断此用户上传的物料清单的次数,如果次数<2,则删除记录;如果次数≥2,则计算同用户组内的字符串Levenshtein编辑距离,基于所述的Levenshtein编辑距离做聚类分析,并标记文件名的组ID;
D、判断是否有下一个用户,如果有则重复步骤B-步骤C,如果没有,则去除掉只有一次上传记录的组;
E、对于每个文件名组,计算上传天数差异和物料清单条目明细相似度;如果天数差异大于N,且所述的物料清单条目明细相似度=0,则需要将所述的文件名组拆分为不同的子分组,并标注子分组ID;且去除掉只有一次上传记录的子分组。天数差异值N为3天。
F、最终根据所述的上传天数差异和物料清单条目明细相似度确定需要侦测的物料清单。
步骤E中,计算物料清单条目明细相似度的具体方法包括:
E1、比较两组物料清单中每行的参数和型号,相同的参数或者型号归为一行相同;
E2、物料清单的相似度=相同行数/平均值(第一组物料清单的行数+第二组物料清单的行数)。
本实施例的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其方法具体实施原则如下:
1)按用户id分组
客户上传的物料清单是需要登录的,因此系统可以知道每个物料清单是属于哪个客户的。
同时,销售代客户上传物料清单时,也需要选择客户,因为也知道每个物料清单是属于哪个客户的。
因此,按照用户id将物料清单分组的背后逻辑是一个隐含假设:同一个产品的物料清单都是由一个用户上传。因此,为了在物料清单库中找到哪些物料清单其实是同一个产品的物料清单不同版本,可以利用用户id来分组缩小范围。
后续不需要区分是客户自己上传的,还是销售帮客户上传的。只要看物料清单所属的客户id就好。
2)文件名相似度
比如:同一个客户的两个物料清单文件《通讯视频捕捉1.xlsx》,《通讯视频捕捉2.xlsx》,根据算法可以判定他们相似度极高,所以可以分为一组。
本实施例采用的具体算法如下:
Levenshtein Distance,一般称为编辑距离(Edit Distance,LevenshteinDistance只是编辑距离的其中一种)或者莱文斯坦距离,算法概念是俄罗斯科学家弗拉基米尔·莱文斯坦(Levenshtein·Vladimir)在1965年提出。
Levenshtein Distance指两个字串之间,由一个转换成另一个所需的最少编辑操作次数,允许的编辑操作包括:
●将其中一个字符替换成另一个字符(Substitutions)。
●插入一个字符(Insertions)。
●删除一个字符(Deletions)。
Levenshtein Distance公式定义
如果分别用a|和|b|表示a,b两个字符串的长度,那么它们的列文斯坦距离为leva,b(|a|,|b|),它符合:
Figure BDA0002852866050000041
Figure BDA0002852866050000042
是-个指示函数(indicator function),当ai=bj时,其值为0,其他时候它等于1。
leva,b(i,j)表示a的前i个字符与b的前j个字符之间的列文斯坦距离。(i和j都是从1开始的下标)
注意:min运算中的第-个公式代表(从a中)删除字符(以到达b);第二个公式代表插入字符;第三个代表替换(取决于当前字等是否相同)
可以使用动态规划的方法去测量Levenshtein Distance(LD)的值,步骤大致如下:
●初始化一个LD矩阵(M,N),M和N分别是两个输入字符串的长度。
●矩阵可以从左上角到右下角进行填充,每个水平或垂直跳转分别对应于一个插入或一个删除。
●通过定义每个操作的成本为1,如果两个字符串不匹配,则对角跳转的代价为1,否则为0,简单来说就是:
■如果[i][j]位置的两个字符串相等,则从[i][j]位置左加1,上加1,左上加0,然后从这三个数中取出最小的值填充到[i][j]。
■如果[i][j]位置的两个字符串不相等,则从[i][j]位置左、左上、上三个位置的值中取最小值,这个最小值加1(或者说这三个值都加1然后取最小值),然后填充到[i][j]。
●按照上面规则LD矩阵(M,N)填充完毕后,最终矩阵右下角的数字就是两个字符串的LD值。
3)文件上传日期间隔
在文件名相似度高的前提下,一个客户上传了10次BOM文件,日期时间如下:
Figure BDA0002852866050000051
算法发现每次上传间隔小于3天,因此判定可以分为一组。
在文件名相似度高的前提下,另一个客户上传了3次,日期时间如下:
Figure BDA0002852866050000052
上传间隔都大于3天,因此需要分为3组。
4)物料清单明细相似度
实际场景中的修改BOM:
第1版物料清单,客户提交的原始版本如下表:
参数 型号
CAP,MLCC,X5R,4.7UF,6.3V
CAP,MLCC,X5R,470NF,10V
销售和客户沟通后完善参数、型号的第2版如下表:
参数 型号
CAP,MLCC,X5R,4.7UF,6.3V,±10%,0603 CL10A475KQ8NNWC
CAP,MLCC,X5R,470NF,10V,±10%,0402 GRM155R61A474KE15J
由于这是一个和客户沟通完善物料清单的过程,所以第1版和第2版都是同一个产品的物料清单。
除了修改条目之外,客户还可能因为商品供应的原因增加或者删除物料清单条目,以便使物料清单表明下单意向。增删条目后还应该算作同一个产品的物料清单,因为背后对应的客户产品没有变,只是采购的范围变了。
5)结论
只有用户id分组、文件名相似度、文件上传日期间隔、物料清单明细相似度都分为1组,才能判定这些BOM是同一个产品的物料清单。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种快速准确侦测多次上传的物料清单属于同一产品的方法,包括以下步骤:
A、读取物料清单的所有文件名列表;
B、按照用户ID分组,并从第一个用户开始;
C、判断此用户上传的物料清单的次数,如果次数<2,则删除记录;如果次数≥2,则计算同用户组内的字符串相似度,基于所述的字符串相似度做聚类分析,并标记文件名的组ID;
D、判断是否有下一个用户,如果有则重复步骤C,如果没有,则去除掉只有一次上传记录的组;
E、对于每个文件名组,计算上传天数差异和物料清单条目明细相似度;
F、最终上传天数差异小和物料清单条目相似度度高的物料清单属于同一产品。
2.根据权利要求1所述的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其特征在于,所述的步骤C中,计算字符串相似度选用计算Levenshtein编辑距离的方式进行。
3.根据权利要求1所述的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其特征在于,所述的步骤E中,计算物料清单条目明细相似度的具体方法包括:
E1、比较两组物料清单中每行的参数和型号,相同的参数或者型号归为一行相同;
E2、物料清单的相似度=相同行数/平均值(第一组物料清单的行数+第二组物料清单的行数)。
4.根据权利要求1所述的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其特征在于,所述的步骤E中,如果天数差异大于N,且所述的物料清单条目明细相似度≤M,则需要将所述的文件名组拆分为不同的子分组,并标注子分组ID;且去除掉只有一次上传记录的子分组。
5.根据权利要求4所述的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其特征在于,所述的天数差异值N至少为3天。
6.根据权利要求5所述的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其特征在于,所述的天数差异值N为3天,所述的M为0。
7.根据权利要求4所述的一种快速准确侦测多次上传的物料清单属于同一产品的方法,其特征在于,先判断所述物料清单条目明细相似度,如果所述的物料清单条目明细相似度不为0,再判断天数差异。
CN202011534261.3A 2020-12-22 2020-12-22 一种快速准确侦测多次上传的物料清单属于同一产品的方法 Active CN112632953B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011534261.3A CN112632953B (zh) 2020-12-22 2020-12-22 一种快速准确侦测多次上传的物料清单属于同一产品的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011534261.3A CN112632953B (zh) 2020-12-22 2020-12-22 一种快速准确侦测多次上传的物料清单属于同一产品的方法

Publications (2)

Publication Number Publication Date
CN112632953A true CN112632953A (zh) 2021-04-09
CN112632953B CN112632953B (zh) 2023-07-25

Family

ID=75321334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011534261.3A Active CN112632953B (zh) 2020-12-22 2020-12-22 一种快速准确侦测多次上传的物料清单属于同一产品的方法

Country Status (1)

Country Link
CN (1) CN112632953B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241514A (zh) * 2008-03-21 2008-08-13 北京搜狗科技发展有限公司 一种生成纠错数据库的方法、自动纠错的方法和系统
CN101251837A (zh) * 2008-03-26 2008-08-27 腾讯科技(深圳)有限公司 电子文件列表的显示处理方法和系统
CN103294671A (zh) * 2012-02-22 2013-09-11 腾讯科技(深圳)有限公司 文档的检测方法及系统
CN103942712A (zh) * 2014-05-09 2014-07-23 北京联时空网络通信设备有限公司 基于产品相似度的电子商务推荐系统及其方法
CN104268699A (zh) * 2014-09-28 2015-01-07 浪潮(北京)电子信息产业有限公司 自动检查物料清单的方法
CN105302781A (zh) * 2015-11-18 2016-02-03 合肥宝龙达光电技术有限公司 一种快速比对bom的方法
CN108399213A (zh) * 2018-02-05 2018-08-14 中国科学院信息工程研究所 一种面向用户个人文件的聚类方法及系统
CN110196974A (zh) * 2019-06-11 2019-09-03 吉林大学 一种用于大数据清洗的快速数据聚合方法
CN110197197A (zh) * 2019-04-15 2019-09-03 贵州电网有限责任公司 一种基于文本相似度改进的电网档案相似度计算方法
CN110263230A (zh) * 2019-04-25 2019-09-20 北京科技大学 一种基于密度聚类的数据清洗方法及装置
CN111104398A (zh) * 2019-12-17 2020-05-05 智慧航海(青岛)科技有限公司 针对智能船舶近似重复记录的检测方法、消除方法
CN111737519A (zh) * 2020-06-09 2020-10-02 北京奇艺世纪科技有限公司 识别机器人账号的方法、装置、电子设备及计算机可读存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241514A (zh) * 2008-03-21 2008-08-13 北京搜狗科技发展有限公司 一种生成纠错数据库的方法、自动纠错的方法和系统
CN101251837A (zh) * 2008-03-26 2008-08-27 腾讯科技(深圳)有限公司 电子文件列表的显示处理方法和系统
CN103294671A (zh) * 2012-02-22 2013-09-11 腾讯科技(深圳)有限公司 文档的检测方法及系统
CN103942712A (zh) * 2014-05-09 2014-07-23 北京联时空网络通信设备有限公司 基于产品相似度的电子商务推荐系统及其方法
CN104268699A (zh) * 2014-09-28 2015-01-07 浪潮(北京)电子信息产业有限公司 自动检查物料清单的方法
CN105302781A (zh) * 2015-11-18 2016-02-03 合肥宝龙达光电技术有限公司 一种快速比对bom的方法
CN108399213A (zh) * 2018-02-05 2018-08-14 中国科学院信息工程研究所 一种面向用户个人文件的聚类方法及系统
CN110197197A (zh) * 2019-04-15 2019-09-03 贵州电网有限责任公司 一种基于文本相似度改进的电网档案相似度计算方法
CN110263230A (zh) * 2019-04-25 2019-09-20 北京科技大学 一种基于密度聚类的数据清洗方法及装置
CN110196974A (zh) * 2019-06-11 2019-09-03 吉林大学 一种用于大数据清洗的快速数据聚合方法
CN111104398A (zh) * 2019-12-17 2020-05-05 智慧航海(青岛)科技有限公司 针对智能船舶近似重复记录的检测方法、消除方法
CN111737519A (zh) * 2020-06-09 2020-10-02 北京奇艺世纪科技有限公司 识别机器人账号的方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN112632953B (zh) 2023-07-25

Similar Documents

Publication Publication Date Title
WO2017074174A1 (en) A system and method for processing big data using electronic document and electronic file-based system that operates on rdbms
US20200294067A1 (en) Time series clustering analysis for forecasting demand
CN113240518A (zh) 基于机器学习的银行对公客户流失预测方法
CN104573130A (zh) 基于群体计算的实体解析方法及装置
CN113204603B (zh) 金融数据资产的类别标注方法及装置
CN111612579A (zh) 商品信息管理系统、方法、装置及计算机可读存储介质
JP6242540B1 (ja) データ変換システム及びデータ変換方法
CN118052408A (zh) 一种用于企业外包的智能化管理系统
CN116501375B (zh) 数据字典版本管理方法、装置、计算机设备及存储介质
CN110245118B (zh) 一种bim资料信息三维网格化检索归档方法及其归档系统
CN112632953A (zh) 一种快速准确侦测多次上传的物料清单属于同一产品的方法
US8615522B2 (en) Computing device, storage medium and method for outputting dimension data using the computing device
CN113157788B (zh) 大数据挖掘方法及系统
CN113254583B (zh) 一种基于语义向量的文档标记方法、装置及介质
TW202232388A (zh) 學習系統、學習方法及程式產品
CN112015916A (zh) 知识图谱的补全方法、装置、服务器和计算机存储介质
CN112560433A (zh) 一种信息处理的方法及装置
CN111027296A (zh) 基于知识库的报表生成方法及系统
Nijaguna et al. Multiple kernel fuzzy clustering for uncertain data classification
US20240249071A1 (en) System and method for extracting structured data
CN116934418B (zh) 一种异常订单的检测预警方法、系统、设备及存储介质
CN113723301B (zh) 一种进口货物报关单ocr识别分行处理方法及装置
CN117951336A (zh) 企业级数据标准处理方法、装置、设备和介质
CN117151080A (zh) 一种导入文件标题识别方法、装置、电子设备和存储介质
CN114661699A (zh) 一种数据字典的生成方法和系统

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