CN112416920B - 一种面向mes的数据清洗方法及系统 - Google Patents
一种面向mes的数据清洗方法及系统 Download PDFInfo
- Publication number
- CN112416920B CN112416920B CN202011387905.0A CN202011387905A CN112416920B CN 112416920 B CN112416920 B CN 112416920B CN 202011387905 A CN202011387905 A CN 202011387905A CN 112416920 B CN112416920 B CN 112416920B
- Authority
- CN
- China
- Prior art keywords
- data
- record
- similarity
- records
- window
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/217—Database tuning
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向MES的数据清洗方法及系统,所述数据清洗方法包括:采用可变窗口的SNM算法计算待清洗数据中每两条记录之间的相似度;根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据;采用KNN缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据。本发明采用改进的SNM算法计算记录之间的相似度,并根据相似度进行重复数据处理和缺失数据填补,本发明实现了对MES中的数据进行数据清洗,减小了MES中的数据中的重复数据,并补充了MES中的数据中的缺失数据,克服了重复数据占用数据库的存储资源以及相似重复数据和缺失数据对生产管理与决策产生不良影响的技术缺陷。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种面向MES的数据清洗方法及系统。
背景技术
在制造生产中MES(Manufacturing Execution System,制造执行系统)的数据库中会存入大量的数据,由于设备、技术等原因,难免会出现一些缺失数据、相似重复数据的异常情况,这些数据可能会对生产管理与决策产生不良影响,也可能由于无法被利用造成数据库的存储资源的浪费。
近年来,数据挖掘在信息产业领域的应用越来越频繁,被越来越多的应用于MES系统的数据处理中。据统计在一个完整的数据挖掘过程中,数据预处理要花费约60%左右的时间。数据清理是数据预处理的重要组成部分。数据挖掘结果的准确性与数据集中的数据的准确性有关,如果数据集中的数据不准确,那么数据挖掘的结果必然会受到影响。数据清洗主要是处理缺失数据和清洗脏数据。数据清洗的原理是利用算法、构建模型、专家参与等方式,分析问题数据将其转换为满足完整性、一致性、有效性等数据质量要求的数据,从而达到提高数据质量的要求。
由于MES中的数据是多源的,容易出现相似重复数据的情况,另外传感器故障、采集和传输过程干扰或生产状态的改变,可能会出现部分数据的缺失。
现有的MES系统缺少对数据库进行清洗的方法,存在重复数据占用数据库的存储资源以及相似重复数据和缺失数据对生产管理与决策产生不良影响的缺陷。数据清洗包括缺失数据和相似重复数据的处理。数据库中的相似重复记录是指那些客观上表示现实世界同一实体,但是由于来自于不同数据源而产生的重复记录或在格式和拼写上有差异而导致数据库管理系统不能正确识别的记录。相似重复记录分为两大类,一类是完全一致的记录,另一类是相似但是不完全相同的记录。缺失值是由于传感器故障、采集和传输过程干扰或生产状态的改变等原因产生的空缺数据。
如何对MES中的数据进行数据清洗,以减小MES中的数据中的重复数据,并补充MES中的数据中的缺失数据,成为一个亟待解决的技术问题。
发明内容
本发明的目的是提供一种面向MES的数据清洗方法及系统,以实现对MES中的数据进行数据清洗,减小MES中的数据中的重复数据,并补充MES中的数据中的缺失数据。
为实现上述目的,本发明提供了如下方案:
一种面向MES的数据清洗方法,所述数据清洗方法包括如下步骤:
采用可变窗口的SNM算法(Sorted-neighborhood Method,邻近排序算法)计算待清洗数据中每两条记录之间的相似度;
根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据;
根据每两条记录之间的相似度,采用KNN(K-nearestNeighbour,K近邻)缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据。
可选的,所述采用可变窗口的SNM算法计算待清洗数据中每两条记录之间的相似度,具体包括:
判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果;
若所述第一判断结果表示是,则利用公式增加窗口长度,获得长度改变后的窗口;其中,sim0表示相似度阈值,sim(x1,xw)表示窗口内第一条记录x1与最后一条记录xw之间的相似度;W表示长度改变前的窗口,W′表示长度改变后的窗口;
计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,并将长度改变后的窗口向后移动一条记录,返回步骤“判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果”,直到计算完成待清洗数据中的所有记录的计算,获得每两条记录的相似度。
可选的,所述计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,具体包括:
分别令j=2,3,…,W′,利用相似度计算公式,计算长度改变后的窗口内的第一条记录与第j条记录的每个属性下的相似度,获得长度改变后的窗口内的第一条记录与第一条记录之后的每个属性下的相似度;
分别令j=2,3,…,W′,利用公式对第一条记录与第j条记录的每个属性下的相似度进行加权求和,获得长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度;其中,sim(r1,rj)表示长度改变后的窗口内的第一条记录与第j条记录的相似度,sim[r1,i,rj,i]表示长度改变后的窗口内的第一条记录与第j条记录的第i个属性下的相似度,n表示属性的数量,W[i]表示第i个属性的权重。
可选的,所述根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据,具体包括:
判断两条记录之间的相似度是否等于1,获得第二判断结果;
若所述第二判断结果表示是,则采用删除两条记录中的一条记录或者将两条记录合并的方式,对两条所述记录进行处理;
若所述第二判断结果表示否,则判断两条记录之间的相似度是否介于第一相似度阈值和第二相似度阈值之间,获得第三判断结果;
若所述第三判断结果表示是,则对两条所述记录进行记录;
若所述第三判断结果表示否,则判断两条记录之间的相似度是否介于第二相似度阈值和1之间,获得第四判断结果;
若所述第四判断结果表示是,则采用删除两条记录中与外部源文件匹配程度低的记录、随机删除两条记录中的一条记录或采用两条所述记录的平均值替换两条所述记录的方式对两条所述记录进行处理。
可选的,所述采用KNN缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据,具体包括:
利用处理后的数据中待填补的记录中同一属性下的所有数据的平均值,作为待填补的记录中的预填补数据;
将所述预填补数据填补至所述待填补的记录,获得预填补后的记录;
对所述预填补后的记录的数值型属性的数据进行去量纲处理,获得去量纲处理后的记录;
以去量纲处理后的记录中同一属性下的数据作为行向量,不同属性下的对应数据作为列向量,构建待填补矩阵;
计算待填补矩阵中,预填补数据所在的行与每个无缺失数据的行的欧氏距离;
计算欧式距离较小的K个无缺失数据的行中第k列的数据的平均值,替换所述预填补数据;其中,第k列为预填补数据所在的列。
一种面向MES的数据清洗系统,所述数据清洗系统包括:
相似度计算模块,用于采用可变窗口的SNM算法计算待清洗数据中每两条记录之间的相似度;
重复数据处理模块,用于根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据;
数据填补模块,用于采用KNN缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据。
可选的,所述相似度计算模块,具体包括:
第一判断在模块,用于判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果;
窗口增加处理子模块,用于若所述第一判断结果表示是,则利用公式增加窗口长度,获得长度改变后的窗口;其中,sim0表示相似度阈值,sim(x1,xw)表示窗口内第一条记录x1与最后一条记录xw之间的相似度;W表示长度改变前的窗口,W′表示长度改变后的窗口;
相似度计算子模块,用于计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,并将长度改变后的窗口向后移动一条记录,返回步骤“判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果”,直到计算完成待清洗数据中的所有记录的计算,获得每两条记录的相似度。
可选的,所述相似度计算子模块,具体包括:
相似度计算单元,用于分别令j=2,3,…,W′,利用相似度计算公式,计算长度改变后的窗口内的第一条记录与第j条记录的每个属性下的相似度,获得长度改变后的窗口内的第一条记录与第一条记录之后的每个属性下的相似度;
加权求和单元,用于分别令j=2,3,…,W′,利用公式对第一条记录与第j条记录的每个属性下的相似度进行加权求和,获得长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度;其中,sim(r1,rj)表示长度改变后的窗口内的第一条记录与第j条记录的相似度,sim[r1,i,rj,i]表示长度改变后的窗口内的第一条记录与第j条记录的第i个属性下的相似度,n表示属性的数量,W[i]表示第i个属性的权重。
可选的,所述重复数据处理模块,具体包括:
第二判断子模块,用于判断两条记录之间的相似度是否等于1,获得第二判断结果;
第一重复数据处理子模块,用于若所述第二判断结果表示是,则采用删除两条记录中的一条记录或者将两条记录合并的方式,对两条所述记录进行处理;
第三判断子模块,用于若所述第二判断结果表示否,则判断两条记录之间的相似度是否介于第一相似度阈值和第二相似度阈值之间,获得第三判断结果;
第二重复数据处理子模块,用于若所述第三判断结果表示是,则对两条所述记录进行记录;
第四判断子模块,用于若所述第三判断结果表示否,则判断两条记录之间的相似度是否介于第二相似度阈值和1之间,获得第四判断结果;
第三重复数据处理子模块,用于若所述第四判断结果表示是,则采用删除两条记录中与外部源文件匹配程度低的记录、随机删除两条记录中的一条记录或采用两条所述记录的平均值替换两条所述记录的方式对两条所述记录进行处理。
可选的,所述数据填补模块,具体包括:
预填补数据计算子模块,用于利用处理后的数据中待填补的记录中同一属性下的所有数据的平均值,作为待填补的记录中的预填补数据;
预填补子模块,用于将所述预填补数据填补至所述待填补的记录,获得预填补后的记录;
去量纲处理子模块,用于对所述预填补后的记录的数值型属性的数据进行去量纲处理,获得去量纲处理后的记录;
待填补矩阵构建子模块,用于以去量纲处理后的记录中同一属性下的数据作为行向量,不同属性下的对应数据作为列向量,构建待填补矩阵;
欧氏距离计算子模块,用于计算待填补矩阵中,预填补数据所在的行与每个无缺失数据的行的欧氏距离;
数据填补子模块,用于计算欧式距离较小的K个无缺失数据的行中第k列的数据的平均值,替换所述预填补数据;其中,第k列为预填补数据所在的列。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明公开了一种面向MES的数据清洗方法及系统,所述数据清洗方法包括如下步骤:采用可变窗口的SNM算法计算待清洗数据中每两条记录之间的相似度;根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据;采用KNN缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据。本发明采用改进的SNM算法计算记录之间的相似度,并根据相似度进行重复数据处理和缺失数据填补,本发明实现了对MES中的数据进行数据清洗,减小了MES中的数据中的重复数据,并补充了MES中的数据中的缺失数据,克服了重复数据占用数据库的存储资源以及相似重复数据和缺失数据对生产管理与决策产生不良影响的技术缺陷。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种面向MES的数据清洗方法的流程图;
图2为本发明提供的一种面向MES的数据清洗方法的原理图。
具体实施方式
本发明的目的是提供一种面向MES的数据清洗方法及系统,以实现对MES中的数据进行数据清洗,减小MES中的数据中的重复数据,并补充MES中的数据中的缺失数据。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对发明作进一步详细的说明。
如图1和2所示,本发明提供一种面向MES的数据清洗方法,所述数据清洗方法包括如下步骤:
步骤101,采用可变窗口的SNM算法计算待清洗数据中每两条记录之间的相似度。
步骤101之前还包括对待清洗数据进行预处理,包括选取合适的属性,属性取值的标准化,各属性的权重分配,对选定的关键字记录进行排序。具体包括如下步骤:
1、属性的选取。MES系统会记录生产过程中产生的各种属性数据,为提高相似重复比对的效率,应避免选取取值固定、缺失数据过多的属性。
2、属性取值的标准化。为方便后续的相似重复比对,属性的数据格式、单位需按照统一规范进行标准化,如时间、质量属性等。
3、权重的分配。因为每种属性重要性不同,所以相似重复比对的贡献度不同,有必要给每种属性分配不同的权值。具体每种属性的权值由专家给出。
4、记录排序。选定关键字对数据库中的记录进行排序。对于生产过程数据,关键字可选为时间,即按照时间先后顺序排序;对于产品质量数据,关键字可选为ID序号,即按照产品的ID序号排序。
SNM算法的基本思想是利用一个可移动的固定大小的窗口,使得相似重复记录始终处于窗口内,窗口中的第一条记录和剩余的记录进行匹配计算,判定它们是否相似,然后当前窗口下移,将第一条记录滑出,下一条记录滑入,依次进行比对检验是否相似重复。虽然相较于每条记录都与其余记录比对的比较次数少很多,但是滑动窗口长度的取值会直接影响记录的比对次数,若取值较大则会造成多余的比较,若取值过小则会引起记录的遗漏现象。针对上述问题,本发明对SNM算法进行了改进,实现了可变窗口的SNM算法。
步骤101所述采用可变窗口的SNM算法计算待清洗数据中每两条记录之间的相似度,具体包括:
判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果;
若所述第一判断结果表示是,由于记录按照一定顺序(时间、ID序号等)排列,相似数据会处于相邻位置,若窗口内第一条记录与窗口内的最后一条记录的相似度sim(x1,xw)低于第一设定阈值sim0,说明窗口长度过大,需要缩小窗口,则利用公式增加窗口长度,获得长度改变后的窗口;其中,sim0表示相似度阈值,sim(x1,xw)表示窗口内第一条记录x1与最后一条记录xw之间的相似度;W表示长度改变前的窗口,W′表示长度改变后的窗口;
计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,并将长度改变后的窗口向后移动一条记录,返回步骤“判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果”,直到计算完成待清洗数据中的所有记录的计算,获得每两条记录的相似度。
即,在确定了窗口大小后,根据属性数据类型选择对应的相似度计算方法,依次计算窗口内第一条记录与其余每条的记录的相似度,完成后窗口下移,将第一条记录滑出,下一条记录滑入,再次按上述方法进行窗口长度调整,以此类推,直至比较完当前属性的全部记录,再分别计算出每个属性下各记录的相似度。
具体如下:所述计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,具体包括:分别令j=2,3,…,W′,利用相似度计算公式,计算长度改变后的窗口内的第一条记录与第j条记录的每个属性下的相似度,获得长度改变后的窗口内的第一条记录与第一条记录之后的每个属性下的相似度;分别令j=2,3,…,W′,利用公式对第一条记录与第j条记录的每个属性下的相似度进行加权求和,获得长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度;其中,sim(r1,rj)表示长度改变后的窗口内的第一条记录与第j条记录的相似度,sim[r1,i,rj,i]表示长度改变后的窗口内的第一条记录与第j条记录的第i个属性下的相似度,n表示属性的数量,W[i]表示第i个属性的权重。
按照数据类型,可将待清洗数据分为布尔型、数值型、字符串型。
布尔型的比较方法可直接进行比较,设x1和x2分别为进行比较的布尔型数据,其相似度计算公式如式(1)所示,其中,sim(x1,x2)为x1和x2的相似度。
设x1和x2分别为进行比较的数值型数据,其相似度计算公式如式(2)所示。
对于字符串型数据,采用字符串编辑距离(Levenshte i n距离)的字段匹配算法。Levenshtei n距离是一种计算两个字符串间的差异程度的方法,原理是将一个字符串改成另一个字符串,计算编辑单个字符(如修改、插入、删除)所需要的最少次数即为编辑距离,然后通过编辑距离与相似度之间的对应关系将其转变为相似度。
设两个字符串A、B的长度为La、Lb,字符串A、B的编辑距离为dist(La,Lb),由动态规划的方法可以得到两字段的编辑距离计算公式,如式(3)所示。
其中,ε是空符号,其中cost(Ai,ε)表示删除A中第i个字符的代价,cost(ε,Bj)表示在B中第j个字符插入的代价,cost(Ai,Bj)表示把A中第i个字符替换成B中第j个字符的代价,如果两个字符相同,则cost=0,否则cost=1。
根据(3)公式,i和j的初值为La和Lb,迭代计算出两个字符串的编辑距离dist(La,Lb)后,再转换成相似度,其相似度计算公式如式4所示。编辑距离越大,字符串之间的相似度越小。
步骤102,根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据。
另外,在进行相似度比较过程中,如果第m条记录与第m+1条记录相似度为1,第m+1条记录与第m+2条记录相似度为1,则第m条记录与第m+2条记录相似度必然为1,无需进行比较,这样可以提高比对速度。
相似重复记录分为两大类,一类是完全一致的记录,另一类是相似但不是完全相同的记录,所以相似重复数据的处理包括重复数据合并及冲突数据处理。若两条记录关键词不同,或相似度很低,sim(r1,r2)<sim0,则认为两条记录不相似;sim0表示第一相似度阈值。其中数据冲突问题采用自动化、半自动化、人工处理三种方式相结合的方法解决。
具体的,步骤102所述根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据,具体包括:
判断两条记录之间的相似度是否等于1,获得第二判断结果。
若所述第二判断结果表示是,则采用删除两条记录中的一条记录或者将两条记录合并的方式,对两条所述记录进行处理。即,若两条记录都没有缺失属性,则说明两条记录完全相同,随机选取任意一条记录保留;若其中一条记录是缺失记录,另外一条是属性完整的记录,则保留属性完整的记录;若两条记录均存在部分属性缺失,说明两条记录仅有部分属性是相同的,需要将两条记录合并,用另一条记录中的数据填充缺失数据。以上是对重复数据合并的自动化处理方式。
若所述第二判断结果表示否,则判断两条记录之间的相似度是否介于第一相似度阈值(sim0)和第二相似度阈值(sim1)之间,获得第三判断结果。
若所述第三判断结果表示是,则对两条所述记录进行记录;即,当sim0≤sim(r1,r2)<sim1时,两条记录相似但是相差较大,需要由相关技术人员参与决定记录的保留与删除。这属于对冲突数据的人工处理方式。
若所述第三判断结果表示否,则判断两条记录之间的相似度是否介于第二相似度阈值和1之间,获得第四判断结果;
若所述第四判断结果表示是,则采用删除两条记录中与外部源文件匹配程度低的记录、随机删除两条记录中的一条记录或采用两条所述记录的平均值替换两条所述记录的方式对两条所述记录进行处理。即,当sim1≤sim(r1,r2)<1时,两条记录相似但是相差较小,对于使用字符串表示的数据(如产品颜色、加工设备编号等),在遇到冲突时可参考外部文件中的记录或数据字典,将检测到的相似重复数据与外部文件或数据字典中的记录进行匹配,保留与外部源文件匹配程度最高的记录,如果吻合程度相同,可由相关技术人员选取某一记录保留或随机选取;对于数值型的相似数据,可用平均值代替冲突数据。以上属于对冲突数据的半自动化处理方式。
步骤103,采用KNN缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据。
经过步骤101和步骤102,可以实现相似重复数据的清洗,尽管在处理相似数据时进行了部分缺失数据填补,但是还有一些与其他记录都不相似的记录仍存在缺失,其中缺失严重的记录由于缺失信息过多很难填补,故对缺失数据的填补仅针对缺少量不大的、数据连续变化而非离散的数值型数据,采用KNN缺失填充算法填补缺失数据,具体为:
步骤103所述采用KNN缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据,具体包括:
利用处理后的数据中待填补的记录中同一属性下的所有数据的平均值,作为待填补的记录中的预填补数据。即,对缺失数据同一属性的其他数据求取平均值作为缺失数据的预填补值,即其中n表示数据数量,xs表示缺失数据的预填补值,xi表示与缺失数据为同一属性的第i个数据。
将所述预填补数据填补至所述待填补的记录,获得预填补后的记录。
对所述预填补后的记录的数值型属性的数据进行去量纲处理,获得去量纲处理后的记录;将多个无缺失连续变化的数值型属性分别求平均值,再将每个属性中的数据分别除以平均值以去除量纲。假设处理后的缺失数据所在记录行为[x1,x2,…,xs,…,xn],其中xs为预填补的缺失值,多个无缺失的连续变化的数值型记录行为[a11,a12,…,a1n],[a21,a22,…,a2n],……。
以去量纲处理后的记录中同一属性下的数据作为行向量,不同属性下的对应数据作为列向量,构建待填补矩阵。
计算待填补矩阵中,预填补数据所在的行与每个无缺失数据的行的欧氏距离。求缺失数据所在记录行与其他m个无缺失数据的记录行的欧式距离的公式如式(5)所示。
其中,Di为缺失数据所在记录行与第j个无缺失数据的记录行的欧式距离,xj为缺失数据所在行的第j个数据,aij为第i行无缺失数据中的第j个数据。
计算欧式距离较小的K个无缺失数据的行中第k列的数据的平均值,替换所述预填补数据;其中,第k列为预填补数据所在的列。即,将计算出的m个距离按照升序排列,选取前K个最小值,分别找出K个最小值记录对应xs所在属性列的值,并求平均值作为缺失数据的填补值,K值的取值由实际情况决定。
通过步骤103可以填充缺少量不大且数据连续变化的数值型数据。
一种面向MES的数据清洗系统,所述数据清洗系统包括:
相似度计算模块,用于采用可变窗口的SNM算法计算待清洗数据中每两条记录之间的相似度。
所述相似度计算模块,具体包括:第一判断在模块,用于判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果;窗口增加处理子模块,用于若所述第一判断结果表示是,则利用公式增加窗口长度,获得长度改变后的窗口;其中,sim0表示相似度阈值,sim(x1,xw)表示窗口内第一条记录x1与最后一条记录xw之间的相似度;W表示长度改变前的窗口,W′表示长度改变后的窗口;窗口减小处理子模块,用于若所述第一判断结果表示否,则利用公式减小窗口长度,获得长度改变后的窗口;相似度计算子模块,用于计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,并将长度改变后的窗口向后移动一条记录,返回步骤“判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果”,直到计算完成待清洗数据中的所有记录的计算,获得每两条记录的相似度。
其中,所述相似度计算子模块,具体包括:相似度计算单元,用于分别令j=2,3,…,W′,利用相似度计算公式,计算长度改变后的窗口内的第一条记录与第j条记录的每个属性下的相似度,获得长度改变后的窗口内的第一条记录与第一条记录之后的每个属性下的相似度;加权求和单元,用于分别令j=2,3,…,W′,利用公式对第一条记录与第j条记录的每个属性下的相似度进行加权求和,获得长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度;其中,sim(r1,rj)表示长度改变后的窗口内的第一条记录与第j条记录的相似度,sim[r1,i,rj,i]表示长度改变后的窗口内的第一条记录与第j条记录的第i个属性下的相似度,n表示属性的数量,W[i]表示第i个属性的权重。
重复数据处理模块,用于根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据。
所述重复数据处理模块,具体包括:第二判断子模块,用于判断两条记录之间的相似度是否等于1,获得第二判断结果;第一重复数据处理子模块,用于若所述第二判断结果表示是,则采用删除两条记录中的一条记录或者将两条记录合并的方式,对两条所述记录进行处理;第三判断子模块,用于若所述第二判断结果表示否,则判断两条记录之间的相似度是否介于第一相似度阈值和第二相似度阈值之间,获得第三判断结果;第二重复数据处理子模块,用于若所述第三判断结果表示是,则对两条所述记录进行记录;第四判断子模块,用于若所述第三判断结果表示否,则判断两条记录之间的相似度是否介于第二相似度阈值和1之间,获得第四判断结果;第三重复数据处理子模块,用于若所述第四判断结果表示是,则采用删除两条记录中与外部源文件匹配程度低的记录、随机删除两条记录中的一条记录或采用两条所述记录的平均值替换两条所述记录的方式对两条所述记录进行处理。
数据填补模块,用于采用KNN缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据。
所述数据填补模块,具体包括:预填补数据计算子模块,用于利用处理后的数据中待填补的记录中同一属性下的所有数据的平均值,作为待填补的记录中的预填补数据;预填补子模块,用于将所述预填补数据填补至所述待填补的记录,获得预填补后的记录;去量纲处理子模块,用于对所述预填补后的记录的数值型属性的数据进行去量纲处理,获得去量纲处理后的记录;待填补矩阵构建子模块,用于以去量纲处理后的记录中同一属性下的数据作为行向量,不同属性下的对应数据作为列向量,构建待填补矩阵;欧氏距离计算子模块,用于计算待填补矩阵中,预填补数据所在的行与每个无缺失数据的行的欧氏距离;数据填补子模块,用于计算欧式距离较小的K个无缺失数据的行中第k列的数据的平均值,替换所述预填补数据;其中,第k列为预填补数据所在的列。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明针对离散制造MES系统的数据库中可能出现的相似重复数据进行检测,根据相似度的大小分为多种情况进行数据合并处理,并采用自动化、半自动化、人工处理三种方式相结合的方法解决数据冲突问题,同时利用计算出的相似度对部分缺失的数据进行填补,另外还可以填充缺少量不大、数据连续变化的数值型数据。具备本发明特征的MES系统,可以解决多源数据重复、冲突问题,可以克服重复数据占用数据库的存储资源的情况,也可以减少相似重复数据和缺失数据对生产管理与决策产生不良影响。
针对SNM算法存在的问题对其进行改进,相较于一般的SNM算法,改进后的SNM算法更加灵活和高效。分别针对布尔型、数值型和字符型的数据给出了不同的相似度计算方法,适用于生产制造过程中可能出现多种类型的数据。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
Claims (8)
1.一种面向MES的数据清洗方法,其特征在于,所述数据清洗方法包括如下步骤:
采用可变窗口的邻近排序算法计算待清洗数据中每两条记录之间的相似度;
根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据;
采用K近邻缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据;
所述采用可变窗口的邻近排序算法计算待清洗数据中每两条记录之间的相似度,具体包括:
判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果;
若所述第一判断结果表示是,则利用公式增加窗口长度,获得长度改变后的窗口;其中,sim0表示相似度阈值,sim(x1,xw)表示窗口内第一条记录x1与最后一条记录xw之间的相似度,W表示长度改变前的窗口,W′表示长度改变后的窗口;
计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,并将长度改变后的窗口向后移动一条记录,返回步骤“判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果”,直到完成待清洗数据中的所有记录的计算,获得每两条记录的相似度。
2.根据权利要求1所述的种面向MES的数据清洗方法,其特征在于,所述计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,具体包括:
分别令j=2,3,…,W′,利用相似度计算公式,计算长度改变后的窗口内的第一条记录与第j条记录的每个属性下的相似度,获得长度改变后的窗口内的第一条记录与第一条记录之后的每个属性下的相似度;
3.根据权利要求1所述的种面向MES的数据清洗方法,其特征在于,所述根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据,具体包括:
判断两条记录之间的相似度是否等于1,获得第二判断结果;
若所述第二判断结果表示是,则采用删除两条记录中的一条记录或者将两条记录合并的方式,对两条所述记录进行处理;
若所述第二判断结果表示否,则判断两条记录之间的相似度是否介于第一相似度阈值和第二相似度阈值之间,获得第三判断结果;
若所述第三判断结果表示是,则对两条所述记录进行记录;
若所述第三判断结果表示否,则判断两条记录之间的相似度是否介于第二相似度阈值和1之间,获得第四判断结果;
若所述第四判断结果表示是,则采用删除两条记录中与外部源文件匹配程度低的记录、随机删除两条记录中的一条记录或采用两条所述记录的平均值替换两条所述记录的方式对两条所述记录进行处理。
4.根据权利要求1所述的种面向MES的数据清洗方法,其特征在于,所述采用K近邻缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据,具体包括:
利用处理后的数据中待填补的记录中同一属性下的所有数据的平均值,作为待填补的记录中的预填补数据;
将所述预填补数据填补至所述待填补的记录,获得预填补后的记录;
对所述预填补后的记录的数值型属性的数据进行去量纲处理,获得去量纲处理后的记录;
以去量纲处理后的记录中同一属性下的数据作为行向量,不同属性下的对应数据作为列向量,构建待填补矩阵;
计算待填补矩阵中,预填补数据所在的行与每个无缺失数据的行的欧氏距离;
计算欧式距离较小的K个无缺失数据的行中第k列的数据的平均值,替换所述预填补数据;其中,第k列为预填补数据所在的列。
5.一种面向MES的数据清洗系统,其特征在于,所述数据清洗系统包括:
相似度计算模块,用于采用可变窗口的邻近排序算法计算待清洗数据中每两条记录之间的相似度;
重复数据处理模块,用于根据每两条记录之间的相似度,对待清洗数据中的重复数据进行处理,获得处理后的数据;
数据填补模块,用于采用K近邻缺失填充算法填补处理后的数据中的缺失数据,获得清洗后的数据;
所述相似度计算模块,具体包括:
第一判断在模块,用于判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果;
窗口增加处理子模块,用于若所述第一判断结果表示是,则利用公式增加窗口长度,获得长度改变后的窗口;其中,sim0表示相似度阈值,sim(x1,xw)表示窗口内第一条记录x1与最后一条记录xw之间的相似度;W表示长度改变前的窗口,W′表示长度改变后的窗口;
相似度计算子模块,用于计算长度改变后的窗口内的第一条记录与第一条记录之后的每条记录的相似度,并将长度改变后的窗口向后移动一条记录,返回步骤“判断窗口内第一条记录与最后一条记录的相似度是否小于第一相似度阈值,获得第一判断结果”,直到计算完成待清洗数据中的所有记录的计算,获得每两条记录的相似度。
6.根据权利要求5所述的种面向MES的数据清洗系统,其特征在于,所述相似度计算子模块,具体包括:
相似度计算单元,用于分别令j=2,3,…,W′,利用相似度计算公式,计算长度改变后的窗口内的第一条记录与第j条记录的每个属性下的相似度,获得长度改变后的窗口内的第一条记录与第一条记录之后的每个属性下的相似度;
7.根据权利要求5所述的种面向MES的数据清洗系统,其特征在于,所述重复数据处理模块,具体包括:
第二判断子模块,用于判断两条记录之间的相似度是否等于1,获得第二判断结果;
第一重复数据处理子模块,用于若所述第二判断结果表示是,则采用删除两条记录中的一条记录或者将两条记录合并的方式,对两条所述记录进行处理;
第三判断子模块,用于若所述第二判断结果表示否,则判断两条记录之间的相似度是否介于第一相似度阈值和第二相似度阈值之间,获得第三判断结果;
第二重复数据处理子模块,用于若所述第三判断结果表示是,则对两条所述记录进行记录;
第四判断子模块,用于若所述第三判断结果表示否,则判断两条记录之间的相似度是否介于第二相似度阈值和1之间,获得第四判断结果;
第三重复数据处理子模块,用于若所述第四判断结果表示是,则采用删除两条记录中与外部源文件匹配程度低的记录、随机删除两条记录中的一条记录或采用两条所述记录的平均值替换两条所述记录的方式对两条所述记录进行处理。
8.根据权利要求5所述的种面向MES的数据清洗系统,其特征在于,所述数据填补模块,具体包括:
预填补数据计算子模块,用于利用处理后的数据中待填补的记录中同一属性下的所有数据的平均值,作为待填补的记录中的预填补数据;
预填补子模块,用于将所述预填补数据填补至所述待填补的记录,获得预填补后的记录;
去量纲处理子模块,用于对所述预填补后的记录的数值型属性的数据进行去量纲处理,获得去量纲处理后的记录;
待填补矩阵构建子模块,用于以去量纲处理后的记录中同一属性下的数据作为行向量,不同属性下的对应数据作为列向量,构建待填补矩阵;
欧氏距离计算子模块,用于计算待填补矩阵中,预填补数据所在的行与每个无缺失数据的行的欧氏距离;
数据填补子模块,用于计算欧式距离较小的K个无缺失数据的行中第k列的数据的平均值,替换所述预填补数据;其中,第k列为预填补数据所在的列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011387905.0A CN112416920B (zh) | 2020-12-01 | 2020-12-01 | 一种面向mes的数据清洗方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011387905.0A CN112416920B (zh) | 2020-12-01 | 2020-12-01 | 一种面向mes的数据清洗方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112416920A CN112416920A (zh) | 2021-02-26 |
CN112416920B true CN112416920B (zh) | 2023-01-24 |
Family
ID=74829522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011387905.0A Active CN112416920B (zh) | 2020-12-01 | 2020-12-01 | 一种面向mes的数据清洗方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112416920B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113108309B (zh) * | 2021-05-24 | 2022-03-04 | 云南绿色能源有限公司 | 一种锅炉自动化燃烧控制系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177088A (zh) * | 2013-03-08 | 2013-06-26 | 北京理工大学 | 一种生物医学空缺数据弥补方法 |
CN104317801A (zh) * | 2014-09-19 | 2015-01-28 | 东北大学 | 一种面向大数据的数据清洗系统及方法 |
CN107025301A (zh) * | 2017-04-25 | 2017-08-08 | 西安理工大学 | 航班保障数据的清理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10558627B2 (en) * | 2016-04-21 | 2020-02-11 | Leantaas, Inc. | Method and system for cleansing and de-duplicating data |
-
2020
- 2020-12-01 CN CN202011387905.0A patent/CN112416920B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177088A (zh) * | 2013-03-08 | 2013-06-26 | 北京理工大学 | 一种生物医学空缺数据弥补方法 |
CN104317801A (zh) * | 2014-09-19 | 2015-01-28 | 东北大学 | 一种面向大数据的数据清洗系统及方法 |
CN107025301A (zh) * | 2017-04-25 | 2017-08-08 | 西安理工大学 | 航班保障数据的清理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112416920A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Strehl et al. | Distance based clustering of association rules | |
CN112131383B (zh) | 特定目标的情感极性分类方法 | |
CN110515931B (zh) | 一种基于随机森林算法的电容型设备缺陷预测方法 | |
CN110287382B (zh) | 一种面向电池生产数据的关联规则的挖掘方法 | |
CN111061709A (zh) | 一种相似重复记录的数据清洗自动化方法及系统 | |
CN110389950B (zh) | 一种快速运行的大数据清洗方法 | |
CN115587543A (zh) | 基于联邦学习和lstm的刀具剩余寿命预测方法及系统 | |
CN112416920B (zh) | 一种面向mes的数据清洗方法及系统 | |
CN110837566B (zh) | 一种针对cnc机床故障诊断的知识图谱的动态构建方法 | |
CN110059126B (zh) | 基于lkj异常值数据的复杂关联网络分析方法及系统 | |
CN109634949B (zh) | 一种基于多数据版本的混合数据清洗方法 | |
CN112905906B (zh) | 一种融合局部协同与特征交叉的推荐方法及系统 | |
CN107169830B (zh) | 一种基于聚类pu矩阵分解的个性化推荐方法 | |
CN116229323A (zh) | 一种基于改进的深度残差网络的人体行为识别方法 | |
CN115391519A (zh) | 一种基于nlp技术的企业自动打标签模型生成方法、系统、设备以及存储介质 | |
CN114860952A (zh) | 一种基于数据统计和知识指导的图拓扑学习方法及系统 | |
CN114528333A (zh) | 基于属性探索的试题隐含知识属性关联挖掘及相关试题推送方法及系统 | |
CN109934489B (zh) | 一种电力设备状态评价方法 | |
CN113672508A (zh) | 一种基于风险策略和多样性策略的Simulink测试方法 | |
CN109299260B (zh) | 数据分类方法、装置以及计算机可读存储介质 | |
CN115980070B (zh) | 基于随机神经网络搜索的机油罐标签划痕检测系统及方法 | |
CN109978038A (zh) | 一种集群异常判定方法及装置 | |
EP4071635A1 (en) | Method for recognizing or classifying items | |
CN113869378B (zh) | 一种基于聚类与标签传播的软件系统模块划分方法 | |
EP4083858A1 (en) | Training data set reduction and image classification |
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 |