Ошибка при обучении модели "a mismatch between the current graph and the graph"

Добрый день! Пытаюсь обучить модель ner_rus_bert. Скрипт обучения :

from deeppavlov import configs, train_model
from deeppavlov.core.commands.utils import parse_config
ner_model = train_model(configs.ner.ner_rus_bert, download=False)

Возникает ошибка : InvalidArgumentError: Restoring from checkpoint failed. This is most likely due to a mismatch between the current graph and the graph from the checkpoint. Please ensure that you have not altered the graph expected based on the checkpoint.

Стек :

    2020-03-23 09:50:45.511 INFO in 'deeppavlov.core.trainers.fit_trainer'['fit_trainer'] at line 68: NNTrainer got additional init parameters ['pytest_max_batches', 'pytest_batch_size'] that will be ignored:
    2020-03-23 09:50:46.20 INFO in 'deeppavlov.core.data.simple_vocab'['simple_vocab'] at line 115: [loading vocabulary from C:\Users\JDrey\.deeppavlov\models\ner_rus_bert\tag.dict]
    2020-03-23 09:50:46.21 INFO in 'deeppavlov.core.data.simple_vocab'['simple_vocab'] at line 101: [saving vocabulary to C:\Users\JDrey\.deeppavlov\models\ner_rus_bert\tag.dict]
    2020-03-23 09:51:12.212 INFO in 'deeppavlov.core.models.tf_model'['tf_model'] at line 51: [loading model from C:\Users\JDrey\.deeppavlov\models\ner_rus_bert\model]
    INFO:tensorflow:Restoring parameters from C:\Users\JDrey\.deeppavlov\models\ner_rus_bert\model
    2020-03-23 09:51:15.552 ERROR in 'deeppavlov.core.common.params'['params'] at line 112: Exception in <class 'deeppavlov.models.bert.bert_sequence_tagger.BertSequenceTagger'>
    Traceback (most recent call last):
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\client\session.py", line 1365, in _do_call
        return fn(*args)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\client\session.py", line 1350, in _run_fn
        target_list, run_metadata)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\client\session.py", line 1443, in _call_tf_sessionrun
        run_metadata)
    tensorflow.python.framework.errors_impl.InvalidArgumentError: Assign requires shapes of both tensors to match. lhs shape= [3] rhs shape= [7]
             [[{{node save/Assign_280}}]]

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 1290, in restore
        {self.saver_def.filename_tensor_name: save_path})
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\client\session.py", line 956, in run
        run_metadata_ptr)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\client\session.py", line 1180, in _run
        feed_dict_tensor, options, run_metadata)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\client\session.py", line 1359, in _do_run
        run_metadata)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\client\session.py", line 1384, in _do_call
        raise type(e)(node_def, op, message)
    tensorflow.python.framework.errors_impl.InvalidArgumentError: Assign requires shapes of both tensors to match. lhs shape= [3] rhs shape= [7]
             [[node save/Assign_280 (defined at d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py:1748) ]]

    Original stack trace for 'save/Assign_280':
      File "d:\anaconda\lib\runpy.py", line 193, in _run_module_as_main
        "__main__", mod_spec)
      File "d:\anaconda\lib\runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "d:\anaconda\lib\site-packages\spyder_kernels\console\__main__.py", line 11, in <module>
        start.main()
      File "d:\anaconda\lib\site-packages\spyder_kernels\console\start.py", line 318, in main
        kernel.start()
      File "d:\anaconda\lib\site-packages\ipykernel\kernelapp.py", line 563, in start
        self.io_loop.start()
      File "d:\anaconda\lib\site-packages\tornado\platform\asyncio.py", line 148, in start
        self.asyncio_loop.run_forever()
      File "d:\anaconda\lib\asyncio\base_events.py", line 534, in run_forever
        self._run_once()
      File "d:\anaconda\lib\asyncio\base_events.py", line 1771, in _run_once
        handle._run()
      File "d:\anaconda\lib\asyncio\events.py", line 88, in _run
        self._context.run(self._callback, *self._args)
      File "d:\anaconda\lib\site-packages\tornado\ioloop.py", line 690, in <lambda>
        lambda f: self._run_callback(functools.partial(callback, future))
      File "d:\anaconda\lib\site-packages\tornado\ioloop.py", line 743, in _run_callback
        ret = callback()
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 787, in inner
        self.run()
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 748, in run
        yielded = self.gen.send(value)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 365, in process_one
        yield gen.maybe_future(dispatch(*args))
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 272, in dispatch_shell
        yield gen.maybe_future(handler(stream, idents, msg))
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 542, in execute_request
        user_expressions, allow_stdin,
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\ipkernel.py", line 294, in do_execute
        res = shell.run_cell(code, store_history=store_history, silent=silent)
      File "d:\anaconda\lib\site-packages\ipykernel\zmqshell.py", line 536, in run_cell
        return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2855, in run_cell
        raw_cell, store_history, silent, shell_futures)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2881, in _run_cell
        return runner(coro)
      File "d:\anaconda\lib\site-packages\IPython\core\async_helpers.py", line 68, in _pseudo_sync_runner
        coro.send(None)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3058, in run_cell_async
        interactivity=interactivity, compiler=compiler, result=result)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3249, in run_ast_nodes
        if (await self.run_code(code, result,  async_=asy)):
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3326, in run_code
        exec(code_obj, self.user_global_ns, self.user_ns)
      File "<ipython-input-6-62567f577e80>", line 1, in <module>
        runfile('D:/Jdrey/PyNet/testLoad/train_pavlov.py', wdir='D:/Jdrey/PyNet/testLoad')
      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
        execfile(filename, namespace)
      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
        exec(compile(f.read(), filename, 'exec'), namespace)
      File "D:/Jdrey/PyNet/testLoad/train_pavlov.py", line 19, in <module>
        ner_model = train_model(configs.ner.ner_rus_bert, download=False)
      File "d:\anaconda\lib\site-packages\deeppavlov\__init__.py", line 32, in train_model
        train_evaluate_model_from_config(config, download=download, recursive=recursive)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\commands\train.py", line 121, in train_evaluate_model_from_config
        trainer.train(iterator)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\nn_trainer.py", line 333, in train
        self.fit_chainer(iterator)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\fit_trainer.py", line 104, in fit_chainer
        component = from_params(component_config, mode='train')
      File "d:\anaconda\lib\site-packages\deeppavlov\core\common\params.py", line 106, in from_params
        component = obj(**dict(config_params, **kwargs))
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 76, in __call__
        obj.__init__(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 529, in __init__
        **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 259, in __init__
        self.load()
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 457, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 251, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 54, in load
        saver = tf.train.Saver(var_list)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 828, in __init__
        self.build()
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 840, in build
        self._build(self._filename, build_save=True, build_restore=True)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 878, in _build
        build_restore=build_restore)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 508, in _build_internal
        restore_sequentially, reshape)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 350, in _AddRestoreOps
        assign_ops.append(saveable.restore(saveable_tensors, shapes))
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saving\saveable_object_util.py", line 73, in restore
        self.op.get_shape().is_fully_defined())
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\ops\state_ops.py", line 227, in assign
        validate_shape=validate_shape)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\ops\gen_state_ops.py", line 65, in assign
        use_locking=use_locking, name=name)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\op_def_library.py", line 794, in _apply_op_helper
        op_def=op_def)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\util\deprecation.py", line 507, in new_func
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3357, in create_op
        attrs, op_def, compute_device)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3426, in _create_op_internal
        op_def=op_def)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 1748, in __init__
        self._traceback = tf_stack.extract_stack()

