Python 属性错误:模块';resnet';没有属性';ResnetBuilder';

Python 属性错误:模块';resnet';没有属性';ResnetBuilder';,python,keras,attributeerror,resnet,Python,Keras,Attributeerror,Resnet,您好,我尝试运行以下程序,但意外地发现以下错误: AttributeError: module 'resnet' has no attribute 'ResnetBuilder' 在从运行ResNet期间,但我不理解为什么会在以下部分发生: model=resnet.ResnetBuilder.build\u resnet\u 18((img\u通道、img\u行、img\u列)、nb\u类) model.compile(loss='classifical_crossentropy', 优化器

您好,我尝试运行以下程序,但意外地发现以下错误:

AttributeError: module 'resnet' has no attribute 'ResnetBuilder'
在从运行ResNet期间,但我不理解为什么会在以下部分发生:

model=resnet.ResnetBuilder.build\u resnet\u 18((img\u通道、img\u行、img\u列)、nb\u类)
model.compile(loss='classifical_crossentropy',
优化器='adam',
考虑到
ResnetBuilder
它已经在这里定义:

class ResnetBuilder(对象):
@静力学方法
def构建(输入形状、数量输出、块、重复):
“”“构建自定义的类似ResNet的体系结构。
Args:
input_shape:表单中的输入形状(nb_通道、nb_行、nb_列)
num_outputs:最终softmax层的输出数
block\u fn:要使用的块函数。这是“基本块”或“瓶颈”。
原始纸张在小于50层时使用基本块
重复次数:各种块单元的重复次数。
在每个块单元中,滤波器的数量加倍,输入大小减半
返回:
凯拉斯的“模型”。
"""
_handle_dim_ordering()
如果len(输入_形)!=3:
raise异常(“输入形状应为元组(nb_通道、nb_行、nb_列)”)
#如有必要,排列尺寸顺序
如果K.image\u dim\u ordering()=“tf”:
输入形状=(输入形状[1],输入形状[2],输入形状[0])
#如果需要,从str加载函数。
block\u fn=\u get\u block(block\u fn)
输入=输入(形状=输入\形状)
conv1=_conv_bn_relu(过滤器=64,内核大小=(7,7),步幅=(2,2))(输入)
pool1=maxpoolg2d(pool_size=(3,3),步长=(2,2),padding=“same”)(conv1)
block=pool1
过滤器=64
对于枚举中的i,r(重复):
块=_剩余块(块_fn,过滤器=过滤器,重复次数=r,是第一层=(i==0))(块)
过滤器*=2
#最后激活
块=_bn_relu(块)
#分类块
块形状=K.int形状(块)
pool2=平均池2D(池大小=(块形状[行轴]、块形状[列轴]),
步幅=(1,1))(块)
扁平化1=扁平化()(池2)
稠密=稠密(单位=num\u输出,kernel\u initializer=“he\u normal”,
激活=“softmax”)(1)
模型=模型(输入=输入,输出=密集)
回归模型
@静力学方法
def build_resnet_18(输入形状、数量输出):
返回ResnetBuilder.build(输入\u形状、num\u输出、基本\u块[2,2,2,2])
@静力学方法
def build_resnet_34(输入形状、数量输出):
返回ResnetBuilder.build(输入形状、输出数量、基本块[3,4,6,3])
@静力学方法
def build_resnet_50(输入形状、数量输出):
返回ResnetBuilder.build(输入形状、输出数量、瓶颈[3,4,6,3])
@静力学方法
def build_resnet_101(输入形状、数量输出):
返回ResnetBuilder.build(输入形状、输出数量、瓶颈[3,4,23,3])
@静力学方法
def build_resnet_152(输入形状、数量输出):
返回ResnetBuilder.build(输入形状、输出数量、瓶颈[3,8,36,3])

有什么想法,如何修复吗?

您可以尝试另一个软件包:

试试这个


您是否导入了
resnet
?请尝试从resnet导入ResnetBuilder中导入
。它一直对我有效…您是否有自己的名为
resnet
的模块?@Engineero不幸的是,该模块不起作用,并返回以下信息:
ImportError:无法从“resnet”导入名称“ResnetBuilder”(/home/user/anaconda3/envs/HW/lib/python3.7/site-packages/resnet/_-init__;.py)
等等,resnet不是pip可安装的,那么在您的站点包目录中挂起的这个resnet是什么呢?您的工作目录或python路径中的某个地方应该有一个
resnet.py
文件的副本,这就是您需要从中导入的resnet。@Engineero哦,这就是为什么!我是通过
pip-ins安装它的tall resnet
我认为它将以正确的路径D传输,那么如果不是这样,我如何通过GitHub的terminal/Jupyter Notebook在python路径中正确保存
resnet.py
!pip install image-classifiers

from classification_models import Classifiers
classifier, preprocess_input = Classifiers.get('resnet18')
model = classifier((224, 224, 3), weights='imagenet')