首页 > 其他分享 >深度学习ppo训练

深度学习ppo训练

时间:2024-02-02 13:33:35浏览次数:30  
标签:__ false name 训练 ppo num 深度 null class

 

1

 

1

1

 

 

1

 

 

1

1

 

{
  "action_space" : [ {
    "steering_angle" : 25.0,
    "speed" : 1.3,
    "index" : 0
  }, {
    "steering_angle" : 10.0,
    "speed" : 1.3,
    "index" : 1
  }, {
    "steering_angle" : 10.0,
    "speed" : 2.6,
    "index" : 2
  }, {
    "steering_angle" : 0.0,
    "speed" : 3.0,
    "index" : 3
  }, {
    "steering_angle" : -10.0,
    "speed" : 1.3,
    "index" : 4
  }, {
    "steering_angle" : -10.0,
    "speed" : 2.6,
    "index" : 5
  }, {
    "steering_angle" : -20.0,
    "speed" : 1.3,
    "index" : 6
  } ],
  "sensor" : [ "FRONT_FACING_CAMERA" ],
  "neural_network" : "DEEP_CONVOLUTIONAL_NETWORK_SHALLOW",
  "version" : "4",
  "training_algorithm" : "clipped_ppo",
  "action_space_type" : "discrete"
}

 

1

done_condition: 
<built-in function any>
sess: 
agent: <tensorflow.python.client.session.Session object at 0x7fc299ed4eb8>

level_managers: 
0: <markov.multi_agent_coach.multi_agent_level_manager.MultiAgentLevelManager object at 0x7fc2998da828>

top_level_manager: 
<markov.multi_agent_coach.multi_agent_level_manager.MultiAgentLevelManager object at 0x7fc2998da828>
environments: 
0: <markov.environments.deepracer_racetrack_env.DeepRacerRacetrackEnv object at 0x7fc2998dacf8>

heatup_steps: 
<rl_coach.core_types.EnvironmentSteps object at 0x7fc299f1bb00>
evaluation_steps: 
<rl_coach.core_types.EnvironmentEpisodes object at 0x7fc299f1b9b0>
steps_between_evaluation_periods: 
<rl_coach.core_types.EnvironmentEpisodes object at 0x7fc299f1b9e8>
improve_steps: 
<rl_coach.core_types.TrainingSteps object at 0x7fc299f1b908>
visualization_parameters: 
"VisualizationParameters" {
    "add_rendered_image_to_env_response": false,
    "dump_csv": true,
    "dump_gifs": false,
    "dump_in_episode_signals": false,
    "dump_mp4": false,
    "dump_parameters_documentation": true,
    "dump_signals_to_csv_every_x_episodes": 5,
    "max_fps_for_human_control": 10,
    "native_rendering": false,
    "print_networks_summary": false,
    "render": false,
    "tensorboard": false,
    "video_dump_filters": {
        "0": {
            "run_phases": {
                "0": {
                    "_value_": "Testing",
                    "_name_": "TEST",
                    "__objclass__": "<enum 'RunPhase'>"
                }
            },
            "__class__": "SelectedPhaseOnlyDumpFilter"
        },
        "1": {
            "max_reward_achieved": -Infinity,
            "__class__": "MaxDumpFilter"
        }
    }
}

name: 
multi_agent_graph
task_parameters: 
"TaskParameters" {
    "apply_stop_condition": false,
    "checkpoint_restore_path": null,
    "checkpoint_save_dir": "./checkpoint_sagemaker",
    "checkpoint_save_secs": 20,
    "evaluate_only": null,
    "experiment_path": "/opt/ml/model",
    "export_onnx_graph": false,
    "framework_type": {
        "_value_": "TensorFlow",
        "_name_": "tensorflow",
        "__objclass__": "<enum 'Frameworks'>"
    },
    "num_gpu": 1,
    "seed": null,
    "task_index": 0,
    "use_cpu": false
}

_phase: 
RunPhase.UNDEFINED
preset_validation_params: 
"PresetValidationParameters" {
    "max_episodes_to_achieve_reward": 10000,
    "min_reward_threshold": 400,
    "num_workers": 1,
    "read_csv_tries": 200,
    "reward_test_level": null,
    "test": true,
    "test_using_a_trace_test": true,
    "trace_max_env_steps": 5000,
    "trace_test_levels": null
}

reset_required: 
False
num_checkpoints_to_keep: 
4
graph_creation_time: 
1706835211.7137258
last_checkpoint_saving_time: 
1706835211.2584164
total_steps_counters: 
RunPhase.HEATUP: <rl_coach.core_types.TotalStepsCounter object at 0x7fc299ecd240>
RunPhase.TRAIN: <rl_coach.core_types.TotalStepsCounter object at 0x7fc299ecd278>
RunPhase.TEST: <rl_coach.core_types.TotalStepsCounter object at 0x7fc299ecd320>

checkpoint_id: 
0
checkpoint_saver: 
agent: <rl_coach.saver.SaverCollection object at 0x7fc299a52ef0>

checkpoint_state_updater: 
agent: None

