在本章中,您将详细学习使用Python进行AI强化学习的概念。
这种类型的学习被用来加强或加强基于评论者信息的网络。 也就是说,在强化学习下训练的网络从环境中获得一些反馈。 但是,反馈是评价性的,并且不像监督式学习的情况那样具有启发性。 基于这种反馈,网络将对权重进行调整以获得更好的评论信息。
这个学习过程类似于监督学习,但我们可能拥有的信息非常少。 下图给出了强化学习的框图 -
环境和代理是人工智能强化学习的主要构件。 本节详细讨论它们 -
媒介代理
代理媒介是能够通过传感器感知其环境并通过效应器作用于该环境的任何事物。
代理术语
以下术语在AI中的强化学习中更频繁地使用 -
环境
某些程序在局限于键盘输入,数据库,计算机文件系统和屏幕上字符输出的完全人造环境中运行。
相比之下,一些软件代理(如软件机器人或软驱)存在于丰富且无限的软域中。 模拟器具有非常详细和复杂的环境。 软件代理需要实时从多种行为中进行选择。
例如,设计用于扫描顾客的在线偏好并向顾客展示有趣物品的软堆可在真实环境和人工环境中工作。
环境属性
如下所述,环境具有多重属性 -
对于建设强化学习代理,将使用OpenAI Gym软件包,该软件包可使用以下命令来安装 -
pip install gym
OpenAI健身房有各种各样的环境可以用于各种目的。 其中很少是:Cartpole-v0,Hopper-v1和MsPacman-v0。 他们需要不同的引擎。 OpenAI Gym的详细文档可以在 https://gym.openai.com/docs/#environments 找到。
以下代码显示了cartpole-v0环境的Python代码示例 -
import gym env = gym.make('CartPole-v0') env.reset() for _ in range(1000): env.render() env.step(env.action_space.sample())
您可以用类似的方式构建其他环境。
对于构建强化学习代理,我们将使用如下所示的OpenAI Gym包 -
import gym env = gym.make('CartPole-v0') for _ in range(20): observation = env.reset() for i in range(100): env.render() print(observation) action = env.action_space.sample() observation, reward, done, info = env.step(action) if done: print("Episode finished after {} timesteps".format(i+1)) break
观察小推车可以平衡。