46.强化学习实例 翻译自 吴恩达新书-Machine Learning Yearning

更多好玩的机器学习教程: 进入袋马学院领一份 ,全部免费.

46.强化学习实例 翻译自 吴恩达新书-Machine Learning Yearning_第1张图片

假如你正在使用机器学习教直升飞机,执行复杂的飞行任务。这儿有一张直升飞机引擎关闭时,着陆时拍摄的照片。

这就是所谓的“autorotation”策略。它可以在引擎意外关闭的情况下,让直升飞机平稳着陆。这种训练时人类飞行员训练的一部分。你的目标是,让机器学习算法指导直升飞机通过轨道T,并最终安全着陆。

为了应用强化学习,你需要设计一个"奖励方法"R(), 这个方法来计算每种可能的轨道T的得分值。比如如果轨道T,最终导致直升飞机坠毁,此时的奖励R(T) = -1000,是一个非常大的负数。如果直升飞机安全着陆,则R(T)为正式,他的大小取决于着陆轨道是否光滑平稳。奖励函数R()通常由人手工设计,用来计算轨道T有多好。它需要平衡着陆点有多崎岖(直升飞机是否落到了期望的着陆点)以及对于乘客来说,下降过程的的舒适度,设计好的奖励函数并不简单。

设计好奖励函数R(T)后,强化学习算法就会控制直升分级取得maxTR(T),然而强化学习算法有很多的近似值,可能取得最大值。

假设你选择了一些奖励函数R(T),并你的学习算法开始训练。然而,你的算法性能可能远差于人类飞行员的水平,下降过程非常颠簸,而且也没有人类操作是更安全。那如何区分这个问题是因为学习算法(通过学习算法来取得maxTR(T))导致的还是由于奖励函数(通过奖励函数来衡量下降舒适度和降落准确率的得分)导致的呢?

为了使用优化验证测试,将Thuman定义为人类飞行员飞行的轨道,将Tout定义为算法得出的飞行轨道。根据我们之前的描述,Thuman优于Tout。因此关键测试如下:

**R(T human) > R(T out)**
  1. 如果不等式成立,则奖励函数R()的计算是正确的。Thuman优于Tout,这时我们的枪火学习算法就是有问题的,因此改进学习算法是非常有意义的。
  2. 如果不等式不成立R(Thuman) < R(Tout),这就意味着奖励函数R()是有问题的,你应该修改奖励函数。

很多机器学习应用使用近似搜索算法的模式,来优化近似得分函数Socore()。有时没有特定的输入x,因此这种优化方法只适用于得分函数Score()。上面的例子中,得分函数就是奖励函数:Score(T) = R(T),优化算法就是强化学习算法试着去执行的合理飞行轨道T。

这个例子跟之前例子的一点不同是,这例子中比较的对象不是最优的输出,而是人类的水平Thuman。我们假设人类的水平即使不是最优的,但是依然非常好。一帮情况下,只要你能找到最优y*(本例中为Thuman),如果你的算法比最优的接过差,那么优化验证测试就能帮你改进优化算法或得分函数。

更多好玩的机器学习教程: 进入袋马学院领一份 ,全部免费.

你可能感兴趣的:(吴恩达-YEARNING)