graph_logger: 
<rl_coach.logger.Logger object at 0x7fc299ecd358>
data_store: 
<markov.s3_boto_data_store.S3BotoDataStore object at 0x7fc299603dd8>
is_batch_rl: 
False
time_metric: 
TimeTypes.EpisodeNumber
env_params: 
"DeepRacerRacetrackEnvParameters" {
    "agents_params": {
        "0": {
            "algorithm": {
                "act_for_full_episodes": true,
                "apply_gradients_every_x_episodes": 5,
                "beta_entropy": 0.01,
                "clip_likelihood_ratio_using_epsilon": 0.2,
                "clipping_decay_schedule": {
                    "current_value": 1,
                    "initial_value": 1,
                    "__class__": "ConstantSchedule"
                },
                "discount": 0.999,
                "distributed_coach_synchronization_type": {
                    "_value_": "sync",
                    "_name_": "SYNC",
                    "__objclass__": "<enum 'DistributedCoachSynchronizationType'>"
                },
                "estimate_state_value_using_gae": true,
                "gae_lambda": 0.95,
                "heatup_using_network_decisions": false,
                "in_action_space": null,
                "load_memory_from_file_path": null,
                "n_step": -1,
                "normalization_stats": null,
                "num_consecutive_playing_steps": {
                    "_num_steps": 20,
                    "__class__": "EnvironmentEpisodes"
                },
                "num_consecutive_training_steps": 1,
                "num_episodes_in_experience_replay": 1000000,
                "num_steps_between_copying_online_weights_to_target": {
                    "_num_steps": 20,
                    "__class__": "EnvironmentEpisodes"
                },
                "optimization_epochs": 10,
                "policy_gradient_rescaler": {
                    "_value_": 8,
                    "_name_": "GAE",
                    "__objclass__": "<enum 'PolicyGradientRescaler'>"
                },
                "rate_for_copying_weights_to_target": 1.0,
                "share_statistics_between_workers": true,
                "store_transitions_only_when_episodes_are_terminated": false,
                "supports_parameter_noise": false,
                "use_accumulated_reward_as_measurement": false,
                "use_kl_regularization": false,
                "__class__": "ClippedPPOAlgorithmParameters"
            },
            "current_episode": 0,
            "env_agent": {
                "_ctrl_": {
                    "_action_space_": {
                        "_high": "array([6.])",
                        "_low": "array([0.])",
                        "_shape": "array([1])",
                        "default_action": 3,
                        "descriptions": {},
                        "num_dimensions": 1,
                        "num_elements": 1,
                        "__class__": "DiscreteActionSpace"
                    },
                    "_agent_name_": "racecar",
                    "_model_metadata_": {
                        "_bucket": "aws-deepracer-data-us-east-1-1",
                        "_local_dir": "./custom_files/agent",
                        "_local_path": "./custom_files/agent/model_metadata.json",
                        "_model_metadata": {
                            "action_space": {
                                "0": {
                                    "index": 0,
                                    "speed": 1.3,
                                    "steering_angle": 25.0
                                },
                                "1": {
                                    "index": 1,
                                    "speed": 1.3,
                                    "steering_angle": 10.0
                                },
                                "2": {
                                    "index": 2,
                                    "speed": 2.6,
                                    "steering_angle": 10.0
                                },
                                "3": {
                                    "index": 3,
                                    "speed": 3.0,
                                    "steering_angle": 0.0
                                },
                                "4": {
                                    "index": 4,
                                    "speed": 1.3,
                                    "steering_angle": -10.0
                                },
                                "5": {
                                    "index": 5,
                                    "speed": 2.6,
                                    "steering_angle": -10.0
                                },
                                "6": {
                                    "index": 6,
                                    "speed": 1.3,
                                    "steering_angle": -20.0
                                }
                            },
                            "action_space_type": "discrete",
                            "lidar_config": {
                                "clipping_dist": 2.0,
                                "num_sectors": 8,
                                "num_values_per_sector": 8
                            },
                            "neural_network": "DEEP_CONVOLUTIONAL_NETWORK_SHALLOW",
                            "sensor": {
                                "0": "FRONT_FACING_CAMERA"
                            },
                            "training_algorithm": "clipped_ppo",
                            "version": 4.0
                        },
                        "_s3_client": {
                            "_backoff_time_sec": 1.0,
                            "_boto_client_name": "s3",
                            "_log_and_cont": false,
                            "_max_retry_attempts": 5,
                            "_region_name": "us-east-1",
                            "_session": null,
                            "__class__": "S3Client"
                        },
                        "_s3_key": "data-a01821fd-17a9-4505-a9b6-5beb07bbad0e/models/41a43e9f-6d70-4e26-81fa-ad174b497f0c/model_metadata.json",
                        "__class__": "ModelMetadata"
                    },
                    "__class__": "TrainingCtrl"
                },
                "_network_settings_": {
                    "activation_function": "relu",
                    "embedder_type": "scheme",
                    "input_embedders": {
                        "FRONT_FACING_CAMERA": {
                            "bn_info_conv": {
                                "0": false,
                                "1": "relu",
                                "2": 0.0
                            },
                            "bn_info_dense": {
                                "0": false,
                                "1": "relu",
                                "2": 0.0
                            },
                            "conv_info_list": {
                                "0": {
                                    "0": 32,
                                    "1": 8,
                                    "2": 4
                                },
                                "1": {
                                    "0": 64,
                                    "1": 4,
                                    "2": 2
                                },
                                "2": {
                                    "0": 64,
                                    "1": 3,
                                    "2": 1
                                }
                            },
                            "dense_layer__hidden_unit_list": {},
                            "is_first_layer_bn": false
                        }
                    },
                    "middleware_embedders": {
                        "bn_info_conv": {
                            "0": false,
                            "1": "relu",
                            "2": 0.0
                        },
                        "bn_info_dense": {
                            "0": false,
                            "1": "relu",
                            "2": 0.0
                        },
                        "conv_info_list": {},
                        "dense_layer__hidden_unit_list": {
                            "0": 512
                        },
                        "is_first_layer_bn": false
                    }
                },
                "_sensor_": {
                    "sensors": {
                        "0": {
                            "__class__": "Camera"
                        }
                    },
                    "__class__": "CompositeSensor"
                },
                "__class__": "Agent"
            },
            "exploration": {
                "action_space": {
                    "_high": "array([6.])",
                    "_low": "array([0.])",
                    "_shape": "array([1])",
                    "default_action": 3,
                    "descriptions": {},
                    "num_dimensions": 1,
                    "num_elements": 1,
                    "__class__": "DiscreteActionSpace"
                },
                "use_stochastic_evaluation_policy": false,
                "__class__": "DeepRacerCategoricalParameters"
            },
            "full_name_id": "main_level/agent",
            "input_filter": {
                "_observation_filters": {
                    "FRONT_FACING_CAMERA": {
                        "to_grayscale": {
                            "name": null,
                            "supports_batching": false,
                            "__class__": "ObservationRGBToYFilter"
                        },
                        "to_uint8": {
                            "input_high": 255,
                            "input_low": 0,
                            "name": null,
                            "supports_batching": false,
                            "__class__": "ObservationToUInt8Filter"
                        },
                        "stacking": {
                            "input_observation_space": null,
                            "name": null,
                            "stack": {},
                            "stack_size": 1,
                            "stacking_axis": -1,
                            "supports_batching": false,
                            "__class__": "ObservationStackingFilter"
                        }
                    }
                },
                "_reward_filters": {},
                "i_am_a_reference_filter": false,
                "name": "input_filter",
                "__class__": "InputFilter"
            },
            "is_a_highest_level_agent": true,
            "is_a_lowest_level_agent": true,
            "is_batch_rl_training": false,
            "memory": {
                "load_memory_from_file_path": null,
                "max_size": [
                    "<MemoryGranularity.Transitions: 0>",
                    1000000
                ],
                "n_step": -1,
                "shared_memory": false,
                "train_to_eval_ratio": 1,
                "__class__": "DeepRacerMemoryParameters"
            },
            "name": "agent",
            "network_wrappers": {
                "main": {
                    "adam_optimizer_beta1": 0.9,
                    "adam_optimizer_beta2": 0.999,
                    "async_training": false,
                    "batch_size": 64,
                    "clip_gradients": null,
                    "create_target_network": true,
                    "embedding_merger_type": {
                        "_value_": 0,
                        "_name_": "Concat",
                        "__objclass__": "<enum 'EmbeddingMergerType'>"
                    },
                    "force_cpu": false,
                    "framework": {
                        "_value_": "TensorFlow",
                        "_name_": "tensorflow",
                        "__objclass__": "<enum 'Frameworks'>"
                    },
                    "gradients_clipping_method": {
                        "_value_": 0,
                        "_name_": "ClipByGlobalNorm",
                        "__objclass__": "<enum 'GradientClippingMethod'>"
                    },
                    "heads_parameters": {
                        "0": {
                            "activation_function": "relu",
                            "dense_layer": null,
                            "initializer": "normalized_columns",
                            "is_training": false,
                            "loss_weight": 1.0,
                            "name": "v_head_params",
                            "num_output_head_copies": 1,
                            "output_bias_initializer": null,
                            "parameterized_class_name": "VHead",
                            "rescale_gradient_from_head_by_factor": 1.0,
                            "__class__": "VHeadParameters"
                        },
                        "1": {
                            "activation_function": "tanh",
                            "dense_layer": null,
                            "is_training": false,
                            "loss_weight": 1.0,
                            "name": "ppo_head_params",
                            "num_output_head_copies": 1,
                            "parameterized_class_name": "PPOHead",
                            "rescale_gradient_from_head_by_factor": 1.0,
                            "__class__": "PPOHeadParameters"
                        }
                    },
                    "input_embedders_parameters": {
                        "FRONT_FACING_CAMERA": {
                            "activation_function": "relu",
                            "batchnorm": false,
                            "dense_layer": null,
                            "dropout_rate": 0.0,
                            "input_clipping": null,
                            "input_offset": {
                                "image": 0.0,
                                "tensor": 0.0,
                                "vector": 0.0
                            },
                            "input_rescaling": {
                                "image": 255.0,
                                "tensor": 1.0,
                                "vector": 1.0
                            },
                            "is_training": false,
                            "name": "embedder",
                            "scheme": {
                                "0": {
                                    "kernel_size": 8,
                                    "num_filters": 32,
                                    "strides": 4,
                                    "__class__": "Conv2d"
                                },
                                "1": {
                                    "kernel_size": 4,
                                    "num_filters": 64,
                                    "strides": 2,
                                    "__class__": "Conv2d"
                                },
                                "2": {
                                    "kernel_size": 3,
                                    "num_filters": 64,
                                    "strides": 1,
                                    "__class__": "Conv2d"
                                }
                            },
                            "__class__": "InputEmbedderParameters"
                        }
                    },
                    "l2_regularization": 0,
                    "learning_rate": 0.0003,
                    "learning_rate_decay_rate": 0,
                    "learning_rate_decay_steps": 0,
                    "middleware_parameters": {
                        "activation_function": "relu",
                        "batchnorm": false,
                        "dense_layer": null,
                        "dropout_rate": 0.0,
                        "is_training": false,
                        "name": "middleware_fc_embedder",
                        "num_streams": 1,
                        "parameterized_class_name": "FCMiddleware",
                        "scheme": {
                            "0": {
                                "units": 512,
                                "__class__": "Dense"
                            }
                        },
                        "__class__": "FCMiddlewareParameters"
                    },
                    "optimizer_epsilon": 1e-05,
                    "optimizer_type": "Adam",
                    "replace_mse_with_huber_loss": true,
                    "rms_prop_optimizer_decay": 0.9,
                    "scale_down_gradients_by_number_of_workers_for_sync_training": true,
                    "sess": null,
                    "shared_optimizer": true,
                    "softmax_temperature": 1,
                    "tensorflow_support": true,
                    "use_separate_networks_per_head": true,
                    "__class__": "ClippedPPONetworkParameters"
                }
            },
            "output_filter": {
                "_action_filters": {},
                "i_am_a_reference_filter": false,
                "name": "output_filter",
                "__class__": "NoOutputFilter"
            },
            "pre_network_filter": {
                "_observation_filters": {},
                "_reward_filters": {},
                "i_am_a_reference_filter": false,
                "name": "pre_network_filter",
                "__class__": "NoInputFilter"
            },
            "task_parameters": {
                "apply_stop_condition": false,
                "checkpoint_restore_path": null,
                "checkpoint_save_dir": "./checkpoint_sagemaker",
                "checkpoint_save_secs": 20,
                "evaluate_only": null,
                "experiment_path": "/opt/ml/model",
                "export_onnx_graph": false,
                "framework_type": {
                    "_value_": "TensorFlow",
                    "_name_": "tensorflow",
                    "__objclass__": "<enum 'Frameworks'>"
                },
                "num_gpu": 1,
                "seed": null,
                "task_index": 0,
                "use_cpu": false,
                "__class__": "TaskParameters"
            },
            "visualization": {
                "add_rendered_image_to_env_response": false,
                "dump_csv": true,
                "dump_gifs": false,
                "dump_in_episode_signals": false,
                "dump_mp4": false,
                "dump_parameters_documentation": true,
                "dump_signals_to_csv_every_x_episodes": 5,
                "max_fps_for_human_control": 10,
                "native_rendering": false,
                "print_networks_summary": false,
                "render": false,
                "tensorboard": false,
                "video_dump_filters": {
                    "0": {
                        "run_phases": {
                            "0": {
                                "_value_": "Testing",
                                "_name_": "TEST",
                                "__objclass__": "<enum 'RunPhase'>"
                            }
                        },
                        "__class__": "SelectedPhaseOnlyDumpFilter"
                    },
                    "1": {
                        "max_reward_achieved": -Infinity,
                        "__class__": "MaxDumpFilter"
                    }
                },
                "__class__": "VisualizationParameters"
            },
            "__class__": "DeepRacerClippedPPOAgentParams"
        }
    },
    "custom_reward_threshold": null,
    "default_input_filter": {
        "_observation_filters": {},
        "_reward_filters": {},
        "i_am_a_reference_filter": false,
        "name": "no_input_filter",
        "__class__": "NoInputFilter"
    },
    "default_output_filter": {
        "_action_filters": {},
        "i_am_a_reference_filter": false,
        "name": null,
        "__class__": "NoOutputFilter"
    },
    "done_condition": "<built-in function any>",
    "enable_domain_randomization": false,
    "experiment_path": "/opt/ml/model",
    "frame_skip": 1,
    "level": "DeepRacerRacetrackEnv-v0",
    "non_trainable_agents": {},
    "pause_physics": null,
    "run_phase_subject": null,
    "seed": null,
    "target_success_rate": 1.0,
    "unpause_physics": null
}

