我尝试与公司人员一起使用 AWS 提供的 AWS DeepRacer 日志分析工具。日志分析工具以笔记本格式发布在 GitHub 上的 AWS DeepRacer Workshop 下面。
https://github.com/aws-samples/aws-deepracer-workshops
以下内容针对截至 2019 年 6 月 6 日的示例笔记本。
它可能不适用于其他版本的笔记本电脑。
将以下策略附加到您的 Jupyter Notebook 实例的 IAM 角色。
{
Version : 2012-10-17 ,
Statement : [
Effect : Allow ,
Action : logs:FilterLogEvents ,
Resource : *
创建 IAM 角色的方法与 AWS DeepRacer 模拟相同 请参考这里。如何在 SageMaker 中启动 Deep Racer 模拟 创建 IAM 角色 3. 创建 Amazon SageMaker 笔记本环境 在管理控制台中打开 Amazon SageMaker 并切换到与 AWS DeepRacer 控制台相同的北弗吉尼亚区域。 创建 notebook 实例的方法与 AWS DeepRacer 模拟相同 请参考这里。
如何在 SageMaker 中开始使用 DeepRacer 模拟 创建 SageMaker 笔记本环境 打开 Jupyter Notebook 并从文件选项卡的新建下拉菜单中选择终端。
当终端屏幕打开时 从 GitHub 克隆存储库。
$ cd SageMaker/ $ git clone https://github.com/aws-samples/aws-deepracer-workshops.git
从 Jupyter Notebook 的 Files 选项卡打开
/aws-deepracer-workshops/log-analysis/DeepRacer Log Analysis.ipynb。
显示环境选择画面 这里选择“conda_tensorflow_p36”。
* 在此之后执行附加包的工作中选择相同的环境。
在跟我们查的时候 notebook执行的时候出现了shapely import的错误 所以提前安装anaconda环境的包。
在 Jupyter Notebook 的“Conda”选项卡中 环境列表显示在顶部的 Conda 环境列表框中 因此选择“tensorflow_p36”。 图中1-1
确认右下方列表框中的显示变为“tensorflow_p36”。 图中1-2
从左下角的列表框中选择“匀称”。 图中2
您还可以通过文本缩小搜索范围。
选择中间的“→”开始安装。 图中3
您可以通过按右下角列表框顶部的“刷新包列表”图标来检查是否已安装。
现在你准备好了
如果您可以打开笔记本 请从顶部运行单元格。 按执行按钮或 Shift Enter
5.1 根据模拟 ID 下载所需的日志文件在 AWS DeepRacer 控制台中重写与您要评估的训练关联的模拟 ID。您可以从 AWS RoboMaker 模拟作业中检查模拟 ID。
stream_name applicationId ## CHANGE This to your simulation application ID fname logs/deepracer-%s.log %stream_name cw_utils.download_log(fname, stream_prefix stream_name)5.2 加载要运行分析的轨迹的航点
输入训练中使用的轨道名称。
曲目信息似乎不时添加。您可以从 aws-deepracer-workshops/log-analysis/tracks/ 检查文件名 要分析的轨道名称 。
在这里 指定 May 的虚拟电路轨道的 London Loop。
def get_track_waypoints(track_name): return np.load( tracks/%s.npy % track_name) waypoints get_track_waypoints( London_Loop_Train ) waypoints.shape5.3 可视化航迹和航点
您之前选择的 London Loop 课程显示在结果中
我无法涵盖所有笔记本 但我会在以这种方式检查结果的同时继续进行。
警告
笔记本中间有固定日志文件名的地方 根据训练的内容和时间 有一些地方如果参数保持默认会出错 所以我一边修正一边进行和每次调整…除了训练模拟日志之外 还有一个分析 其中模型和评估时的模拟ID是输入信息。某些类型的分析仅由 reInvent 课程支持。 6. 分析结果 6.1 每次迭代绘制奖励您可以看到奖励如何随着情节的进展而变化。
6.2 分析奖励函数的奖励分布
作为训练的结果 很容易直观地掌握走哪条路线和走多少条路线。
还可以显示特定剧集的运行轨迹。
我也在 reInvent 课程中尝试过。您可以看到您在课程中的速度。
使用日志分析工具我能够得到所有的分析结果 但是我应该从这些结果中读取什么以及我应该如何分析它们 您会从中获得什么样的解决方案并将其反映在 AWS DeepRacer 中 对于强化学习的初学者来说是相当困难的。
能够稍微接触到数据科学家和数据分析师的一些工作 体会到其中的艰辛和尊重。
事实证明 AWS DeepRacer 的努力不仅需要实施奖励功能和推进强化学习培训的技能 还需要基于日志和数据进行分析的技能。
参考https://qiita.com/dnp-ayako/items/d4e1378bef45cd0994dd



