A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning in Python using Scikit-Learn, Keras and TensorFlow 2.
Apache License 2.0
27.99k
stars
12.8k
forks
source link
[QUESTION]: Unable to use Keras - AlreadyExistsError: Another metric with the same name already exists. #501
Hi Mr Geron,
I love your book, and have been trying to run the code examples side by side.
I am facing issue in running it on my own Windows system.
In chapter 10 noteboook, int eh section on building an Image Classifier, I am able to import keras, but am unable to use it.
Running line 11 with tf.keras.version throws the following error:
I have followed the steps mentioned in environment set up.
I am working with
Windows 10,
Python 3.8.12
In fact in the libraries installed, I do see 2 instances of keras at the following location:
site-packages/keras
site-packages/tensorflow/python/keras
~\Anaconda3\envs\tf2\lib\site-packages\tensorflow\python\util\lazy_loader.py in _load(self)
43 """Load the module and insert it into the parent's globals."""
44 # Import the target module and insert it into the parent's namespace
---> 45 module = importlib.import_module(self.name)
46 self._parent_module_globals[self._local_name] = module
47
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _load_unlocked(spec)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap_external.py in exec_module(self, module)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\site-packages\keras__init__.py in
23
24 # See b/110718070#comment18 for more details about this import.
---> 25 from keras import models
26
27 from keras.engine.input_layer import Input
~\Anaconda3\envs\tf2\lib\site-packages\keras\models.py in
18 import tensorflow.compat.v2 as tf
19 from keras import backend
---> 20 from keras import metrics as metrics_module
21 from keras import optimizer_v1
22 from keras.engine import functional
~\Anaconda3\envs\tf2\lib\site-packages\keras\metrics.py in
24
25 import numpy as np
---> 26 from keras import activations
27 from keras import backend
28 from keras.engine import base_layer
~\Anaconda3\envs\tf2\lib\site-packages\keras\activations.py in
18
19 from keras import backend
---> 20 from keras.layers import advanced_activations
21 from keras.utils.generic_utils import deserialize_keras_object
22 from keras.utils.generic_utils import serialize_keras_object
~\Anaconda3\envs\tf2\lib\site-packages\keras\layers__init__.py in
21
22 # Generic layers.
---> 23 from keras.engine.input_layer import Input
24 from keras.engine.input_layer import InputLayer
25 from keras.engine.input_spec import InputSpec
~\Anaconda3\envs\tf2\lib\site-packages\keras\engine\input_layer.py in
19 from keras import backend
20 from keras.distribute import distributed_training_utils
---> 21 from keras.engine import base_layer
22 from keras.engine import keras_tensor
23 from keras.engine import node as node_module
~\Anaconda3\envs\tf2\lib\site-packages\keras\engine\base_layer.py in
41 from keras.engine import node as node_module
42 from keras.mixed_precision import autocast_variable
---> 43 from keras.mixed_precision import loss_scale_optimizer
44 from keras.mixed_precision import policy
45 from keras.saving.saved_model import layer_serialization
~\Anaconda3\envs\tf2\lib\site-packages\keras\mixed_precision\loss_scale_optimizer.py in
16
17 from keras import backend
---> 18 from keras import optimizers
19 from keras.mixed_precision import loss_scale as keras_loss_scale_module
20 from keras.optimizer_v2 import optimizer_v2
~\Anaconda3\envs\tf2\lib\site-packages\keras\optimizers.py in
24 from keras.optimizer_v1 import Optimizer
25 from keras.optimizer_v1 import TFOptimizer
---> 26 from keras.optimizer_v2 import adadelta as adadelta_v2
27 from keras.optimizer_v2 import adagrad as adagrad_v2
28 from keras.optimizer_v2 import adam as adam_v2
~\Anaconda3\envs\tf2\lib\site-packages\keras\optimizer_v2\adadelta.py in
20 import numpy as np
21 from keras import backend_config
---> 22 from keras.optimizer_v2 import optimizer_v2
23 from tensorflow.python.util.tf_export import keras_export
24
~\Anaconda3\envs\tf2\lib\site-packages\tensorflow\python\eager\monitoring.py in init(self, name, description, labels)
358 labels: The label list of the new metric.
359 """
--> 360 super(BoolGauge, self).init('BoolGauge', _bool_gauge_methods,
361 len(labels), name, description, *labels)
362
Hi Mr Geron, I love your book, and have been trying to run the code examples side by side. I am facing issue in running it on my own Windows system. In chapter 10 noteboook, int eh section on building an Image Classifier, I am able to import keras, but am unable to use it.
Running line 11 with tf.keras.version throws the following error: I have followed the steps mentioned in environment set up. I am working with Windows 10, Python 3.8.12
In fact in the libraries installed, I do see 2 instances of keras at the following location: site-packages/keras site-packages/tensorflow/python/keras
I tried following the instructions at https://stackoverflow.com/questions/58012741/error-importing-tensorflow-alreadyexistserror-another-metric-with-the-same-nam/69830680#69830680 to no avail. Please let me know how to fix this.
AlreadyExistsError Traceback (most recent call last) C:\Users\CHOUDH~1\AppData\Local\Temp/ipykernel_16512/4011237486.py in
----> 1 tf.keras.version
~\Anaconda3\envs\tf2\lib\site-packages\tensorflow\python\util\lazy_loader.py in getattr(self, item) 60 61 def getattr(self, item): ---> 62 module = self._load() 63 return getattr(module, item) 64
~\Anaconda3\envs\tf2\lib\site-packages\tensorflow\python\util\lazy_loader.py in _load(self) 43 """Load the module and insert it into the parent's globals.""" 44 # Import the target module and insert it into the parent's namespace ---> 45 module = importlib.import_module(self.name) 46 self._parent_module_globals[self._local_name] = module 47
~\Anaconda3\envs\tf2\lib\importlib__init__.py in import_module(name, package) 125 break 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128 129
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _gcd_import(name, package, level)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_andload(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _find_and_loadunlocked(name, import)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _load_unlocked(spec)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap_external.py in exec_module(self, module)
~\Anaconda3\envs\tf2\lib\importlib_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)
~\Anaconda3\envs\tf2\lib\site-packages\keras__init__.py in
23
24 # See b/110718070#comment18 for more details about this import.
---> 25 from keras import models
26
27 from keras.engine.input_layer import Input
~\Anaconda3\envs\tf2\lib\site-packages\keras\models.py in
18 import tensorflow.compat.v2 as tf
19 from keras import backend
---> 20 from keras import metrics as metrics_module
21 from keras import optimizer_v1
22 from keras.engine import functional
~\Anaconda3\envs\tf2\lib\site-packages\keras\metrics.py in
24
25 import numpy as np
---> 26 from keras import activations
27 from keras import backend
28 from keras.engine import base_layer
~\Anaconda3\envs\tf2\lib\site-packages\keras\activations.py in
18
19 from keras import backend
---> 20 from keras.layers import advanced_activations
21 from keras.utils.generic_utils import deserialize_keras_object
22 from keras.utils.generic_utils import serialize_keras_object
~\Anaconda3\envs\tf2\lib\site-packages\keras\layers__init__.py in
21
22 # Generic layers.
---> 23 from keras.engine.input_layer import Input
24 from keras.engine.input_layer import InputLayer
25 from keras.engine.input_spec import InputSpec
~\Anaconda3\envs\tf2\lib\site-packages\keras\engine\input_layer.py in
19 from keras import backend
20 from keras.distribute import distributed_training_utils
---> 21 from keras.engine import base_layer
22 from keras.engine import keras_tensor
23 from keras.engine import node as node_module
~\Anaconda3\envs\tf2\lib\site-packages\keras\engine\base_layer.py in
41 from keras.engine import node as node_module
42 from keras.mixed_precision import autocast_variable
---> 43 from keras.mixed_precision import loss_scale_optimizer
44 from keras.mixed_precision import policy
45 from keras.saving.saved_model import layer_serialization
~\Anaconda3\envs\tf2\lib\site-packages\keras\mixed_precision\loss_scale_optimizer.py in
16
17 from keras import backend
---> 18 from keras import optimizers
19 from keras.mixed_precision import loss_scale as keras_loss_scale_module
20 from keras.optimizer_v2 import optimizer_v2
~\Anaconda3\envs\tf2\lib\site-packages\keras\optimizers.py in
24 from keras.optimizer_v1 import Optimizer
25 from keras.optimizer_v1 import TFOptimizer
---> 26 from keras.optimizer_v2 import adadelta as adadelta_v2
27 from keras.optimizer_v2 import adagrad as adagrad_v2
28 from keras.optimizer_v2 import adam as adam_v2
~\Anaconda3\envs\tf2\lib\site-packages\keras\optimizer_v2\adadelta.py in
20 import numpy as np
21 from keras import backend_config
---> 22 from keras.optimizer_v2 import optimizer_v2
23 from tensorflow.python.util.tf_export import keras_export
24
~\Anaconda3\envs\tf2\lib\site-packages\keras\optimizer_v2\optimizer_v2.py in
34
35
---> 36 keras_optimizers_gauge = tf.internal.monitoring.BoolGauge(
37 "/tensorflow/api/keras/optimizers", "keras optimizer usage", "method")
38
~\Anaconda3\envs\tf2\lib\site-packages\tensorflow\python\eager\monitoring.py in init(self, name, description, labels) 358 labels: The label list of the new metric. 359 """ --> 360 super(BoolGauge, self).init('BoolGauge', _bool_gauge_methods, 361 len(labels), name, description, *labels) 362
~\Anaconda3\envs\tf2\lib\site-packages\tensorflow\python\eager\monitoring.py in init(self, metric_name, metric_methods, label_length, args) 133 self._metric_name, len(self._metric_methods))) 134 --> 135 self._metric = self._metric_methods[self._label_length].create(args) 136 137 def del(self):
AlreadyExistsError: Another metric with the same name already exists.