agents_params: 
0: "DeepRacerClippedPPOAgentParams" {
    "algorithm": {
        "act_for_full_episodes": true,
        "apply_gradients_every_x_episodes": 5,
        "beta_entropy": 0.01,
        "clip_likelihood_ratio_using_epsilon": 0.2,
        "clipping_decay_schedule": {
            "current_value": 1,
            "initial_value": 1,
            "__class__": "ConstantSchedule"
        },
        "discount": 0.999,
        "distributed_coach_synchronization_type": {
            "_value_": "sync",
            "_name_": "SYNC",
            "__objclass__": "<enum 'DistributedCoachSynchronizationType'>"
        },
        "estimate_state_value_using_gae": true,
        "gae_lambda": 0.95,
        "heatup_using_network_decisions": false,
        "in_action_space": null,
        "load_memory_from_file_path": null,
        "n_step": -1,
        "normalization_stats": null,
        "num_consecutive_playing_steps": {
            "_num_steps": 20,
            "__class__": "EnvironmentEpisodes"
        },
        "num_consecutive_training_steps": 1,
        "num_episodes_in_experience_replay": 1000000,
        "num_steps_between_copying_online_weights_to_target": {
            "_num_steps": 20,
            "__class__": "EnvironmentEpisodes"
        },
        "optimization_epochs": 10,
        "policy_gradient_rescaler": {
            "_value_": 8,
            "_name_": "GAE",
            "__objclass__": "<enum 'PolicyGradientRescaler'>"
        },
        "rate_for_copying_weights_to_target": 1.0,
        "share_statistics_between_workers": true,
        "store_transitions_only_when_episodes_are_terminated": false,
        "supports_parameter_noise": false,
        "use_accumulated_reward_as_measurement": false,
        "use_kl_regularization": false,
        "__class__": "ClippedPPOAlgorithmParameters"
    },
    "current_episode": 0,
    "env_agent": {
        "_ctrl_": {
            "_action_space_": {
                "_high": "array([6.])",
                "_low": "array([0.])",
                "_shape": "array([1])",
                "default_action": 3,
                "descriptions": {},
                "num_dimensions": 1,
                "num_elements": 1,
                "__class__": "DiscreteActionSpace"
            },
            "_agent_name_": "racecar",
            "_model_metadata_": {
                "_bucket": "aws-deepracer-data-us-east-1-1",
                "_local_dir": "./custom_files/agent",
                "_local_path": "./custom_files/agent/model_metadata.json",
                "_model_metadata": {
                    "action_space": {
                        "0": {
                            "index": 0,
                            "speed": 1.3,
                            "steering_angle": 25.0
                        },
                        "1": {
                            "index": 1,
                            "speed": 1.3,
                            "steering_angle": 10.0
                        },
                        "2": {
                            "index": 2,
                            "speed": 2.6,
                            "steering_angle": 10.0
                        },
                        "3": {
                            "index": 3,
                            "speed": 3.0,
                            "steering_angle": 0.0
                        },
                        "4": {
                            "index": 4,
                            "speed": 1.3,
                            "steering_angle": -10.0
                        },
                        "5": {
                            "index": 5,
                            "speed": 2.6,
                            "steering_angle": -10.0
                        },
                        "6": {
                            "index": 6,
                            "speed": 1.3,
                            "steering_angle": -20.0
                        }
                    },
                    "action_space_type": "discrete",
                    "lidar_config": {
                        "clipping_dist": 2.0,
                        "num_sectors": 8,
                        "num_values_per_sector": 8
                    },
                    "neural_network": "DEEP_CONVOLUTIONAL_NETWORK_SHALLOW",
                    "sensor": {
                        "0": "FRONT_FACING_CAMERA"
                    },
                    "training_algorithm": "clipped_ppo",
                    "version": 4.0
                },
                "_s3_client": {
                    "_backoff_time_sec": 1.0,
                    "_boto_client_name": "s3",
                    "_log_and_cont": false,
                    "_max_retry_attempts": 5,
                    "_region_name": "us-east-1",
                    "_session": null,
                    "__class__": "S3Client"
                },
                "_s3_key": "data-a01821fd-17a9-4505-a9b6-5beb07bbad0e/models/41a43e9f-6d70-4e26-81fa-ad174b497f0c/model_metadata.json",
                "__class__": "ModelMetadata"
            },
            "__class__": "TrainingCtrl"
        },
        "_network_settings_": {
            "activation_function": "relu",
            "embedder_type": "scheme",
            "input_embedders": {
                "FRONT_FACING_CAMERA": {
                    "bn_info_conv": {
                        "0": false,
                        "1": "relu",
                        "2": 0.0
                    },
                    "bn_info_dense": {
                        "0": false,
                        "1": "relu",
                        "2": 0.0
                    },
                    "conv_info_list": {
                        "0": {
                            "0": 32,
                            "1": 8,
                            "2": 4
                        },
                        "1": {
                            "0": 64,
                            "1": 4,
                            "2": 2
                        },
                        "2": {
                            "0": 64,
                            "1": 3,
                            "2": 1
                        }
                    },
                    "dense_layer__hidden_unit_list": {},
                    "is_first_layer_bn": false
                }
            },
            "middleware_embedders": {
                "bn_info_conv": {
                    "0": false,
                    "1": "relu",
                    "2": 0.0
                },
                "bn_info_dense": {
                    "0": false,
                    "1": "relu",
                    "2": 0.0
                },
                "conv_info_list": {},
                "dense_layer__hidden_unit_list": {
                    "0": 512
                },
                "is_first_layer_bn": false
            }
        },
        "_sensor_": {
            "sensors": {
                "0": {
                    "__class__": "Camera"
                }
            },
            "__class__": "CompositeSensor"
        },
        "__class__": "Agent"
    },
    "exploration": {
        "action_space": {
            "_high": "array([6.])",
            "_low": "array([0.])",
            "_shape": "array([1])",
            "default_action": 3,
            "descriptions": {},
            "num_dimensions": 1,
            "num_elements": 1,
            "__class__": "DiscreteActionSpace"
        },
        "use_stochastic_evaluation_policy": false,
        "__class__": "DeepRacerCategoricalParameters"
    },
    "full_name_id": "main_level/agent",
    "input_filter": {
        "_observation_filters": {
            "FRONT_FACING_CAMERA": {
                "to_grayscale": {
                    "name": null,
                    "supports_batching": false,
                    "__class__": "ObservationRGBToYFilter"
                },
                "to_uint8": {
                    "input_high": 255,
                    "input_low": 0,
                    "name": null,
                    "supports_batching": false,
                    "__class__": "ObservationToUInt8Filter"
                },
                "stacking": {
                    "input_observation_space": null,
                    "name": null,
                    "stack": {},
                    "stack_size": 1,
                    "stacking_axis": -1,
                    "supports_batching": false,
                    "__class__": "ObservationStackingFilter"
                }
            }
        },
        "_reward_filters": {},
        "i_am_a_reference_filter": false,
        "name": "input_filter",
        "__class__": "InputFilter"
    },
    "is_a_highest_level_agent": true,
    "is_a_lowest_level_agent": true,
    "is_batch_rl_training": false,
    "memory": {
        "load_memory_from_file_path": null,
        "max_size": [
            "<MemoryGranularity.Transitions: 0>",
            1000000
        ],
        "n_step": -1,
        "shared_memory": false,
        "train_to_eval_ratio": 1,
        "__class__": "DeepRacerMemoryParameters"
    },
    "name": "agent",
    "network_wrappers": {
        "main": {
            "adam_optimizer_beta1": 0.9,
            "adam_optimizer_beta2": 0.999,
            "async_training": false,
            "batch_size": 64,
            "clip_gradients": null,
            "create_target_network": true,
            "embedding_merger_type": {
                "_value_": 0,
                "_name_": "Concat",
                "__objclass__": "<enum 'EmbeddingMergerType'>"
            },
            "force_cpu": false,
            "framework": {
                "_value_": "TensorFlow",
                "_name_": "tensorflow",
                "__objclass__": "<enum 'Frameworks'>"
            },
            "gradients_clipping_method": {
                "_value_": 0,
                "_name_": "ClipByGlobalNorm",
                "__objclass__": "<enum 'GradientClippingMethod'>"
            },
            "heads_parameters": {
                "0": {
                    "activation_function": "relu",
                    "dense_layer": null,
                    "initializer": "normalized_columns",
                    "is_training": false,
                    "loss_weight": 1.0,
                    "name": "v_head_params",
                    "num_output_head_copies": 1,
                    "output_bias_initializer": null,
                    "parameterized_class_name": "VHead",
                    "rescale_gradient_from_head_by_factor": 1.0,
                    "__class__": "VHeadParameters"
                },
                "1": {
                    "activation_function": "tanh",
                    "dense_layer": null,
                    "is_training": false,
                    "loss_weight": 1.0,
                    "name": "ppo_head_params",
                    "num_output_head_copies": 1,
                    "parameterized_class_name": "PPOHead",
                    "rescale_gradient_from_head_by_factor": 1.0,
                    "__class__": "PPOHeadParameters"
                }
            },
            "input_embedders_parameters": {
                "FRONT_FACING_CAMERA": {
                    "activation_function": "relu",
                    "batchnorm": false,
                    "dense_layer": null,
                    "dropout_rate": 0.0,
                    "input_clipping": null,
                    "input_offset": {
                        "image": 0.0,
                        "tensor": 0.0,
                        "vector": 0.0
                    },
                    "input_rescaling": {
                        "image": 255.0,
                        "tensor": 1.0,
                        "vector": 1.0
                    },
                    "is_training": false,
                    "name": "embedder",
                    "scheme": {
                        "0": {
                            "kernel_size": 8,
                            "num_filters": 32,
                            "strides": 4,
                            "__class__": "Conv2d"
                        },
                        "1": {
                            "kernel_size": 4,
                            "num_filters": 64,
                            "strides": 2,
                            "__class__": "Conv2d"
                        },
                        "2": {
                            "kernel_size": 3,
                            "num_filters": 64,
                            "strides": 1,
                            "__class__": "Conv2d"
                        }
                    },
                    "__class__": "InputEmbedderParameters"
                }
            },
            "l2_regularization": 0,
            "learning_rate": 0.0003,
            "learning_rate_decay_rate": 0,
            "learning_rate_decay_steps": 0,
            "middleware_parameters": {
                "activation_function": "relu",
                "batchnorm": false,
                "dense_layer": null,
                "dropout_rate": 0.0,
                "is_training": false,
                "name": "middleware_fc_embedder",
                "num_streams": 1,
                "parameterized_class_name": "FCMiddleware",
                "scheme": {
                    "0": {
                        "units": 512,
                        "__class__": "Dense"
                    }
                },
                "__class__": "FCMiddlewareParameters"
            },
            "optimizer_epsilon": 1e-05,
            "optimizer_type": "Adam",
            "replace_mse_with_huber_loss": true,
            "rms_prop_optimizer_decay": 0.9,
            "scale_down_gradients_by_number_of_workers_for_sync_training": true,
            "sess": null,
            "shared_optimizer": true,
            "softmax_temperature": 1,
            "tensorflow_support": true,
            "use_separate_networks_per_head": true,
            "__class__": "ClippedPPONetworkParameters"
        }
    },
    "output_filter": {
        "_action_filters": {},
        "i_am_a_reference_filter": false,
        "name": "output_filter",
        "__class__": "NoOutputFilter"
    },
    "pre_network_filter": {
        "_observation_filters": {},
        "_reward_filters": {},
        "i_am_a_reference_filter": false,
        "name": "pre_network_filter",
        "__class__": "NoInputFilter"
    },
    "task_parameters": {
        "apply_stop_condition": false,
        "checkpoint_restore_path": null,
        "checkpoint_save_dir": "./checkpoint_sagemaker",
        "checkpoint_save_secs": 20,
        "evaluate_only": null,
        "experiment_path": "/opt/ml/model",
        "export_onnx_graph": false,
        "framework_type": {
            "_value_": "TensorFlow",
            "_name_": "tensorflow",
            "__objclass__": "<enum 'Frameworks'>"
        },
        "num_gpu": 1,
        "seed": null,
        "task_index": 0,
        "use_cpu": false,
        "__class__": "TaskParameters"
    },
    "visualization": {
        "add_rendered_image_to_env_response": false,
        "dump_csv": true,
        "dump_gifs": false,
        "dump_in_episode_signals": false,
        "dump_mp4": false,
        "dump_parameters_documentation": true,
        "dump_signals_to_csv_every_x_episodes": 5,
        "max_fps_for_human_control": 10,
        "native_rendering": false,
        "print_networks_summary": false,
        "render": false,
        "tensorboard": false,
        "video_dump_filters": {
            "0": {
                "run_phases": {
                    "0": {
                        "_value_": "Testing",
                        "_name_": "TEST",
                        "__objclass__": "<enum 'RunPhase'>"
                    }
                },
                "__class__": "SelectedPhaseOnlyDumpFilter"
            },
            "1": {
                "max_reward_achieved": -Infinity,
                "__class__": "MaxDumpFilter"
            }
        },
        "__class__": "VisualizationParameters"
    }
}


