机器学习模型构建方法、机器学习框架及相关设备与流程

文档序号:34815241发布日期:2023-07-19 17:36阅读:31来源:国知局
机器学习模型构建方法、机器学习框架及相关设备与流程

本发明属于量子计算,特别是一种机器学习模型构建方法、机器学习框架及相关设备。


背景技术:

1、经典的机器学习,尤其是深度学习,彻底改变了人工智能的许多子领域,并取得了重大成功。近年来,随着信息时代的到来,深度学习得到了迅速的发展。电子数据量的快速增长导致了深度学习模型的训练数据的大量增加。与此同时,电子计算机计算能力的迅速发展,特别是以图形处理单元(gpu)为代表的一系列新型电子计算设备的出现,使得深度学习模型的大规模训练成为现实。因此,深度学习已经大大超越了之前的传统算法,并在许多领域得到了广泛的应用。深度学习在数字图像分类、手写字符识别、视频分析等领域的表现已经达到或超过了人类。

2、随着量子计算的快速发展,以量子力学为基础,将量子计算与经典机器学习相结合的量子机器学习也开始迅速发展。量子机器学习利用量子计算机远超经典计算机的效率,结合大数据时代快速发展的机器学习算法,进一步提高了大数据的处理能力。

3、近年来,随着人们对量子机器学习的兴趣日益浓厚,涌现了大量量子机器学习框架,如tensorflowquantum、pennylane、paddlequantum等。然而在电子设备仅包括一种量子机器学习框架时,对于习惯了另外一种量子机器学习框架的开发者来说,需要切换量子机器学习框架去构建机器学习模型,这是尤为困难的。


技术实现思路

1、本发明的目的是提供一种机器学习模型构建方法、机器学习框架及相关设备,旨在实现跨量子机器学习框架构建机器学习模型。

2、本发明的一个实施例提供了一种机器学习模型构建方法,应用于包括第一机器学习框架且不包括第二机器学习框架的电子装置,所述第一机器学习框架包括兼容量子计算程序封装单元,所述方法包括:

3、确定对应的所述第二机器学习框架的兼容量子计算层接口,所述兼容量子计算层接口用于提供基于所述第二机器学习框架内含的量子计算编程库创建的量子程序;

4、通过所述兼容量子计算程序封装单元调用所述兼容量子计算层接口构建兼容量子计算层;

5、构建包括所述兼容量子计算层的机器学习模型。

6、可选的,所述确定对应的所述第二机器学习框架的兼容量子计算层接口之前,所述方法还包括:

7、通过所述第二机器学习框架内含的量子计算编程库构建量子线路,以及调用初始化函数对所述量子线路进行初始化,通过运行函数定义所述量子线路的运行和测量方式,得到量子程序。

8、可选的,所述第一机器学习框架还包括经典模块和数据结构模块,所述构建包括所述兼容量子计算层的机器学习模型,包括:

9、调用所述经典模块构建经典计算层以及调用所述数据结构模块构建所述经典计算层与所述兼容量子计算层之间的前向传播关系;

10、调用所述经典模块将所述经典计算层、所述兼容量子计算层以及所述经典计算层与所述兼容量子计算层之间的前向传播关系进行封装,得到机器学习模型。

11、可选的,所述经典模块包括经典神经网络层单元,所述经典神经网络层单元包括以下至少一者:指定模型经典神经网络层子单元,被配置为通过已封装的经典神经网络层接口构建指定模型的所述经典神经网络层;激活层子单元,被配置为构建用于对所述经典神经网络层的输出进行非线性变换的激活层;

12、所述调用所述经典模块构建经典计算层,包括:

13、调用所述指定模型经典神经网络层子单元构建经典神经网络层,以及将所述经典神经网络层作为经典计算层;或者,

14、调用所述指定模型经典神经网络层子单元和所述激活层子单元构建经典神经网络层和激活层,以及将所述经典神经网络层和所述激活层作为经典计算层。

15、可选的,所述经典模块还包括抽象类子模块,所述通过所述经典模块将所述经典计算层、所述兼容量子计算层以及所述经典计算层与所述兼容量子计算层之间的前向传播关系进行封装,得到机器学习模型,包括:

16、调用所述抽象类子模块基于初始化函数对所述兼容量子计算层和所述经典计算层初始化和封装,得到初始化和封装后的所述兼容量子计算层和所述经典计算层;

