深度学习在自动驾驶上的的简单学习

47 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第3天,点击查看活动详情

本系列为 MIT 6.S094 《用于自动驾驶的深度学习》的学习笔记。在课程中通过实践Deep Tesla (以端到端模型训练一个自动驾驶的启动模型)和 Deep Traffic(训练神经网络,利用强化学习控制汽车,模拟汽车在高速公路上的行驶),最后可以输出一个为自动驾驶搭建的深度学习系统

实践项目

    1. DeepTraffic:升读增强学习竞赛项目;
    2. SeFuse:Dynamic Driving Scene Segmentation,汽车通过原始视频根据实际动力学原理进行运动;
    3. DeepCrash:使用 DEEP RL 规避 High Speed Crash Avoidance;
    4. DeepTesla:使用大规模网来培训端到端的驾驶操作;

深度学习

  • 为什么要在自动驾驶中使用深度学习?
  • 深度学习(表示学习或者特征学习)能在没有任何解释的情况下提取源信息,并且构建分层表示允许生成各种洞察报告。
  • 表征学习
    • 深度学习能够改善更多的数据。
    • 边缘情境的归纳是深度学习目前的主要挑战。
  • 关键在于用对的角度来看待问题
  • 深度学习的类别
    1. 监督学习:全部使用人工标注的数据;
    2. 扩展监督学习:所需人工标注数据和未标注数据持平;
    3. 半监督学习:少量人工标注数据以及大量未标注数据;
    4. 强化学习:极少量人工标注数据以及大量未标注数据;
    5. 无监督学习:全部使用未标注数据;

监督学习

  • 训练阶段:

    1. 输入数据集
    2. 贴标签
    3. 在训练数据集上训练
  • 测试阶段

    1. 使用新的数据集测试
    2. 输入学习模型
    3. 结果输出

学习阶段

  • 前向运算:输入数据集,形成预测结果;
  • 反向传播:测量预测结果和输出结果的偏差,计算结果误差。调参(超参数)以根据误差级调整数值。

现阶段的挑战

  • 迁移学习:运行的表现和工作范围相关。挑战:跨领域的迁移学习困难。原因:对于推理过程的理解或者提取理解的能力。
  • 需要大量的数据。
  • 需要经过标注的数据。
  • 不是完全自动的:需要调节超参数。
  • 激励函数:很难确定一个合适的激励函数。
  • 透明程度: 神经网络的性质接近黑盒子 (在我们可视化了隐藏的过程之后仍然是这样)。
  • 边缘处理的情况:深度学习不擅长处理边缘数据的情况(特别是当它用于自动驾驶)。