当前位置:   article > 正文

Pytorch-类的继承:class Net(torch.nn.Module)_pytorch继承

pytorch继承

一 概念

继承是面向对象编程中的一个重要概念,它允许我们创建一个新类,并从一个或多个现有类中继承属性和方法。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二 代码实例

在Python中,class A(B)表示类A继承自类B。这意味着类A将继承类B的属性和方法,并且可以在类A中使用它们。

"""
定义了两个类,类B和类A。
类B有一个构造函数和一个方法,类A继承自类B,并且类A也有一个构造函数和一个方法。
"""


# 定义了类B
class B:
	# 定义B的构造函数
    def __init__(self):
    	# 给实例变量name赋值为字符串"B"
        self.name = "B"
	
	# 定义了类B的方法method,会打印出"This is a method from class B"。
    def method(self):
        print("This is a method from class B")

# 定义了类A,它继承自类B
class A(B):
	# 定义A的构造函数
    def __init__(self):
    	# 调用父类B的构造函数
        super().__init__()  
        # 给实例变量age赋值为整数20
        self.age = 20
        
	# 定义了类A的方法method,先通过super().method()调用了父类B的方法,然后打印"This is a method from class A"。
    def method(self):
        super().method()  # 调用父类B的方法
        print("This is a method from class A")

# 创建了一个类A的实例对象a
a = A()
print(a.name)  # 输出:B
print(a.age)  # 输出:20
a.method() 
# 输出:This is a method from class B
#      This is a method from class A

  • 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

三 class Net(torch.nn.Module)

# 定义的神经网络模型类Net,继承自nn.Module
# nn.Module是PyTorch中所有神经网络模型的基类
class Net(nn.Module):
	# 构造函数,用于初始化类的实例,in_planes和num_classes是构造函数的参数
    def __init__(self, in_planes,num_classes):
    	
    	# super()函数用于调用父类的方法。
    	# super(Net, self)表示调用父类Net的方法。
    	# __init__()是父类的构造方法,通过调用super().__init__()来执行父类的构造方法,以确保父类的初始化代码也被执行。
        super(Net, self).__init__()

        
        self.in_planes = in_planes
        self.num_classes = num_classes

        self.conv1 = nn.Conv2d(in_planes, 32, 3,2, 0, bias=False)
        self.bn1 = nn.BatchNorm2d(32)
        self.relu = nn.ReLU(inplace=True)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/653148
推荐阅读
相关标签
  

闽ICP备14008679号