无法从“keras.preprocessing.sequence”导入名称“pad_sequences”

无法从“keras.preprocessing.sequence”导入名称“pad_sequences”

Cannot import name ‘pad_sequences’ from ‘keras.preprocessing.sequence’

出现“ImportError: cannot import name ‘pad_sequences from ‘keras.preprocessing.sequence’”是因为模块keras已被重组。

要解决该错误,请pad_sequences从导入keras.utils

importerror 无法从 keras 预处理序列导入姓名板序列

ImportError: cannot import name 'pad_sequences' from 'keras.preprocessing.sequence' (/home/borislav/Desktop/bobbyhadz_python/venv2/lib/python3.10/site-packages/keras/preprocessing/sequence.py)

替换以下导入语句。

主程序
# ⛔️ incorrect import from keras.preprocessing.sequence import pad_sequences

使用以下导入语句。

主程序
# ✅ correct import from keras.utils import pad_sequences print(pad_sequences)

从 keras utils 导入 pad 序列

keras模块已经重组,现在您还可以
pad_sequenceskeras_preprocessing.sequence.

主程序
# ✅ correct import from keras_preprocessing.sequence import pad_sequences print(pad_sequences)

如果您使用,请确保
tensorflow导入
pad_sequencestensorflow.keras.utils

主程序
# ✅ correct import from tensorflow.keras.utils import pad_sequences print(pad_sequences)
keras完全集成到 中tensorflow,因此直接导入keras会导致错误。

导入tensorflow.keras

您可能还需要将其他直接导入 from 更改keras为 import from tensorflow.keras这里有些例子。

主程序
# ⛔️ incorrect imports import keras from keras import layers from keras.preprocessing import image

将它们替换为从 导入的导入语句tensorflow.keras

主程序
# ✅ correct imports from tensorflow import keras from tensorflow.keras import layers from tensorflow.keras.preprocessing import image
该软件包在起始版本keras中捆绑tensorflow2.0.0

如果错误仍然存​​在,请尝试升级您的tensorflow和版本keras

pip install tensorflow keras --upgrade pip3 install tensorflow keras --upgrade # 👇️ for Anaconda conda install -c conda-forge tensorflow conda install -c conda-forge keras # 👇️ for Jupyter Notebook !pip install tensorflow keras --upgrade

升级tensorflow keras版本

如果所有建议都没有帮助,您可以尝试升级环境中的所有软件包。

升级您环境中的所有软件包

升级所有过时软件包的最直接方法是使用 Python 脚本。

主程序
import pkg_resources from subprocess import call packages = [dist.project_name for dist in pkg_resources.working_set] call("pip install --upgrade " + ' '.join(packages), shell=True)
您可以将脚本存储在 Python 文件中,例如main.py并运行该文件python main.py以升级所有过时的包。

以下是可用于升级所有过时软件包的替代命令。

# 👇️ macOS or Linux pip install -U `pip list --outdated | awk 'NR>2 {print $1}'` # 👇️ Windows for /F "delims= " %i in ('pip list --outdated') do pip install -U %i

如果您使用
requirements.txt文件,您可以使用以下命令更新它。

pip freeze > requirements.txt

如果错误仍然存​​在,请按照我的
ModuleNotFoundError: No module named ‘tensorflow’
一文中的说明进行操作。