神奇宝贝五分类:网络自定义

用resnet18的结构

import torch
from torch import nn
from torch.nn import functional as F


class ResBlk(nn.Module):
    '''
    resnet block
    '''
    def __init__(self,ch_in,ch_out,stride=1):
        '''

        :param ch_in:
        :param ch_out:
        '''
        super(ResBlk,self).__init__()

        self.conv1=nn.Conv2d(ch_in,ch_out,kernel_size=3,stride=stride,padding=1)
        self.bn1=nn.BatchNorm2d(ch_out)  # ResNet,一般都会加BatchNorm
        self.conv2=nn.Conv2d(ch_out,ch_out,kernel_size=3,stride=1,padding=1)
        self.bn2=nn.BatchNorm2d(ch_out)

        self.extra=nn.Sequential()  # 先设为空的extra,如果有的话,下面的就把这个覆盖掉
        if ch_out != ch_in:
            #把[b,ch_in,h.w]=>[b,ch_out,h,w]
            self.extra =nn.Sequential(
                nn.Conv2d(ch_in,ch_out,kernel_size=1,stride=stride), # 保持size不变
    
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的神奇宝贝的示例代码: ```python class Pokemon: def __init__(self, name, level): self.name = name self.level = level self.health = level * 10 self.max_health = level * 10 def __repr__(self): return f"{self.name} (Level {self.level})" def lose_health(self, damage): self.health -= damage if self.health <= 0: self.health = 0 print(f"{self.name} fainted!") def gain_health(self, heal): self.health += heal if self.health > self.max_health: self.health = self.max_health class Pikachu(Pokemon): sound = "Pika Pika!" def attack(self): print(f"{self.name} used Thunderbolt!") class Charmander(Pokemon): sound = "Char Char!" def attack(self): print(f"{self.name} used Flamethrower!") ``` 在上面的代码中,我们定义了一个 `Pokemon` ,它有一些基本的属性和行为,如名称、等级、生命值、最大生命值、失去生命值和恢复生命值。我们还定义了两个宝贝 `Pikachu` 和 `Charmander`,它们都继承自 `Pokemon` ,并且有自己独特的攻击方法和声音。 下面是一个使用这些的示例代码: ```python pikachu = Pikachu("Pikachu", 5) charmander = Charmander("Charmander", 5) print(pikachu) print(charmander) print(pikachu.sound) print(charmander.sound) pikachu.attack() charmander.attack() pikachu.lose_health(20) charmander.lose_health(10) pikachu.gain_health(10) charmander.gain_health(5) print(pikachu.health) print(charmander.health) ``` 输出: ``` Pikachu (Level 5) Charmander (Level 5) Pika Pika! Char Char! Pikachu used Thunderbolt! Charmander used Flamethrower! Pikachu fainted! Charmander health: 40 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值