簡體   English   中英

AveragePooling2D無法識別dtype

[英]AveragePooling2D doesn't recognize a dtype

我對AveragePooling2D有問題:

from keras.models import Sequential, Model
from keras.layers import Dense, Dropout, Activation, Flatten
from keras.layers import Convolution2D, MaxPooling2D, ZeroPadding2D, GlobalAveragePooling2D, AveragePooling2D
import keras.backend as K
import math

K.clear_session()

base_model = InceptionV3(weights='imagenet', include_top=False, input_tensor=Input(shape=(150, 150, 3)))
x = base_model.outputs
x = AveragePooling2D(pool_size=(8, 8))(x)

我收到一個錯誤:


()中的AttributeError Traceback(最近一次通話最近)

〜/ anaconda3 / LIB / python3.6 /站點包/ keras /發動機/ topology.py在呼叫 (個體,輸入,** kwargs)617 618#實際調用層,收集輸出(S),掩模(一個或多個)和形狀。 -> 619輸出= self.call(輸入,** kwargs)620 output_mask = self.compute_mask(輸入,previous_mask)621

〜/ anaconda3 / lib / python3.6 / site-packages / keras / layers / pooling.py在調用中(self,輸入)156 strides = self.strides,157 padding = self.padding,-> 158 data_format = self。 data_format)159返回輸出160

_pooling_function中的〜/ anaconda3 / lib / python3.6 / site-packages / keras / layers / pooling.py(自身,輸入,pool_size,步幅,填充,數據格式)273填充,數據格式):274輸出= K.pool2d(輸入,pool_size,stride,-> 275 padding,data_format,pool_mode ='avg')276返回輸出277

〜/ anaconda3 / lib / python3.6 / site-packages / keras / backend / tensorflow_backend.py在pool2d中(x,pool_size,步幅,填充,data_format,pool_mode)
第3643章(3643),我來了(一)
3647如果tf_data_format =='NHWC':

_preprocess_conv2d_input(x,data_format)中的〜/ anaconda3 / lib / python3.6 / site-packages / keras / backend / tensorflow_backend.py 3202張量。 3203“”“-> 3204如果dtype(x)=='float64':3205 x = tf.cast(x,'float32')3206 tf_data_format ='NHWC'

〜/ anaconda3 / lib / python3.6 / site-packages / keras / backend / tensorflow_backend.py in dtype(x)640```641“”“-> 642 return x.dtype.base_dtype.name 643 644

AttributeError:“列表”對象沒有屬性“ dtype”

但是如果我打印(x),這就是我得到的結果:

tf.Tensor'mixed10 / concat:0'shape =(?, 3,3,2048)dtype = float32

所以基本上“ x”具有一個float32的dtype,但據我正確理解,AveragePooling2D無法識別它。 誰能指出我在哪里解決這個問題?

只需刪除“ s”:

x = base_model.output

這是因為outputs會為您提供輸出列表。 由於在這種情況下只有一個,因此output適合您。 否則,您必須從此列表中進行選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM