And most of them were caused by missing values of the params in the automactiaclly-generated ${model_prefix}.config.json file.
For example:
AttributeError: 'Bunch' object has no attribute 'isLower'
Because isLower is not defined in config.json
NameError: name 'char_vocab' is not defined
with_char is defaulted False, in which case char_vocab is not defined.
AttributeError: 'Bunch' object has no attribute 'use_cudnn'
use_cudnn is missing in config.json. And according to TLfERLS, it needs to be set false.
And so on.
The solution I found was to replace the Line 25 in SentenceMatchDecoder.pyfrom
options = namespace_utils.load_namespace(args.model_prefix + ".config.json")
to
options = namespace_utils.load_namespace('/Users/zora/Github/BiMPM/configs/quora.sample.config')
, thus the script could use the config file supplied for training. I am not sure whether this is the correct move, but it worked.
P.S. My config.json generated automatically by SentenceMatchTrainer.py:
I ran into several errors when I tried to run the testing script with the provided instructions:
And most of them were caused by missing values of the params in the automactiaclly-generated
${model_prefix}.config.json
file.For example:
AttributeError: 'Bunch' object has no attribute 'isLower'
isLower
is not defined inconfig.json
NameError: name 'char_vocab' is not defined
with_char
is defaulted False, in which casechar_vocab
is not defined.AttributeError: 'Bunch' object has no attribute 'use_cudnn'
use_cudnn
is missing inconfig.json
. And according to TLfERLS, it needs to be setfalse
.And so on. The solution I found was to replace the Line 25 in
SentenceMatchDecoder.py
fromoptions = namespace_utils.load_namespace(args.model_prefix + ".config.json")
tooptions = namespace_utils.load_namespace('/Users/zora/Github/BiMPM/configs/quora.sample.config')
, thus the script could use the config file supplied for training. I am not sure whether this is the correct move, but it worked.P.S. My
config.json
generated automatically bySentenceMatchTrainer.py
: