Keras flatten:ValueError:尝试将具有不受支持类型(<class 'NoneType'>)的值(无)转换为张量

我有标题中提到的错误,代码如下

import tensorflow as tf
import numpy as np
import pandas as pd
import seaborn as sns
from random import shuffle
import datetime
from matplotlib import pyplot

from numpy import mean
from numpy import std
from matplotlib import pyplot
from sklearn.model_selection import KFold
from tensorflow.keras.datasets import mnist
from tensorflow.keras.utils import to_categorical
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D
from tensorflow.keras.layers import MaxPooling2D
from tensorflow.keras.layers import Dense
from tensorflow.keras.layers import flatten
from tensorflow.keras.optimizers import SGD

from tensorflow.keras.models import load_model

first_branch= Input(shape=(28,28,1))
first_branch_st1 = Conv2D(32,(3,3),activation='relu',input_shape=(28,1))(first_branch)
first_branch_st2 = MaxPooling2D((2,2))(first_branch_st1)
first_branch_st3 = flatten()(first_branch_st2)
first_branch_st4 = Dense(100,activation='relu')(first_branch_st3)

这会发送以下错误

ValueError                                Traceback (most recent call last)
/tmp/ipykernel_1973/3453405928.py in <module>
      2 first_branch_st1 = Conv2D(32,1))(first_branch)
      3 first_branch_st2 = MaxPooling2D((2,2))(first_branch_st1)
----> 4 first_branch_st3 = flatten()(first_branch_st2)
      5 first_branch_st4 = Dense(100,activation='relu')(first_branch_st3)
      6 

ValueError: Attempt to convert a value (None) with an unsupported type (<class 'NoneType'>) to a Tensor.

根据使用 same error 提出的问题,当您混合使用 keras 和 tf.keras 时会发生这种情况。但我认为已经相应地定义了进口,所以除非进口之间存在冲突或对它们的定义不好,否则我认为这不是问题。还有另一种已知的解决方案吗?

whs1234567890 回答:Keras flatten:ValueError:尝试将具有不受支持类型(<class 'NoneType'>)的值(无)转换为张量

只有 1 个错误,Input 未定义但仍与提到的错误无关。在下面使用:

first_branch= tf.keras.Input(shape=(28,28,1))

我的建议是请检查 tf 的最新版本,例如2.4.1

本文链接:https://www.f2er.com/13588.html

大家都在问