基于算力资源优化的神经网络模型生成方法及相关装置与流程

未命名 08-26 阅读:118 评论:0


1.本技术涉及异构计算平台建模技术领域,尤其涉及基于算力资源优化的神经网络模型生成方法及相关装置。


背景技术:

2.针对异构芯片不同算力资源,算法通常要在体积适配算力的同时,还要兼顾准确率。常见做法是针对算力资源限制,采用体积和算力需求相当的比较成熟的算法模型;另一种做法是在算力不足以支撑算法模型体积时,对模型进行压缩。在芯片算力资源限制下,通常针对算力资源小的芯片采用占用较少的算力的轻量化模型,常用的轻量化模型有squeezenet、mobilenet、xception、yolo等;针对算力资源充足的芯片采用精确度更高的大模型,如vgg,fasterrcnn。在算力不足以支撑算法模型体积所需的计算量时,通常对模型进行压缩,以满足芯片算力限制。常用的模型压缩方式是模型剪枝操作,通过减少网络结构的宽度(w)、高度(h)和深度(d),来减少算力消耗,以适配芯片算力。
3.但是,异构芯片算力资源大小呈多样化,而固定的轻量化模型通常是固定的体积和算力需求,缺乏适配算力资源的体积弹性,在满足算力资源限制的前提下,超出需求的芯片算力容易形成浪费。在算力不足以支撑算法模型体积时,现有的模型剪枝操作太过简单直接,并未考虑剪枝后网络结构的变化,忽略了模型算子之间的搭配问题,这样很有可能会破坏模型网络结构,模型精度必然也会随之降低。


技术实现要素:

4.本技术提供了基于算力资源优化的神经网络模型生成方法及相关装置,用于解决现有技术的固定模型算力资源缺乏适配弹性,模型剪枝操作则忽略了模型算子间的搭配问题,导致构建的模型缺乏可靠性和准确性的技术问题。
5.有鉴于此,本技术第一方面提供了基于算力资源优化的神经网络模型生成方法,包括:
6.采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,所述算子算力占用表包括算子名称、芯片型号、执行时间和所述占用算力资源量;
7.在基于所述算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,所述强化学习状态空间包括状态向量;
8.基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在所述强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,所述预置损失函数包括actor损失函数和critic损失函数。
9.优选地,所述采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,所述算子算力占用表包括算子名称、芯片型号、执行时间和所述占用算力资源量,包括:
10.采用预置测试用例测试神经网络模型中每个算子在不同芯片上的执行时间和占用算力资源量;
11.根据算子名称、芯片型号、所述执行时间和所述占用算力资源量构建算子算力占用表。
12.优选地,所述在基于所述算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,所述强化学习状态空间包括状态向量,之后还包括:
13.以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络;
14.依据动作概率构建actor损失函数,并根据动作状态构建critic损失函数;
15.结合所述actor损失函数和所述critic损失函数生成预置损失函数。
16.优选地,所述以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络,之后还包括:
17.通过预置正则化项对所述预置策略网络进行搜索优化操作。
18.本技术第二方面提供了基于算力资源优化的神经网络模型生成装置,包括:
19.算力测试单元,用于采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,所述算子算力占用表包括算子名称、芯片型号、执行时间和所述占用算力资源量;
20.空间构建单元,用于在基于所述算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,所述强化学习状态空间包括状态向量;
21.迭代寻优单元,用于基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在所述强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,所述预置损失函数包括actor损失函数和critic损失函数。
22.优选地,所述算力测试单元,具体用于:
23.采用预置测试用例测试神经网络模型中每个算子在不同芯片上的执行时间和占用算力资源量;
24.根据算子名称、芯片型号、所述执行时间和所述占用算力资源量构建算子算力占用表。
25.优选地,还包括:
26.策略制定单元,用于以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络;
27.第一损失单元,用于依据动作概率构建actor损失函数,并根据动作状态构建critic损失函数;
28.第二损失单元,用于结合所述actor损失函数和所述critic损失函数生成预置损失函数。
29.优选地,还包括:
30.正则优化单元,用于通过预置正则化项对所述预置策略网络进行搜索优化操作。
31.本技术第三方面提供了基于算力资源优化的神经网络模型生成设备,所述设备包括处理器以及存储器;
32.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
33.所述处理器用于根据所述程序代码中的指令执行第一方面所述的基于算力资源优化的神经网络模型生成方法。
34.本技术第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面所述的基于算力资源优化的神经网络模型生成方法。
35.从以上技术方案可以看出,本技术实施例具有以下优点:
36.本技术中,提供了基于算力资源优化的神经网络模型生成方法,包括:采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,算子算力占用表包括算子名称、芯片型号、执行时间和占用算力资源量;在基于算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,强化学习状态空间包括状态向量;基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,预置损失函数包括actor损失函数和critic损失函数。
37.本技术提供的基于算力资源优化的神经网络模型生成方法,通过迭代优化算法在强化学习状态空间中搜索最优网络结构,即通过优化选取模型算子的方式灵活生成最优神经网络模型,而不是采用固定轻量化模型;而且强化学习状态空间基于搜索约束项构建,能够适配实际的异构芯片算力资源;此外,在优化搜索过程中,通过预置奖励函数、预置损失函数和预置策略网络共同作用搜索出最优的模型算子,能够考虑模型算子之间的搭配问题,在压缩模型的同时兼顾模型精度。因此,本技术能够解决现有技术的固定模型算力资源缺乏适配弹性,模型剪枝操作则忽略了模型算子间的搭配问题,导致构建的模型缺乏可靠性和准确性的技术问题。
附图说明
38.图1为本技术实施例提供的基于算力资源优化的神经网络模型生成方法的流程示意图;
39.图2为本技术实施例提供的基于算力资源优化的神经网络模型生成装置的结构示意图。
具体实施方式
40.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.为了便于理解,请参阅图1,本技术提供的基于算力资源优化的神经网络模型生成方法的实施例,包括:
42.步骤101、采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,算子算力占用表包括算子名称、芯片型号、执行时间和占用算力资源量。
43.进一步地,步骤101,包括:
44.采用预置测试用例测试神经网络模型中每个算子在不同芯片上的执行时间和占用算力资源量;
45.根据算子名称、芯片型号、执行时间和占用算力资源量构建算子算力占用表。
46.需要说明的是,异构芯片具有不同的计算特性,各类模型算子在异构芯片上的算力占用资源也是不相同的,为了权衡算子算力占用量与芯片资源,本实施例以算子算力资源占用量为切入点进行分析,搜索出最优模型。此外,模型算子包括且不限于卷积、池化和全连接等内容。每个算子在不同芯片上执行可以通过针对特定芯片编写算子的形式实现,也可以通过编译器将算子转换为芯片可以执行的代码实现,具体的在此不作限定。
47.每个算子都需要通过预置测试用例在多个不同的芯片上执行实现,记录不同算子在不同芯片上的算力消耗,具体的通过执行时间可以表达,即通过执行时间可以换算出芯片的算力消耗。通过统计,可以记录不同算子在不同芯片上运行预置次数,计算出平均算力消耗并汇总;根据汇总结果可以选择最适合特定应用程度的芯片。
48.算力消耗的资源量即为占用算力资源量,统计出每个算子在每个芯片上的执行时间和占用算力资源量,然后将执行时间和占用算力资源量与算子名称、芯片型号一并记录在算子算力占用表中。
49.步骤102、在基于算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,强化学习状态空间包括状态向量。
50.算子算力占用表中记载了不同算子在不同芯片上的执行时间和占用算子资源量,所以计算算子算力占用表可以确定模型在搜索时的算力资源边界上限,形成一个搜索约束项;在搜索约束项的基础上构建强化学习任务,定义出强化学习状态空间。
51.强化学习任务中以选择模型算子构成一个网络结构为一个行为,神经网络的性能指标是奖励;这个选择和构建过程就是对神经网络的层神经元个数、激活函数和连接方式等超参数进行选取组合的过程。
52.本实施例将搜索过程可能的网络结构定义为状态空间,也就是网络结构算子选择的集合;且该状态空间受到搜索约束项约束;此外,为了便于分析,还可以将每个动作状态映射为一个向量,动作状态向量的维度和表达方法可能因任务而异,通常可以将状态向量的维度设置为一些超参数的组合,例如层数、神经元个数和激活函数等。
53.进一步地,步骤102,之后还包括:
54.以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络;
55.依据动作概率构建actor损失函数,并根据动作状态构建critic损失函数;
56.结合actor损失函数和critic损失函数生成预置损失函数。
57.预置策略网络是定义的一个神经网络模型,用于预测每个当前状态下的下一时刻动作状态的概率。预置策略网络后续需要进行搜索训练,用于搜索最优网络结构。
58.本实施例采用actor-critic框架来实现策略梯度强化学习。所以,预置损失函数包括两个部分,一个是actor损失函数,一个是critic损失函数;其中,actor损失函数定义为:
[0059][0060]
其中,π
θ
(a
t
|s
t
)表示在动作状态s
t
下采取动作a
t
的概率,θ表示模型参数,a
t
表示在动作状态s
t
下采取动作a
t
所得到的的长期回报,可以采用蒙特卡洛算法估计a
t
,ρ
π
表示在策
略π下的状态分布,表示整体回报期望。
[0061]
critic损失函数定义为:
[0062][0063]
其中,v(s
t
)表示在动作状态s
t
下的长期回报,r
t
表示真实的长期回报,同样可以采用蒙特卡洛算法估计得到r
t