agent_params: 
"DeepRacerClippedPPOAgentParams" {
    "algorithm": {
        "act_for_full_episodes": true,
        "apply_gradients_every_x_episodes": 5,
        "beta_entropy": 0.01,
        "clip_likelihood_ratio_using_epsilon": 0.2,
        "clipping_decay_schedule": {
            "current_value": 1,
            "initial_value": 1,
            "__class__": "ConstantSchedule"
        },
        "discount": 0.999,
        "distributed_coach_synchronization_type": {
            "_value_": "sync",
            "_name_": "SYNC",
            "__objclass__": "<enum 'DistributedCoachSynchronizationType'>"
        },
        "estimate_state_value_using_gae": true,
        "gae_lambda": 0.95,
        "heatup_using_network_decisions": false,
        "in_action_space": null,
        "load_memory_from_file_path": null,
        "n_step": -1,
        "normalization_stats": null,
        "num_consecutive_playing_steps": {
            "_num_steps": 20,
            "__class__": "EnvironmentEpisodes"
        },
        "num_consecutive_training_steps": 1,
        "num_episodes_in_experience_replay": 1000000,
        "num_steps_between_copying_online_weights_to_target": {
            "_num_steps": 20,
            "__class__": "EnvironmentEpisodes"
        },
        "optimization_epochs": 10,
        "policy_gradient_rescaler": {
            "_value_": 8,
            "_name_": "GAE",
            "__objclass__": "<enum 'PolicyGradientRescaler'>"
        },
        "rate_for_copying_weights_to_target": 1.0,
        "share_statistics_between_workers": true,
        "store_transitions_only_when_episodes_are_terminated": false,
        "supports_parameter_noise": false,
        "use_accumulated_reward_as_measurement": false,
        "use_kl_regularization": false,
        "__class__": "ClippedPPOAlgorithmParameters"
    },
    "current_episode": 0,
    "env_agent": {
        "_ctrl_": {
            "_action_space_": {
                "_high": "array([6.])",
                "_low": "array([0.])",
                "_shape": "array([1])",
                "default_action": 3,
                "descriptions": {},
                "num_dimensions": 1,
                "num_elements": 1,
                "__class__": "DiscreteActionSpace"
            },
            "_agent_name_": "racecar",
            "_model_metadata_": {
                "_bucket": "aws-deepracer-data-us-east-1-1",
                "_local_dir": "./custom_files/agent",
                "_local_path": "./custom_files/agent/model_metadata.json",
                "_model_metadata": {
                    "action_space": {
                        "0": {
                            "index": 0,
                            "speed": 1.3,
                            "steering_angle": 25.0
                        },
                        "1": {
                            "index": 1,
                            "speed": 1.3,
                            "steering_angle": 10.0
                        },
                        "2": {
                            "index": 2,
                            "speed": 2.6,
                            "steering_angle": 10.0
                        },
                        "3": {
                            "index": 3,
                            "speed": 3.0,
                            "steering_angle": 0.0
                        },
                        "4": {
                            "index": 4,
                            "speed": 1.3,
                            "steering_angle": -10.0
                        },
                        "5": {
                            "index": 5,
                            "speed": 2.6,
                            "steering_angle": -10.0
                        },
                        "6": {
                            "index": 6,
                            "speed": 1.3,
                            "steering_angle": -20.0
                        }
                    },
                    "action_space_type": "discrete",
                    "lidar_config": {
                        "clipping_dist": 2.0,
                        "num_sectors": 8,
                        "num_values_per_sector": 8
                    },
                    "neural_network": "DEEP_CONVOLUTIONAL_NETWORK_SHALLOW",
                    "sensor": {
                        "0": "FRONT_FACING_CAMERA"
                    },
                    "training_algorithm": "clipped_ppo",
                    "version": 4.0
                },
                "_s3_client": {
                    "_backoff_time_sec": 1.0,
                    "_boto_client_name": "s3",
                    "_log_and_cont": false,
                    "_max_retry_attempts": 5,
                    "_region_name": "us-east-1",
                    "_session": null,
                    "__class__": "S3Client"
                },
                "_s3_key": "data-a01821fd-17a9-4505-a9b6-5beb07bbad0e/models/41a43e9f-6d70-4e26-81fa-ad174b497f0c/model_metadata.json",
                "__class__": "ModelMetadata"
            },
            "__class__": "TrainingCtrl"
        },
        "_network_settings_": {
            "activation_function": "relu",
            "embedder_type": "scheme",
            "input_embedders": {
                "FRONT_FACING_CAMERA": {
                    "bn_info_conv": {
                        "0": false,
                        "1": "relu",
                        "2": 0.0
                    },
                    "bn_info_dense": {
                        "0": false,
                        "1": "relu",
                        "2": 0.0
                    },
                    "conv_info_list": {
                        "0": {
                            "0": 32,
                            "1": 8,
                            "2": 4
                        },
                        "1": {
                            "0": 64,
                            "1": 4,
                            "2": 2
                        },
                        "2": {
                            "0": 64,
                            "1": 3,
                            "2": 1
                        }
                    },
                    "dense_layer__hidden_unit_list": {},
                    "is_first_layer_bn": false
                }
            },
            "middleware_embedders": {
                "bn_info_conv": {
                    "0": false,
                    "1": "relu",
                    "2": 0.0
                },
                "bn_info_dense": {
                    "0": false,
                    "1": "relu",
                    "2": 0.0
                },
                "conv_info_list": {},
                "dense_layer__hidden_unit_list": {
                    "0": 512
                },
                "is_first_layer_bn": false
            }
        },
        "_sensor_": {
            "sensors": {
                "0": {
                    "__class__": "Camera"
                }
            },
            "__class__": "CompositeSensor"
        },
        "__class__": "Agent"
    },
    "exploration": {
        "action_space": {
            "_high": "array([6.])",
            "_low": "array([0.])",
            "_shape": "array([1])",
            "default_action": 3,
            "descriptions": {},
            "num_dimensions": 1,
            "num_elements": 1,
            "__class__": "DiscreteActionSpace"
        },
        "use_stochastic_evaluation_policy": false,
        "__class__": "DeepRacerCategoricalParameters"
    },
    "full_name_id": "main_level/agent",
    "input_filter": {
        "_observation_filters": {
            "FRONT_FACING_CAMERA": {
                "to_grayscale": {
                    "name": null,
                    "supports_batching": false,
                    "__class__": "ObservationRGBToYFilter"
                },
                "to_uint8": {
                    "input_high": 255,
                    "input_low": 0,
                    "name": null,
                    "supports_batching": false,
                    "__class__": "ObservationToUInt8Filter"
                },
                "stacking": {
                    "input_observation_space": null,
                    "name": null,
                    "stack": {},
                    "stack_size": 1,
                    "stacking_axis": -1,
                    "supports_batching": false,
                    "__class__": "ObservationStackingFilter"
                }
            }
        },
        "_reward_filters": {},
        "i_am_a_reference_filter": false,
        "name": "input_filter",
        "__class__": "InputFilter"
    },
    "is_a_highest_level_agent": true,
    "is_a_lowest_level_agent": true,
    "is_batch_rl_training": false,
    "memory": {
        "load_memory_from_file_path": null,
        "max_size": [
            "<MemoryGranularity.Transitions: 0>",
            1000000
        ],
        "n_step": -1,
        "shared_memory": false,
        "train_to_eval_ratio": 1,
        "__class__": "DeepRacerMemoryParameters"
    },
    "name": "agent",
    "network_wrappers": {
        "main": {
            "adam_optimizer_beta1": 0.9,
            "adam_optimizer_beta2": 0.999,
            "async_training": false,
            "batch_size": 64,
            "clip_gradients": null,
            "create_target_network": true,
            "embedding_merger_type": {
                "_value_": 0,
                "_name_": "Concat",
                "__objclass__": "<enum 'EmbeddingMergerType'>"
            },
            "force_cpu": false,
            "framework": {
                "_value_": "TensorFlow",
                "_name_": "tensorflow",
                "__objclass__": "<enum 'Frameworks'>"
            },
            "gradients_clipping_method": {
                "_value_": 0,
                "_name_": "ClipByGlobalNorm",
                "__objclass__": "<enum 'GradientClippingMethod'>"
            },
            "heads_parameters": {
                "0": {
                    "activation_function": "relu",
                    "dense_layer": null,
                    "initializer": "normalized_columns",
                    "is_training": false,
                    "loss_weight": 1.0,
                    "name": "v_head_params",
                    "num_output_head_copies": 1,
                    "output_bias_initializer": null,
                    "parameterized_class_name": "VHead",
                    "rescale_gradient_from_head_by_factor": 1.0,
                    "__class__": "VHeadParameters"
                },
                "1": {
                    "activation_function": "tanh",
                    "dense_layer": null,
                    "is_training": false,
                    "loss_weight": 1.0,
                    "name": "ppo_head_params",
                    "num_output_head_copies": 1,
                    "parameterized_class_name": "PPOHead",
                    "rescale_gradient_from_head_by_factor": 1.0,
                    "__class__": "PPOHeadParameters"
                }
            },
            "input_embedders_parameters": {
                "FRONT_FACING_CAMERA": {
                    "activation_function": "relu",
                    "batchnorm": false,
                    "dense_layer": null,
                    "dropout_rate": 0.0,
                    "input_clipping": null,
                    "input_offset": {
                        "image": 0.0,
                        "tensor": 0.0,
                        "vector": 0.0
                    },
                    "input_rescaling": {
                        "image": 255.0,
                        "tensor": 1.0,
                        "vector": 1.0
                    },
                    "is_training": false,
                    "name": "embedder",
                    "scheme": {
                        "0": {
                            "kernel_size": 8,
                            "num_filters": 32,
                            "strides": 4,
                            "__class__": "Conv2d"
                        },
                        "1": {
                            "kernel_size": 4,
                            "num_filters": 64,
                            "strides": 2,
                            "__class__": "Conv2d"
                        },
                        "2": {
                            "kernel_size": 3,
                            "num_filters": 64,
                            "strides": 1,
                            "__class__": "Conv2d"
                        }
                    },
                    "__class__": "InputEmbedderParameters"
                }
            },
            "l2_regularization": 0,
            "learning_rate": 0.0003,
            "learning_rate_decay_rate": 0,
            "learning_rate_decay_steps": 0,
            "middleware_parameters": {
                "activation_function": "relu",
                "batchnorm": false,
                "dense_layer": null,
                "dropout_rate": 0.0,
                "is_training": false,
                "name": "middleware_fc_embedder",
                "num_streams": 1,
                "parameterized_class_name": "FCMiddleware",
                "scheme": {
                    "0": {
                        "units": 512,
                        "__class__": "Dense"
                    }
                },
                "__class__": "FCMiddlewareParameters"
            },
            "optimizer_epsilon": 1e-05,
            "optimizer_type": "Adam",
            "replace_mse_with_huber_loss": true,
            "rms_prop_optimizer_decay": 0.9,
            "scale_down_gradients_by_number_of_workers_for_sync_training": true,
            "sess": null,
            "shared_optimizer": true,
            "softmax_temperature": 1,
            "tensorflow_support": true,
            "use_separate_networks_per_head": true,
            "__class__": "ClippedPPONetworkParameters"
        }
    },
    "output_filter": {
        "_action_filters": {},
        "i_am_a_reference_filter": false,
        "name": "output_filter",
        "__class__": "NoOutputFilter"
    },
    "pre_network_filter": {
        "_observation_filters": {},
        "_reward_filters": {},
        "i_am_a_reference_filter": false,
        "name": "pre_network_filter",
        "__class__": "NoInputFilter"
    },
    "task_parameters": {
        "apply_stop_condition": false,
        "checkpoint_restore_path": null,
        "checkpoint_save_dir": "./checkpoint_sagemaker",
        "checkpoint_save_secs": 20,
        "evaluate_only": null,
        "experiment_path": "/opt/ml/model",
        "export_onnx_graph": false,
        "framework_type": {
            "_value_": "TensorFlow",
            "_name_": "tensorflow",
            "__objclass__": "<enum 'Frameworks'>"
        },
        "num_gpu": 1,
        "seed": null,
        "task_index": 0,
        "use_cpu": false,
        "__class__": "TaskParameters"
    },
    "visualization": {
        "add_rendered_image_to_env_response": false,
        "dump_csv": true,
        "dump_gifs": false,
        "dump_in_episode_signals": false,
        "dump_mp4": false,
        "dump_parameters_documentation": true,
        "dump_signals_to_csv_every_x_episodes": 5,
        "max_fps_for_human_control": 10,
        "native_rendering": false,
        "print_networks_summary": false,
        "render": false,
        "tensorboard": false,
        "video_dump_filters": {
            "0": {
                "run_phases": {
                    "0": {
                        "_value_": "Testing",
                        "_name_": "TEST",
                        "__objclass__": "<enum 'RunPhase'>"
                    }
                },
                "__class__": "SelectedPhaseOnlyDumpFilter"
            },
            "1": {
                "max_reward_achieved": -Infinity,
                "__class__": "MaxDumpFilter"
            }
        },
        "__class__": "VisualizationParameters"
    }
}

