[英]cannot import name 'normalization' from 'tensorflow.python.keras.layers'
[英]ImportError: cannot import name 'BatchNormalization' from 'tensorflow.python.keras.layers'
我有一个在 google collab 和 kaggle 上运行良好的脚本,但关于它们的 memory 限制,我现在正尝试在笔记本电脑的 jupyter notebook 上运行它,但随后显示错误消息。
ImportError: cannot import name 'BatchNormalization' from 'tensorflow.python.keras.layers'
它从该行调用:
from pixellib.tune_bg import alter_bg
我已经导入了似乎需要的东西:
from tensorflow.keras.layers import (Input, Dense, Flatten, Dropout, Conv2D, MaxPooling2D, GlobalAveragePooling2D, Activation, Concatenate, LeakyReLU, BatchNormalization, concatenate)
并且还安装了:
!pip install pixellib
我的规格:
没有 GPU
keras 版本 2.8.0
tensorflow 版本 2.8.0
Python 版本 '3.10.1 (tags/v3.10.1:2cd268a, Dec 6 2021, 19:10:37) [MSC v.1929 64 位 (AMD64)]'
IPython:未安装
ipy内核:6.8.0
ipywidgets:未安装
jupyter_client:7.1.2
jupyter_core:4.9.1
jupyter_server:未安装
jupyterlab:未安装
nbclient:0.5.10
有什么建议吗?
Go 到 Pixellib 文件夹 -> 语义 -> deeplab.py 并将这一行from tensorflow.python.keras.layers import BatchNormalization
替换为这一行 from keras.layers.normalization.batch_normalization from keras.layers.normalization.batch_normalization import BatchNormalization
我认为这是因为你在这里导入 BatchNormalization: from tensorflow.keras.layers import (Input, Dense, Flatten, Dropout, Conv2D, MaxPooling2D, GlobalAveragePooling2D, Activation, Concatenate, LeakyReLU, BatchNormalization, concatenate)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.