ding.worker.learner.comm.base_comm_learner¶
ding.worker.learner.comm.base_comm_learner
¶
BaseCommLearner
¶
Bases: ABC
Overview
Abstract baseclass for CommLearner.
Interfaces: init, send_policy, get_data, send_learn_info, start, close Property: hooks4call
__init__(cfg)
¶
Overview
Initialization method.
Arguments:
- cfg (:obj:EasyDict): Config dict
send_policy(state_dict)
abstractmethod
¶
Overview
Save learner's policy in corresponding path. Will be registered in base learner.
Arguments:
- state_dict (:obj:dict): State dict of the runtime policy.
get_data(batch_size)
abstractmethod
¶
Overview
Get batched meta data from coordinator. Will be registered in base learner.
Arguments:
- batch_size (:obj:int): Batch size.
Returns:
- stepdata (:obj:list): A list of training data, each element is one trajectory.
send_learn_info(learn_info)
abstractmethod
¶
Overview
Send learn info to coordinator. Will be registered in base learner.
Arguments:
- learn_info (:obj:dict): Learn info in dict type.
start()
¶
Overview
Start comm learner.
close()
¶
Overview
Close comm learner.
hooks4call()
¶
Returns:
| Type | Description |
|---|---|
list
|
|
create_comm_learner(cfg)
¶
Overview
Given the key(comm_learner_name), create a new comm learner instance if in comm_map's values,
or raise an KeyError. In other words, a derived comm learner must first register,
then can call create_comm_learner to get the instance.
Arguments:
- cfg (:obj:dict): Learner config. Necessary keys: [import_names, comm_learner_type].
Returns:
- learner (:obj:BaseCommLearner): The created new comm learner, should be an instance of one of comm_map's values.
Full Source Code
../ding/worker/learner/comm/base_comm_learner.py