一种基于孪生网络的房屋布局方法及系统转让专利

申请号 : CN202010070609.1

文献号 : CN111274641B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈旋吕成云黄书贤

申请人 : 江苏艾佳家居用品有限公司南京艾小宝智能科技有限公司

摘要 :

本发明公开了一种基于孪生网络的房屋布局评分器训练方法。该方法首先针对训练集过小,将大师设计好的房屋布局方案进行微调,对家具进行适当地平移、旋转、缩放及增减得到更多的训练数据;其次,将数据集进行正负集划分,正样本集为大师的布局方案,负样本集为微调后的布局方案;最后,提取数据在不同维度的特征,依此输入到孪生网络中进行训练,最终可以得到某一方案的综合得分。

权利要求 :

1.一种基于孪生网络的房屋布局方法,其特征在于,包括如下步骤:

第1步,获得房屋布局设计图的样本集,作为训练样本,将其中的设计图根据设计效果分类为合理设计图与不合理设计图;

第2步,采用多示例学习的方法将合理设计图与不合理设计图进行训练样本的划分,一个训练样本中所有的设计图都是合理设计图时,该样本为正样本,一个训练样本中至少有一个设计图是不合理样本时,该样本为负样本;

第3步,将正样本和负样本分别输入至孪生网络中,孪生网络的输出值为正样本与负样本之间的分差值;并对孪生网络进行训练;

第4步,采用待评价的设计图输入至训练好的孪生网络中的任意一个网络模型中,得到输出值;将输出值作为该设计图的得分;

第3步中的孪生网络计算过程是:将正样本和负样本进行特征提取后,再对提取后的数据进行编码,并将编码得到的向量分别输入至两个孪生网络中,两个孪生网络相互之间共享权重;分差值Ew是通过以下方式计算得到:EW(X1,X2)=‖GW(X1)‑GW(X2)‖

孪生神经网络的损失函数L定义为:

i i i

L(W,(Y,X1,X2))=(1‑Y)LG(EW(X1,X2))+YLI(EW(X1,X2))其中,X1,X2分别为两个孪生网络的输入的经过特征提取后的数据,GW(X)为模型,其中W表示模型参数,GW模型用于将输入数据X转换为一组特征向量;Ew计算出两个特征向量之间的L1距离;Y表示X1,X2是否属于同一类:若为同一类,则为0,否则为1;i表示当前样本的下标;LG表示两个样本为同类时的损失函数,LI表示两个样本为不同类时的损失函数。

2.根据权利要求1所述的基于孪生网络的房屋布局方法,其特征在于,正样本和负样本中的户型图需要经过特征提取后再输入至孪生网络中。

3.根据权利要求1所述的基于孪生网络的房屋布局方法,其特征在于,编码中包含了:

1)门窗墙的位置和大小;2)家具的类别、位置、大小和旋转角度。

4.根据权利要求1所述的基于孪生网络的房屋布局方法,其特征在于,在孪生网络的训练过程中,孪生网络的输出值的标记是:正样本与负样本之间的分差值为1,正样本与正样本之间的分差值为0。

5.根据权利要求1所述的基于孪生网络的房屋布局方法,其特征在于,第1步中,样本集的获得方式是:获得优秀的设计图,并对优秀的设计图中的家具位置进行调整后,得到一系列的调整后的设计图;将优秀的设计图定义为合理的设计,并对调整后的设计图进行人工评价,分类为合理设计图与不合理设计图。

6.根据权利要求1所述的基于孪生网络的房屋布局方法,其特征在于,位置进行调整包括:移动、旋转或缩放。

7.根据权利要求6所述的基于孪生网络的房屋布局方法,其特征在于,对家具位置进行调整时,当存在着相互依存关系的家具组合时,将家具组合作为一个整体进行位置调整。

说明书 :

一种基于孪生网络的房屋布局方法及系统

技术领域

[0001] 本发明涉及一种基于孪生网络的房屋布局评分器训练方法。

背景技术

[0002] 在房屋自动布局的过程中,通常需要评估布局结果的好坏,因此房屋布局评分器就显得很重要。
[0003] 然而在现有技术中,通常是由设计师进行人工审核,判断自动生成的布局是否符合相关的用户需要,导致了这一过程耗时费力,并且会受到较多的主观的影响。

发明内容

[0004] 基于上述问题,本发明提出了一种基于孪生网络的房屋布局评分器训练方法。首先,针对训练集过小且缺乏负样本,将大师设计好的房屋布局方案进行微调,对家具进行适当地平移、旋转、缩放及增减得到更多的训练数据;其次,将数据集进行正负集划分,正样本集为大师的布局方案,负样本集为微调后的布局方案;最后,提取数据在不同维度的特征,依此输入到孪生网络中进行训练,最终可以得到某一方案的综合得分。
[0005] 一种基于孪生网络的房屋布局方法,包括如下步骤:
[0006] 第1步,获得房屋布局设计图的样本集,作为训练样本,将其中的设计图根据设计效果分类为合理设计图与不合理设计图;
[0007] 第2步,采用多示例学习的方法将合理设计图与不合理设计图进行训练样本的划分,一个训练样本中所有的设计图都是合理设计图时,该样本为正样本,一个训练样本中至少有一个设计图是不合理样本时,该样本为负样本;
[0008] 第3步,将正样本和负样本分别输入至孪生网络中,孪生网络的输出值为正样本与负样本之间的分差值;并对孪生网络进行训练;
[0009] 第4步,采用待评价的设计图输入至训练好的孪生网络中的任意一个网络模型中,得到输出值;将输出值作为该设计图的得分。
[0010] 在一个实施方式中,正样本和负样本中的户型图需要经过特征提取后再输入至孪生网络中。
[0011] 在一个实施方式中,第3步中的孪生网络计算过程是:将正样本和负样本进行特征提取后,再对提取后的数据进行编码,并将编码得到的向量分别输入至两个孪生网络中,两个孪生网络相互之间共享权重;分差值是通过以下方式计算得到:
[0012] EW(X1,X2)=||GW(X1)‑GW(X2)||
[0013] 其中,X1,X2分别为两个孪生网络的输入的经过特征提取后的数据,GW(X)为模型,其中W表示模型参数,GW的作用就是将输入数据X转换为一组特征向量;Ew计算出两个特征向量之间的L1距离。
[0014] 在一个实施方式中,孪生神经网络的损失函数定义为:
[0015]
[0016] L(W,(Y,X1,X2)i)=(1‑Y)LG(EW(X1,X2)i)+YLI(EW(X1,X2)i)[0017] 其中,Y表示X1,X2是否属于同一类:若为同一类,则为0,否则为1;P表示输入的总样本数,i表示当前样本的下标;LG表示两个样本为同类时的损失函数,LI表示两个样本为不同类时的损失函数。
[0018] 在一个实施方式中,编码中包含了:1)门窗墙的位置和大小;2)家具的类别、位置、大小和旋转角度。
[0019] 在一个实施方式中,在孪生网络的训练过程中,孪生网络的输出值的标记是:正样本与负样本之间的分差值为1,正样本与正样本之间的分差值为0。
[0020] 在一个实施方式中,第1步中,样本集的获得方式是:获得优秀的设计图,并对优秀的设计图中的家具位置进行调整后,得到一系列的调整后的设计图;将优秀的设计图定义为合理的设计,并对调整后的设计图进行人工评价,分类为合理设计图与不合理设计图。
[0021] 在一个实施方式中,位置进行调整包括:移动、旋转或缩放。
[0022] 在一个实施方式中,对家具位置进行调整时,当存在着相互依存关系的家具组合时,将家具组合作为一个整体进行位置调整。
[0023] 一种基于孪生网络的房屋布局系统,包括:
[0024] 户型图获取模块,用于获得房屋布局设计图的样本集,作为训练样本,将其中的设计图根据设计效果分类为合理设计图与不合理设计图;
[0025] 样本集生成模块,用于采用多示例学习的方法将合理设计图与不合理设计图进行训练样本的划分,一个训练样本中所有的设计图都是合理设计图时,该样本为正样本,一个训练样本中至少有一个设计图是不合理样本时,该样本为负样本;
[0026] 孪生网络模块,用于将正样本和负样本分别输入至孪生网络中,孪生网络的输出值为正样本与负样本之间的分差值;并对孪生网络进行训练;
[0027] 评分模块,用于采用待评价的设计图输入至训练好的孪生网络模块中的任意一个网络模型中,得到输出值;将输出值作为该设计图的得分。
[0028] 有益效果
[0029] 本发明提供的方案可以在优秀设计的基础上,训练得到孪生神经网络,并可以用于对新设计进行评分,评定其设计方案的得分。

