CN113591906B - 图的分割方法、装置及电子设备 - Google Patents
图的分割方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113591906B CN113591906B CN202110686730.1A CN202110686730A CN113591906B CN 113591906 B CN113591906 B CN 113591906B CN 202110686730 A CN202110686730 A CN 202110686730A CN 113591906 B CN113591906 B CN 113591906B
- Authority
- CN
- China
- Prior art keywords
- vertex
- graph
- value
- vertexes
- variable parameter
- 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
- 230000011218 segmentation Effects 0.000 title claims abstract description 145
- 238000000034 method Methods 0.000 title claims abstract description 85
- 239000013598 vector Substances 0.000 claims abstract description 185
- 230000006870 function Effects 0.000 claims description 206
- 239000003550 marker Substances 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 12
- 238000003860 storage Methods 0.000 claims description 12
- 238000000638 solvent extraction Methods 0.000 claims description 8
- 238000005457 optimization Methods 0.000 abstract description 37
- 238000012545 processing Methods 0.000 abstract description 18
- 238000013473 artificial intelligence Methods 0.000 abstract description 7
- 238000013461 design Methods 0.000 abstract description 5
- 238000007621 cluster analysis Methods 0.000 abstract description 4
- 238000004422 calculation algorithm Methods 0.000 description 36
- 238000005520 cutting process Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 238000011478 gradient descent method Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000000126 substance Substances 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- LKJPSUCKSLORMF-UHFFFAOYSA-N Monolinuron Chemical compound CON(C)C(=O)NC1=CC=C(Cl)C=C1 LKJPSUCKSLORMF-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000005283 ground state Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003924 mental process Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000005328 spin glass Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/2163—Partitioning the feature space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/29—Graphical models, e.g. Bayesian networks
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开提供了一种图的分割方法,涉及图论领域,尤其涉及图像处理等人工智能领域,可以应用于统计物理、超大规模集成电路设计、数据聚类分析等场景,包括:获取待分割的图,其中,图包括多个顶点和顶点之间的边;对待分割图进行分割获取顶点的近似分割解向量,根据近似分割解向量初始化顶点的可变参数向量;根据图的可变参数向量迭代出图的最小化损失函数;获取每个顶点在最小化损失函数的生成时刻对应的可变参数向量的目标值;针对每个顶点,根据顶点对应的目标值,确定顶点被割开的边数。本公开中,在已经求解出的近似分割解的基础上进行优化,提高了求解效率,降低了求解难度,增强了实用性以及通用性,强化了求解的高效性。
Description
技术领域
本公开涉及图论领域,尤其涉及图像处理等人工智能领域,可以应用于统计物理、网络设计、超大规模集成电路设计、数据聚类分析等场景下。
背景技术
随着计算机技术的发展和成熟,计算机可以实现很多复杂的运算任务的处理,然而,依然存在部分问题是目前的计算机无法实现快速运算高效解决的,比如最大割问题的近似求解。
相关技术中,对于最大割问题的最优解求解过程往往耗时较长,导致对最优解的获取效率较低,使得最大割的实用性受到一定的影响。因此,如何提高最大割的近似最优解的求取效率,是目前需要解决的问题。
发明内容
本公开提供了一种图的分割方法、装置、电子设备、存储介质及计算机程序产品。
根据本公开的第一方面,提供了一种图的分割方法,包括:获取待分割的图,其中,所述图包括多个顶点和所述顶点之间的边;对所述待分割图进行分割,以获取所述顶点的近似分割解向量,并根据所述近似分割解向量,初始化所述顶点的可变参数向量;根据所述图的可变参数向量,迭代出所述图的最小化损失函数;获取每个所述顶点在所述最小化损失函数的生成时刻对应的所述可变参数向量的目标值;针对每个所述顶点,根据所述顶点对应的所述目标值,确定所述顶点被割开的边数。
根据本公开的第二方面,提供了一种图的分割装置,包括:获取模块,用于获取待分割的图,其中,所述图包括多个顶点和所述顶点之间的边;求解模块,用于对所述待分割图进行分割,以获取所述顶点的近似分割解向量,并根据所述近似分割解向量,初始化所述顶点的可变参数向量;迭代模块,用于根据所述图的可变参数向量,迭代出所述图的最小化损失函数;计算模块,用于获取每个所述顶点在所述最小化损失函数的生成时刻对应的所述可变参数向量的目标值;确定模块,用于针对每个所述顶点,根据所述顶点对应的所述目标值,确定所述顶点被割开的边数。
根据本公开的第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第一方面任一项所述的图的分割方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述第一方面任一项所述的图的分割方法。
根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述第一方面任一项所述的图的分割方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开一实施例的图的分割方法的流程示意图;
图2为本公开另一实施例的图的分割方法的流程示意图;
图3为本公开另一实施例的图的分割方法的流程示意图;
图4为本公开另一实施例的图的分割方法的流程示意图;
图5为本公开另一实施例的图的分割方法的流程示意图;
图6为本公开另一实施例的图的分割方法的流程示意图;
图7为本公开另一实施例的图的分割方法的流程示意图;
图8为本公开另一实施例的图的分割方法的流程示意图;
图9为本公开一实施例的图的分割装置的结构示意图;
图10为本公开另一实施例的图的分割装置的结构示意图;
图11为本公开一实施例的电子设备的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图论(Graph Theory),是数学的一个分支。它以图为研究对象。图论中的图是由若干给定的点及连接两点的线所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系,用点代表事物,用连接两点的线表示相应两个事物间具有这种关系。
图像处理(image processing),用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。图像处理一般指数字图像处理。数字图像是指用工业相机、摄像机、扫描仪等设备经过拍摄得到的一个大的二维数组,该数组的元素称为像素。图像处理技术一般包括图像压缩,增强和复原,匹配、描述和识别3个部分。
人工智能(Artificial Intelligence,简称AI),是研究使计算机来模拟人类的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术,也有软件层面的技术。人工智能硬件技术一般包括计算机视觉技术、语音识别技术、自然语言处理技术以及及其学习/深度学习、大数据处理技术、知识图技术等几大方面。
统计物理学(statistical physics),根据对物质微观结构及微观粒子相互作用的认识,用概率统计的方法,对由大量粒子组成的宏观物体的物理性质及宏观规律作出微观解释的理论物理学分支。又称统计力学。所谓大量,是以1摩尔物质所含分子数(其数量级为10^23个)为尺度的。
聚类分析指将物理或抽象对象的集合分组为由类似的对象组成的多个类的分析过程。它是一种重要的人类行为。聚类分析的目标就是在相似的基础上收集数据来分类。聚类源于很多领域,包括数学,计算机科学,统计学,生物学和经济学。在不同的应用领域,很多聚类技术都得到了发展,这些技术方法被用作描述数据,衡量不同数据源间的相似性,以及把数据源分类到不同的簇中。
图1为本公开一实施例的图的分割方法的流程示意图,如图1所示,该方法包括:
S101,获取待分割的图,其中,图包括多个顶点和顶点之间的边。
实现中,图论中的图是由若干给定的点及连接两点的线所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系,用点代表事物,用连接两点的线表示相应两个事物间具有这种关系。
本公开实施例中,待分割的图可以由一对集合表示,其中,一个集合由图中的多个顶点组成,另一个集合可以是由图中的顶点与顶点之间的边组成。
如图2所示,图2由一对集合G=(V,E)表示,其中,集合V中的元素是图G中的顶点,集合E中的元素为图G中的边,每条边为两个顶点之间的连线。则顶点V可以为V={v0,v1,v2,v3},边E可以为E={(v0,v1),(v0,v2),(v1,v2),(v2,v3)}。
实现中,往往会对每个顶点进行标记,然后基于每两个顶点对应的标记值可以确定图中的该两个顶点之间的边是否被分割。因此,获取的待分割图中顶点对应的边被最大数量分割的标记值的组合,即为待分割图的最大割问题的解。
需要说明的是,最大割问题,其本身属于非确定性多项式困难(non-deterministic polynomial hard,NP-hard)问题,在多项式时间内,可能不存在可以高效地获取最大割问题的最优解的算法,因此,对于最大割问题的求解,仅需获取可以最大限度的接近最优解的近似最优解。
很多实际场景中的问题,均可以转化成图的最大割问题,通过获取相应的最大割问题的近似最优解,就可以使得实际场景中的问题得到解决。
比如,针对超大规模集成电路设计,在电路的设计过程中,可能存在部分线路的交叉问题,对于该部分交叉的线路需要进行线路的分层。由于部分交叉线路会与不交叉的线路相连接,因此,在对交叉的线路进行分层后,与该部分交叉线路相连接的不交叉线路会出现跨越多个层的情况。对于出现该种情况的超大规模集成电路,可能会增加生产的成本。
进一步地,可以将该问题转化为最大割问题,将该超大规模集成电路转化为多个顶点和边组成的图,其中,可以将交叉线路转化成图中的顶点,不交叉线路转化成图中的边。通过求取最大割问题的近似最优解,可以从超大规模集成电路中,确定可以被分割的近似最大数量的不交叉线路,将该部分不交叉线路重新进行整理,使得不交叉的线路尽可能多的连接到同一层的交叉线路上,最大限度的避免出现跨层的情况,进而达到节约成本的目的。
再比如,针对统计物理中求解自旋玻璃模型的基态,可以将其转化为最大割问题。针对其中著名的伊辛模型,将其转化为最大割问题后,基于最大割问题的求解,进而实现对伊辛模型的求解,使得对于物质的性质可以实现进一步地的理解。
可选地,可以获取待解决的问题,并基于获取到的待解决问题,调用相应的无向图和/或有向图生成算法,获取该问题的无向图和/或有向图,并将其确定为本公开中的待分割图。
S102,对待分割图进行分割,以获取顶点的近似分割解向量,并根据近似分割解向量,初始化顶点的可变参数向量。
实现中,待分割图的最大割问题可以存在至少一个近似分割解向量,不同的算法可以获取到不同的近似分割解向量,因此,为了获取最为精准的近似最优解,可以在获取到的至少一个的近似分割解向量上做进一步的优化处理,基于设定算法下的待分割图的近似分割解向量,获取待分割图中的顶点对应的可变参数向量,并将其确定为待分割图的顶点的初始可变参数向量。
可选地,基于设定算法对待分割图的最大割问题进行求解,可以获取基于该算法下的待分割图的近似分割解向量中任一顶点对应的标记值。
其中,任一顶点对应的近似分割解的取值为1或者-1的离散标记值。
需要说明的是,上述对于图的最大割问题求解近似分割解向量的算法,可以包括戈曼斯-威廉姆森(Goemans-Williamson)算法,也可以包括布勒尔-蒙蒂罗(Burer-Monteiro)方法,还可以包括任一可以对图的最大割问题进行近似分割解向量的求解的算法,在此不做限定。
基于获取到的待分割图中全部的顶点对应的近似分割解向量,对待分割图中全部的顶点进行标记,基于任一顶点对应的近似分割解获取该顶点对应的可变参数,进而生成全部顶点对应的可变参数向量,完成任一顶点对应的可变参数的初始取值的确定。
S103,根据图的可变参数向量,迭代出图的最小化损失函数。
实现中,待分割图中的顶点存在离散标记值,其标记值仅为1或-1。当待分割图中的两个顶点的标记值的乘积为1时,则该两个顶点之间的边不被分割,当待分割图中的两个顶点的标记值的乘积为-1时,则该两个顶点之间的边被分割。
由此可知,对于图的最大割问题的近似最优解的求解,即为获取可以使图中的边被分割的最多的顶点的标记值的集合。
进一步地,为了可以有效提高最大割问题的近似最优解的获取效率,可以通过对待分割图中的顶点的离散标记值的获取过程进行优化。
可选地,可以将顶点的离散标记值替换为可优化的可变参数向量,其中,任一顶点对应的可变参数的初始值,可以基于设定算法下获取到的待分割图的最大割问题的近似分割解确定,基于设定算法下的待分割图的最大割问题的近似分割解的基础,对待分割图中的任一顶点的可变参数进行迭代优化,有效缩短了对近似分割解进行优化的时间,进而实现高效获取到近似最优解的目的。
进一步地,基于可变参数向量可以获取图的当前损失函数,可以理解为,可变参数向量为损失函数计算公式中的变量,因此,可以通过对可变参数向量的取值的调整优化,实现损失函数的迭代,进而获取待分割图的最小化损失函数。
可选地,针对任一顶点,基于设定算法下待分割图的近似分割接向量,可以确定待分割图中任一顶点对应的初始的可变参数的取值。进一步地,基于任一顶点的可变参数的取值,生成图中全部顶点对应的可变参数向量,进而计算图的当前损失函数。进一步地,通过设定的函数,比如连续可导函数,对顶点对应的可变参数向量进行调整优化,并基于每次优化后的可变参数向量计算对应的图的损失函数,直至获取最小化损失函数。
需要说明的是,对于可变参数向量的调整优化,可以采用梯度下降法实现,也可以使用其他可以实现对可变参数向量进行调整优化的算法,在此不做限定。
S104,获取顶点在最小化损失函数的生成时刻对应的可变参数向量的目标值。
由于待分割图的最小化损失函数是基于可变参数向量的迭代优化确定的,因此,确定待分割图的最小化损失函数后,可以将计算得出最小化损失函数时的可变参数向量的取值,确定为可变参数向量的目标值。
可以理解为,当对可变参数向量迭代优化至第N轮时,基于该轮次输出的可变参数向量的取值,获取到了待分割图的最小化损失函数。则将第N轮迭代优化输出的可变参数向量的取值,确定为可变参数向量的目标值。
S105,针对每个顶点,根据顶点对应的目标值,确定顶点被割开的边数。
实现中,基于待分割图中任一边的两个顶点的标记值是否相同可以判断两个顶点之间的边是否被分割。最大割问题中,对于待分割图中的顶点的标记值取值为1或者-1。
进一步地,当任一边的两个顶点的标记值不同时,则两个顶点之间的边被分割,当任一边的两个顶点的标记值相同时,则两个顶点之间的边不被分割。由此可知,当任一边的两个顶点的标记值的乘积为-1时,两个顶点之间的边被分割,当任一边的两个顶点的标记值的乘积为1时,两个顶点之间的边不被分割。
如图2所示,设定图2中待分割图G=(V,E)的每个顶点vi均存在对应的标记值xi,其中,xi取值为1或者-1,则可以将全部的顶点的标记值表示为x=(x0,x1,...,x|V|),其中,|V|是待分割图G中顶点的数量。
对于待分割图中的任一边E,可以表示为(vi,vj),vi,vj为两个顶点,其对应的标记值表示为xi,xj。当xi≠xj时,即两个顶点vi,vj的标记值不同时,可以判断两个顶点vi,vj之间的边被分割。相应地,当xi=xj时,即两个顶点vi,vj的标记值相同时,可以判断两个顶点vi,vj之间的边不被分割。
由于顶点的标记值的取值为1或者-1,因此,还可以通过两个顶点的标记值的乘积进行判断。即当xixj=-1时,即两个顶点vi,vj的标记值不同时,可以判断两个顶点vi,vj之间的边被分割。相应地,当xixj=1时,即两个顶点vi,vj的标记值相同时,可以判断两个顶点vi,vj之间的边不被分割。
因此,为了获取待分割图中被分割的边的数量,需要将待分割图中的顶点的可变参数向量转化为取值为1或者-1的离散标记值,即通过顶点的可变参数向量的目标值,实现可变参数向量向离散标记值的转换。
进一步地,可以设定可变参数向量的目标值与离散标记值之间的关系,当可变参数向量的目标值满足离散标记值为1的设定关系时,则该可变参数向量对应的顶点的离散标记值为1。相应地,当可变参数向量的目标值满足离散标记值为-1的设定关系时,则该可变参数向量对应的顶点的离散标记值为-1。
再进一步,基于待分割图中每个顶点对应的离散标记值,即可确定待分割图中被分割的边数。
如图2所示,在上述示例的基础上可知,确定图2中的待分割图G的全部的顶点vi的离散标记值x后,可以基于设定的公式获取待分割图G中被分割的边的数量C(x),公式如下:
进一步地,待分割图的最大割问题,即为当C(x)最大时,即maxxC(x)时,顶点V的离散标记值x的组合。
本公开提供的图的分割方法,基于设定算法计算待分割图的最大割问题,进而获取设定算法下的待分割图的最大割问题的近似分割解。基于获取到待分割图的任一顶点对应的近似分割解,确定任一顶点对应的可变参数,进而生成待分割图中全部的顶点对应的可变参数向量。进一步地,对可变参数向量进行迭代优化,以获取待分割图的最小化损失函数,基于最小化损失函数,确定任一顶点对应的可变参数的目标值,基于全部的顶点对应的标记值的目标值获取待分割图中被分割的边数。本公开中,基于设定算法获取到的待分割图的最大割问题的近似分割解,确定顶点对应的可变参数向量,使得可以在已经求解出的近似分割解的基础上进行进一步地优化,有效缩短了近似最优解的获取时间,使得本公开提供的方法具有较强的通用性,通过对顶点对应的可变参数向量的迭代优化,进而获取到顶点的离散标记值,将图的最大割问题转化成了可变参数向量的优化问题,有效降低了最大割问题的求解难度,进而提高了最大割问题的求解效率,增强了最大割问题的实用性,强化了最大割问题的求解的高效性。
上述实施例中,基于设定算法下获取的图的最大割问题的近似分割解确定图中顶点的可变参数向量,可结合图3进一步理解,图3为本公开另一实施例的图的分割方法的流程示意图,如图3所示,该方法包括:
S301,获取近似分割解向量中每个元素的取值。
为了可以提高近似最优解的获取效率,在基于设定算法获取到的图的最大割问题的近似分割解向量的基础上,基于已存在的近似分割解向量,有效缩短近似最优解的获取时间,进而提高图的最大割问题的近似最优解的获取效率。
进一步地,通过设定算法对图的最大割问题进行求解,可以获取图的最大割问题的近似分割解向量,其中,设定算法可以包括任一可以对图的最大割问题进行近似分割解向量的求解的算法。
获取到的设定算法下的图的最大割问题的近似分割解向量中,包含有图中任一顶点对应的近似分割解。
其中,由于任一顶点对应的近似分割解为取值为1或者-1的离散标记值,因此,近似分割解向量中的每个元素,均为取值为1或者-1的离散标记值。
比如,对于图G=(V,E),其中,集合V中的元素是图G中的顶点,集合E中的元素为图G中的边,每条边为两个顶点之间的连线。获取到的任一顶点对应的近似分割解为pi,则全部顶点对应的近似分割解向量为p,p=(p0,p1,...,p|V|-1),其中,p为长度为|V|的向量,且其中的每个元素pi的取值均为1或者-1。
S302,根据元素的取值所处的区间,确定元素对应的随机数,其中,随机数为元素所处区间内的数值。
本公开实施例中,基于获取到的设定算法下的待分割图的最大割问题的近似分割解向量,可以确定待分割图中任一顶点对应的可变参数。
可选地,可以基于近似分割解向量中,任一顶点对应的元素的取值所属的区间,实现该顶点的可变参数的确定。
进一步地,可以基于确定的任一顶点对应的元素值的区间,确定该元素对应的随机数,通过对随机数进行进一步处理,以获取任一顶点对应的可变参数。
比如,在上述示例的基础上,设定向量p中,待分割图中的任一顶点vi对应的元素为pi,元素pi对应的随机数为qi。
当pi取值为1时,则可以确定其对应的随机数qi的取值区间为[0,1],进一步地,可以从区间[0,1]中随机选取一个数值,并将其确定为随机数qi的取值。
当pi取值为-1时,则可以确定其对应的随机数qi的取值区间为[-1,0],进一步地,可以从区间[-1,0]中随机选取一个数值,并将其确定为随机数qi的取值。
S303,根据元素对应的随机数和目标函数,确定元素对应的可变参数的初始值。
本公开实施例中,基于连续可导函数的可导性,使得待分割图中顶点的可变参数变量可以实现迭代优化,进而获取待分割图的最大割问题的近似最优解,其中,任一可以实现对于可变参数变量进行迭代优化的连续可导函数均可以作为本公开实施例所使用的函数。
进一步地,在获取到设定算法下的近似分割解向量中任一顶点对应的随机数后,可以基于设定函数对随机数进行计算,进而获取的任一顶点对应的可变参数。
可选地,可以将设定的连续可导函数的反函数确定为随机数的目标函数。基于目标函数,对任一顶点对应的随机数进行计算,进而确定该顶点对应的可变参数。
比如,在上述示例的基础上,对于任一顶点vi对应的近似分割解向量中的元素pi,其对应的随机数为qi,设定对待分割图的顶点vi的可变参数向量θ进行迭代优化的连续可导函数为f,则对随机数进行计算的目标函数为连续可导函数的反函数f-1。则基于f-1对qi进行计算,为f-1(qi),并将f-1(qi)的计算结果确定为任一顶点vi对应的可变参数θi的初始取值。
进一步地,可以确定待分割图的近似分割解向量中,全部顶点的元素对应的可变参数向量的初始取值。
本公开提供的图的分割方法,基于设定的算法获取到待分割图的最大割问题的至少一个近似分割解向量,并基于获取到的近似分割解向量确定待分割图中顶点的可变参数向量的取值。在已经获取到的待分割图的最大割问题的近似分割解向量的基础上进行优化,有效缩短的近似最优解的获取时间,使得本公开提供的方法具有较强的通用性,降低了最大割问题的求解难度,提高了最大割问题的实用性。
上述实施例中,关于最小化损失函数的获取,可以结合图4进一步理解,图4为本公开另一实施例的图的分割方法的流程示意图,如图4所示,该方法包括:
S401,从初始的可变参数向量开始,根据可变参数向量的当前取值,获取当前损失函数。
可选地,针对可变参数向量的初始取值,可以基于设定算法获取到的待分割图的最大割问题的至少一个近似分割解向量,确定顶点对应的可变参数向量的初始取值,进而计算待分割图的初始损失函数。
进一步地,基于获取到的初始损失函数对顶点对应的可变参数向量进行优化,并将优化后的可变参数向量的取值确定为可变参数向量的当前取值,进而计算待分割图的当前损失函数。
其中,待分割图的损失函数存在设定的计算公式,将待分割图的顶点的可变参数向量的当前取值代入计算公式中,即可获取待分割图的当前损失函数。
本公开提供的图的分割方法中,用顶点的可变参数向量替换了顶点的离散标记值,可选地,为了最大限度的降低基于可变参数向量可能产生的误差,可以设定一个连续可导函数,且该连续可导函数的输出值的区间为[-1,1]。
将可变参数向量的当前取值代入设定的连续可导函数,基于连续可导函数的可导性,可以实现顶点的可变参数向量的迭代优化,以获取可以生成最小化损失函数的可变参数向量的值。
可选地,基于连续可导函数的可导性,可以采用梯度下降法对可变参数向量进行迭代优化。
需要说明的是,上述基于连续可导函数的可导性对可变参数向量进行迭代优化的方法,可以包括梯度下降法,也可以包括其他可以基于连续可导函数实现的可变参数向量的迭代优化的算法,此处不做限定。
还需要说明的是,关于上述的连续可导函数,任一的输出值的范围区间为[-1,1]的,同时可以实现对顶点的可变参数向量进行迭代优化的连续可导函数,均可以设定为本公开实施例中的连续可导函数。比如正弦函数sin(θ),再比如余弦函数cos(θ),再比如S形函数(Sigmoid function)此处不做限定。
比如,待分割图G=(V,E),基于设定算法获取到的待分割图的近似分割解向量为p=(p0,p1,...,p|V|-1),其中,每个元素的取值均为1或者-1。基于近似分割解向量p确定待分割图中的顶点对应的可变参数向量θ的初始取值。则针对任一顶点vi,当pi为1时,则qi∈[0,1];当pi为-1时,则qi∈[-1,0]。
进一步地,设定对可变参数向量进行迭代优化的连续可导函数为f,则对近似分割解向量进行计算的目标函数为的反函数f-1,则任一顶点vi的可变参数为θi=f-1(qi),全部顶点的可变参数向量为θ=(θ0,θ1,θ2,...)={f-1(q1),f-1(q2),f-1(q3),......}。
其中,qi可以理解为任一顶点对应的可变参数的初始取值。
进一步地,任一顶点vi对应的标记值为xi,则xi=f(θi)。
则待分割图中可以被分割的边数C(x)可以转化为C(θ)并基于如下公式获取:
进一步地,可以获取待分割图G的损失函数L(θ),公式如下:
进一步地,获取待分割图中每条边连接的两个顶点,基于两个顶点各自对应的可变参数的当前取值和连续可导函数,获取两个顶点各自的第一输出值。
可以理解为,待分割图中任一边的两个顶点,均存在对应的可变参数,基于其迭代的轮次可以确定可变参数的当前取值,进一步地,获取可用的连续可导函数,将可变参数的当前取值代入获取的连续可导函数中,计算得出两个顶点各自对应的第一输出值。
比如,在上述示例的基础上设定,待分割图中的边E为(vi,vj),该两个顶点vi,vj对应的近似分割解为pi,pj,近似分割解pi,pj对应的随机数为qi,qj,设定对可变参数向量进行优化的连续可导函数为正弦函数sin,近似分割解对应的目标函数为正弦函数sin的反函数arcsin,则顶点vi,vj对应的可变参数的当前取值为θi=arcsin(qi),θj=arcsin(qj),进一步地,可变参数向量为θ=(θ0,θ1,...,θ|V|-1)。
将顶点vi对应的可变参数的当前取值θi和顶点vj对应的可变参数的当前取值θj代入设定的正弦函数sin中,进而获取顶点vi的第一输出值sin(θi),以及顶点vj的第一输出值sin(θj)。
进一步地,将两个顶点各自的第一输出值相乘,获取第一数值。
实现中,基于待分割图中的任一边的两个顶点的离散标记值的乘积,可以判断两个顶点之间的边是否被分割。本公开实施例中,用顶点的可变参数向量替换离散标记值对顶点进行标记,可以理解为,用输出值区间在[-1,1]的连续可导函数基于可变参数向量计算获取第一输出值替换原最大割问题中对于顶点的离散标记值。
因此,为了确定任一边的两个顶点各自对应的第一输出值与近似最优解中该两个顶点对应的离散标记值之间的误差,可以将两个顶点对应的第一输出值相乘,进而获取两个顶点对应的第一数值。
比如,在上述示例的基础上可知,第一数值为任一边两个顶点的第一输出值的乘积,则第一数值可以为sin(θi)和sin(θj)的乘积sin(θi)·sin(θj)。
进一步地,将图中存在边的两两顶点对应的第一数值相加,获取当前损失函数。
本公开实施例中,由于第一数值可以体现任一边的两个顶点的当前第一输出值,与近似最优解中该两个顶点的离散标记值之间的误差,因此,将全部的每两个顶点之间的误差进行整合,即可获取待分割图的损失函数。
比如,在上述示例的基础上,获取到第一数值sin(θi)·sin(θj)后,即可基于如下公式计算获取待分割的图的当前损失函数L(θ)。
S402,响应于当前损失函数为未最小化,则调整可变参数向量的取值,并基于调整后的可变参数向量的取值,更新损失函数,直至更新后的损失函数为最小化损失函数停止继续调整可变参数向量的取值。
为了可以基于损失函数获取到图的最大割问题的近似最优解,可以通过迭代优化可变参数向量的取值,使得第一输出值和第-数值实现迭代优化,进而实现了对于损失函数的迭代优化。
为了提高近似最优解的正确率,可以对损失函数进行迭代优化,进而获取到待分割图的最小化损失函数。通过最小化损失函数对应的可变参数向量的取值,可以获取图的最大割问题的近似最优解。
进一步地,当获取到的当前损失函数并非最小化损失函数时,可以对顶点的可变参数向量的取值进行调整优化,基于优化后的可变量参数取值获取更新后的损失函数,并判断更新后的损失函数是否为最小化损失函数。
若获取到的更新后的损失函数并非最小化损失函数,则继续对顶点的可变参数向量进行调整优化,并继续基于优化后的可变参数向量更新损失函数,直至获取到的更新后的损失函数为图的最小化损失函数,则停止调整可变参数向量的取值。
进一步地,基于最小化损失函数,获取到图的顶点对应的可以获取到最大割问题的近似最优解的可变参数向量的取值,进而获取待分割图的最大割问题的近似最优解。
本公开提供的图的分割方法,基于设定算法获取到的待分割图的最大割问题的近似分割解,确定顶点对应的可变参数向量,使得可以在已经求解出的近似分割解的基础上进行进一步地优化,有效缩短了近似最优解的获取时间,使得本公开提供的方法具有较强的通用性,通过对可变参数向量的迭代优化,获取待分割图的最小化损失函数,使得待分割图的最大割问题的求解效率得到了提高,强化了最大问题的求解的高效性。
进一步地,当待分割图为有权图时,可结合图5理解其损失函数的获取,图5为本公开另一实施例的图的分割方法的流程示意图,如图5所示,该方法包括:
S501,针对有权图中每条边连接的两个顶点,获取两个顶点各自对应的可变参数的当前取值和两个顶点之间的边权重。
有权图,由多个顶点、顶点之间的边以及每条边对应的权重组成。获取待分割的有权图后,根据其中的任一边的两个顶点,可以获取该两个顶点各自对应的可变参数的当前取值,以及两个顶点之间的边对应的边权重。
待分割的有权图的最大割问题,是为了获取可以使得有权图中的全部的被分割的边的边权重之和最大的所有顶点的标记值的组合。
设定,有权图G=(V,E),其中,V是有权图中全部的顶点的集合,E是有权图中全部的顶点之间的边的集合。则针对有权图的任一边E,可以确定两个顶点为(vi,vj),并获取两个顶点(vi,vj)之间的边的边权重wij,因此,可以将有权图的任一边表示为(vi,vj,wij)。
如图6所示,设定图6为待分割的有权图。
则如图6所示的有权图的顶点为V={v0,v1,v2,v3},顶点之间的边为E={(v0,v1,1),(v0,v2,3),(v1,v2,-1.5),(v2,v3,8)},其中,1、3、-1.5和8为各自对应的边的边权重。
S502,基于两个顶点各自对应的可变参数的当前取值和连续可导函数,获取两个顶点各自的第二输出值。
确定待分割的有权图中的每条边的两个顶点对应的可变参数的当前取值后,可以基于设定的连续可导函数,获取两个顶点各自对应的第二输出值。
其中,将两个顶点各自对应的可变参数的当前取值代入设定的连续可导函数进行计算,即可获取两个顶点各自对应的第二输出值。
在上述示例的基础上,设定顶点vi,vj对应的近似分割解为pi,pj,近似分割解pi,pj对应的随机数为qi,qj,设定对可变参数向量进行优化的连续可导函数为正弦函数sin,近似分割解对应的目标函数为正弦函数sin的反函数arcsin,则顶点vi,vj对应的可变参数的当前取值为θi=arcsin(qi),θj=arcsin(qj),则顶点(vi,vj)各自对应的第二输出值为sin(θi)和sin(θj)。
S503,将边权重与第二输出值相乘,获取第二数值。
确定两个顶点对应的第二输出值后,可以基于两个顶点对应的第二输出值以及两点之间的边的边权重,获取相应的第二数值。
进一步地,将两个顶点对应的第二输出值以及对应的边权重相乘,即可获取对应的第二数值。
在上述示例的基础上,设定对应的边权重为wij,则顶点(vi,vj)对应的第二数值为wij·sin(θi)·sin(θj)。
S504,将图中存在边的两两顶点对应的第二数值相加,获取当前损失函数。
确定待分割有权图中的全部的顶点对应的第二数值后,基于设定的公式,将第二数值代入公式即可获取待分割的有权图的当前损失函数。
在上述示例的基础上,设定第二数值为wij·sin(θi)·sin(θj),则当前损失函数L(θ)的计算公式如下:
进一步地,通过对顶点对应的可变参数向量的迭代优化,可以获取到待分割有权图的最小化损失函数,进而获取最小化损失函数对应的可变参数向量的取值,基于该取值可以获取待分割有权图的最大割问题的近似最优解。
本公开提供的图的分割方法,基于设定算法获取到的待分割图的最大割问题的近似分割解,确定顶点对应的可变参数向量,使得可以在已经求解出的近似分割解的基础上进行进一步地优化,有效缩短了近似最优解的获取时间,使得本公开提供的方法具有较强的通用性,基于待分割有权图中的顶点对应的当前取值、设定的连续可导函数以及损失函数的设定公式,获取到待分割有权图的当前损失函数,使得后续可以基于对应的当前取值的迭代获取待分割有权图的最小化损失函数,进而实现有权图的最大割问题的近似最优解的获取,提高了待分割有权图的最大割问题的求解效率,强化了最大问题的求解的高效性。
在上述实施例的基础上,获取图的被分割的边数可以结合图7进一步地理解,图7为本公开另一实施例的图的分割方法的流程示意图,如图7所示,该方法包括:
S701,针对任一顶点,基于任一顶点对应的目标值,确定任一顶点的离散标记值。
对于待分割图中被分割的边的判断,可以基于每条边的两个顶点对应的标记值的乘积实现,该标记值的取值为1或者-1。因此,在获取待分割图的最小化损失函数对应的顶点对应的可变参数向量后,需要基于设定的方法,确定顶点对应的取值为1或者-1的离散标记值。
可选地,可以获取设定的连续可导函数,将基于最小化损失函数获取的顶点对应的可变参数向量代入其中,进而实现顶点对应的离散标记值的确定。
比如,设定连续可导函数为f,基于最小化损失函数获取的顶点vi对应的可变参数向量为θi,将θi代入f进行计算。进一步地,当f(θi)≥0时,则可以将顶点vi的离散标记值确定为1;当f(θi)<0时,则可以将顶点vi的离散标记值确定为-1。
进一步地,以任一顶点对应的目标值为变量输入连续可导函数中,输出目标值对应的目标输出值。
本公开实施例中,待分割图中的顶点对应的目标值,可以理解为,最小化损失函数对应的顶点的可变参数向量的取值。将该取值代入设定的连续可导函数中,即可获取目标值对应的目标输出值。
设定,基于最小化损失函数获取到的顶点vi对应的目标值为连续可导函数为正弦函数sin,则将顶点vi对应的目标值/>代入正弦函数sin后,可以基于计算获取目标值对应的目标输出值/>
进一步地,基于连续可导函数的计算的目标值对应的目标输出值,可以实现顶点对应的离散标记值的确定。
可选地,响应于目标输出值大于或者等于0,则确定任一顶点的离散标记值为1。
可以理解为,当时,则可以将顶点vi的离散标记值确定为1。
可选地,响应于目标输出值小于0,则确定任一顶点的离散标记值为-1。
可以理解为,当时,则可以将顶点vi的离散标记值确定为-1。
S702,获取与任一顶点存在连线的所有关联顶点,并获取任一顶点与每个关联顶点之间离散标记值的乘积。
确定待分割图的全部的顶点对应的离散标记值后,可以基于任一边上的两个顶点各自对应的离散标记值的乘积,判断待分割图中的每条边是否被分割。
在待分割图中,与任一顶点之间存在连线的顶点可以确定为该顶点的关联顶点,进一步地,确定任一顶点对应的全部的关联顶点后,即可获取待分割图中全部的顶点与其关联顶点之间的乘积。
其中,由于每个顶点的离散标记值的取值为1或者-1,因此,待分割图中任一边上的两个顶点之间的乘积为1或者-1。
S703,基于乘积,确定任一顶点被割开的边数。
本公开实施例中,基于任一边上的两个顶点的离散标记值的乘积结果,可以判断两个顶点的离散标记值是否相同,进而确定两个顶点之间的边是否被分割。
其中,当两个顶点的乘积等于-1时,可以理解为,两个点的离散标记值的取值是不同的,其中一个顶点的离散标记值为1,另一个顶点的离散标记值为-1。该情况下,两个顶点之间的边可以确定为被分割。
相应地,当两个顶点的乘积等于1时,可以理解为,两个点的离散标记值的取值是相同的,当其中一个顶点的离散标记值为1时,另一个顶点的离散标记值也为1,或者,当其中一个顶点的离散标记值为-1时,另一个顶点的离散标记值也为-1。该情况下,两个顶点之间的边可以确定为不被分割。
进一步地,获取待分割图中的任一顶点的离散标记值以及与该顶点相连接的边被分割的数量,进而确定待分割图的最大割问题的近似最优解。
本公开提供的图的分割方法,通过每个顶点对应的目标值进而确定每个顶点对应的离散标记值,进一步地,基于任一顶点与其关联顶点之间的离散标记值的乘积,进而获取待分割图中任一顶点的离散标记值以及与该顶点相连接的边被分割的数量,并将其作为图的最大割问题的近似最优解。通过顶点对应的目标值确定其对应的离散标记值,有效降低了离散标记值的获取难度,提高了图的最大割问题的求解效率,增强了最大割问题的实用性,强化了最大割问题的求解的高效性。
为了更好的理解上述实施例,可结合图8,图8为本公开另一实施例的图的分割方法的流程示意图,如图8所示,该方法包括:
S801,获取待分割图,并基于设定算法求解待分割图的最大割问题的近似分割解向量,并基于获取到的近似分割解向量,确定待分割图中顶点对应的可变参数向量。
S802,基于待分割图中顶点的可变参数向量,获取待分割图的损失函数。
S803,对顶点的可变参数向量进行迭代优化,进而获取待分割图的最小化损失函数。
S804,基于最小化损失函数确定顶点的可变参数向量的目标值。
S805,基于任一顶点的可变参数的目标值确定任一顶点的离散标记值。
S806,确定待分割图中与任一顶点之间存在连线的所有关联顶点,并获取任一顶点与全部的关联顶点之间,每两个顶点的标记离散值的乘积。
S808,基于乘积确定待分割图中被分割的边的边数。
本公开提供的图的分割方法,基于设定算法求解待分割图的最大割问题的近似分割解向量,并基于获取到的近似分割解向量,确定待分割图中顶点对应的可变参数向量。基于待分割图中顶点对应的可变参数向量,进而获取待分割图的损失函数。通过对顶点的可变参数向量的迭代优化,获取待分割图的最小化损失函数,并基于最小化损失函数,获取待分割图中每个顶点的可变参数的目标值。进一步地,基于每个顶点的目标值确定每个顶点对应的离散标记值,进而通过待分割图中任一顶点与其关联顶点的两个顶点对应的离散标记值的乘积,获取待分割图中的任一顶点的离散标记值以及与该顶点相连接的边被分割的数量。本公开中,基于设定算法获取到的待分割图的最大割问题的近似分割解,确定顶点对应的可变参数向量,使得可以在已经求解出的近似分割解的基础上进行进一步地优化,有效缩短了近似最优解的获取时间,得本公开提供的方法具有较强的通用性,通过对顶点对应的可变参数向量的迭代优化,进而获取到顶点的离散标记值,将图的最大割问题转化成了可变参数向量的优化问题,有效降低了最大割问题的求解难度,进而提高了最大割问题的求解效率,增强了最大割问题的实用性,强化了最大割问题的求解的高效性。
与上述几种实施例提供的图的分割方法相对应,本公开的一个实施例还提供了一种图的分割装置,由于本公开实施例提供的图的分割装置与上述几种实施例提供的图的分割方法相对应,因此上述图的分割方法的实施方式也适用于本公开实施例提供的图的分割装置,在下述实施例中不再详细描述。
图9为本公开一实施例的图的分割装置的结构示意图,如图9所示,图的分割装置900,包括获取模块91、求解模块92、迭代模块93、计算模块94、确定模块95,其中:
获取模块91,用于获取待分割的图,其中,图包括多个顶点和顶点之间的边;
求解模块92,用于对待分割图进行分割,以获取顶点的近似分割解向量,并根据近似分割解向量,初始化顶点的可变参数向量;
迭代模块93,用于根据图的可变参数向量,迭代出图的最小化损失函数;
计算模块94,用于获取每个顶点在最小化损失函数的生成时刻对应的可变参数向量的目标值;
确定模块95,用于针对每个顶点,根据顶点对应的目标值,确定顶点被割开的边数。
图10为本公开一实施例的图的分割装置的结构示意图,如图10所示,图的分割装置1000,包括获取模块11、求解模块12、迭代模块13、计算模块14、确定模块15,其中:
需要说明的是,获取模块91、求解模块92、迭代模块93、计算模块94、确定模块95与获取模块11、求解模块12、迭代模块13、计算模块14、确定模块15,具有相同的结构和功能。
本公开实施例中,求解模块12,还用于:获取近似分割解向量中每个元素的取值;根据元素的取值所处的区间,确定元素对应的随机数,其中,随机数为元素所处区间内的数值;根据元素对应的随机数和目标函数,确定元素对应的可变参数的初始值。
本公开实施例中,迭代模块13,还用于:从初始的可变参数向量开始,根据可变参数向量的当前取值,获取当前损失函数;响应于当前损失函数为未最小化,则调整可变参数向量的取值;基于调整后的可变参数向量的取值,更新损失函数,直至更新后的损失函数为最小化损失函数停止继续调整可变参数向量的取值。
本公开实施例中,迭代模块13,还用于:针对图中每条边连接的两个顶点,基于两个顶点各自对应的当前取值和连续可导函数,获取两个顶点各自的第一输出值;将两个顶点各自的第一输出值相乘,获取第一数值;将图中存在边的两两顶点对应的第一数值相加,获取当前损失函数。
本公开实施例中,迭代模块13,还用于:针对有权图中每条边连接的两个顶点,获取两个顶点各自对应的当前取值和两个顶点之间的边权重;基于两个顶点各自对应的当前取值和连续可导函数,获取两个顶点各自的第二输出值;将边权重与第二输出值相乘,获取第二数值;将图中存在边的两两顶点对应的第二数值相加,获取当前损失函数。
本公开实施例中,确定模块15,还用于:针对任一顶点,基于任一顶点对应的目标值,确定任一顶点的离散标记值;获取与任一顶点存在连线的所有关联顶点,并获取任一顶点与每个关联顶点之间离散标记值的乘积;基于乘积,确定任一顶点被割开的边数。
本公开实施例中,确定模块15,还用于:以任一顶点的目标值为变量输入连续可导函数中,输出目标值对应的目标输出值;响应于目标输出值大于或者等于0,则确定任一顶点的离散标记值为1;响应于目标输出值小于0,则确定任一顶点的离散标记值为-1。
本公开实施例中,连续可导函数满足以下条件:连续可导函数的输出值处于[-1,1]之间。
本公开提供的图的分割装置,基于设定算法求解待分割图的最大割问题的近似分割解向量,并基于获取到的近似分割解向量,确定待分割图中顶点对应的可变参数向量。基于待分割图中顶点对应的可变参数向量,进而获取待分割图的损失函数。通过对顶点的可变参数向量的迭代优化,获取待分割图的最小化损失函数,并基于最小化损失函数,获取待分割图中每个顶点的可变参数的目标值。进一步地,基于每个顶点的目标值确定每个顶点对应的离散标记值,进而通过待分割图中任一顶点与其关联顶点的两个顶点对应的离散标记值的乘积,获取待分割图中的任一顶点的离散标记值以及与该顶点相连接的边被分割的数量。本公开中,基于设定算法获取到的待分割图的最大割问题的近似分割解,确定顶点对应的可变参数向量,使得可以在已经求解出的近似分割解的基础上进行进一步地优化,有效缩短了近似最优解的获取时间,得本公开提供的方法具有较强的通用性,通过对顶点对应的可变参数向量的迭代优化,进而获取到顶点的离散标记值,将图的最大割问题转化成了可变参数向量的优化问题,有效降低了最大割问题的求解难度,进而提高了最大割问题的求解效率,增强了最大割问题的实用性,强化了最大割问题的求解的高效性。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图11示出了可以用来实施本公开的实施例的示例电子设备1100的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图11所示,设备1100包括计算单元1101,其可以根据存储在只读存储器(ROM)1102中的计算机程序或者从存储单元11011加载到随机访问存储器(RAM)1103中的计算机程序,来执行各种适当的动作和处理。在RAM 1103中,还可存储设备1100操作所需的各种程序和数据。计算单元1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
设备1100中的多个部件连接至I/O接口1105,包括:输入单元1106,例如键盘、鼠标等;输出单元1107,例如各种类型的显示器、扬声器等;存储单元11011,例如磁盘、光盘等;以及通信单元1109,例如网卡、调制解调器、无线通信收发机等。通信单元1109允许设备1100通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1101可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1101的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1101执行上文所描述的各个方法和处理,例如图的分割方法。例如,在一些实施例中,图的分割方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元11011。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1102和/或通信单元1109而被载入和/或安装到设备1100上。当计算机程序加载到RAM 1103并由计算单元1101执行时,可以执行上文描述的图的分割方法的一个或多个步骤。备选地,在其他实施例中,计算单元1101可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行图的分割方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (18)
1.一种图的分割方法,包括:
获取待转化的集成电路,并根据所述集成电路中的多个交叉线路得到多个顶点,以及,根据不交叉线路得到所述顶点之间的边,以得到所述集成电路对应的待分割图;
对所述待分割图进行分割,以获取所述顶点的近似分割解向量和所述近似分割解向量中每个元素的随机数,并根据所述随机数和所述随机数的目标函数,初始化所述顶点的可变参数向量;
针对所述图中每条边连接的两个顶点,获取所述图的所述可变参数向量的当前取值和连续可导函数,并根据所述连续可导函数和所述两个顶点各自的当前取值,获取所述两个顶点的第一数值,以得到所述图的当前损失函数,并根据所述当前损失函数迭代出所述图的最小化损失函数;
获取每个所述顶点在所述最小化损失函数的生成时刻对应的所述可变参数向量的目标值;
针对任一顶点,以其目标值为变量输入所述连续可导函数中,输出所述目标值对应的目标输出值;根据所述目标输出值确定任一顶点的离散标记值;基于所述任一顶点的离散标记值与所述任一顶点的关联顶点的离散标记值,确定所述任一顶点被割开的边数,所述关联顶点为所述任一顶点存在连线的顶点。
2.根据权利要求1所述的方法,其中,所述对所述待分割图进行分割,以获取所述顶点的近似分割解向量和所述近似分割解向量中每个元素的随机数,并根据所述随机数和所述随机数的目标函数,初始化所述顶点的可变参数向量,包括:
获取所述近似分割解向量中每个元素的取值;
根据所述元素的取值所处的区间,确定所述元素对应的随机数,其中,所述随机数为所述元素所处区间内的数值;
根据所述目标函数对所述随机数进行计算,确定所述元素对应的可变参数的初始值。
3.根据权利要求1所述的方法,其中,所述针对所述图中每条边连接的两个顶点,获取所述图的所述可变参数向量的当前取值和连续可导函数,并根据所述连续可导函数和所述两个顶点各自的当前取值,获取所述两个顶点的第一数值,以得到所述图的当前损失函数,并根据所述当前损失函数迭代出所述图的最小化损失函数,包括:
响应于所述当前损失函数为未最小化,调整所述可变参数向量的取值;
基于调整后的所述可变参数向量的取值,更新所述损失函数,直至更新后的损失函数为所述最小化损失函数停止继续调整所述可变参数向量的取值。
4.根据权利要求3所述的方法,其中,所述针对所述图中每条边连接的两个顶点,获取所述图的所述可变参数向量的当前取值和连续可导函数,并根据所述连续可导函数和所述两个顶点各自的当前取值,获取所述两个顶点的第一数值,以得到所述图的当前损失函数,并根据所述当前损失函数迭代出当前损失函数,包括:
针对所述图中每条边连接的两个顶点,基于所述两个顶点各自对应的所述当前取值和连续可导函数,获取所述两个顶点各自的第一输出值;
将所述两个顶点各自的第一输出值相乘,获取第一数值;
将所述图中存在边的两两顶点对应的所述第一数值相加,获取所述当前损失函数。
5.根据权利要求4所述的方法,其中,所述图为有权图,所述方法还包括:
针对所述有权图中每条边连接的两个顶点,获取所述两个顶点各自对应的所述当前取值和所述两个顶点之间的边权重;
基于所述两个顶点各自对应的所述当前取值和连续可导函数,获取所述两个顶点各自的第二输出值;
将所述边权重与所述第二输出值相乘,获取第二数值;
将所述图中存在边的两两顶点对应的所述第二数值相加,获取所述当前损失函数。
6.根据权利要求1-5任一项所述的方法,其中,所述针对任一顶点,以其目标值为变量输入所述连续可导函数中,输出所述目标值对应的目标输出值;根据所述目标输出值确定任一顶点的离散标记值;基于所述任一顶点的离散标记值与所述任一顶点的关联顶点的离散标记值,确定所述任一顶点被割开的边数,所述关联顶点为所述任一顶点存在连线的顶点,包括:
针对任一顶点,获取所述任一顶点与每个所述关联顶点之间离散标记值的乘积,并基于所述乘积,确定所述任一顶点被割开的边数,所述关联顶点为所述任一顶点存在连线的顶点。
7.根据权利要求6所述的方法,其中,所述基于所述任一顶点对应的所述目标值,确定所述任一顶点的离散标记值,包括:
以所述任一顶点的所述目标值为变量输入连续可导函数中,输出所述目标值对应的目标输出值;
响应于所述目标输出值大于或者等于0,则确定所述任一顶点的离散标记值为1;
响应于所述目标输出值小于0,则确定所述任一顶点的离散标记值为-1。
8.根据权利要求7所述的方法,其中,所述连续可导函数满足以下条件:
所述连续可导函数的输出值处于[-1,1]之间。
9.一种图的分割装置,包括:
获取模块,用于获取待转化的集成电路,并根据所述集成电路中的多个交叉线路得到多个顶点,以及,根据不交叉线路得到所述顶点之间的边,以得到所述集成电路对应的待分割图;
求解模块,用于对所述待分割图进行分割,以获取所述顶点的近似分割解向量和所述近似分割解向量中每个元素的随机数,并根据所述随机数和所述随机数的目标函数,初始化所述顶点的可变参数向量;
迭代模块,用于针对所述图中每条边连接的两个顶点,获取所述图的所述可变参数向量的当前取值和连续可导函数,并根据所述连续可导函数和所述两个顶点各自的当前取值,获取所述两个顶点的第一数值,以得到所述图的当前损失函数,并根据所述当前损失函数迭代出所述图的最小化损失函数;
计算模块,用于获取每个所述顶点在所述最小化损失函数的生成时刻对应的所述可变参数向量的目标值;
确定模块,用于针对任一顶点,以其目标值为变量输入所述连续可导函数中,输出所述目标值对应的目标输出值;根据所述目标输出值确定任一顶点的离散标记值;基于所述任一顶点的离散标记值与所述任一顶点的关联顶点的离散标记值,确定所述任一顶点被割开的边数,所述关联顶点为所述任一顶点存在连线的顶点。
10.根据权利要求9所述的装置,其中,所述求解模块,还用于:
获取所述近似分割解向量中每个元素的取值;
根据所述元素的取值所处的区间,确定所述元素对应的随机数,其中,所述随机数为所述元素所处区间内的数值;
根据所述目标函数对所述随机数进行计算,确定所述元素对应的可变参数的初始值。
11.根据权利要求9所述的装置,其中,所述迭代模块,还用于:
响应于所述当前损失函数为未最小化,则调整所述可变参数向量的取值;
基于调整后的所述可变参数向量的取值,更新所述损失函数,直至更新后的损失函数为所述最小化损失函数停止继续调整所述可变参数向量的取值。
12.根据权利要求11所述的装置,其中,所述迭代模块,还用于:
针对所述图中每条边连接的两个顶点,基于所述两个顶点各自对应的所述当前取值和连续可导函数,获取所述两个顶点各自的第一输出值;
将所述两个顶点各自的第一输出值相乘,获取第一数值;
将所述图中存在边的两两顶点对应的所述第一数值相加,获取所述当前损失函数。
13.根据权利要求12所述的装置,其中,所述图为有权图,所述迭代模块,还用于:
针对所述有权图中每条边连接的两个顶点,获取所述两个顶点各自对应的所述当前取值和所述两个顶点之间的边权重;
基于所述两个顶点各自对应的所述当前取值和连续可导函数,获取所述两个顶点各自的第二输出值;
将所述边权重与所述第二输出值相乘,获取第二数值;
将所述图中存在边的两两顶点对应的所述第二数值相加,获取所述当前损失函数。
14.根据权利要求9-13任一项所述的装置,其中,所述确定模块,还用于:
针对任一顶点,获取所述任一顶点与每个所述关联顶点之间离散标记值的乘积,并基于所述乘积,确定所述任一顶点被割开的边数,所述关联顶点为所述任一顶点存在连线的顶点。
15.根据权利要求14所述的装置,其中,所述确定模块,还用于:
以所述任一顶点的所述目标值为变量输入连续可导函数中,输出所述目标值对应的目标输出值;
响应于所述目标输出值大于或者等于0,则确定所述任一顶点的离散标记值为1;
响应于所述目标输出值小于0,则确定所述任一顶点的离散标记值为-1。
16.根据权利要求15所述的装置,其中,所述连续可导函数满足以下条件:所述连续可导函数的输出值处于[-1,1]之间。
17.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法。
18.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110686730.1A CN113591906B (zh) | 2021-06-21 | 2021-06-21 | 图的分割方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110686730.1A CN113591906B (zh) | 2021-06-21 | 2021-06-21 | 图的分割方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113591906A CN113591906A (zh) | 2021-11-02 |
CN113591906B true CN113591906B (zh) | 2024-06-04 |
Family
ID=78244182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110686730.1A Active CN113591906B (zh) | 2021-06-21 | 2021-06-21 | 图的分割方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113591906B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6434721B1 (en) * | 2000-04-03 | 2002-08-13 | Motorola, Inc. | Method and apparatus for constraint graph based layout compaction for integrated circuits |
CN102902772A (zh) * | 2012-09-27 | 2013-01-30 | 福建师范大学 | 一种基于多目标优化的Web社区发现方法 |
CN111488966A (zh) * | 2019-01-29 | 2020-08-04 | 慧与发展有限责任合伙企业 | 用于求解np难/np完全问题的分级神经网络 |
CN112131515A (zh) * | 2019-06-25 | 2020-12-25 | 富士通株式会社 | 将高阶多项式转换成二次多项式的方法和计算机可读介质 |
CN112862933A (zh) * | 2021-02-04 | 2021-05-28 | 北京百度网讯科技有限公司 | 用于优化模型的方法、装置、设备以及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190391807A1 (en) * | 2018-06-20 | 2019-12-26 | Fujitsu Limited | Computer-readable recording medium storing optimization problem computing program and optimization problem computing system |
US11132422B2 (en) * | 2019-06-20 | 2021-09-28 | Fujitsu Limited | Automating solving NP problems in annealer systems |
-
2021
- 2021-06-21 CN CN202110686730.1A patent/CN113591906B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6434721B1 (en) * | 2000-04-03 | 2002-08-13 | Motorola, Inc. | Method and apparatus for constraint graph based layout compaction for integrated circuits |
CN102902772A (zh) * | 2012-09-27 | 2013-01-30 | 福建师范大学 | 一种基于多目标优化的Web社区发现方法 |
CN111488966A (zh) * | 2019-01-29 | 2020-08-04 | 慧与发展有限责任合伙企业 | 用于求解np难/np完全问题的分级神经网络 |
CN112131515A (zh) * | 2019-06-25 | 2020-12-25 | 富士通株式会社 | 将高阶多项式转换成二次多项式的方法和计算机可读介质 |
CN112862933A (zh) * | 2021-02-04 | 2021-05-28 | 北京百度网讯科技有限公司 | 用于优化模型的方法、装置、设备以及存储介质 |
Non-Patent Citations (2)
Title |
---|
Semidefinite Relaxations, Multivariate Normal Distributions, and Order Statistics;Dimitris Bertsimas 等;《Handbook of Combinatorial Optimization 》;1473–1491 * |
最大割问题和最大平分割问题基于半定规划松弛的近似算法;孙婷;李改弟;徐文青;;运筹学学报(03);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113591906A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Matsubara et al. | Distilled split deep neural networks for edge-assisted real-time systems | |
CN112784778B (zh) | 生成模型并识别年龄和性别的方法、装置、设备和介质 | |
CN112562069B (zh) | 三维模型的构造方法、装置、设备和存储介质 | |
CN113313053B (zh) | 图像处理方法、装置、设备、介质及程序产品 | |
CN113591918B (zh) | 图像处理模型的训练方法、图像处理方法、装置和设备 | |
EP4318313A1 (en) | Data processing method, training method for neural network model, and apparatus | |
CN113538235A (zh) | 图像处理模型的训练方法、装置、电子设备及存储介质 | |
CN115147680B (zh) | 目标检测模型的预训练方法、装置以及设备 | |
CN113947188A (zh) | 目标检测网络的训练方法和车辆检测方法 | |
CN114693934A (zh) | 语义分割模型的训练方法、视频语义分割方法及装置 | |
CN115631381A (zh) | 分类模型训练方法、图像分类方法、装置及电子设备 | |
CN115880435A (zh) | 图像重建方法、模型训练方法、装置、电子设备和介质 | |
CN113361717B (zh) | 量子态数据处理模型的训练方法、装置、电子设备及介质 | |
CN113554057B (zh) | 图的分割方法、装置及电子设备 | |
CN113591906B (zh) | 图的分割方法、装置及电子设备 | |
CN115272705B (zh) | 显著性物体检测模型的训练方法、装置以及设备 | |
CN116596750A (zh) | 一种点云处理方法、装置、电子设备及存储介质 | |
US20220156420A1 (en) | Techniques for generating visualizations of geometric style gradients | |
CN114925076A (zh) | 地图数据的更新方法、装置、电子设备和存储介质 | |
CN114943995A (zh) | 人脸识别模型的训练方法、人脸识别方法及装置 | |
CN114913339A (zh) | 特征图提取模型的训练方法和装置 | |
Timchenko et al. | Processing laser beam spot images using the parallel-hierarchical network for classification and forecasting their energy center coordinates | |
CN113688920A (zh) | 模型训练及目标检测方法、装置、电子设备以及路侧设备 | |
CN113935482A (zh) | 一种行人再识别网络的训练方法及装置 | |
CN113610856A (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 |