Весь стек не помещается, добавлю конец в комментарии.

Нашла вот такой совет “The model was laded from the old path. the BERT model in the config has load_path and save_path . The old model has different number of tags in the top layer. You should remove the old model from the load_path .” (https://github.com/deepmipt/DeepPavlov/issues/839), но в config пути load_path и save_path одинаковые, соответственно, модель одна и та же.

Остаток стека :

 During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "d:\anaconda\lib\site-packages\deeppavlov\core\common\params.py", line 106, in from_params
        component = obj(**dict(config_params, **kwargs))
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 76, in __call__
        obj.__init__(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 529, in __init__
        **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 259, in __init__
        self.load()
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 457, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 251, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 55, in load
        saver.restore(self.sess, path)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 1326, in restore
        err, "a mismatch between the current graph and the graph")
    tensorflow.python.framework.errors_impl.InvalidArgumentError: Restoring from checkpoint failed. This is most likely due to a mismatch between the current graph and the graph from the checkpoint. Please ensure that you have not altered the graph expected based on the checkpoint. Original error:

    Assign requires shapes of both tensors to match. lhs shape= [3] rhs shape= [7]
             [[node save/Assign_280 (defined at d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py:1748) ]]

    Original stack trace for 'save/Assign_280':
      File "d:\anaconda\lib\runpy.py", line 193, in _run_module_as_main
        "__main__", mod_spec)
      File "d:\anaconda\lib\runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "d:\anaconda\lib\site-packages\spyder_kernels\console\__main__.py", line 11, in <module>
        start.main()
      File "d:\anaconda\lib\site-packages\spyder_kernels\console\start.py", line 318, in main
        kernel.start()
      File "d:\anaconda\lib\site-packages\ipykernel\kernelapp.py", line 563, in start
        self.io_loop.start()
      File "d:\anaconda\lib\site-packages\tornado\platform\asyncio.py", line 148, in start
        self.asyncio_loop.run_forever()
      File "d:\anaconda\lib\asyncio\base_events.py", line 534, in run_forever
        self._run_once()
      File "d:\anaconda\lib\asyncio\base_events.py", line 1771, in _run_once
        handle._run()
      File "d:\anaconda\lib\asyncio\events.py", line 88, in _run
        self._context.run(self._callback, *self._args)
      File "d:\anaconda\lib\site-packages\tornado\ioloop.py", line 690, in <lambda>
        lambda f: self._run_callback(functools.partial(callback, future))
      File "d:\anaconda\lib\site-packages\tornado\ioloop.py", line 743, in _run_callback
        ret = callback()
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 787, in inner
        self.run()
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 748, in run
        yielded = self.gen.send(value)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 365, in process_one
        yield gen.maybe_future(dispatch(*args))
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 272, in dispatch_shell
        yield gen.maybe_future(handler(stream, idents, msg))
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 542, in execute_request
        user_expressions, allow_stdin,
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\ipkernel.py", line 294, in do_execute
        res = shell.run_cell(code, store_history=store_history, silent=silent)
      File "d:\anaconda\lib\site-packages\ipykernel\zmqshell.py", line 536, in run_cell
        return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2855, in run_cell
        raw_cell, store_history, silent, shell_futures)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2881, in _run_cell
        return runner(coro)
      File "d:\anaconda\lib\site-packages\IPython\core\async_helpers.py", line 68, in _pseudo_sync_runner
        coro.send(None)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3058, in run_cell_async
        interactivity=interactivity, compiler=compiler, result=result)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3249, in run_ast_nodes
        if (await self.run_code(code, result,  async_=asy)):
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3326, in run_code
        exec(code_obj, self.user_global_ns, self.user_ns)
      File "<ipython-input-6-62567f577e80>", line 1, in <module>
        runfile('D:/Jdrey/PyNet/testLoad/train_pavlov.py', wdir='D:/Jdrey/PyNet/testLoad')
      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
        execfile(filename, namespace)
      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
        exec(compile(f.read(), filename, 'exec'), namespace)
      File "D:/Jdrey/PyNet/testLoad/train_pavlov.py", line 19, in <module>
        ner_model = train_model(configs.ner.ner_rus_bert, download=False)
      File "d:\anaconda\lib\site-packages\deeppavlov\__init__.py", line 32, in train_model
        train_evaluate_model_from_config(config, download=download, recursive=recursive)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\commands\train.py", line 121, in train_evaluate_model_from_config
        trainer.train(iterator)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\nn_trainer.py", line 333, in train
        self.fit_chainer(iterator)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\fit_trainer.py", line 104, in fit_chainer
        component = from_params(component_config, mode='train')
      File "d:\anaconda\lib\site-packages\deeppavlov\core\common\params.py", line 106, in from_params
        component = obj(**dict(config_params, **kwargs))
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 76, in __call__
        obj.__init__(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 529, in __init__
        **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 259, in __init__
        self.load()
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 457, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 251, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 54, in load
        saver = tf.train.Saver(var_list)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 828, in __init__
        self.build()
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 840, in build
        self._build(self._filename, build_save=True, build_restore=True)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 878, in _build
        build_restore=build_restore)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 508, in _build_internal
        restore_sequentially, reshape)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 350, in _AddRestoreOps
        assign_ops.append(saveable.restore(saveable_tensors, shapes))
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saving\saveable_object_util.py", line 73, in restore
        self.op.get_shape().is_fully_defined())
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\ops\state_ops.py", line 227, in assign
        validate_shape=validate_shape)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\ops\gen_state_ops.py", line 65, in assign
        use_locking=use_locking, name=name)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\op_def_library.py", line 794, in _apply_op_helper
        op_def=op_def)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\util\deprecation.py", line 507, in new_func
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3357, in create_op
        attrs, op_def, compute_device)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3426, in _create_op_internal
        op_def=op_def)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 1748, in __init__
        self._traceback = tf_stack.extract_stack()

    Traceback (most recent call last):

      File "<ipython-input-6-62567f577e80>", line 1, in <module>
        runfile('D:/Jdrey/PyNet/testLoad/train_pavlov.py', wdir='D:/Jdrey/PyNet/testLoad')

      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
        execfile(filename, namespace)

      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
        exec(compile(f.read(), filename, 'exec'), namespace)

      File "D:/Jdrey/PyNet/testLoad/train_pavlov.py", line 19, in <module>
        ner_model = train_model(configs.ner.ner_rus_bert, download=False)

      File "d:\anaconda\lib\site-packages\deeppavlov\__init__.py", line 32, in train_model
        train_evaluate_model_from_config(config, download=download, recursive=recursive)

      File "d:\anaconda\lib\site-packages\deeppavlov\core\commands\train.py", line 121, in train_evaluate_model_from_config
        trainer.train(iterator)

      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\nn_trainer.py", line 333, in train
        self.fit_chainer(iterator)

      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\fit_trainer.py", line 104, in fit_chainer
        component = from_params(component_config, mode='train')

      File "d:\anaconda\lib\site-packages\deeppavlov\core\common\params.py", line 106, in from_params
        component = obj(**dict(config_params, **kwargs))

      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 76, in __call__
        obj.__init__(*args, **kwargs)

      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)

      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 529, in __init__
        **kwargs)

      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 259, in __init__
        self.load()

      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)

      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 457, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)

      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 251, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)

      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 55, in load
        saver.restore(self.sess, path)

      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 1326, in restore
        err, "a mismatch between the current graph and the graph")

    InvalidArgumentError: Restoring from checkpoint failed. This is most likely due to a mismatch between the current graph and the graph from the checkpoint. Please ensure that you have not altered the graph expected based on the checkpoint. Original error:

    Assign requires shapes of both tensors to match. lhs shape= [3] rhs shape= [7]
    	 [[node save/Assign_280 (defined at d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py:1748) ]]

    Original stack trace for 'save/Assign_280':
      File "d:\anaconda\lib\runpy.py", line 193, in _run_module_as_main
        "__main__", mod_spec)
      File "d:\anaconda\lib\runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "d:\anaconda\lib\site-packages\spyder_kernels\console\__main__.py", line 11, in <module>
        start.main()
      File "d:\anaconda\lib\site-packages\spyder_kernels\console\start.py", line 318, in main
        kernel.start()
      File "d:\anaconda\lib\site-packages\ipykernel\kernelapp.py", line 563, in start
        self.io_loop.start()
      File "d:\anaconda\lib\site-packages\tornado\platform\asyncio.py", line 148, in start
        self.asyncio_loop.run_forever()
      File "d:\anaconda\lib\asyncio\base_events.py", line 534, in run_forever
        self._run_once()
      File "d:\anaconda\lib\asyncio\base_events.py", line 1771, in _run_once
        handle._run()
      File "d:\anaconda\lib\asyncio\events.py", line 88, in _run
        self._context.run(self._callback, *self._args)
      File "d:\anaconda\lib\site-packages\tornado\ioloop.py", line 690, in <lambda>
        lambda f: self._run_callback(functools.partial(callback, future))
      File "d:\anaconda\lib\site-packages\tornado\ioloop.py", line 743, in _run_callback
        ret = callback()
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 787, in inner
        self.run()
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 748, in run
        yielded = self.gen.send(value)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 365, in process_one
        yield gen.maybe_future(dispatch(*args))
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 272, in dispatch_shell
        yield gen.maybe_future(handler(stream, idents, msg))
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 542, in execute_request
        user_expressions, allow_stdin,
      File "d:\anaconda\lib\site-packages\tornado\gen.py", line 209, in wrapper
        yielded = next(result)
      File "d:\anaconda\lib\site-packages\ipykernel\ipkernel.py", line 294, in do_execute
        res = shell.run_cell(code, store_history=store_history, silent=silent)
      File "d:\anaconda\lib\site-packages\ipykernel\zmqshell.py", line 536, in run_cell
        return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2855, in run_cell
        raw_cell, store_history, silent, shell_futures)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2881, in _run_cell
        return runner(coro)
      File "d:\anaconda\lib\site-packages\IPython\core\async_helpers.py", line 68, in _pseudo_sync_runner
        coro.send(None)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3058, in run_cell_async
        interactivity=interactivity, compiler=compiler, result=result)
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3249, in run_ast_nodes
        if (await self.run_code(code, result,  async_=asy)):
      File "d:\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3326, in run_code
        exec(code_obj, self.user_global_ns, self.user_ns)
      File "<ipython-input-6-62567f577e80>", line 1, in <module>
        runfile('D:/Jdrey/PyNet/testLoad/train_pavlov.py', wdir='D:/Jdrey/PyNet/testLoad')
      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
        execfile(filename, namespace)
      File "d:\anaconda\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
        exec(compile(f.read(), filename, 'exec'), namespace)
      File "D:/Jdrey/PyNet/testLoad/train_pavlov.py", line 19, in <module>
        ner_model = train_model(configs.ner.ner_rus_bert, download=False)
      File "d:\anaconda\lib\site-packages\deeppavlov\__init__.py", line 32, in train_model
        train_evaluate_model_from_config(config, download=download, recursive=recursive)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\commands\train.py", line 121, in train_evaluate_model_from_config
        trainer.train(iterator)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\nn_trainer.py", line 333, in train
        self.fit_chainer(iterator)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\trainers\fit_trainer.py", line 104, in fit_chainer
        component = from_params(component_config, mode='train')
      File "d:\anaconda\lib\site-packages\deeppavlov\core\common\params.py", line 106, in from_params
        component = obj(**dict(config_params, **kwargs))
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 76, in __call__
        obj.__init__(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 529, in __init__
        **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 259, in __init__
        self.load()
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_backend.py", line 28, in _wrapped
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\models\bert\bert_sequence_tagger.py", line 457, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 251, in load
        return super().load(exclude_scopes=exclude_scopes, **kwargs)
      File "d:\anaconda\lib\site-packages\deeppavlov\core\models\tf_model.py", line 54, in load
        saver = tf.train.Saver(var_list)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 828, in __init__
        self.build()
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 840, in build
        self._build(self._filename, build_save=True, build_restore=True)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 878, in _build
        build_restore=build_restore)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 508, in _build_internal
        restore_sequentially, reshape)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saver.py", line 350, in _AddRestoreOps
        assign_ops.append(saveable.restore(saveable_tensors, shapes))
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\training\saving\saveable_object_util.py", line 73, in restore
        self.op.get_shape().is_fully_defined())
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\ops\state_ops.py", line 227, in assign
        validate_shape=validate_shape)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\ops\gen_state_ops.py", line 65, in assign
        use_locking=use_locking, name=name)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\op_def_library.py", line 794, in _apply_op_helper
        op_def=op_def)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\util\deprecation.py", line 507, in new_func
        return func(*args, **kwargs)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3357, in create_op
        attrs, op_def, compute_device)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 3426, in _create_op_internal
        op_def=op_def)
      File "d:\anaconda\lib\site-packages\tensorflow_core\python\framework\ops.py", line 1748, in __init__
        self._traceback = tf_stack.extract_stack()

В итоге просто удалила модель из {NER} и обучение запустилось.

Привет, @IDrei!

Если вы учите модель на своих данных, то итоговые размерности вашей получившейся модели и модели, предобученной на других данных, могут не совпадать из-за разного количества видов сущностей, например.
Поэтому я бы вам советовал скопировать конфигурацию ner_rus_bert в удобное для вас место, убрать из загрузок архив с моделью и поменять data_path в датасет ридере и переменную NER_PATH, чтобы избежать коллизий.

Спасибо за ответ!
Уточняющий вопрос :
после манипуляций из вашего комментария я работаю со скопированной моделью ? (которая “скопировать конфигурацию ner_rus_bert в удобное для вас место” ) ? каким образом тогда мне указать именно эту модель при запуске обучения? Команда

ner_model = train_model(configs.ner.ner_rus_bert)

смотрит только в “своё” обычное место. Я могу одновременно иметь два варианта модели в разных местах, переключаясь с помощью конфига? то есть я представляю это наподобие:

my_ner_model = train_model(configs.ner.my.ner_rus_bert) - здесь используется отредактированный ner_rus_bert.json . но так не работает )))

build_model() и train_model() первым аргументом принимают путь к файлу конфигурации, поэтому можно просто запустить train_model('./my_ner.json'), чтобы запустить тренировку по конфигу my_ner.json, находящемуся в текущей папке.
Структура configs в своих листьях тоже содержит пути.

@yoptar

Значит ли это, что нельзя взять обученную модель и дообучить её на своих данных, добавив новые типы сущностей?
у меня получается обучать модель на своих сущностях “с нуля”, но не могу дообучить уже предобученную вашу. Это я просто хочу невозможного? значит, модель всегда может оперировать только теми типами сущностей, которые заложены в ней при самом первом обучении?

Типы сущностей можно поменять (хотя я и не уверен, что это будет лучше, чем просто обучить заново), но их количество должно сохраниться.