附图说明

[0030] 图1为本发明所述方法的流程示意图。
[0031] 图2为本发明所述方法中的主家具划分的示意图。
[0032] 图3为本发明所述方法中的方案微调示意图。
[0033] 图4为本发明所述方法中的孪生网络示意图。
[0034] 图5为本发明所述方法中的孪生网络结构参数示意图

具体实施方式

[0035] 本发明公开了一种基于孪生网络的房屋布局评分器训练方法。该方法首先针对训练集过小,将大师设计好的房屋布局方案进行微调,对家具进行适当地平移、旋转、缩放及增减得到更多的训练数据;其次,将数据集进行正负集划分,正样本集为大师的布局方案,负样本集为微调后的布局方案;最后,提取数据在不同维度的特征,依此输入到孪生网络中进行训练,最终可以得到某一方案的综合得分。
[0036] 本发明的方法详述如下:
[0037] 第1步,将大师设计好的房屋布局方案进行微调增加训练样本集;
[0038] 本发明中的大师设计好的房屋布局,指的是经过了优秀设计师进行设计得到的、受用户认可度较高的样板设计,因此,将这些作为训练样本生成以及评分中的标准样本。由于这些样本通常数量并不是非常多,因此,在训练评分网络时,还需要自动地生成一些其它的样本进行补充,那么其它的样本可以通过将这些大师优秀样本中的布局进行适当地变换而得到。
[0039] 通常,在一个房间的布局中,会包含有多种家具,我们将布局中的家具分为主家具和次家具,主家具一般是指具有较强的功能性的、体积较大的家具,而次家具一般是指功能性不强、起到装饰作用的家具;特别的,我们将功能性相同、有相互依赖的家具作为一个整体进行微调。图2是卧室主家具划分的示意图。如图所示,床和床头柜的整体作为睡眠的主家具,沙发与茶几之间作为一个整体进行微调,衣柜作为储物的主家具,而电视柜作为视听的主家具。在微调的过程中,我们在一定范围内移动、旋转、缩放主家具,并删除和增加一些次家具,以得到不同的布局方案。一次可以移动、旋转、缩放一个或多个家具。图3是在图2基础上微调得到的部分布局方案示例。
[0040] 第2步,将数据集进行正负集划分;
[0041] 在通过上述的调整方法后,生成了一系列的调整后的布局方案,因此,需要将布局方案标记为正样本和负样本。我们认为通过微调得到的数据可能存在合理的方案也存在大量不合理的方案,因此我们使用多示例学习的方法,将一个布局方案作为一个示例,而一个训练样本包含了多个示例,即样本和示例是一对多的对应关系。我们定义:若一个样本中所有示例都为合理的布局,则该样本为正;若一个样本中,至少有一个示例为不合理布局,则该样本为负样本。采用多示例学习的方法,可以减小样本噪声,在本发明中可以有效地提高模型的学习效果。
[0042] 因此,对于由多个设计师方案构成的样本,我们将其定义为正样本;而将通过自动调整生成的方案中,将其随机打乱,由若干个示例组成一个样本,若其中含有不合理布局示例,则将这个样本设为负样本;将上述的样本输入至孪生神经网络中进行训练。
[0043] 第3步,提取数据在不同维度的特征,分别输入到不同的孪生网络中进行训练。
[0044] 在确定了样本之后,需要对其进行编码,在本发明中,采用以房间为单位来设定,首先,我们提取方案整体的特征。我们以房间为单位,生成多张特征图来对布局方案进行编码。比如,用不同的颜色表示门、窗、墙以及不同家具的位置、大小信息;将家具的类别、旋转等信息进行编码等。
[0045] 其次,我们考虑每个主家具在当前布局中的特征。如卧室中的床,可以考虑其是否靠墙、靠近其最近的家具类别、其周围的活动区域大小(即与其他家具的举例)等,并进行编码。
[0046] 通过上述的编码过程后,可以将每个样本中的示例设计方案向量化,便可以使正样本和负样本都输入至孪生神经网络中进行训练,孪生神经网络可以将获得的编码向量计算出两者之间的分差,并判断出分差与设定的分差值的相近程度。分差的计算如下所示:
[0047] 图4是孪生网络示意图,两个网络结构完全一样且共享权重,用来计算两个输入的相似程度。我们将两个样本分别输入到两个网络中,将两者的输出做差并与我们设置的分差做比较,计算误差来训练网络。
[0048] 图5是孪生网络结构示意图。X1,X2为输入数据。GW(X)为模型,其中W表示模型参数,GW的作用就是将输入数据X转换为一组特征向量。EW用于衡量两个输入向量之间的距离,我们可以采用L1距离(L1范数),公式为:
[0049] EW(X1,X2)=||GW(X1)‑GW(X2)||
[0050] 因此,通过Ew的计算就可以通过两张设计图获得一个在0‑1范围内的分值;
[0051] 在本发明中,孪生神经网络的损失函数定义为:
[0052]
[0053] L(W,(Y,X1,X2)i)=(1‑Y)LG(EW(X1,X2)i)+YLI(EW(X1,X2)i)[0054] 其中,Y表示X1,X2是否属于同一类:若为同一类,则为0,否则为1。P表示输入的总样本数,i表示当前样本的下标。LG表示两个样本为同类时的损失函数,LI表示两个样本为不同类时的损失函数。
[0055] 特别的,在我们的网络结构中,我们最后输出的结果为一个值,来代表当前样本的得分。
[0056] 网络训练过程中,分别将正样本与负样本输入至孪生网络的两个网络中,然后两个网络的输出结果相减,我们不断调整参数使得孪生网络输出的差与我们设置的分差相近。
[0057] 在训练阶段,定义样本数据集时,通过人为定义正样本与负样本之间的分差值(即Ew),如定义为1,而两个正样本之间的分差值为0。我们将正样本和负样本分别输入到孪生网络的两个网络中,将两个网络输出的差值与我们设置的分差进行比较,不断调整网络权重使得网络输出的分差值与我们设置的值相近。这样,实际上每个网络输出的都是样本的得分,在预测阶段,我们使用孪生网络的其中一个网络作为预测器来得到需要进行评分的设计方案或某一类家具的评分。训练时是将两个网络输出的得分相减,而在预测阶段,只使用其中一个网络进行预测即可得到样本的得分,如可以设置正样本的得分为1,负样本的得分为0,则正样本与负样本的分差值为1,因此预测阶段输出值越接近1,代表这个设计图与大师设计之间更为接近,这个设计就越好。
[0058] 为了在评分结果中纳入更多的设计要素,还可以对于每一类主家具,分别训练一个评分网络,最终的得分为整体方案得分及所有出现的主家具的得分的加权平均。
[0059] 设布局方案的整体得分为Sa,出现的主家具得分为Si(0≤i≤T),T为主家具数量,则总得分为:
[0060]
[0061] 其中,ωa和ωi(0≤i≤T)为权重。