Polygon马蹄链开发(案例)Polygon马蹄链系统开发(详细程序)丨Polygon马蹄链源码版
马蹄链(Horse Chain)是一种基于区块链技术的数字货币,它由马蹄链网络发行和维护。区块链是一种分布式数据存储技术,它通过使用密码学方法,在不同的计算机节点之间共享数据,形成一条链式结构。每个节点都可以存储和传递数据,并通过共识机制确保数据的安全性和可靠性。
本质上来说,智能合约是一段程序,它以计算机指令的方式实现了传统合约的自动化处理。智能合约程序不只是一个可以自动执行的计算机程序,它本身就是一个系统参与者,对接收到的信息进行回应,可以接收和储存价值,也可以向外发送信息和价值。这个程序就像一个可以被信任的人,可以临时保管资产,总是按照事先的规则执行操作。
简单讲,智能合约就是双方在区块链资产上交易时,触发执行的一段代码,这段代码就是智能合约。提前规定好合约的内容,当在满足触发合约条件的时候,程序就会自动执行合约内容。
torch.onnx.export():将pytorch模型转换为.onnx模型
torch.onnx.export(model,args,f,export_params=True,verbose=False,training=False,input_names=None,output_names=None,aten=False,export_raw_ir=False,operator_export_type=None,opset_version=None,_retain_param_name=True,do_constant_folding=False,example_outputs=None,strip_doc_string=True,dynamic_axes=None,keep_initializers_as_inputs=None)
参数
model(torch.nn.Module)–要导出的模型.
关于区块链项目技术开发唯:MrsFu123,代币发行、dapp智能合约开发、链游开发、多链钱包开发
交易所开发、量化合约开发、互助游戏开发、Nft数字藏品开发、众筹互助开发、元宇宙开发、swap开发、
链上合约开发、ido开发、商城开发等,开发过各种各样的系统模式,更有多种模式、制度、案例、后台等,成熟技术团队,欢迎实体参考。
----args(tuple of arguments)–模型的输入,任何非Tensor参数都将硬编码到导出的模型中;任何Tensor参数都将成为导出的模型的输入,并按照他们在args中出现的顺序输入。因为export运行模型,所以我们需要提供一个输入张量x。只要是正确的类型和大小,其中的值就可以是随机的。请注意,除非指定为动态轴,否则输入尺寸将在导出的ONNX图形中固定为所有输入尺寸。在此示例中,我们使用输入batch_size 1导出模型,但随后dynamic_axes在torch.onnx.export()。因此,导出的模型将接受大小为[batch_size,3、100、100]的输入,其中batch_size可以是可变的。
----export_params(bool,default True)–如果指定为True或默认,参数也会被导出.如果你要导出一个没训练过的就设为False.
----verbose(bool,default False)-如果指定,我们将打印出一个导出轨迹的调试描述。
----training(bool,default False)-在训练模式下导出模型。目前,ONNX导出的模型只是为了做推断,所以你通常不需要将其设置为True。
----input_names(list of strings,default empty list)–按顺序分配名称到图中的输入节点
----output_names(list of strings,default empty list)–按顺序分配名称到图中的输出节点
----dynamic_axes–{‘input’:{0:‘batch_size’},‘output’:{0:‘batch_size’}})#variable lenght axes
import torch.nn as nn
class CNN(nn.Module):开发功能I35源码7O98案例O7I8
def __init__(self):
super(CNN,self).__init__()
self.conv1=nn.Sequential(
nn.Conv2d(in_channels=1,out_channels=16,kernel_size=(3,3),stride=(1,1),padding=1),
nn.ReLU(),
nn.MaxPool2d(kernel_size=2)#for 28*28 to 14*14
)
self.conv2=nn.Sequential(
nn.Conv2d(in_channels=16,out_channels=32,kernel_size=(3,3),stride=(1,1),padding=1),
nn.ReLU(),
nn.MaxPool2d(kernel_size=2)#for 14*14 to 7*7
)
self.output=nn.Linear(32*7*7,10)
def forward(self,x):
out=self.conv1(x)
out=self.conv2(out)
out=out.view(out.size(0),-1)#flatten the 32*7*7 dimension to 1568
out=self.output(out)
return out