В Tensorflow 1.14 я хочу иметь возможность наследовать от частного tf.keras
_Merge
класса для реализации пользовательского слоя _Merge
во внешнем файле.
Ранее в автономных Keras яизменил содержимое файла .../keras/layers/merge.py
, заменив все _Merge
на Merge
, например, с
class _Merge(Layer):
(...)
class Add(_Merge):
на
class Merge(Layer):
(...)
class Add(Merge):
, поскольку теперь я использую функцию tf
, который вызывает tf.keras
, я хочу переключиться с автономной Keras на tf.keras
.Я изменил тот же файл таким же образом.Кроме того, я добавил декоратор в класс Merge
, как это было сделано для классов, унаследованных от _Merge
в merge.py
.
@keras_export('keras.layers.Merge')
class Merge(Layer):
Также я добавил
from tensorflow.python.keras.layers.merge import Merge
в файл __init__.py
, как это было сделано для других классов из merge.py
.
Однако я все еще получаю ошибку импорта:
ImportError: cannot import name 'Merge' from 'tensorflow.keras.layers' (unknown location)
Я предполагаю, что Tensorflow выполняет какой-то необычный экспорт Iне знаю, может кто-нибудь объяснить мне, какие дальнейшие шаги мне нужно предпринять, чтобы сделать _Merge
доступным?