(продолжение)
3. Обучение с подкреплением
Обучение с подкреплением позволяет агенту обучаться через взаимодействие с окружающей средой. В этом процессе агент принимает решения, выполняет действия и получает обратную связь в виде вознаграждений или штрафов. Цель агента — максимизировать общее вознаграждение за определённый период времени.
Пример кода:
Задача балансировки палки на движущейся тележке.
import gym
import numpy as np
# Создание среды
env = gym.make('CartPole-v1')
# Параметры
num_episodes = 1000
max_steps = 200
reward_list = []
for episode in range(num_episodes):
state = env.reset()
total_reward = 0
for step in range(max_steps):
# Выбор действия (случайное действие)
action = env.action_space.sample()
# Выполнение действия и получение нового состояния и вознаграждения
next_state, reward, done, _, _ = env.step(action)
total_reward += reward
if done:
break
state = next_state
reward_list.append(total_reward)
# Закрытие среды
env.close()
# Вывод результатов
print(f"Среднее вознаграждение за {num_episodes} эпизодов: {np.mean(reward_list)}")
После выполнения этого кода вы получите среднее вознаграждение: это значение будет отражать, насколько хорошо агент справляется с задачей балансировки палки на тележке.
Каждый из этих типов обучения имеет свои уникальные применения и подходы, позволяя решать широкий спектр задач в области машинного обучения и искусственного интеллекта.
🟠Файл с кодом
По традиции, давайте наберем 50🔥, если тема интересная и нам следует дальше писать про ML.