memory_backend_params: 
<markov.deepracer_memory.DeepRacerRedisPubSubMemoryBackendParameters object at 0x7fc29966c6d8>
data_store_params: 
<markov.s3_boto_data_store.S3BotoDataStoreParameters object at 0x7fc299603da0>

  

 

1

 

11日志分析

 

 

1

 

 

1

 直线最短

 

1

 

1

 

 

1

1

 

1

 

1

 

1

 

 

1

 

 

1

 

1

 

1

 

1

1

 

1

 

1

1

 

1

 

1

1

 

1

 

1

1

 

1

 

1

1

 

1

 

1

1

 

1

 

1

1

 

标签:__,false,name,训练,ppo,num,深度,null,class
From: https://www.cnblogs.com/flyingsir/p/18003014

相关文章

  • 深度学习框架:为啥不同的框架,不同的运行设备(GPU/CPU/NPU),运算出的结果性能会有一定百分
    经常会遇到有人在网上说,TensorFlow的计算结果比pytorch的高上几个百分点,也有人说RTX3090的计算结果没有A100的好,还有人说NPU的计算结果比GPU的高,而且这种说法在业内也是极为常见的,甚至在读书时的实验室里和人交流也会有这种反馈,这里对其说说自己的理解。算法本质导致的随机性,......
  • 京东广告算法架构体系建设--大规模稀疏场景高性能训练方案演变
    一、前言京东广告训练框架随着广告算法业务发展的特点也在快速迭代升级,回顾近几年大致经历了两次大版本的方案架构演变。第一阶段,随着2016年Tensorflow训练框架的开源,业界开始基于Tensorflow开源框架训练更复杂的模型。模型对特征规模和参数规模需求不断提升,大规模稀疏模型具有更......
  • tacotron2:深度学习语音合成模型--pytorch
    https://www.python100.com/html/83067.html 一、tacotron2环境搭建如要安装tacotron2环境,需要完成以下步骤:1、安装CUDA。CUDA是Nvidia开发的并行计算平台和编程模型,需要前往官网下载并安装对应版本的CUDA,同时保证显卡支持CUDA。2、安装cuDNN。cuDNN是针对深度神经网络加速......
  • day27 代码随想录算法训练营 40. 组合总和 II
    题目:40.组合总和II我的感悟:只要在路上就不怕走的慢。卡尔的视频慢慢听0.75倍听还是可以的。只要状态好,就可以学。多学会鼓励理解难点:代码难点:①notused[i-1]等同于used[i-1]==0 这里用的是True和False,所以用的是notused[i-1]②i>0为了防止i-1越界③剪枝......
  • 【深度学习】从0完整讲透深度学习第2篇:TensorFlow介绍和基本操作(代码文档已分享)
    本系列文章md笔记(已分享)主要讨论深度学习相关知识。可以让大家熟练掌握机器学习基础,如分类、回归(含代码),熟练掌握numpy,pandas,sklearn等框架使用。在算法上,掌握神经网络的数学原理,手动实现简单的神经网络结构,在应用上熟练掌握TensorFlow框架使用,掌握神经网络图像相关案例。具体包......
  • 深度学习-DNN深度神经网络-反向传播-40
    目录人工神经网络有两个或两个以上隐藏层,称为DNN深度神经网络三种常见的激活函数及其导数--复习前面所学线性回归更新权重逻辑回归多分类......
  • 代码随想录算法训练营第九天| 28. 实现 strStr() 459.重复的子字符串 字符串总结 双
     28.实现strStr()给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从0开始)。如果 needle 不是 haystack 的一部分,则返回  -1 。题目链接:28.找出字符串中第一个匹配项的下标-力扣(LeetCode)思路:标......
  • 深度学习奖励规则
      111111111111111111111111111111111111111111111111111111111111      1 1王者荣耀,-觉悟机器人,深度学习训练阿尔法go,深度学习; 1 1 1 1智能体环境动作要素奖励 1......
  • UnsupportedOperationException------“不支持的操作异常”
    在Java编程语言中,当你试图调用一个当前环境或对象不支持的方法时,就会抛出这个异常。例如:调用不可变集合(如通过Collections.unmodifiableList()创建的列表)的添加、删除或修改方法。使用Arrays.asList()返回的对象尝试修改其内容。在实现了某个接口但未提供所有必需实现方法的类......
  • 强化学习无人车训练11
                     ......