既然是监督学习,首先要解决的问题必然是标注数据。在第一版的视频中,yoshtm 介绍道,他创建了一个包含上百个转弯的训练地图,然后自己「驾驶」赛车在地图上跑。此外,他还创建了一个程序,用来逐帧检测赛车与墙之间的距离、车速以及自己的操作(上下左右)等信息。 收集到足够多的数据之后,yoshtm 创建了一个 AI 算法来学习地图环境与操作之间的对应关系。
在实际运行过程中,算法可以根据实时检测到的间距、车速等信息来预测合适的操作。 第一版的战绩如下:
有人可能会好奇,为什么这些受同一个 AI 系统控制的车辆行驶轨迹却不一样?原因在于 AI 捕捉到的帧也并不相同,因为屏幕捕获频率并不是连续的,而且使用的算法也存在少量的随机性。 今年 7 月,育碧发布了新版《赛道狂飙》(《赛道狂飙:永恒国度》的重制版)之后,yoshtm 想看看:在上一版游戏中搭建的 AI 系统,是否也能在新版本游戏中使用。 由于两个版本非常相似,yoshtm 只做了一些细微的改进。
对于机器学习从业者来说,这可能只是一个 toy 项目。但由于计算量比较小,模型设计也比较简单,初学者或者对机器学习感兴趣的同学可以动手尝试一下。 参考链接: https://www.reddit.com/r/MachineLearning/comments/ia93ao/p_i_made_an_ai_that_can_drive_in_a_real_racing/