Загрузка общей модели - PullRequest
0 голосов
/ 26 мая 2020

Я пишу модель, и я написал как таковую с намерением использовать актер_t для обучения и актер_р для прогнозирования, при этом оба они используют одни и те же слои:

actor_p = Model(inputs=inputs_, outputs=policy_)
actor_t = Model(inputs=[inputs_, advantage_, old_policy], outputs=policy_)
actor_t.compile(optimizer=opt_ac, loss=ppo_loss(advantage_, old_policy)) 
return actor_t , actor_p

Дополнительные ipnuts (Преимущество_ и старая_политика_) в Актере_t не имеют весов, поскольку они отображаются только в функции потерь.

После обучения и сохранения в формате .h5 я воссоздаю модель и загружаю ее как таковую:

tf.keras.models.save_model(actor_p, p+"_actor_ppo.h5")   #p is some path variable
...
actor_p = tf.keras.models.load_model(p+"_actor_ppo.h5")

Как вы можете видеть, Actor_t не сохраняется и не загружается, я предполагаю, что и Actor_t, и Actor_p используют одну и ту же модель предварительной загрузки, они сделают это и после загрузки.

Это правильно? Или актер_т - это модель, которая была там после построения и до загрузки, и поэтому она отличается от “актер_р”?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...