CN116989838B - 一种基于语法树的仪表计量检测校准方法及系统 - Google Patents
一种基于语法树的仪表计量检测校准方法及系统 Download PDFInfo
- Publication number
- CN116989838B CN116989838B CN202311254883.4A CN202311254883A CN116989838B CN 116989838 B CN116989838 B CN 116989838B CN 202311254883 A CN202311254883 A CN 202311254883A CN 116989838 B CN116989838 B CN 116989838B
- Authority
- CN
- China
- Prior art keywords
- tree
- data
- grammar
- standard
- instrument
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000001514 detection method Methods 0.000 title claims abstract description 35
- 238000012360 testing method Methods 0.000 claims abstract description 161
- 238000012545 processing Methods 0.000 claims abstract description 18
- 238000004458 analytical method Methods 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 17
- 238000007405 data analysis Methods 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 7
- 230000002441 reversible effect Effects 0.000 claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 claims description 5
- 238000010998 test method Methods 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 3
- 238000005259 measurement Methods 0.000 description 12
- 230000002159 abnormal effect Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004164 analytical calibration Methods 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D18/00—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D18/00—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00
- G01D18/002—Automatic recalibration
- G01D18/004—Continuous recalibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于语法树的仪表计量检测校准方法及系统,该基于语法树的仪表计量检测校准方法包括以下步骤:采集待检测仪表的测试数据和标准仪表的标准数据;对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树;对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析;基于两组语法树的比较结果对待检测仪表进行参数校准。本发明可以自动化地对待检测仪表进行快速、高效的校准,大大提高了校准效率和工作效率,采用语法树相比人工校准更为准确,能够有效避免人为误差,提高校准精度,同时校准数据记录精准,可重复性和可追溯性得到了有效保证。
Description
技术领域
本发明涉及仪表检测校准技术领域,具体来说,涉及一种基于语法树的仪表计量检测校准方法及系统。
背景技术
在当今科技发展的时代,各行各业的研究都需要大量且准确可靠的数据。测量仪表是获得这些数据的重要工具,而其测量精度则决定了数据的准确性和可信度。因此,仪器校准对于保证仪器测量准确性至关重要。精密测量都成为了各个领域不可或缺的一部分。准确的测量数据能够为决策提供有力支持,因此保证测量仪器提供正确信息和可靠数据变得尤为关键。只有通过准确验证和校准,才能使高精度仪器实现精确测量。同时,仪器的校准也能够保证计量仪器的精度。
仪表的校准不仅对于各行各业的数据质量至关重要,而且还有助于在生活的各个领域做出正确的决策。定期对测量设备进行校准是必要的,同时在仪器受到任何机械或电力冲击后也应该进行校准。因为校准能够决定仪器读数的准确性。精确的度量可以提高人们做出决策的质量,而不精确的度量则会导致糟糕的决策质量。在测量中,不确定性是估计风险和可能的不良后果的重要参数。通过校准可以减少每台仪器测量中的不确定性,并提高数据的质量。数据的准确性在测量中同样重要,仪器校准与科技发展紧密相连。
目前,随着现代科学研究和企业产品的研发,对精密测量的要求越来越高,而精密测量的前提是对仪器进行精确的校准和溯源,传统的仪表校准通常是由计量机构依照特定的标准进行人工逐一校准,这种方式需要操作人员亲自操作仪器并记录测量数据,并最终将数据进行汇总、计算以得出报表结果。在校准过程中,待校准仪器需要预热、消除静电,按照规定时间间隔记录数据,剔除异常值和计算校准误差等。然而,这种人工校准方式存在一系列问题:不仅工作内容繁琐,人员培训成本高,造成效率低下。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出一种基于语法树的仪表计量检测校准方法及系统,以克服现有相关技术所存在的上述技术问题。
为此,本发明采用的具体技术方案如下:
根据本发明的一方面,提供了一种基于语法树的仪表计量检测校准方法,该方法包括以下步骤:
S1、采集待检测仪表的测试数据和标准仪表的标准数据;
S2、对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树;
S3、对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析;
S4、基于两组语法树的比较结果对待检测仪表进行参数校准。
在一个示例性实施例中,所述采集待检测仪表的测试数据和标准仪表的标准数据包括以下步骤:
S11、建立符合预设标准要求的检测校准环境;
S12、选择待检测仪表和标准仪表,并确定测试方法和测试要求;
S13、在建立的检测校准环境并在同样的条件下采集待检测仪表的测试数据和标准仪表的标准数据。
在一个示例性实施例中,对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树包括以下步骤:
S21、分别对采集的测试数据和标准数据进行数据预处理;
S22、对预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号;
S23、基于转换的命令序号构建测试数据语法树和标准数据语法树。
在一个示例性实施例中,对预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号包括以下步骤:
S221、预先定义匹配规则和命令序号的映射表,将每个匹配规则定义对应的命令序号;
S222、遍历预处理后的测试数据和标准数据,将测试数据和标准数据中的每个数据项进行匹配操作;
S223、基于定义的匹配规则分别对测试数据和标准数据中的每个数据项进行字符串匹配,并基于定义的命令序号映射表将匹配成功后的数据项转换为相应的命令序号;
S224、将转换后的命令序号进行存储。
在一个示例性实施例中,所述基于转换的命令序号构建测试数据语法树和标准数据语法树包括以下步骤:
S231、基于预设的词法分析器对转换后的命令序号进行自左向右的扫描,将命令序号分解成单个词素,并将分解出来的词素进行Token化,得到Token串,标记该Token串所在的行;
S232、基于得到的Token串进行语法分析,并基于预设的语言规范生成与Token串相对应的语法分析树;
S233、基于预设的抽象语法树的文法,对语法分析树进行遍历并解析其中的节点,对于每个节点,根据节点所代表的语法规则在抽象语法树文法中查找相应的规则,并将节点转换为对应的语法树节点,同时,提取该节点所包含的Token信息,并将其作为语法树节点的属性值;
S234、为每个语法树节点设置属性值,并根据语法树的结构和节点之间的关系构建语法树节点之间的父子关系;
S235、遍历语法分析树的所有节点并构建相应的语法树节点,分别得到测试数据语法树和标准数据语法树。
在一个示例性实施例中,所述对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析包括以下步骤:
S31、采用深度优先搜索遍历待检测仪表的测试数据语法树和标准仪表的标准数据语法树;
S32、利用TF-IDF技术分别给测试数据语法树和标准数据语法树上的节点赋予权值;
S33、基于赋予的节点权值计算待检测仪表的测试数据语法树和标准仪表的标准数据语法树的树核函数;
S34、对得到树核函数值进行标准化处理,得到介于0和1之间的数据,则表示为测试数据和标准数据之间的差异。
在一个示例性实施例中,所述利用TF-IDF技术分别给测试数据语法树和标准数据语法树上的节点赋予权值包括以下步骤:
S321、统计每个节点在待检测仪表的测试数据语法树和标准仪表的标准数据语法树中出现的频率;
S322、统计每个节点在所有待比较的语法树中出现的文档频率;
S323、计算每个节点的逆向文件频率;
S324、通过计算每个节点出现的文档频率和逆向文件频率的乘积,并作为每个节点的TF-IDF值;
S325、将每个节点的TF-IDF值作为其权值。
在一个示例性实施例中,所述基于赋予的节点权值计算待检测仪表的测试数据语法树和标准仪表的标准数据语法树的树核函数的计算公式为:
式中,M(T1,T2)表示待检测仪表的测试数据语法树T1和标准仪表的标准数据语法树T2的树核函数值;
λtree表示衰减参数;
s1表示测试数据语法树上的节点;
s2表示标准数据语法树上的节点;
ST1表示测试数据语法树上的所有子树的集合;
ST2表示标准数据语法树上的所有子树的集合;
words1表示测试数据语法树上所有节点的字符串;
words2表示标准数据语法树上所有节点的字符串;
wS1,T1表示测试数据语法树上节点的权值;
wS2,T2表示标准数据语法树上节点的权值;
dist(words1,words2)表示字符串words1和字符串words2的相似度。
在一个示例性实施例中,所述基于两组语法树的比较结果对待检测仪表进行参数校准包括以下步骤:
S41、根据待检测仪表的测试数据语法树和标准仪表的标准数据语法树之间的差异,确定待检测仪表的测试数据语法树和标准仪表的标准数据语法之间不同节点的位置;
S42、针对不同的节点位置,确定待检测仪表的待校准的参数;
S43、基于确定的待检测仪表的待校准参数,制定校准方案并对待检测仪表进行参数校准;
S44、校准完成后对待检测仪表再次进行检测测试,若检测结果满足要求,则结束校准,否则,继续对待检测仪表进行再次校准。
根据本发明的另一方面,提供了一种基于语法树的仪表计量检测校准系统,该系统包括数据采集模块、数据分析模块,数据比较模块及参数校准模块;
其中,所述数据采集模块,用于采集待检测仪表的测试数据和标准仪表的标准数据;
所述数据分析模块,用于对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树;
所述数据比较模块,用于对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析;
所述参数校准模块,用于基于两组语法树的比较结果对待检测仪表进行参数校准。
本发明的有益效果为:
1、本发明通过采集待检测仪表的测试数据和标准仪表的标准数据,然后对采集待检测仪表的测试数据和标准仪表的标准数据进行分析处理并构建语法树,通过对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析,能够得到两组语法树之间的差异并确定需要校准的参数,该方法可以自动化地对待检测仪表进行快速、高效的校准,大大提高了校准效率和工作效率,采用语法树相比人工校准更为准确,能够有效避免人为误差,提高校准精度,同时校准数据记录精准,可重复性和可追溯性得到了有效保证。
2、本发明通过对采集的测试数据和标准数据进行数据预处理,能够通过清洗和噪声、异常值的去除来是的测试数据和标准数据变得更加可靠、可用、有效和一致,将对噪声和异常值的等干扰因素对数据的干扰,从而可以提高测试数据和标准数据的数据质量和准确性,进而更好地反映数据真实情况,能够为后续的分析提供数据保障。
3、本发明通过预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号,可以将测试数据和标准数据转化为可读性更强且符合规范的数据格式,从而提高数据的可靠性和精确度,通过构建语法树,可以将复杂的数据结构转化为一棵逻辑清晰、结构简单的树形结构,进而方便对数据进行分析、处理和理解,实现了对数据的自动化处理和分析,降低人工干预的成本和误差率。
4、本发明通过对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析,从而可以发现测试数据语法树和标准仪表的标准数据语法树之间存在的差异和不一致之处,进而可以确定待检测仪表中的错误或者异常数据,能够为仪表的维护和校准提供指导。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种基于语法树的仪表计量检测校准方法的流程图;
图2是根据本发明实施例的一种基于语法树的仪表计量检测校准方法系统的原理框图。
图中:
1、数据采集模块;2、数据分析模块;3、数据比较模块;4、参数校准模块。
具体实施方式
为进一步说明各实施例,本发明提供有附图,这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理,配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。
根据本发明的实施例,提供了一种基于语法树的仪表计量检测校准方法及系统。
现结合附图和具体实施方式对本发明进一步说明,如图1所示,根据本发明的一个实施例,提供了一种基于语法树的仪表计量检测校准方法,该方法包括以下步骤:
S1、采集待检测仪表的测试数据和标准仪表的标准数据;
具体的,所述采集待检测仪表的测试数据和标准仪表的标准数据包括以下步骤:
S11、建立符合预设标准要求的检测校准环境;
需要说明的是,在进行仪表测试之前,需要确保测试环境符合预设标准要求。这表示着必须消除任何可能对测试结果产生影响的干扰因素,例如,如果仪表测试需要在特定的温度、湿度或气压下进行,那么检测校准环境必须满足这些条件。通过建立符合预设标准要求的检测校准环境,可以确保测试结果的准确性和可靠性。这对于仪表的正常使用和维护非常重要。
S12、选择待检测仪表和标准仪表,并确定测试方法和测试要求;
需要说明的是,标准仪表一台已知准确度和精度的标准仪器,并且符合相关的技术规范和标准。
待检测仪表和标准仪表测试方法是用于对待检测仪表和标准仪表的检测测试,具体的测试方法可根据仪表的类型进行选择。
测试要求包括测试频率、测试时长和测试环境等。测试要求应该满足相关的技术规范和标准,以确保测试结果的可靠性和准确性。
S13、在建立的检测校准环境并在同样的条件下采集待检测仪表的测试数据和标准仪表的标准数据。
S2、对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树;
具体的,所述对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树包括以下步骤:
S21、分别对采集的测试数据和标准数据进行数据预处理;
需要说明的是,对采集的测试数据和标准数据进行数据预处理包括以下内容:
对测试数据和标准数据进行数据清洗,对数据中的空值、重复值、异常值等进行处理,保证数据质量;
采用中值滤波法对测试数据和标准数据进行去噪处理。
S22、对预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号;
具体的,对预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号包括以下步骤:
S221、预先定义匹配规则和命令序号的映射表,将每个匹配规则定义对应的命令序号;
需要说明的是,预先定义匹配规则和命令序号的映射表是指在进行字符匹配时,事先将所有可能出现的数据项及其对应的命令序号都列在一张表格中,这张表格通常以键值对的形式组织,其中每个键代表一个匹配规则,每个值表示该匹配规则对应的命令序号。
匹配规则通常是基于实际需求制定的,具体规则根据不同应用场景而有所不同。
命令序号是与匹配规则一一对应的数字或符号,用于表示匹配成功后的操作指令,在具体实现时,命令序号可以通过枚举类型来定义。也可以定义一个包含所有命令序号的数组,使用该数组的索引位置来表示具体的命令序号。
S222、遍历预处理后的测试数据和标准数据,将测试数据和标准数据中的每个数据项进行匹配操作;
S223、基于定义的匹配规则分别对测试数据和标准数据中的每个数据项进行字符串匹配,并基于定义的命令序号映射表将匹配成功后的数据项转换为相应的命令序号;
需要说明的是,对于每一个待匹配数据项,在预先定义好的匹配规则组成的数组或列表中逐一寻找,直到匹配上为止。如果在匹配过程中发现不匹配,继续查找下一个匹配规则;如果匹配上了,则根据该匹配规则所对应的命令序号,从预先定义好的命令序号映射表中读取出相应的命令序号,并将其与该数据项一起保存。
通过遍历所有测试数据和标准数据,依次对其中的数据项执行以上操作,即可得到对应的所有命令序号,并形成一个完整的命令序列。该操作将原始数据项转化为对应的命令序号,为构建语法树打下了基础。
S224、将转换后的命令序号进行存储。
S23、基于转换的命令序号构建测试数据语法树和标准数据语法树。
具体的,所述基于转换的命令序号构建测试数据语法树和标准数据语法树包括以下步骤:
S231、基于预设的词法分析器对转换后的命令序号进行自左向右的扫描,将命令序号分解成单个词素,并将分解出来的词素进行Token化,得到Token串,标记该Token串所在的行;
需要说明的是,上述步骤中将转换后的命令序号作为输入,使用预设的词法分析器对其进行扫描。在扫描过程中,将命令序号逐一拆分为单个的词素,将得到的单词按照一定规则进行归类,形成对应的Token集合(也叫Token串)。在这里,Token 通常由两部分组成:一是词元本身的文本值,即拆分出来的单词本身;二是所在的行号和列号。
通过分解并Token化,生成的Token串将被用于后续的语法分析和语法树构建,其中每个Token所代表的意义会随着所处的上下文不同而有所变化。
此外,词法分析器(Lexical Analyzer),也称为扫描器(Scanner)或词法扫描器,是编译器中的一个重要组成部分。它负责将输入的源代码按照定义好的词法规则进行分解,生成一系列的词法单元(Token)。词法单元是编程语言中的最小语法单位,包括关键字、标识符、常量、运算符等。词法分析器的主要任务是将源代码字符串转换为一系列的词法单元,并为每个词法单元附上相应的词法属性,如类型、值等。它通常采用有限状态自动机(Finite State Automaton)来实现,通过读取输入字符并根据事先定义好的状态转换规则,逐步构建词法单元流。
S232、基于得到的Token串进行语法分析,并基于预设的语言规范生成与Token串相对应的语法分析树;
需要说明的是,语法分析是解析环节中的关键一步,通常使用递归下降分析进行分析,在这一过程中, 它利用前面词法分析的获得的Token串,并按照语言规范生成与Token串相对应的语法分析树。
在进行语法分析前,需要预设一个语言规范(也称上下文无关文法),用于描述测试数据所使用的语法类型。这个规范包含一系列产生式规则,每条产生式定义了单个的语法结构(比如常见的表达式、函数调用等)以及其构成方法;
其中,语法分析树是根据语法规则对输入串进行解析而生成的一棵树,它完全反映了语法规则的推导过程。每个节点代表一个语法规则或终结符,产生式通过节点之间的父子关系来表示规则的应用顺序。语法分析树展示了一个输入串如何从起始符号逐步推导出最终的终结符串。
S233、基于预设的抽象语法树的文法,对语法分析树进行遍历并解析其中的节点,对于每个节点,根据节点所代表的语法规则在抽象语法树文法中查找相应的规则,并将节点转换为对应的语法树节点,同时,提取该节点所包含的Token信息,并将其作为语法树节点的属性值;
需要说明的是,预设的抽象语法树的文法是一组规则,用于描述抽象语法树中节点的结构和语法规则,其定义了语法分析树节点到抽象语法树节点的转换规则和属性赋值方式,通过遍历和解析语法分析树节点,并根据文法进行匹配和转换,可以得到与预设的抽象语法树文法相对应的抽象语法树结构,并将Token信息提取并赋予相应的属性值。
具体的,文法由一系列产生式(Production)组成,每个产生式包含一个非终结符(Non-terminal)和一个或多个符号(Symbol)。这些符号可以是终结符(Terminal)或非终结符,用来表示语法规则中的各种元素和结构。
在文法中,非终结符表示语法规则中的语法类别或语法结构,如表达式、语句、函数等。终结符表示具体的语言标记或Token,如运算符、变量名、数字等。
S234、为每个语法树节点设置属性值,根据转换后的命令序号和语法分析的结果,确定节点属性的值,并根据语法树的结构和节点之间的关系构建语法树节点之间的父子关系;
需要说明的是,每个语法树节点设置属性值包括命令类型、参数、表达式等。
在执行语法分析时,会从语言规范的起点开始,遍历Token串中的所有Token,并根据语言规范中的产生式规则依次推导出语法分析树的各个节点。在该过程中,每个节点代表了Token序列中的一个子串。
最终得到的语法分析树反映了测试数据的语法结构,是后续进行生成和解析所必须的基础。通过这种方式,可以将Token串转换为一棵树形结构,并能够轻松地对其进行分析、修改、优化和编译等处理。因此,基于得到的Token串进行语法分析,并基于预设的语言规范生成与Token串相对应的语法分析树。
S235、遍历语法分析树的所有节点并构建相应的语法树节点,分别得到测试数据语法树和标准数据语法树。
需要说明的是,在遍历语法分析树并构建相应的语法树节点是将语法分析树转化为抽象语法树的过程中,每个节点都会被转化为一颗抽象语法树中的一个节点,并附带相应的属性值信息,同时按照父子关系连接起来组成一棵完整的语法树。具体包括以下步骤:
从根节点开始,深度优先遍历语法分析树的所有节点;
对于每一个语法分析树节点,创建一个新的语法树节点,作为抽象语法树节点之一;
为语法树节点之间构建父子关系,即将生成的语法树节点通过相应的父节点连接起来,形成完整的语法树结构;
持续遍历语法分析树的所有节点,构建相应的语法树节点,直到所有的节点都被访问并对应生成了语法树节点,并进行结束。
S3、对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析;
具体的,所述对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析包括以下步骤:
S31、采用深度优先搜索遍历待检测仪表的测试数据语法树和标准仪表的标准数据语法树;
需要说明的是,采用深度优先搜索是一种常见的遍历树形结构的算法。深度优先搜索会尽可能去访问树节点的更深层级,进而实现以深度优先的方式遍历整个语法树。
S32、利用TF-IDF技术分别给测试数据语法树和标准数据语法树上的节点赋予权值;
具体的,所述利用TF-IDF技术分别给测试数据语法树和标准数据语法树上的节点赋予权值包括以下步骤:
S321、统计每个节点在待检测仪表的测试数据语法树和标准仪表的标准数据语法树中出现的频率;
S322、统计每个节点在所有待比较的语法树中出现的文档频率;
需要说明的是,文档频率可以看做是一种全局的词汇统计值,表示某词汇在所有文档中出现的次数。
S323、计算每个节点的逆向文件频率;
需要说明的是,逆向文件频率可以通过以下公式计算:
IDF = log(N / (DF + 1))
其中,N表示文档总数,DF表示包含该词语的文档数量。
IDF的计算过程是取总文档数N除以包含该词语的文档数DF,然后进行自然对数运算。加1是为了避免分母为0的情况。IDF值的大小与词语在整个文档集合中出现的频率成反比。也就是说,一个词语在越多文档中出现,它的IDF值就越小,表示该词语对于区分不同文档的能力较低;相反,如果一个词语在较少的文档中出现,它的IDF值就越大,表示该词语对于区分不同文档的能力较强。
S324、通过计算每个节点出现的文档频率和逆向文件频率的乘积,并作为每个节点的TF-IDF值;
S325、将每个节点的TF-IDF值作为其权值。
需要说明的是,TF(Term Frequency)表示节点在当前语法树中的出现频率,而IDF(Inverse Document Frequency)表示节点在整个语法树集合中的重要性。
S33、基于赋予的节点权值计算待检测仪表的测试数据语法树和标准仪表的标准数据语法树的树核函数;
需要说明的是,树核函数是一种用于衡量两个树结构相似性的方法。
具体的,所述基于赋予的节点权值计算待检测仪表的测试数据语法树和标准仪表的标准数据语法树的树核函数的计算公式为:
式中,M(T1,T2)表示待检测仪表的测试数据语法树T1和标准仪表的标准数据语法树T2的树核函数值;
λtree表示衰减参数;
s1表示测试数据语法树上的节点;
s2表示标准数据语法树上的节点;
ST1表示测试数据语法树上的所有子树的集合;
ST2表示标准数据语法树上的所有子树的集合;
words1表示测试数据语法树上所有节点的字符串;
words2表示标准数据语法树上所有节点的字符串;
wS1,T1表示测试数据语法树上节点的权值;
wS2,T2表示标准数据语法树上节点的权值;
dist(words1,words2)表示字符串words1和字符串words2的相似度。
需要说明的是,衰减参数(Decay Parameter)在树核函数中用于控制相似度随着字符串相似度的衰减程度。它是一个调节因子,决定了相似度计算中对字符串相似度的重要性。衰减参数的计算方法通常需要经验和领域知识的指导。一种常见的方法是根据具体问题的特点来选择合适的衰减参数。一般来说,较大的衰减参数会使得距离较远的节点对相似性的贡献减小,而较小的衰减参数则会使得距离较远的节点对相似性的贡献增加。具体的可以通过交叉验证等技术来选择最优的衰减参数。
具体来说,衰减参数λtree会乘以字符串相似度dist(words1,words2)。较大的λtree值会导致衰减更快,即相似度随着字符串相似度的减小而下降得更快;而较小的λtree值则会导致衰减较慢,即相似度随着字符串相似度的减小而下降得较缓。
对于字符串words1和字符串words2的相似度可以通过编辑距离的方法进行计算,编辑距离(Edit Distance),也称为Levenshtein距离,衡量通过插入、删除和替换操作将一个字符串转换为另一个字符串所需的最少操作次数。编辑距离越小,表示两个字符串越相似。
根据编辑距离可以求出两个字符串的相似度,计算公式为:
dist(a,b)=1-leva,b/max(|a |,|b |)
其中,dist(a,b)是指字符串a和字符串b的相似度;
|a|是指字符串a的长度;
|b|是指字符串b的长度;
leva,b是指编辑距离;leva,b越大,则表示字符串a和字符串b的相似度越小。
S34、对得到树核函数值进行标准化处理,得到介于0和1之间的数据,则表示为测试数据和标准数据之间的差异。
需要说明的是,对得到树核函数值进行标准化处理的方式为归一化处 理,当标准化处理后的数值为1时,表示测试数据和标准数据之间不存在差异,说明待检测仪表不存在误差,当标准化处理后的数值越接近0时,则表示测试数据和标准数据之间的差异越大。
S4、基于两组语法树的比较结果对待检测仪表进行参数校准。
具体的,所述基于两组语法树的比较结果对待检测仪表进行参数校准包括以下步骤:
S41、根据待检测仪表的测试数据语法树和标准仪表的标准数据语法树之间的差异,确定待检测仪表的测试数据语法树和标准仪表的标准数据语法之间不同节点的位置;
S42、针对不同的节点位置,确定待检测仪表的待校准的参数;
需要说明的是,属性节点保存了待检测仪表中某个参数的值,如果该属性节点与标准仪表中的属性节点存在差异,那么就需要校准这个对应的仪器参数。例如,待检测仪表上的电流强度参数可能与标准仪表上的电流强度参数存在差异,此时需要调整待检测仪表的电流强度参数值。
S43、基于确定的待检测仪表的待校准参数,制定校准方案并对待检测仪表进行参数校准;
S44、校准完成后对待检测仪表再次进行检测测试,若检测结果满足要求,则结束校准,否则,继续对待检测仪表进行再次校准。
如图2所示,根据本发明的另一个实施例,提供了一种基于语法树的仪表计量检测校准系统,该系统包括数据采集模块1、数据分析模块2,数据比较模块3及参数校准模块4;
其中,所述数据采集模块1,用于采集待检测仪表的测试数据和标准仪表的标准数据;
所述数据分析模块2,用于对采集的测试数据和标准数据进行分析处理,并构建语法树;
所述数据比较模块3,用于对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析;
所述参数校准模块4,用于基于两组语法树的比较结果对待检测仪表进行参数校准。
综上所述,借助于本发明的上述技术方案,本发明通过采集待检测仪表的测试数据和标准仪表的标准数据,然后对采集待检测仪表的测试数据和标准仪表的标准数据进行分析处理并构建语法树,通过对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析,能够得到两组语法树之间的差异并确定需要校准的参数,该方法可以自动化地对待检测仪表进行快速、高效的校准,大大提高了校准效率和工作效率,采用语法树相比人工校准更为准确,能够有效避免人为误差,提高校准精度,同时校准数据记录精准,可重复性和可追溯性得到了有效保证;本发明通过对采集的测试数据和标准数据进行数据预处理,能够通过清洗和噪声、异常值的去除来是的测试数据和标准数据变得更加可靠、可用、有效和一致,将对噪声和异常值的等干扰因素对数据的干扰,从而可以提高测试数据和标准数据的数据质量和准确性,进而更好地反映数据真实情况,能够为后续的分析提供数据保障;本发明通过预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号,可以将测试数据和标准数据转化为可读性更强且符合规范的数据格式,从而提高数据的可靠性和精确度,通过构建语法树,可以将复杂的数据结构转化为一棵逻辑清晰、结构简单的树形结构,进而方便对数据进行分析、处理和理解,实现了对数据的自动化处理和分析,降低人工干预的成本和误差率;本发明通过对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析,从而可以发现测试数据语法树和标准仪表的标准数据语法树之间存在的差异和不一致之处,进而可以确定待检测仪表中的错误或者异常数据,能够为仪表的维护和校准提供指导。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于语法树的仪表计量检测校准方法,其特征在于,该方法包括以下步骤:
S1、采集待检测仪表的测试数据和标准仪表的标准数据;
S2、对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树;
S3、对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析;
S4、基于两组语法树的比较结果对待检测仪表进行参数校准;
所述对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树包括以下步骤:
S21、分别对采集的测试数据和标准数据进行数据预处理;
S22、对预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号;
S23、基于转换的命令序号构建测试数据语法树和标准数据语法树;
所述对预处理后的测试数据和标准数据进行字符匹配,并转换为相应的命令序号包括以下步骤:
S221、预先定义匹配规则和命令序号的映射表,将每个匹配规则定义对应的命令序号;
S222、遍历预处理后的测试数据和标准数据,将测试数据和标准数据中的每个数据项进行匹配操作;
S223、基于定义的匹配规则分别对测试数据和标准数据中的每个数据项进行字符串匹配,并基于定义的命令序号映射表将匹配成功后的数据项转换为相应的命令序号;
S224、将转换后的命令序号进行存储;
所述基于转换的命令序号构建测试数据语法树和标准数据语法树包括以下步骤:
S231、基于预设的词法分析器对转换后的命令序号进行自左向右的扫描,将命令序号分解成单个词素,并将分解出来的词素进行Token化,得到Token串,标记该Token串所在的行;
S232、基于得到的Token串进行语法分析,并基于预设的语言规范生成与Token串相对应的语法分析树;
S233、基于预设的抽象语法树的文法,对语法分析树进行遍历并解析其中的节点,对于每个节点,根据节点所代表的语法规则在抽象语法树文法中查找相应的规则,并将节点转换为对应的语法树节点,同时,提取该节点所包含的Token信息,并将其作为语法树节点的属性值;
S234、为每个语法树节点设置属性值,并根据语法树的结构和节点之间的关系构建语法树节点之间的父子关系;
S235、遍历语法分析树的所有节点并构建相应的语法树节点,分别得到测试数据语法树和标准数据语法树;
所述对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析包括以下步骤:
S31、采用深度优先搜索遍历待检测仪表的测试数据语法树和标准仪表的标准数据语法树;
S32、利用TF-IDF技术分别给测试数据语法树和标准数据语法树上的节点赋予权值;
S33、基于赋予的节点权值计算待检测仪表的测试数据语法树和标准仪表的标准数据语法树的树核函数;
S34、对得到树核函数值进行标准化处理,得到介于0和1之间的数据,则表示为测试数据和标准数据之间的差异;
所述利用TF-IDF技术分别给测试数据语法树和标准数据语法树上的节点赋予权值包括以下步骤:
S321、统计每个节点在待检测仪表的测试数据语法树和标准仪表的标准数据语法树中出现的频率;
S322、统计每个节点在所有待比较的语法树中出现的文档频率;
S323、计算每个节点的逆向文件频率;
S324、通过计算每个节点出现的文档频率和逆向文件频率的乘积,并作为每个节点的TF-IDF值;
S325、将每个节点的TF-IDF值作为其权值;
所述基于赋予的节点权值计算待检测仪表的测试数据语法树和标准仪表的标准数据语法树的树核函数的计算公式为:
;
式中,M(T1,T2)表示待检测仪表的测试数据语法树T1和标准仪表的标准数据语法树T2的树核函数值;
λtree表示衰减参数;
s1表示测试数据语法树上的节点;
s2表示标准数据语法树上的节点;
ST1表示测试数据语法树上的所有子树的集合;
ST2表示标准数据语法树上的所有子树的集合;
words1表示测试数据语法树上所有节点的字符串;
words2表示标准数据语法树上所有节点的字符串;
wS1,T1表示测试数据语法树上节点的权值;
wS2,T2表示标准数据语法树上节点的权值;
dist(words1,words2)表示字符串words1和字符串words2的相似度。
2.根据权利要求1所述的一种基于语法树的仪表计量检测校准方法,其特征在于,所述采集待检测仪表的测试数据和标准仪表的标准数据包括以下步骤:
S11、建立符合预设标准要求的检测校准环境;
S12、选择待检测仪表和标准仪表,并确定测试方法和测试要求;
S13、在建立的检测校准环境并在同样的条件下采集待检测仪表的测试数据和标准仪表的标准数据。
3.根据权利要求1所述的一种基于语法树的仪表计量检测校准方法,其特征在于,所述基于两组语法树的比较结果对待检测仪表进行参数校准包括以下步骤:
S41、根据待检测仪表的测试数据语法树和标准仪表的标准数据语法树之间的差异,确定待检测仪表的测试数据语法树和标准仪表的标准数据语法之间不同节点的位置;
S42、针对不同的节点位置,确定待检测仪表的待校准的参数;
S43、基于确定的待检测仪表的待校准参数,制定校准方案并对待检测仪表进行参数校准;
S44、校准完成后对待检测仪表再次进行检测测试,若检测结果满足要求,则结束校准,否则,继续对待检测仪表进行再次校准。
4.一种基于语法树的仪表计量检测校准系统,用于实现权利要求1-3中任一项所述的基于语法树的仪表计量检测校准方法,其特征在于,该系统包括数据采集模块、数据分析模块,数据比较模块及参数校准模块;
其中,所述数据采集模块,用于采集待检测仪表的测试数据和标准仪表的标准数据;
所述数据分析模块,对采集的测试数据和标准数据分别进行分析处理,并构建测试数据语法树和标准数据语法树;
所述数据比较模块,用于对待检测仪表的测试数据语法树和标准仪表的标准数据语法树进行比较分析;
所述参数校准模块,用于基于两组语法树的比较结果对待检测仪表进行参数校准。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311254883.4A CN116989838B (zh) | 2023-09-27 | 2023-09-27 | 一种基于语法树的仪表计量检测校准方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311254883.4A CN116989838B (zh) | 2023-09-27 | 2023-09-27 | 一种基于语法树的仪表计量检测校准方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116989838A CN116989838A (zh) | 2023-11-03 |
CN116989838B true CN116989838B (zh) | 2023-12-26 |
Family
ID=88523583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311254883.4A Active CN116989838B (zh) | 2023-09-27 | 2023-09-27 | 一种基于语法树的仪表计量检测校准方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116989838B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010041973A1 (en) * | 2008-10-09 | 2010-04-15 | Siemens Aktiengesellschaft | Method and apparatus for test coverage analysis |
CN101894236A (zh) * | 2010-07-28 | 2010-11-24 | 北京华夏信安科技有限公司 | 基于摘要语法树和语义匹配的软件同源性检测方法及装置 |
CN104569886A (zh) * | 2014-12-05 | 2015-04-29 | 胡乔林 | 基于时频参数标准仪器方式的信号检测设备校准方法 |
RU168346U1 (ru) * | 2016-06-23 | 2017-01-30 | Закрытое Акционерное Общество "Научно-Производственное Объединение "Эшелон" | Устройство выявления уязвимостей |
CN110188104A (zh) * | 2019-05-30 | 2019-08-30 | 中森云链(成都)科技有限责任公司 | 一种面向K12编程的Python程序代码快速搜索方法 |
KR20210013433A (ko) * | 2019-07-25 | 2021-02-04 | 호서대학교 산학협력단 | Tf-idf 기반 벡터 변환 및 데이터 분석 장치 및 방법 |
CN115841108A (zh) * | 2022-12-23 | 2023-03-24 | 江西省检验检测认证总院东华计量测试研究院 | 一种计量检测校准方法 |
-
2023
- 2023-09-27 CN CN202311254883.4A patent/CN116989838B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010041973A1 (en) * | 2008-10-09 | 2010-04-15 | Siemens Aktiengesellschaft | Method and apparatus for test coverage analysis |
CN101894236A (zh) * | 2010-07-28 | 2010-11-24 | 北京华夏信安科技有限公司 | 基于摘要语法树和语义匹配的软件同源性检测方法及装置 |
CN104569886A (zh) * | 2014-12-05 | 2015-04-29 | 胡乔林 | 基于时频参数标准仪器方式的信号检测设备校准方法 |
RU168346U1 (ru) * | 2016-06-23 | 2017-01-30 | Закрытое Акционерное Общество "Научно-Производственное Объединение "Эшелон" | Устройство выявления уязвимостей |
CN110188104A (zh) * | 2019-05-30 | 2019-08-30 | 中森云链(成都)科技有限责任公司 | 一种面向K12编程的Python程序代码快速搜索方法 |
KR20210013433A (ko) * | 2019-07-25 | 2021-02-04 | 호서대학교 산학협력단 | Tf-idf 기반 벡터 변환 및 데이터 분석 장치 및 방법 |
CN115841108A (zh) * | 2022-12-23 | 2023-03-24 | 江西省检验检测认证总院东华计量测试研究院 | 一种计量检测校准方法 |
Non-Patent Citations (4)
Title |
---|
动态信号分析系统自动化校准方法研究;解启瞻;严洪燕;曹璇;;自动化与仪器仪表(12);全文 * |
基于环境因子的火炮膛压测试仪校准装置;张瑜;祖静;张红艳;马铁华;;探测与控制学报(06);全文 * |
基于语义分析的Webshell检测技术研究;易楠;方勇;黄诚;刘亮;;信息安全研究(02);全文 * |
浅析温度二次仪表的自动化校准;黄健勇;;科技经济导刊(18);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116989838A (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Van Strien et al. | Assessing the impact of OCR quality on downstream NLP tasks | |
CN109948340B (zh) | 一种卷积神经网络和XGBoost相结合的PHP-Webshell检测方法 | |
CN113127339B (zh) | 一种Github开源平台数据的获取方法及源代码缺陷修复系统 | |
CN100356392C (zh) | 一种字符识别的后处理方法 | |
CN112307741B (zh) | 保险行业文档智能化解析方法和装置 | |
CN116719520B (zh) | 代码生成方法及装置 | |
US11568150B2 (en) | Methods and apparatus to improve disambiguation and interpretation in automated text analysis using transducers applied on a structured language space | |
CN107958068B (zh) | 一种基于实体知识库的语言模型平滑方法 | |
CN114385491B (zh) | 一种基于深度学习的js转译器缺陷检测方法 | |
CN111104503A (zh) | 一种建筑工程质量验收规范问答系统及其构建方法 | |
CN113780121A (zh) | 一种基于人工智能的电系操作指令票自动识别应用方法 | |
CN116989838B (zh) | 一种基于语法树的仪表计量检测校准方法及系统 | |
US20030140018A1 (en) | Method of tuning a decision network and a decision tree model | |
CN116360794A (zh) | 数据库语言解析方法、装置、计算机设备及存储介质 | |
CN117390130A (zh) | 一种基于多模态表示的代码搜索方法 | |
CN112925874B (zh) | 基于案例标记的相似代码搜索方法及系统 | |
CN115373982A (zh) | 基于人工智能的测试报告分析方法、装置、设备及介质 | |
CN114239553A (zh) | 基于人工智能的日志审核方法、装置、设备及介质 | |
CN114239555A (zh) | 一种关键词提取模型的训练方法及相关装置 | |
Ong et al. | A Multi-level Morphological and Stochastic Tagalog Stemming Template | |
CN113722421A (zh) | 一种合同审计方法和系统,及计算机可读存储介质 | |
CN112579444B (zh) | 基于文本认知的自动分析建模方法、系统、装置及介质 | |
CN116127976B (zh) | 公司名称的匹配方法、装置及电子设备 | |
Abbruzzese et al. | REMOAC: A retroactive explainable method for OCR anomalies correction in legal domain | |
CN117010019B (zh) | 一种基于nlp语言模型的数据脱敏方法及系统 |
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 |