CN116701325A - 基于二进制文件缓存加载xbrl分类标准的方法 - Google Patents
基于二进制文件缓存加载xbrl分类标准的方法 Download PDFInfo
- Publication number
- CN116701325A CN116701325A CN202310971776.7A CN202310971776A CN116701325A CN 116701325 A CN116701325 A CN 116701325A CN 202310971776 A CN202310971776 A CN 202310971776A CN 116701325 A CN116701325 A CN 116701325A
- Authority
- CN
- China
- Prior art keywords
- content
- semantic understanding
- training
- cache
- classification standard
- 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
Links
- 238000011068 loading method Methods 0.000 title claims abstract description 76
- 238000000034 method Methods 0.000 claims abstract description 57
- 238000004458 analytical method Methods 0.000 claims abstract description 21
- 239000013598 vector Substances 0.000 claims description 148
- 238000012549 training Methods 0.000 claims description 54
- 230000006870 function Effects 0.000 claims description 14
- 230000002688 persistence Effects 0.000 claims description 14
- 238000013136 deep learning model Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 10
- 238000000354 decomposition reaction Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 6
- 238000007796 conventional method Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 7
- 235000019580 granularity Nutrition 0.000 description 51
- 238000012545 processing Methods 0.000 description 18
- 230000015654 memory Effects 0.000 description 14
- 230000011218 segmentation Effects 0.000 description 10
- 238000003058 natural language processing Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000007405 data analysis Methods 0.000 description 5
- 230000008451 emotion Effects 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000412611 Consul Species 0.000 description 1
- 238000012300 Sequence Analysis Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 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
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000012916 structural analysis Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- 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
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Machine Translation (AREA)
Abstract
本申请公开了一种基于二进制文件缓存加载XBRL分类标准的方法,其通过基于二进制文件缓存加载XBRL分类标准将加载解析的结果持久化成二进制文件,这样,能直接从二进制文件加载,减少加载时间、解析耗时,有比较大的性能优势,改善用户使用体验。
Description
技术领域
本申请涉及数据处理领域,且更为具体地,涉及一种基于二进制文件缓存加载XBRL分类标准的方法。
背景技术
XBRL(eXtensible Business Reporting Language)是一种基于XML的数据标准,用于在不同的信息系统和业务部门之间交换、共享和分析数据。XBRL由于其可读性和可扩展性而被广泛应用于企业报告、财务数据分析和监管合规性等领域。
在现有技术中,都是从模式文件、链接库文件加载,构建内存对象、解析、验证处理。对于一个持续维护、业务覆盖范围大的分类标准来说,有大量的XBRL概念(元素)以及链接库内容,在上市公司年报、半年报这种应用场景,有大量的formula业务规则,初次加载时,比较耗时,可能达到分钟级别。
因此,期待一种解决方案以解决上述问题。
发明内容
为了解决上述技术问题,提出了本申请。本申请的实施例提供了一种基于二进制文件缓存加载XBRL分类标准的方法,其通过基于二进制文件缓存加载XBRL分类标准将加载解析的结果持久化成二进制文件,这样,能直接从二进制文件加载,减少加载时间、解析耗时,有比较大的性能优势,改善用户使用体验。
根据本申请的一个方面,提供了一种基于二进制文件缓存加载XBRL分类标准的方法,其包括:
在加载第一分类标准时,检查分类标准缓存注册中心是否有所述第一分类标准对应的二进制缓存文件;
响应于所述分类标准缓存注册中心没有所述第一分类标准对应的二进制缓存,以常规方法加载所述第一分类标准;
在加载所述第一分类标准后,对所述第一分类标准进行二值制缓存持久化以得到所述第一分类标准的二级制缓存文件;
以及将所述第一分类标准的二级制缓存存储至所述分类标准缓存注册中心。
与现有技术相比,本申请提供的一种基于二进制文件缓存加载XBRL分类标准的方法,其通过基于二进制文件缓存加载XBRL分类标准将加载解析的结果持久化成二进制文件,这样,能直接从二进制文件加载,减少加载时间、解析耗时,有比较大的性能优势,改善用户使用体验。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的流程图;
图2为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的训练阶段的系统架构图;
图3为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的训练阶段的流程图;
图4为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的子步骤S20的流程图;
图5为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的子步骤S204的流程图;
图6为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的子步骤S2042的流程图。
具体实施方式
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
虽然本申请对根据本申请的实施例的系统中的某些模块做出了各种引用,然而,任何数量的不同模块可以被使用并运行在用户终端和/或服务器上。所述模块仅是说明性的,并且所述系统和方法的不同方面可以使用不同模块。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,根据需要,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
在现有技术中,都是从模式文件、链接库文件加载,构建内存对象、解析、验证处理。对于一个持续维护、业务覆盖范围大的分类标准来说,有大量的XBRL概念(元素)以及链接库内容,在上市公司年报、半年报这种应用场景,有大量的formula业务规则,初次加载时,比较耗时,可能达到分钟级别。因此,期待一种解决方案。
在本申请的技术方案中,提出了一种基于二进制文件缓存加载XBRL分类标准的方法。图1为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的流程图。如图1所示,根据本申请的实施例的基于二进制文件缓存加载XBRL分类标准的方法,包括步骤:S1,在加载第一分类标准时,检查分类标准缓存注册中心是否有所述第一分类标准对应的二进制缓存文件;S2,响应于所述分类标准缓存注册中心没有所述第一分类标准对应的二进制缓存,以常规方法加载所述第一分类标准;S3,在加载所述第一分类标准后,对所述第一分类标准进行二值制缓存持久化以得到所述第一分类标准的二级制缓存文件;以及,S4,将所述第一分类标准的二级制缓存存储至所述分类标准缓存注册中心。
具体地,在步骤S1中,在加载第一分类标准时,检查分类标准缓存注册中心是否有所述第一分类标准对应的二进制缓存文件。值得注意的是,二进制缓存文件是一种存储数据的文件格式,其中数据以二进制形式进行编码和存储。与文本文件不同,二进制文件不包含可读的字符,而是以字节的形式表示数据。使用二进制缓存文件可以有效地存储和读取大量的数据,因为它们可以更紧凑地表示数据,并且读取速度更快。这使得它们在需要频繁读写数据的应用程序中非常有用,例如图像处理、音频处理和大规模数据分析等。
分类标准缓存注册中心是指在分布式系统中,用于存储和管理服务实例的注册中心,并且支持对服务实例进行分类和缓存的功能。分类标准缓存注册中心可以提供更高效的服务管理和调用机制,减少了服务间的耦合度和通信开销。同时,它也可以提供一定程度的容错和负载均衡功能,以应对服务实例的故障和高并发请求。常见的分类标准缓存注册中心包括ZooKeeper、Consul、Eureka等。
相应的,在一种可能的实现方式中,可通过以下步骤在加载第一分类标准时,检查分类标准缓存注册中心是否有所述第一分类标准对应的二进制缓存文件,例如:获取第一分类标准的标识符或名称,以便在分类标准缓存注册中心中进行查找;在分类标准缓存注册中心中检查是否存在与第一分类标准对应的二进制缓存文件;如果存在二进制缓存文件,则继续执行后续步骤;如果不存在二进制缓存文件,则需要进行进一步处理,例如重新生成或从其他来源获取第一分类标准的数据;如果需要重新生成二进制缓存文件,根据第一分类标准的数据生成相应的二进制文件,并将其保存到分类标准缓存注册中心中;如果需要从其他来源获取二进制缓存文件,则根据具体情况执行相应的操作,例如从远程服务器下载或从本地文件系统复制;加载第一分类标准的二进制缓存文件,以便后续使用。
具体地,在步骤S2中,响应于所述分类标准缓存注册中心没有所述第一分类标准对应的二进制缓存,以常规方法加载所述第一分类标准。通过这种方式,对输入数据进行分类和处理,以满足特定的需求。
相应的,在一种可能的实现方式中,可通过以下步骤来响应于所述分类标准缓存注册中心没有所述第一分类标准对应的二进制缓存,以常规方法加载所述第一分类标准,例如:确定第一分类标准的具体要求和定义。这可能包括特定的条件、规则或指南,用于将输入数据分为不同的类别;创建一个用于存储分类标准的数据结构。这可以是一个数组、列表或字典等数据结构,具体取决于分类标准的复杂性和需要;将第一分类标准的条件转化为代码逻辑。根据分类标准的要求,编写代码逻辑来判断输入数据是否符合某个特定的条件;遍历输入数据集。对于每个输入数据,使用编写的代码逻辑来判断其所属的类别;将每个输入数据的类别存储到分类标准数据结构中。根据判断结果,将每个输入数据的类别存储到相应的数据结构中;完成所有输入数据的遍历后,分类标准数据结构将包含每个输入数据的类别信息。
特别地,如图4所示,当所述分类标准缓存注册中心有所述第一分类标准对应的二进制缓存时,加载所述第一分类标准的分类标准入口,即进行步骤S20的操作,包括:S201,加载所述第一分类标准的字符串字典文件;S202,加载所述第一分类标准的语法对象池;S203,加载所述第一分类标准的语义对象池;以及,S204,恢复所述第一分类标准的内部对象引用。
特别地,所述S201,加载所述第一分类标准的字符串字典文件。其中,字符串字典文件是一种存储字符串与其对应值的文件。它通常用于快速查找和获取字符串对应的值。字典文件可以按照不同的格式进行存储,例如文本文件、JSON文件、XML文件等。在字典文件中,每个字符串都与一个唯一的键(key)相关联,这个键可以是任何字符串类型的数据。通过使用这个键,我们可以在字典文件中快速找到对应的值。这种键-值(key-value)的映射关系使得字典文件在很多应用中非常有用。
特别地,所述S202,加载所述第一分类标准的语法对象池。其中,语法对象池是一种用于存储和重用语法对象的数据结构。在编程语言中,语法对象代表着语法规则的组成部分,例如变量、函数、类等。在解析和编译过程中,需要频繁地创建和销毁语法对象,这可能会导致内存分配和垃圾回收的开销。为了提高性能和效率,语法对象池被引入。它通过预先创建一些语法对象并将它们存储在池中,以便在需要时重用。当需要创建新的语法对象时,可以首先检查对象池是否有可用的对象,如果有,则直接从池中获取并重用;如果没有,则创建新的对象。
特别地,所述S203,加载所述第一分类标准的语义对象池。其中,语义对象池是指在计算机科学中,用于存储和管理语义对象的数据结构。语义对象是指具有一定语义含义的数据单位,可以是实体、属性、关系等。语义对象池提供了一种有效的方式来组织和检索语义对象,并支持对其进行增删改查等操作。语义对象池的设计目标是提供高效的数据访问和查询能力,以满足对语义对象的实时需求。它可以用于各种应用场景,如知识图谱、自然语言处理、信息检索等。在语义对象池中,语义对象通常以图的形式进行组织,其中节点表示语义对象,边表示语义关系。通过图的结构,可以方便地进行语义关系的推理和查询。语义对象池的实现可以基于不同的数据存储技术,如关系型数据库、图数据库等。它还可以结合语义推理和机器学习等技术,提供更高级的语义分析和推理功能。
特别地,所述S204,恢复所述第一分类标准的内部对象引用。其中,内部对象引用是指一个对象在其内部保存对另一个对象的引用。通过内部对象引用,一个对象可以访问和操作另一个对象的属性和方法。内部对象引用在编程中经常被使用,特别是在面向对象编程中。通过内部对象引用,一个对象可以与其他对象进行交互、协作和共享信息。应可以理解,XBRL分类标准定义了一套规则和结构,用于解析和验证XBRL实例文档。在加载分类标准并创建二进制缓存时,某些内容可能无法直接进行序列化和持久化。这些内容可能包括指向其他对象的引用或具有特殊状态的对象。当需要使用这些对象时,必须重新构建它们,以便分类标准能够正确验证XBRL实例文档的状态。通过恢复分类标准的内部对象引用,可以确保在验证XBRL实例文档时,所有必要的对象和引用都可用且处于正确的状态。也就是,通过重建可能无法序列化的内容,分类标准能够正确地解析和验证XBRL实例文档。特别地,在本申请的一个具体示例中,如图5所示,所述S204,包括:S2041,获取无法序列化的内容;S2042,对所述无法序列化的内容进行语义理解以得到内容语义理解特征向量;S2043,基于所述内容语义理解特征向量,生成符合预定格式要求的无法序列化的内容。
具体地,所述S2041,获取无法序列化的内容。应可以理解,分类标准可能包含复杂的对象关联和依赖关系,其中某些对象可能包含无法序列化的内容。这些无法序列化的内容可能包括但不限于以下情况:外部引用:分类标准可能引用外部文件或链接,如其他XBRL实例文档、模板文件等,这些外部引用通常无法直接序列化,因为它们可能是独立的文件或网络资源;动态生成的对象:分类标准可能包含在运行时动态生成的对象,例如由特定条件触发的计算结果或根据用户输入动态生成的对象,这些对象的状态可能无法完全捕获和序列化;不可序列化的数据类型:分类标准可能包含一些特殊的数据类型,如日期时间、网络连接等,这些类型可能无法直接序列化。
相应的,在一种可能的实现方式中,可通过以下步骤来获取无法序列化的内容,例如:确定需要获取的内容:首先,确定您想要获取的无法序列化的内容是什么。这可以是任何类型的数据,例如图像、音频、视频、二进制文件等;确定数据来源:确定数据的来源。这可以是本地计算机上的文件,网络上的资源,或者是通过传感器等设备收集的实时数据;读取数据:根据数据来源的不同,使用适当的方法读取数据。例如,如果数据是存储在文件中的,可以使用文件读取操作来获取数据。如果数据是通过传感器收集的,可以使用相应的传感器接口来读取数据;存储数据:将获取的数据存储在适当的数据结构中。这可以是变量、数组、列表、字典等,具体取决于数据的类型和使用场景;处理数据:如果需要对数据进行进一步处理,例如解码、解压缩或转换格式,可以使用适当的算法和库来完成这些操作。根据数据的特性和要求,选择合适的处理方法;使用数据:将处理后的数据用于您的应用程序或项目中。根据数据的用途,您可以进行进一步的分析、可视化或其他操作。
具体地,所述S2042,对所述无法序列化的内容进行语义理解以得到内容语义理解特征向量。应可以理解,所述无法序列化的内容中包含丰富的语义信息,例如外部引用、动态生成的对象等,对其进行语义理解可以从中捕捉数据之间的上下文关联和语义信息,帮助恢复数据。也就是,通过语义理解,可以将无法序列化的内容转化为特征表示,然后利用这些特征表示生成新的内容,以确保生成的内容可以与原始内容中语义信息保持一致或相似。特别地,在本申请的一个具体示例中,如图6所示,所述S2042,包括:S20421,对所述无法序列化的内容进行划分以得到内容词的序列和内容字符的序列;S20422,基于深度学习模型,对所述内容词的序列和所述内容字符的序列进行内容分析与理解以得到词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量;以及,S20423,融合所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量以得到所述内容语义理解特征向量。
更具体地,所述S20421,对所述无法序列化的内容进行划分以得到内容词的序列和内容字符的序列。应可以理解,通过这样的方式,能够将文本分解为不同粒度的语义表示,以此更全面地捕捉文本中的语义和结构信息。特别地,在本申请的一个具体示例中,所述S20421,包括:对所述无法序列化的内容进行词粒度划分以得到所述内容词的序列;及,将所述无法序列化的内容进行字符粒度划分以得到所述内容字符的序列。
在一个示例中,对所述无法序列化的内容进行词粒度划分以得到所述内容词的序列。具体而言,将无法序列化的内容进行词粒度划分可以将文本划分为较小的语义单元,例如单词或短语。
相应的,在一种可能的实现方式中,可通过以下步骤对所述无法序列化的内容进行词粒度划分以得到所述内容词的序列,例如:将所述无法序列化的内容进行词粒度划分。这意味着将整个内容划分为单个词语或短语的序列;针对所述内容,可以使用自然语言处理技术,如分词算法,将其划分为单词序列。分词算法可以根据语言的特点和规则,将连续的字符序列划分为有意义的词语;一旦将所述内容划分为词语序列,可以按照它们在原始内容中的顺序进行排列。这样就得到了所述内容词的序列;对于每个词语,可以进行进一步的处理,如词性标注、命名实体识别等,以获得更多的语义信息;使用这些词语序列进行进一步的分析和处理。可以将它们输入到模型中进行训练或推理,或者进行其他自然语言处理任务,如文本分类、情感分析等。
在一个示例中,将所述无法序列化的内容进行字符粒度划分以得到所述内容字符的序列。具体而言,将所述无法序列化的内容进行字符粒度划分可以从所述无法序列化的内容中捕捉到特殊符号、缩写词或代码片段等较大的语义单元。
相应的,在一种可能的实现方式中,可通过以下步骤将所述无法序列化的内容进行字符粒度划分以得到所述内容字符的序列,例如:将所述无法序列化的内容进行字符粒度划分:将无法序列化的内容按照字符的粒度进行划分,将每个字符作为一个序列的元素;得到所述内容字符的序列:将划分后的字符按照顺序排列,得到所述内容字符的序列。
值得一提的是,在本申请的其他具体示例中,还可以通过其他方式对所述无法序列化的内容进行划分以得到内容词的序列和内容字符的序列,例如:将无法序列化的内容划分为内容词的序列和内容字符的序列。内容词的序列是将内容按照词语的单位进行划分,而内容字符的序列是将内容按照字符的单位进行划分;对于内容词的序列,可以使用自然语言处理技术,如分词算法,将句子或段落中的词语进行划分。常用的分词算法包括基于规则的分词算法和基于统计的分词算法;对于内容字符的序列,可以直接按照字符的单位进行划分,每个字符作为一个序列元素;对于无法序列化的内容,可以根据具体需求选择合适的划分方式。如果需要对内容进行语义分析或文本处理,可以选择内容词的序列;如果需要对内容进行字符级别的处理,可以选择内容字符的序列;划分完成后,可以对内容词的序列和内容字符的序列进行进一步的处理和分析,如特征提取、模型训练等。
更具体地,所述S20422,基于深度学习模型,对所述内容词的序列和所述内容字符的序列进行内容分析与理解以得到词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量。特别地,在本申请的一个具体示例中,所述S20422,包括:将所述内容词的序列通过包含嵌入层的BiLSTM层以得到所述词粒度内容语义理解特征向量;以及,将所述内容字符的序列通过所述包含嵌入层的BiLSTM层以得到所述字符粒度内容语义理解特征向量。
在一个示例中,将所述内容词的序列通过包含嵌入层的BiLSTM层以得到所述词粒度内容语义理解特征向量。值得注意的是,通过包含嵌入层的BiLSTM层,可以对所述内容词序列进行处理和表示。嵌入层将每个词转换为一个向量表示,捕捉到词的语义信息。BiLSTM层则能够在双向上下文信息中对输入序列进行建模。
BiLSTM(双向长短期记忆网络)是一种循环神经网络(RNN)的变体,用于处理时序数据。与传统的单向LSTM相比,BiLSTM能够同时考虑过去和未来的上下文信息,从而更好地捕捉时序数据中的长期依赖关系。BiLSTM由两个LSTM单元组成,一个按照正向顺序处理输入序列,另一个按照逆向顺序处理输入序列。正向LSTM单元从序列的开头开始,逐步向后处理,而逆向LSTM单元则从序列的结尾开始,逐步向前处理。每个LSTM单元都有自己的输入门、遗忘门和输出门,用于控制信息的流动和记忆的更新。
相应的,在一种可能的实现方式中,可通过以下步骤将所述内容词的序列通过包含嵌入层的BiLSTM层以得到所述词粒度内容语义理解特征向量,例如:将所述内容词序列进行编码,以得到词粒度的内容语义理解特征向量。为此,我们可以使用包含嵌入层的BiLSTM(双向长短时记忆网络)层;将每个词转换为其对应的词嵌入向量。词嵌入是将词语映射到连续向量空间的技术,可以捕捉到词语之间的语义关系。嵌入层可以将每个词转换为固定长度的向量表示;将嵌入层的输出作为输入传递给BiLSTM层。BiLSTM是一种循环神经网络(RNN)的变体,它能够同时考虑上下文信息,即前向和后向的语境;BiLSTM层通过在时间步上运行前向LSTM和后向LSTM来处理输入序列。前向LSTM从序列的起始位置开始,逐步向后处理,而后向LSTM从序列的末尾位置开始,逐步向前处理。这样,每个时间步的输出都包含了前后文的信息;从BiLSTM层的输出中提取特征向量。可以选择使用最后一个时间步的输出作为整个序列的表示,也可以使用所有时间步的输出进行平均或池化操作。这样得到的特征向量可以用于后续的任务,如分类、聚类等。
在一个示例中,将所述内容字符的序列通过所述包含嵌入层的BiLSTM层以得到所述字符粒度内容语义理解特征向量。应可以理解,将所述内容字符的序列通过包含嵌入层的BiLSTM层的作用是将字符序列转换为连续的向量表示。嵌入层将每个字符映射到一个固定长度的向量,这个向量可以捕捉到字符的语义信息。
相应的,在一种可能的实现方式中,可通过以下步骤将所述内容字符的序列通过所述包含嵌入层的BiLSTM层以得到所述字符粒度内容语义理解特征向量,例如:创建一个包含嵌入层的BiLSTM层,用于将字符序列转换为字符粒度的内容语义理解特征向量;首先,将字符序列作为输入传递给嵌入层。嵌入层将每个字符映射为一个高维向量表示,以捕捉字符的语义信息;然后,将嵌入层的输出传递给BiLSTM层。BiLSTM层是一种双向循环神经网络,它能够同时考虑前向和后向的上下文信息;在BiLSTM层中,每个字符的嵌入向量将被传递给前向和后向的LSTM单元。LSTM单元通过学习隐藏状态和记忆单元来捕捉字符序列中的上下文信息;BiLSTM层的输出将是一个包含每个字符的前向和后向隐藏状态的序列。这个序列可以被看作是字符粒度的内容语义理解特征向量;最后,可以使用这些特征向量进行后续的任务,例如分类、聚类或生成其他类型的输出。
值得一提的是,在本申请的其他具体示例中,还可以通过其他方式来基于深度学习模型,对所述内容词的序列和所述内容字符的序列进行内容分析与理解以得到词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量,例如:准备数据:收集所需的文本数据,包括所述内容词的序列和所述内容字符的序列;构建深度学习模型:选择适当的深度学习模型来进行内容分析与理解。常见的模型包括循环神经网络(RNN)、长短期记忆网络(LSTM)和变换器(Transformer)等;特征提取:使用已构建的深度学习模型对所述内容词的序列进行特征提取。通过将每个词作为输入,模型将学习到词的语义信息,并生成词粒度内容语义理解特征向量;字符级特征提取:将所述内容字符的序列输入到深度学习模型中,以提取字符粒度内容语义理解特征向量。模型将学习到字符之间的关系和语义信息;特征向量表示:将词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量进行组合,得到最终的内容语义理解特征向量;应用:利用得到的特征向量进行后续的任务,如文本分类、情感分析、实体识别等。
更具体地,所述S20423,融合所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量以得到所述内容语义理解特征向量。应可以理解,融合词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量可以提高文本理解的准确性和表达能力。词粒度特征向量捕捉了文本中每个词的语义信息,能够更好地理解词与词之间的关系。而字符粒度特征向量则将文本划分为更小的单位,捕捉了字符级别的语义信息,能够更好地处理单词拼写错误、未登录词等问题。融合这两种粒度的特征向量可以充分利用它们各自的优势。词粒度特征向量可以提供更准确的词义理解和句法结构分析,而字符粒度特征向量可以提供更强的鲁棒性和泛化能力。
相应的,在一种可能的实现方式中,可通过以下步骤融合所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量以得到所述内容语义理解特征向量,例如:对输入文本进行预处理:首先,对输入文本进行预处理,包括分词和字符切分。分词将文本划分为词的序列,而字符切分将每个词切分为字符的序列。生成词粒度内容语义理解特征向量:使用预训练的词向量模型(如Word2Vec、GloVe等),将每个词映射为对应的词向量。这些词向量捕捉了词的语义信息。然后,将所有词的词向量按照一定的顺序组合成一个词粒度内容语义理解特征向量。生成字符粒度内容语义理解特征向量:对于每个词,将其字符序列映射为对应的字符向量。这些字符向量可以通过字符嵌入模型(如CharCNN、FastText等)得到。然后,将所有字符的字符向量按照一定的顺序组合成一个字符粒度内容语义理解特征向量。融合词粒度和字符粒度特征向量:将词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量进行融合。可以采用简单的拼接、加权求和或者通过神经网络模型进行融合。融合后的特征向量即为所得到的内容语义理解特征向量。应用内容语义理解特征向量:将内容语义理解特征向量应用于具体的任务中,如文本分类、命名实体识别、情感分析等。可以使用机器学习算法或深度学习模型对特征向量进行训练和预测。
值得一提的是,在本申请的其他具体示例中,还可以通过其他方式对所述无法序列化的内容进行语义理解以得到内容语义理解特征向量,例如:理解无法序列化的内容:对于无法序列化的内容,可以使用语义理解技术来提取其内容的语义特征向量。语义理解是指通过对文本、语音或其他形式的输入进行分析和处理,从中提取出其中的语义信息和意图;提取内容的语义特征向量:语义特征向量是对输入内容进行编码的表示形式,它捕捉了内容的语义信息。可以使用自然语言处理(NLP)技术,如词嵌入(word embeddings)或预训练的语言模型,将输入内容转换为语义特征向量;应用语义特征向量:得到内容的语义特征向量后,可以将其用于各种任务,如文本分类、情感分析、信息检索等。语义特征向量可以作为输入数据的表示形式,用于机器学习算法或深度学习模型的训练和预测;使用时序分析与编码:时序分析与编码是一种处理时序数据的方法。它可以将时序数据转换为一系列的编码,以便更好地理解和处理。在水压值、水流流速和温度等时序输入向量中,时序分析与编码可以用来提取时序模式、预测未来值、检测异常等;全连接编码在时序数据中的应用:全连接编码是一种将时序数据编码为固定长度向量的方法。它可以通过将时序数据输入到全连接神经网络中,将其转换为固定长度的向量表示。这种编码方法可以应用于各种时序数据分析任务,如时间序列预测、异常检测等;分类标准缓存注册中心的功能:分类标准缓存注册中心是一种用于存储和管理分类标准的系统。它可以用于存储各种分类标准,如产品分类、行业分类等。注册中心可以提供查询和更新分类标准的功能,以便在需要时进行分类和标记。这对于数据分类、信息检索和数据分析等任务非常有用。
具体地,所述S2043,基于所述内容语义理解特征向量,生成符合预定格式要求的无法序列化的内容。在本申请的一个具体示例中,将所述内容语义理解特征向量通过基于AIGC模型的内容生成器以生成符合预定格式要求的无法序列化的内容。
AIGC(Artificial Intelligence Generated Content)模型是一种由人工智能生成的内容模型。它使用先进的自然语言处理技术,如GPT-3.5 Turbo模型,来生成具有逻辑和语法正确性的文本。AIGC模型可以用于各种应用,如生成文章、回答问题、提供建议等。、AIGC模型的优势在于其能够处理大量的文本数据,并生成与输入相关的高质量内容。它可以根据上下文理解问题,并生成合适的回答或建议。
值得一提的是,在本申请的其他具体示例中,还可以通过其他方式来基于所述内容语义理解特征向量,生成符合预定格式要求的无法序列化的内容,例如:确定所需生成内容的预定格式要求。这可能包括内容的结构、标记、字段和其他特定要求;使用语义理解技术,将输入的文本转换为语义理解特征向量。这可以通过使用自然语言处理(NLP)和深度学习模型来实现。特征向量捕捉了文本的语义信息,可以更好地理解文本的含义;基于语义理解特征向量,使用生成模型(如生成对抗网络或序列生成模型)生成符合预定格式要求的内容。生成模型可以根据特征向量的语义信息生成与预定格式要求相匹配的内容;将生成的内容按照预定格式要求进行格式化。这可能涉及到添加标记、调整字段顺序、设置字段值等操作,以确保生成的内容符合预定格式要求;将格式化后的内容作为输出结果呈现给用户或用于其他需要的用途。
值得一提的是,在本申请的其他具体示例中,还可以通过其他方式来恢复所述第一分类标准的内部对象引用,例如:确定第一分类标准的名称和定义;确定第一分类标准所属的分类体系或标准体系;查找分类体系或标准体系的相关文档或数据库;在相关文档或数据库中搜索第一分类标准的详细信息;确定第一分类标准的内部对象引用的定义和说明;根据定义和说明,确定第一分类标准的内部对象引用的名称和类型;查找第一分类标准的内部对象引用在分类体系或标准体系中的位置;获取第一分类标准的内部对象引用的详细信息,包括属性、方法和用法;确定如何使用第一分类标准的内部对象引用来实现特定的功能或解决特定的问题;将第一分类标准的内部对象引用集成到相应的应用程序或系统中。
值得一提的是,在本申请的其他具体示例中,还可以通过其他方式来当所述分类标准缓存注册中心有所述第一分类标准对应的二进制缓存时,加载所述第一分类标准的分类标准入口,例如:首先,分类标准缓存注册中心是一个用于存储和管理分类标准的中心。它可以根据不同的分类标准将其存储在不同的缓存中;当有一个新的分类标准需要加载时,首先检查该分类标准是否已经存在于缓存中。这可以通过检查分类标准缓存注册中心中的二进制缓存来完成;如果所需的分类标准已经存在于二进制缓存中,那么可以直接加载该分类标准的入口。入口是指可以访问该分类标准的接口或指针;如果所需的分类标准不存在于二进制缓存中,那么需要执行加载操作。这可能涉及从外部存储介质(如硬盘或网络)中读取分类标准的数据,并将其存储到二进制缓存中;加载完成后,将生成一个新的分类标准入口,并将其存储在分类标准缓存注册中心中。这样,下次需要访问该分类标准时,就可以直接使用已加载的入口,而无需再次执行加载操作。
具体地,在步骤S3中,在加载所述第一分类标准后,对所述第一分类标准进行二值制缓存持久化以得到所述第一分类标准的二级制缓存文件。二值制缓存持久化是指将缓存中的数据以二进制形式进行存储和读取,以实现数据的持久化保存和恢复。通过将数据转换为二进制格式,可以将其写入到磁盘或其他非易失性存储介质中,以便在系统重启或断电后能够重新加载和使用这些数据。通过二值制缓存持久化,可以有效地保存和恢复缓存中的数据,确保数据的持久性和可靠性。这在很多应用场景中都非常有用,例如缓存数据的备份、系统重启后的数据恢复等。特别地,在本申请的一个具体示例中,所述S3,包括:生成所述第一分类标准的分类标准入口;生成所述第一分类标准的字符串字典文件;生成所述第一分类标准的语法对象池;以及,生成所述第一分类标准的语义对象池。
值得一提的是,在本申请的其他具体示例中,还可以通过其他方式以在加载所述第一分类标准后,对所述第一分类标准进行二值制缓存持久化以得到所述第一分类标准的二级制缓存文件,例如:加载第一分类标准:首先,从适当的数据源或文件中加载第一分类标准。这可以是一个预先定义好的分类标准,例如一个包含各种类别和对应标签的数据集;二值制缓存:对加载的第一分类标准进行二值制缓存。这意味着将每个类别的标签转换为二进制形式。例如,如果有5个类别,可以使用3位二进制编码表示每个类别,其中每个位表示一个类别;持久化:将二值制缓存的第一分类标准保存到磁盘上的二进制文件中。这样可以确保在下次需要使用分类标准时,可以直接加载二进制文件,而无需重新计算或转换;二级制缓存文件:生成第一分类标准的二级制缓存文件。这个文件包含了所有类别的二进制编码,以及它们对应的标签。这样可以在需要时快速检索和使用分类标准。
具体地,在步骤S4中,将所述第一分类标准的二级制缓存存储至所述分类标准缓存注册中心。其中,缓存注册中心可以是特定目录的json或XML文件,或其他注册中心。以入口文件以及附加的链接库地址信息为key,查找是否有对应的缓存记录。当缓存的二进制文件不存在,或缓存版本信息不匹配时,都将触发常规加载。
相应的,在一种可能的实现方式中,可通过以下步骤将所述第一分类标准的二级制缓存存储至所述分类标准缓存注册中心,例如:准备分类标准缓存注册中心:首先,您需要准备一个用于存储分类标准的缓存注册中心。这可以是一个数据库、一个内存缓存或任何其他适合存储数据的数据结构;创建二进制缓存:将第一分类标准转换为二进制形式。这可以通过将每个分类标准转换为对应的二进制编码来实现。例如,如果有8个分类标准,您可以使用3位二进制编码来表示它们(000、001、010、011、100、101、110、111);存储到缓存注册中心:将转换后的二进制缓存存储到分类标准缓存注册中心中。根据您选择的数据存储方式,您可以将二进制缓存作为一个条目存储在数据库表中,或者将其存储在内存缓存中;检索分类标准:当需要使用分类标准时,您可以从分类标准缓存注册中心中检索相应的二进制缓存。根据您选择的数据存储方式,您可以从数据库表中查询相应的条目,或者从内存缓存中获取相应的数据。
应可以理解,在利用上述神经网络模型进行推断之前,需要对所述包含嵌入层的BiLSTM层和所述基于AIGC模型的内容生成器进行训练。也就是说,在本申请的基于二进制文件缓存加载XBRL分类标准的方法中,还包括训练阶段,用于对所述包含嵌入层的BiLSTM层和所述基于AIGC模型的内容生成器进行训练。
图3为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的训练阶段的流程图。图2为根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法的训练阶段的系统架构图。如图2和图3所示,根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法,包括:训练阶段,包括:S110,获取训练数据,所述训练数据包括无法序列化的训练内容,以及,符合预定格式要求的无法序列化的内容的真实值;S120,对所述无法序列化的训练内容进行词粒度划分以得到训练内容词的序列;S130,将所述无法序列化的训练内容进行字符粒度划分以得到训练内容字符的序列;S140,将所述训练内容词的序列通过所述包含嵌入层的BiLSTM层以得到训练词粒度内容语义理解特征向量;S150,将所述训练内容字符的序列通过所述包含嵌入层的BiLSTM层以得到训练字符粒度内容语义理解特征向量;S160,融合所述训练词粒度内容语义理解特征向量和所述训练字符粒度内容语义理解特征向量以得到训练内容语义理解特征向量;S170,将所述训练内容语义理解特征向量通过所述基于AIGC模型的内容生成器以得到生成损失函数值;S180,计算所述训练词粒度内容语义理解特征向量和所述训练字符粒度内容语义理解特征向量的流形凸分解一致性因数;以及,S190,以所述生成损失函数值和所述流形凸分解一致性因数的加权和作为损失函数值,对所述包含嵌入层的BiLSTM层和所述基于AIGC模型的内容生成器进行训练。
特别地,在融合所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量得到所述内容语义理解特征向量时,考虑到所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量分别表达不同源文本粒度下的近程-远程关联文本语义特征,为了提升融合效果,期望所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量在高维特征空间内的流形表达在与源粒度对应的不同关联维度上保持一致。
因此,本申请的申请人首先计算所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量的逐位置关联以得到关联特征矩阵,例如记为,再针对所述关联特征矩阵/>引入特征矩阵的流形凸分解一致性因数作为损失函数,具体表示为:
其中和/>分别是矩阵/>对应行向量的均值向量和列向量的均值向量,/>表示向量的一范数,/>表示矩阵的Frobenius范数,/>和/>是矩阵/>的宽度和高度,且/>、/>和/>是权重超参数。
也就是,考虑到所述关联特征矩阵的行和列维度分别表达所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量各自的特征值粒度与另一特征向量的整体向量粒度下的关联性,所述流形凸分解一致性因数针对所述关联特征矩阵/>在行和列所代表的子维度上的分布差异性,通过所述关联特征矩阵/>所表示的特征流形的几何凸分解,来对不同维度上的流形的有限凸多面体的集合进行平展化,并以子维度关联的形状权重的形式来约束几何凸分解,从而促进所述关联特征矩阵/>的特征流形在行和列所代表的可分解维度上的凸几何表示的一致性,以使得所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量在高维特征空间内的流形表达在与源粒度对应的不同关联维度上保持一致。
综上,根据本申请实施例的基于二进制文件缓存加载XBRL分类标准的方法被阐明,其通过基于二进制文件缓存加载XBRL分类标准将加载解析的结果持久化成二进制文件,这样,能直接从二进制文件加载,减少加载时间、解析耗时,有比较大的性能优势,改善用户使用体验。
特别地,XBRL(eXtensible Business Reporting Language)是一种基于XML的数据标准,用于在不同的信息系统和业务部门之间交换、共享和分析数据。XBRL由于其可读性和可扩展性而被广泛应用于企业报告、财务数据分析和监管合规性等领域。与XBRL相关的内容主要分:XBRL分类标准、XBRL实例文档。
其中,XBRL分类标准,包含:
(1)元素定义:定义财务报告科目以及非财务披露信息的元素信息。
a)元素名称:和命名空间一起,为业务科目指定唯一名称;
b)数据类型:货币、日期、字符、布尔等类型
c)周期类型:点时间、段时间类型,涉及科目的周期属性;
d)借贷属性:适用于财务科目,指明借方、贷方科目,影响披露内容的正负号
e)是否可为空等;
(2)元素间的关系:列报关系、定义关系、计算关系,分别表示元素之间的相关关系;
(3)元素和资源之间的关系:标签链接库、参考链接库等,为元素提供可读性和参考性;
(4)业务规则定义:元素数据之间的勾稽关系:formula公式链接库,提供通过XPath语法读取实例文档内容,进行数据有效性校验的能力。
(5)建模规范:使用元组定义元素或者使用Dimension 维度规范约定XBRL实例文档数据的披露。
分类标准有多个模式文件(XSD文件)和多个链接库文件构成(XML文件)。
一套分类标准可以有很多个入口文件(XSD),例如:分不同年度,不同报告类型:年报、中报、季报、临时公告,定义不同的入口文件。
不同入口文件可以引用统一的元素池(定义元素的XSD)文件。
值得注意的是,在建立二进制缓存时,按照四个层次对分类标准进行持久化,以利于反序列化加载。
(1).建立全局的字符串字典:sharedStrings.bin,包含分类标准的所有字符串。
(2).建立分类标准入口信息:entry.bin,包含以下信息:
2.1 摘要信息: 版本、日期等信息;
2.2 文件信息:分类标准所有引用的文件名,持久化地址信息等;
2.3 分类标准:分类标准ID,以及引用的父分类标准信息;
2.4 长度信息:记录sharedString.bin,files.bin, dts.bin的长度。
(3).语法对象池:files.bin
语法对象池为模式文件或链接库XML文件的直接封装对象,在内存中和文件中内容有一一对应关系。二进制持久化建立对象ID和具体对象的映射关系,以便反序列化时,完成对象替换。
(4).语义对象池:dts.bin
记录分类标准加载后解析编译的结果,可以是语法对象的内部数据,也可以是新的XBRL语义对象,例如:关系集(RelationshipSet),关系(Relationship)等。
更具体地,根据本申请的提供的XBRL分类标准二进制缓存的方法包括以下步骤:
1.当分类标准加载后,根据需要进行分类标准二进制缓存处理,准备缓存写入的目录和文件。分类标准入口entry.bin, 字符串字典sharedStrings.bin, 语法对象池files.bin,会根据需要优先写入,语义对象池 dts.bin在语法对象池之后写入。最后将缓存文件的长度记录到entry.bin,以便反序列化的时候进行校验判断。若反序列化失败,将执行正常的加载流程。
2.二进制缓存的各个阶段,可以对字符串字典文件(sharedStrings.bin)进行更新。字符串字典即字符串池,为了减少序列化二进制文件的大小,将分类标准绝大部分的字符串信息记录在字符串字典文件,通过其他文件中引用字符串的偏移地址。二进制缓存的过程中始终保持对字符串字典的同步更新。每一个字符串按照【长度:UTF8编码的二进制内容】格式进行持久化,在内存中通过Map<String,Integer>结构,记录字符串在二进制文件中的偏移信息。反序列化时,可以通过读取长度以及对应长度的字节内容,快速构建索引位置和字符串的关系Map<Integer, String>在引用字符串的使用,通过此Integer快速找到对应的String对象。字符串在二进制文件中的偏移量,相当于字符串的句柄,在序列化和反序列化中完成字符对象的替换。
3.记录分类标准入口信息(entry.bin)
a)当前分类标准的摘要信息,包括:版本号、创建时间、分类标准ID、(主)入口地址(Int32)、入口链接库文件个数、每个入口链接库文件地址。
b)文件信息:分类标准引用的文件个数、文件ID,绝对地址文件名(Int32)、文件类型(1 DOM, 2 XSD)、对象池索引(files.bin文件地址Int32),序列化后文件大小(Int32)
c)分类标准信息:关联分类标准个数、标准ID(和文件ID统一分配), 类型(0XbrlCore, UserDTS)、父标准ID。某一个分类标准可以在内存中依赖另外一个基础分类标准以达到共享内存的目的。缓存信息包含父分类标准的ID。一般均引用XBRL官方模式文件构成的核心分类标准XbrlCore。
4.记录语法对象池:files.bin
a)DOM文件的内容写入方法,顺序写入:文件ID以及文档内容:
Element元素写入方式:节点类型Int32, 节点名字Int32,对象ID,
属性个数Int32,节点类型Int32,属性名Int32,属性值Int32 ...
Element结束索引(所有子节点写完后的偏移量+1)
Text节点写入方式:节点类型 Int32,文本内容(Int32)
其他类型的节点,参照类似方式输出,节点类型Int32,节点内容(Int32)。
所有字符串内容输出到字符串字典文件(sharedStrings.bin)进行共享。
输出Element元素时,跟踪对象的ID,供引用时可记录对应的ID。
b)模式文件的内容写入方式:文件ID,写入SOM对象的二进制流
将模式文件(XmlSchema)使用MessagePack序列化成二进制流, 开始写入的地址记录entry.bin中。序列化时,跟踪所有的SOM对象,给每一个SOM对象分配唯一的ID。SOM对象使用MessagePack的Ext结构,输出不同的SOM类型。例如输出模式文件中的Element元素:
MessageBufferPacker conceptPacker = MessagePack.newDefaultBufferPacker();
conceptPacker.packInt(123456); // 对象ID
conceptPacker.packInt(1); // 元素名称
conceptPacker.packInt(2); // 元素ID
conceptPacker.packInt(3); // 元素类型 QName
int elementLen = conceptPacker.toByteArray().length;
packer.packExtensionTypeHeader(SOMType.Element, elementLen);
packer.writePayload(conceptPacker.toByteArray());
所有字符串均池化(字典)处理。
5.记录语义对象池:dts.bin
语义对象池记录分类标准的编译结果:语法对象的内部状态以及新的语义对象。
a)首先写入语法对象的内部状态,迭代所有文件记录,分别记录DOM模型、SOM模型的内部状态。
DOM文件:文件ID以及文档内部编译结果,使用MessagePack封装;
SOM文件:文件ID以及文档内部编译结果,使用MessagePack封装;
b)写入分类标准语义对象,记录关系集(RelationshipSet)对象。使用对象ID记录给各个被引用的对象。
使用本发明提供的基于二进制文件缓存快速加载分类标准的方法包括以下步骤:
6.检查缓存注册中心是否有缓存的二进制文件 entry.bin;
7.加载分类标准入口信息 entry.bin的内容,判断其他缓存文件是否完整,版本是否一致,如果不完整或版本不一致,执行常规加载流程;
8.加载字符串字典文件sharedStrings.bin,生成Map<Integer, String>字典,供后续反序列化检索;
9.加载语法对象池:结合分类标准入口信息,加载files.bin生成对应的DOM文件对象、模式文件SOM对象;
10.加载语义对象池:更新DOM对象、SOM对象的内部状态,加载其他语义对象,例如:关系集(RelationshipSet)等。
11.恢复分类标准内部对象引用,重建部分可能无法序列化的内容。使分类标准达到可以检验XBRL实例文档的状态。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,包括:
在加载第一分类标准时,检查分类标准缓存注册中心是否有所述第一分类标准对应的二进制缓存文件;
响应于分类标准缓存注册中心没有所述第一分类标准对应的二进制缓存,以常规方法加载所述第一分类标准;
在加载所述第一分类标准后,对所述第一分类标准进行二值制缓存持久化以得到所述第一分类标准的二级制缓存文件;
以及将所述第一分类标准的二级制缓存存储至所述分类标准缓存注册中心。
2.根据权利要求1所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,在加载所述第一分类标准后,对所述第一分类标准进行二值制缓存持久化以得到所述第一分类标准的二级制缓存文件,包括:
生成所述第一分类标准的分类标准入口;
生成所述第一分类标准的字符串字典文件;
生成所述第一分类标准的语法对象池;
以及生成所述第一分类标准的语义对象池。
3.根据权利要求2所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,包括:
响应于所述分类标准缓存注册中心有所述第一分类标准对应的二进制缓存,加载所述第一分类标准的分类标准入口;
加载所述第一分类标准的字符串字典文件;
加载所述第一分类标准的语法对象池;
加载所述第一分类标准的语义对象池;
以及恢复所述第一分类标准的内部对象引用。
4.根据权利要求3所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,恢复所述第一分类标准的内部对象引用,包括:
获取无法序列化的内容;
对所述无法序列化的内容进行语义理解以得到内容语义理解特征向量;
基于所述内容语义理解特征向量,生成符合预定格式要求的无法序列化的内容。
5.根据权利要求4所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,对所述无法序列化的内容进行语义理解以得到内容语义理解特征向量,包括:
对所述无法序列化的内容进行划分以得到内容词的序列和内容字符的序列;
基于深度学习模型,对所述内容词的序列和所述内容字符的序列进行内容分析与理解以得到词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量;
以及融合所述词粒度内容语义理解特征向量和所述字符粒度内容语义理解特征向量以得到所述内容语义理解特征向量。
6.根据权利要求5所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,对所述无法序列化的内容进行划分以得到内容词的序列和内容字符的序列,包括:
对所述无法序列化的内容进行词粒度划分以得到所述内容词的序列;
及将所述无法序列化的内容进行字符粒度划分以得到所述内容字符的序列。
7.根据权利要求6所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,基于深度学习模型,对所述内容词的序列和所述内容字符的序列进行内容分析与理解以得到词粒度内容语义理解特征向量和字符粒度内容语义理解特征向量,包括:
将所述内容词的序列通过包含嵌入层的BiLSTM层以得到所述词粒度内容语义理解特征向量;
以及将所述内容字符的序列通过所述包含嵌入层的BiLSTM层以得到所述字符粒度内容语义理解特征向量。
8.根据权利要求7所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,基于所述内容语义理解特征向量,生成符合预定格式要求的无法序列化的内容,包括:
将所述内容语义理解特征向量通过基于AIGC模型的内容生成器以生成所述符合预定格式要求的无法序列化的内容。
9.根据权利要求8所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,还包括训练步骤:对所述包含嵌入层的BiLSTM层和所述基于AIGC模型的内容生成器进行训练;
其中,所述训练步骤,包括:
获取训练数据,所述训练数据包括无法序列化的训练内容,以及,符合预定格式要求的无法序列化的内容的真实值;
对所述无法序列化的训练内容进行词粒度划分以得到训练内容词的序列;
将所述无法序列化的训练内容进行字符粒度划分以得到训练内容字符的序列;
将所述训练内容词的序列通过所述包含嵌入层的BiLSTM层以得到训练词粒度内容语义理解特征向量;
将所述训练内容字符的序列通过所述包含嵌入层的BiLSTM层以得到训练字符粒度内容语义理解特征向量;
融合所述训练词粒度内容语义理解特征向量和所述训练字符粒度内容语义理解特征向量以得到训练内容语义理解特征向量;
将所述训练内容语义理解特征向量通过所述基于AIGC模型的内容生成器以得到生成损失函数值;
计算所述训练词粒度内容语义理解特征向量和所述训练字符粒度内容语义理解特征向量的流形凸分解一致性因数;
以及以所述生成损失函数值和所述流形凸分解一致性因数的加权和作为损失函数值,对所述包含嵌入层的BiLSTM层和所述基于AIGC模型的内容生成器进行训练。
10.根据权利要求9所述的基于二进制文件缓存加载XBRL分类标准的方法,其特征在于,计算所述训练 词粒度内容语义理解特征向量和所述训练字符粒度内容语义理解特征向量的流形凸分解一致性因数,包括:
计算所述训练词粒度内容语义理解特征向量和所述训练字符粒度内容语义理解特征向量的逐位置关联以得到关联特征矩阵;以及以如下公式计算所述关联特征矩阵的流形凸分解一致性因数;其中,所述公式为:
其中和/>分别是矩阵/>对应行向量的均值向量和列向量的均值向量,/>表示向量的一范数,/>表示矩阵的Frobenius范数,/>和/>是矩阵/>的宽度和高度,且/>、/>和/>是权重超参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310971776.7A CN116701325B (zh) | 2023-08-03 | 2023-08-03 | 基于二进制文件缓存加载xbrl分类标准的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310971776.7A CN116701325B (zh) | 2023-08-03 | 2023-08-03 | 基于二进制文件缓存加载xbrl分类标准的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116701325A true CN116701325A (zh) | 2023-09-05 |
CN116701325B CN116701325B (zh) | 2023-10-31 |
Family
ID=87829666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310971776.7A Active CN116701325B (zh) | 2023-08-03 | 2023-08-03 | 基于二进制文件缓存加载xbrl分类标准的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116701325B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117435505A (zh) * | 2023-12-04 | 2024-01-23 | 南京易迪森信息技术有限公司 | 一种性能测试脚本可视化生成方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1880312A2 (en) * | 2005-04-27 | 2008-01-23 | Justsystems Canada Inc. | System and method for providing data formatting |
CN102222083A (zh) * | 2011-05-06 | 2011-10-19 | 中国科学院研究生院 | 基于创建对象的xbrl分类标准的快速解析方法 |
CN102314647A (zh) * | 2011-09-29 | 2012-01-11 | 广州中浩控制技术有限公司 | 一种利用xbrl进行的企业数据存储的方法 |
CN102821133A (zh) * | 2011-12-12 | 2012-12-12 | 金蝶软件(中国)有限公司 | Xbrl数据解析的方法及服务器 |
CN103885925A (zh) * | 2013-03-28 | 2014-06-25 | 中国证券监督管理委员会信息中心 | 一种xbrl实例文档的封装方法 |
CN108228549A (zh) * | 2017-06-20 | 2018-06-29 | 上海吉贝克信息技术有限公司 | 一种数据采集方法及系统、服务器 |
-
2023
- 2023-08-03 CN CN202310971776.7A patent/CN116701325B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1880312A2 (en) * | 2005-04-27 | 2008-01-23 | Justsystems Canada Inc. | System and method for providing data formatting |
CN102222083A (zh) * | 2011-05-06 | 2011-10-19 | 中国科学院研究生院 | 基于创建对象的xbrl分类标准的快速解析方法 |
CN102314647A (zh) * | 2011-09-29 | 2012-01-11 | 广州中浩控制技术有限公司 | 一种利用xbrl进行的企业数据存储的方法 |
CN102821133A (zh) * | 2011-12-12 | 2012-12-12 | 金蝶软件(中国)有限公司 | Xbrl数据解析的方法及服务器 |
CN103885925A (zh) * | 2013-03-28 | 2014-06-25 | 中国证券监督管理委员会信息中心 | 一种xbrl实例文档的封装方法 |
CN108228549A (zh) * | 2017-06-20 | 2018-06-29 | 上海吉贝克信息技术有限公司 | 一种数据采集方法及系统、服务器 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117435505A (zh) * | 2023-12-04 | 2024-01-23 | 南京易迪森信息技术有限公司 | 一种性能测试脚本可视化生成方法 |
CN117435505B (zh) * | 2023-12-04 | 2024-03-15 | 南京易迪森信息技术有限公司 | 一种性能测试脚本可视化生成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116701325B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112199511A (zh) | 跨语言多来源垂直领域知识图谱构建方法 | |
CN111950287B (zh) | 一种基于文本的实体识别方法及相关装置 | |
Rodríguez-Gianolli et al. | A semantic approach to XML-based data integration | |
Ait-Ameur et al. | Making explicit domain knowledge in formal system development | |
CN101124537A (zh) | 采用术语构建知识关联的知识发现技术 | |
CN111061882A (zh) | 一种知识图谱构建方法 | |
CN116701325B (zh) | 基于二进制文件缓存加载xbrl分类标准的方法 | |
CN111857660B (zh) | 一种基于查询语句的情境感知api推荐方法及终端 | |
CN108766507B (zh) | 一种基于CQL与标准信息模型openEHR的临床质量指标计算方法 | |
CN116820429A (zh) | 代码处理模型的训练方法、装置、电子设备及存储介质 | |
Chen et al. | Enhancing unsupervised requirements traceability with sequential semantics | |
KR101086996B1 (ko) | 온톨로지 생성 장치 및 그 방법 | |
CN113704420A (zh) | 文本中的角色识别方法、装置、电子设备及存储介质 | |
Zhu et al. | Automatic real-time mining software process activities from SVN logs using a naive Bayes classifier | |
Hu et al. | Measuring code maintainability with deep neural networks | |
CN113377844A (zh) | 面向大型关系型数据库的对话式数据模糊检索方法及装置 | |
CN117574898A (zh) | 基于电网设备的领域知识图谱更新方法及系统 | |
CN117407532A (zh) | 一种利用大模型与协同训练进行数据增强的方法 | |
CN115115432B (zh) | 基于人工智能的产品信息推荐方法及装置 | |
Zhang et al. | An overview on supervised semi-structured data classification | |
LU101238B1 (en) | Method for consolidating dynamic knowledge organization systems | |
CN112015891A (zh) | 基于深度神经网络的网络问政平台留言分类的方法及系统 | |
Wang et al. | Survive the schema changes: integration of unmanaged data using deep learning | |
Laddha et al. | Joint distributed representation of text and structure of semi-structured documents | |
Gilleron et al. | XML document transformation with conditional random fields |
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 |