[0064]
结合两类损失函数可以得到预置损失函数:
[0065]
l=l
actor
+l
critic
[0066]
本实施例采用随机梯度下降算法优化预置损失函数,从而得到最优的策略和价值函数。
[0067]
需要说明的是,除了定义损失函数和策略网络,还需要定义奖励函数。奖励函数根据神经网络的性能指标定义,用于评估策略网络在每个动作状态下采取动作的好坏,可以定义奖励函数为负的flops,使得策略网络尽可能选择flops更少的神经网络结构,其中,flops指的是在进行人工智能模型的推理或训练过程中,所涉及的浮点数计算操作的总量。这个指标用于衡量模型的计算复杂度和算力需求。
[0068]
进一步地,以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络,之后还包括:
[0069]
通过预置正则化项对预置策略网络进行搜索优化操作。
[0070]
需要说明的是,一般在实际应用中,为了更好地平衡探索和利用,本实施例还可以在预置策略网络训练过程中添加一些正则化项,例如熵正则化项,以鼓励策略网络探索新的状态和行动。
[0071]
步骤103、基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,预置损失函数包括actor损失函数和critic损失函数。
[0072]
采用策略梯度算法训练预置策略网络的过程中,通过预置损失函数控制网络训练优劣,通过预置奖励函数评估每个动作状态下的动作好坏,从而调整训练走向,而强化学习状态空间则可以在模型搜索算子时提供一个边界上限,用于约束最优搜索过程。
[0073]
具体的训练过程可以描述为:1)使用actor神经网络选择一个行动,这个行动的选择应当基于当前状态以及actor的策略。在这个例子中,行动表示神经网络结构的设计参数,例如每个层的输出通道数、卷积核大小等。2)执行这个行动,并观察环境的反馈。在这个例子中,反馈就是神经网络在验证集上的性能表现(例如准确率)。3)使用反馈来计算长期回报,更新critic神经网络的参数。4)使用长期回报、当前状态以及之前选择的行动来计算advantage,然后使用advantage来计算actor损失函数。5)使用actor损失函数来更新actor神经网络的参数。不断重复上面的流程,直至达到预定训练论述或者收敛,就可以得到最优神经网络模型。
[0074]
预置决策网络训练过程就是最优算子搜索过程,针对算力资源上限约束的强化学习状态空间,对不同算子类型进行走索。在算力资源方面,若是算力资源受限,则尽量选取占用算力资源量较小的算子,可以尽可能减少剪枝,少破坏网络结构,避免网络过于系数。在算子表现方面,可以选择可替换的算子进行训练,根据精度择优,相比于剪枝后的固定算
子有更大的精度提升空间。
[0075]
本技术实施例提供的基于算力资源优化的神经网络模型生成方法,通过迭代优化算法在强化学习状态空间中搜索最优网络结构,即通过优化选取模型算子的方式灵活生成最优神经网络模型,而不是采用固定轻量化模型;而且强化学习状态空间基于搜索约束项构建,能够适配实际的异构芯片算力资源;此外,在优化搜索过程中,通过预置奖励函数、预置损失函数和预置策略网络共同作用搜索出最优的模型算子,能够考虑模型算子之间的搭配问题,在压缩模型的同时兼顾模型精度。因此,本技术实施例能够解决现有技术的固定模型算力资源缺乏适配弹性,模型剪枝操作则忽略了模型算子间的搭配问题,导致构建的模型缺乏可靠性和准确性的技术问题。
[0076]
为了便于理解,请参阅图2,本技术提供了基于算力资源优化的神经网络模型生成装置的实施例,包括:
[0077]
算力测试单元201,用于采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,算子算力占用表包括算子名称、芯片型号、执行时间和占用算力资源量;
[0078]
空间构建单元202,用于在基于算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,强化学习状态空间包括状态向量;
[0079]
迭代寻优单元203,用于基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,预置损失函数包括actor损失函数和critic损失函数。
[0080]
进一步地,算力测试单元201,具体用于:
[0081]
采用预置测试用例测试神经网络模型中每个算子在不同芯片上的执行时间和占用算力资源量;
[0082]
根据算子名称、芯片型号、执行时间和占用算力资源量构建算子算力占用表。
[0083]
进一步地,还包括:
[0084]
策略制定单元204,用于以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络;
[0085]
第一损失单元205,用于依据动作概率构建actor损失函数,并根据动作状态构建critic损失函数;
[0086]
第二损失单元206,用于结合actor损失函数和critic损失函数生成预置损失函数。
[0087]
优选地,还包括:
[0088]
正则优化单元207,用于通过预置正则化项对预置策略网络进行搜索优化操作。
[0089]
本技术还提供了基于算力资源优化的神经网络模型生成设备,设备包括处理器以及存储器;
[0090]
存储器用于存储程序代码,并将程序代码传输给处理器;
[0091]
处理器用于根据程序代码中的指令执行上述方法实施例中的基于算力资源优化的神经网络模型生成方法。
[0092]
本技术还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行上述方法实施例中的基于算力资源优化的神经网络模型生成方法。
[0093]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0094]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0095]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0096]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以通过一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文全称:read-only memory,英文缩写:rom)、随机存取存储器(英文全称:random access memory,英文缩写:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0097]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。

