下面以经典的 FrozenLake 环境(一个 4x4 的网格世界)为例,使用 Python 和 OpenAI Gym 库来实现 Q-learning 算法。
import numpy as np
import gym
# 创建FrozenLake环境
env = gym.make('FrozenLake-v1', is_slippery=False)
# 初始化参数
num_states = env.observation_space.n
num_actions = env.action_space.n
Q = np.zeros((num_states, num_actions))
num_episodes = 1000
max_steps = 100
alpha = 0.1 # 学习率
gamma = 0.99 # 折扣因子
epsilon = 0.1 # 探索率
for episode in range(num_episodes):
state = env.reset()
for step in range(max_steps):
# 选择动作(ε-贪心策略)
if np.random.uniform(0, 1) < epsilon:
action = env.action_space.sample()
else:
action = np.argmax(Q[state, :])
# 执行动作,获得下一个状态和奖励
next_state, reward, done, info = env.step(action)
# 更新Q函数
best_next_action = np.argmax(Q[next_state, :])
td_target = reward + gamma * Q[next_state, best_next_action]
td_error = td_target - Q[state, action]
Q[state, action] += alpha * td_error
# 状态更新
state = next_state
# 回合结束
if done:
break
print("训练完成后的Q表:")
print(Q)
其中:
gym.make('FrozenLake-v1')
创建环境;[num_states, num_actions]
,用于存储每个状态-动作对的价值;为了平衡探索和利用,ε-贪心策略以 ε 的概率进行探索 (随机选择动作),以 1-ε 的概率进行利用(选择当前最优动作)。学习率决定了新获取的信息在多大程度上覆盖旧的信息,较高的学习率意味着对新信息的依赖性更强。折扣因子用于权衡即时奖励和未来奖励的重要性。接近1的折扣因子表示更加看重未来的奖励。在满足一定条件下,如所有状态-动作对被无限次访问、学习率满足罗宾条件等,Q-learning 算法能够保证收敛到最优 Q 函数。Q-learning 是强化学习中最经典和基础的算法之一,它通过学习状态-动作值函数来指导智能体的决策。通过不断地与环境交互和更新 Q 值,智能体最终能够学到一个最优策略,即在每个状态下选择使得长期累积奖励最大的动作。
好文章,需要你的鼓励
IDC数据显示,Arm架构服务器出货量预计2025年将增长70%,但仅占全球总出货量的21.1%,远低于Arm公司年底达到50%市场份额的目标。大规模机架配置系统如英伟达DGX GB200 NVL72等AI处理设备推动了Arm服务器需求。2025年第一季度全球服务器市场达到创纪录的952亿美元,同比增长134.1%。IDC将全年预测上调至3660亿美元,增长44.6%。配备GPU的AI服务器预计增长46.7%,占市场价值近半。
保加利亚研究团队通过创新的双语训练方法,成功让AI模型学会了在非英语环境下使用外部工具。他们开发的TUCAN模型在保加利亚语功能调用任务上实现了显著提升,小模型改进幅度达28.75%。更重要的是,团队开源了完整的方法论,为全球多语言AI工具使用能力的发展提供了可复制的解决方案。
AI正在重塑创业公司的构建方式,这是自云计算出现以来最重大的变革。January Ventures联合创始人Jennifer Neundorfer将在TechCrunch All Stage活动中分享AI时代的新规则,涵盖从创意验证、产品开发到团队架构和市场策略的各个方面。作为专注于B2B早期投资的风投合伙人,她将为各阶段创业者提供关键洞察。
清华大学团队开发了首个能同时理解街景、卫星图、轨迹和地理数据的城市AI系统UrbanLLaVA。通过创新的三阶段训练法和多模态融合技术,该系统在十二项城市任务测试中显著超越现有方法,为智慧城市、导航服务、城市规划等领域带来突破性进展,代码已开源。