17、调用所述抽象类子模块基于前向传播函数对所述前向传播关系进行封装得到封装后的所述前向传播关系;

18、调用所述抽象类子模块基于模块类对所述初始化和封装后的所述兼容量子计算层和所述经典计算层,以及封装后的所述前向传播关系进行封装,得到机器学习模型。

19、本发明的又一实施例提供了一种机器学习模型构建装置,应用于包括第一机器学习框架且不包括第二机器学习框架的电子装置,所述第一机器学习框架包括兼容量子计算程序封装单元,所述装置包括:

20、确定单元,用于确定对应的所述第二机器学习框架的兼容量子计算层接口,所述兼容量子计算层接口用于提供基于所述第二机器学习框架内含的量子计算编程库创建的量子程序;

21、构建单元,用于通过所述兼容量子计算程序封装单元调用所述兼容量子计算层接口构建兼容量子计算层;构建包括所述兼容量子计算层的机器学习模型。

22、可选的,所述确定对应的所述第二机器学习框架对应的兼容量子计算层接口之前,所述构建单元还用于:

23、通过所述第二机器学习框架内含的量子计算编程库构建量子线路,以及调用初始化函数对所述量子线路进行初始化,通过运行函数定义所述量子线路的运行和测量方式,得到量子程序。

24、可选的,所述第一机器学习框架还包括经典模块和数据结构模块,所述构建包括所述兼容量子计算层的机器学习模型,所述构建单元,具体用于:

25、调用所述经典模块构建经典计算层以及调用所述数据结构模块构建所述经典计算层与所述兼容量子计算层之间的前向传播关系;

26、调用所述经典模块将所述经典计算层、所述兼容量子计算层以及所述经典计算层与所述兼容量子计算层之间的前向传播关系进行封装,得到机器学习模型。

27、可选的,所述经典模块包括经典神经网络层单元,所述经典神经网络层单元包括以下至少一者:指定模型经典神经网络层子单元,被配置为通过已封装的经典神经网络层接口构建指定模型的所述经典神经网络层;激活层子单元,被配置为构建用于对所述经典神经网络层的输出进行非线性变换的激活层;

28、所述调用所述经典模块构建经典计算层,所述构建单元具体用于:

29、调用所述指定模型经典神经网络层子单元构建经典神经网络层,以及将所述经典神经网络层作为经典计算层;或者,

30、调用所述指定模型经典神经网络层子单元和所述激活层子单元构建经典神经网络层和激活层,以及将所述经典神经网络层和所述激活层作为经典计算层。

31、可选的,所述经典模块还包括抽象类子模块,所述通过所述经典模块将所述经典计算层、所述兼容量子计算层以及所述经典计算层与所述兼容量子计算层之间的前向传播关系进行封装,得到机器学习模型,所述构建单元具体用于:

32、调用所述抽象类子模块基于初始化函数对所述兼容量子计算层和所述经典计算层初始化和封装,得到初始化和封装后的所述兼容量子计算层和所述经典计算层;

33、调用所述抽象类子模块基于前向传播函数对所述前向传播关系进行封装得到封装后的所述前向传播关系;

34、调用所述抽象类子模块基于模块类对所述初始化和封装后的所述兼容量子计算层和所述经典计算层,以及封装后的所述前向传播关系进行封装,得到机器学习模型。

35、本发明的又一实施例提供了一种机器学习框架,所述机器学习框架设置在电子装置内,所述机器学习框架包括:

36、兼容量子计算程序封装单元,被配置为调用兼容量子计算层接口构建兼容量子计算层,所述兼容量子计算层接口用于接收基于设置在所述电子装置外的第二机器学习框架内含的量子计算编程库创建的量子程序。

37、本发明的又一实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。

38、本发明的又一实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中所述的方法。

39、与现有技术相比,本发明提供的机器学习模型构建方法,开发者可以基于自己习惯的第二机器学习框架内含的量子计算编程库创建的量子程序,然后在第一机器学习框架中确定对应的该第二机器学习框架对应的兼容量子计算层接口,通过第一机器学习框架包括的兼容量子计算程序封装单元调用该兼容量子计算层接口即可构建兼容量子计算层,从而实现了通过包括第一机器学习框架但不包括第二机器学习框架的电子设备进行机器学习模型的构建,进而实现跨量子机器学习框架构建机器学习模型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1