Pembelajaran Q Mendalam
Menggunakan jaringan saraf untuk pembelajaran penguatan
Pembelajaran Q Mendalam adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 4 dari 5. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 5 pelajaran total.
Apa Itu Pembelajaran-Q Mendalam?
Pembelajaran-Q Mendalam
Pembelajaran-Q Mendalam merupakan perluasan dari Pembelajaran-Q yang menggunakan jaringan saraf untuk mengaproksimasi Tabel-Q. Hal ini memungkinkan pembelajaran penguatan diskalakan ke lingkungan dengan ruang keadaan-tindakan yang besar atau kontinu.

Mengapa Pembelajaran-Q Mendalam?
Mengapa Pembelajaran-Q Mendalam?
Pembelajaran-Q Mendalam mengatasi keterbatasan Pembelajaran-Q tradisional:
- Menangani ruang keadaan berdimensi tinggi, seperti gambar.
- Menghindari kebutuhan untuk menyimpan Tabel-Q yang besar di memori.
- Menggeneralisasi antar-keadaan menggunakan jaringan saraf.
Algoritma DQN
Algoritma DQN
Pembelajaran-Q Mendalam menggunakan jaringan saraf yang disebut Jaringan-Q untuk mengaproksimasi nilai-Q. Langkah-langkah utamanya adalah:
- Inisialisasi Jaringan-Q dengan bobot acak.
- Berinteraksi dengan lingkungan untuk mengumpulkan tupel pengalaman
(state, action, reward, next_state). - Perbarui Jaringan-Q menggunakan persamaan Bellman:
Q(s, a) ≈ r + γ max(Q(s', a'))
Membangun Jaringan-Q
Membangun Jaringan-Q
Jaringan-Q adalah jaringan saraf umpan maju sederhana yang menerima keadaan saat ini sebagai masukan dan menghasilkan nilai-Q untuk semua tindakan yang mungkin:
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
# Define the Q-Network
q_network = Sequential([
Dense(24, activation='relu', input_shape=(state_space_size,)),
Dense(24, activation='relu'),
Dense(action_space_size, activation='linear')
])
q_network.compile(optimizer='adam', loss='mse')Pemutaran Ulang Pengalaman
Pemutaran Ulang Pengalaman
Pembelajaran-Q Mendalam menggunakan teknik yang disebut pemutaran ulang pengalaman untuk meningkatkan pembelajaran:
- Simpan pengalaman
(state, action, reward, next_state)dalam penyangga memori. - Ambil sample kelompok pengalaman secara acak untuk melatih Jaringan-Q.
from collections import deque
# Initialize replay memory
memory = deque(maxlen=2000)
# Add experience to memory
memory.append((state, action, reward, next_state, done))Melatih Jaringan-Q
Melatih Jaringan-Q
Kita melatih Jaringan-Q menggunakan pengalaman dari penyangga memori:
import numpy as np
# Sample a batch of experiences
batch_size = 32
batch = random.sample(memory, batch_size)
# Train the Q-Network
for state, action, reward, next_state, done in batch:
target = reward
if not done:
target += gamma * np.max(q_network.predict(next_state[np.newaxis, ...]))
q_values = q_network.predict(state[np.newaxis, ...])
q_values[0][action] = target
q_network.fit(state[np.newaxis, ...], q_values, epochs=1, verbose=0)Jaringan Target
Jaringan Target
Untuk menstabilkan pelatihan, DQN menggunakan jaringan target:
- Mempertahankan jaringan terpisah untuk menghitung nilai-Q target.
- Menyalin bobot dari Jaringan-Q ke jaringan target secara berkala.
Keunggulan Pembelajaran-Q Mendalam
Keunggulan Pembelajaran-Q Mendalam
Pembelajaran-Q Mendalam menawarkan beberapa manfaat:
- Menangani ruang keadaan berdimensi tinggi, seperti gambar.
- Menggeneralisasi antar-keadaan menggunakan jaringan saraf.
- Dapat menyelesaikan tugas kompleks seperti permainan Atari dan kendali robotik.
Rangkuman dan Langkah Berikutnya
Rangkuman dan Langkah Berikutnya
Dalam pelajaran ini, kita:
- Mempelajari dasar-dasar Pembelajaran-Q Mendalam.
- Membangun Jaringan-Q untuk mengaproksimasi nilai-Q.
- Membahas pemutaran ulang pengalaman dan jaringan target untuk pelatihan yang stabil.
Selanjutnya, kita akan mempelajari OpenAI Gym dan menerapkan pembelajaran penguatan dalam lingkungan simulasi.

Pertanyaan yang Sering Diajukan
Apakah pelajaran “Pembelajaran Q Mendalam” gratis?
Ya — teks lengkap “Pembelajaran Q Mendalam” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 5 pelajaran total.
Apa yang akan aku pelajari di “Pembelajaran Q Mendalam”?
Menggunakan jaringan saraf untuk pembelajaran penguatan Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn AI with Python?
Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 5.
Berapa lama pelajaran “Pembelajaran Q Mendalam” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?
Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Konsep Dasar Pembelajaran Penguatan
- Konsep Tabel-Q
- Menerapkan Tabel Q dalam Python
- Pembelajaran Q Mendalam
- Menjelajahi OpenAI Gym