技术特征:
1.基于算力资源优化的神经网络模型生成方法,其特征在于,包括:采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,所述算子算力占用表包括算子名称、芯片型号、执行时间和所述占用算力资源量;在基于所述算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,所述强化学习状态空间包括状态向量;基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在所述强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,所述预置损失函数包括actor损失函数和critic损失函数。2.根据权利要求1所述的基于算力资源优化的神经网络模型生成方法,其特征在于,所述采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,所述算子算力占用表包括算子名称、芯片型号、执行时间和所述占用算力资源量,包括:采用预置测试用例测试神经网络模型中每个算子在不同芯片上的执行时间和占用算力资源量;根据算子名称、芯片型号、所述执行时间和所述占用算力资源量构建算子算力占用表。3.根据权利要求1所述的基于算力资源优化的神经网络模型生成方法,其特征在于,所述在基于所述算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,所述强化学习状态空间包括状态向量,之后还包括:以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络;依据动作概率构建actor损失函数,并根据动作状态构建critic损失函数;结合所述actor损失函数和所述critic损失函数生成预置损失函数。4.根据权利要求3所述的基于算力资源优化的神经网络模型生成方法,其特征在于,所述以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络,之后还包括:通过预置正则化项对所述预置策略网络进行搜索优化操作。5.基于算力资源优化的神经网络模型生成装置,其特征在于,包括:算力测试单元,用于采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表,所述算子算力占用表包括算子名称、芯片型号、执行时间和所述占用算力资源量;空间构建单元,用于在基于所述算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,所述强化学习状态空间包括状态向量;迭代寻优单元,用于基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在所述强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,所述预置损失函数包括actor损失函数和critic损失函数。6.根据权利要求5所述的基于算力资源优化的神经网络模型生成装置,其特征在于,所述算力测试单元,具体用于:采用预置测试用例测试神经网络模型中每个算子在不同芯片上的执行时间和占用算力资源量;根据算子名称、芯片型号、所述执行时间和所述占用算力资源量构建算子算力占用表。
7.根据权利要求5所述的基于算力资源优化的神经网络模型生成装置,其特征在于,还包括:策略制定单元,用于以根据当前动作状态预测下一刻动作概率为目标定义预置策略网络;第一损失单元,用于依据动作概率构建actor损失函数,并根据动作状态构建critic损失函数;第二损失单元,用于结合所述actor损失函数和所述critic损失函数生成预置损失函数。8.根据权利要求7所述的基于算力资源优化的神经网络模型生成装置,其特征在于,还包括:正则优化单元,用于通过预置正则化项对所述预置策略网络进行搜索优化操作。9.基于算力资源优化的神经网络模型生成设备,其特征在于,所述设备包括处理器以及存储器;所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;所述处理器用于根据所述程序代码中的指令执行权利要求1-4任一项所述的基于算力资源优化的神经网络模型生成方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-4任一项所述的基于算力资源优化的神经网络模型生成方法。

技术总结
本申请公开了基于算力资源优化的神经网络模型生成方法及相关装置,方法包括:采用预置测试用例测试神经网络模型算子在不同芯片上的占用算力资源量,并构建算子算力占用表;在基于算子算力占用表确定搜索约束项的基础上,依据网络结构算子选择的动作构建强化学习状态空间,强化学习状态空间包括状态向量;基于预置奖励函数和预置损失函数,采用策略梯度算法训练预置策略网络在强化学习状态空间中迭代搜索最优网络结构,得到最优神经网络模型,预置损失函数包括Actor损失函数和Critic损失函数。本申请能解决现有固定模型算力资源缺乏适配弹性,模型剪枝操作则忽略模型算子间的搭配问题,导致构建的模型缺乏可靠性和准确性的技术问题。性的技术问题。性的技术问题。


技术研发人员:张殷 蒋维 熊仕斌 李国伟 王俊波 唐琪 范心明 罗容波 刘益军 陈衍鹏 李新 董镝 宋安琪 陈贤熙 吴焯军 王智娇 刘崧 姜沛东
受保护的技术使用者:广东电网有限责任公司佛山供电局
技术研发日:2023.05.29
技术公布日:2023/8/24
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