0Pricing
Python Academy · บทเรียน

แนวคิด Q-Table

การเรียนรู้แบบเสริมกำลังโดยใช้ตาราง

แนวคิด Q-Table เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 5 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 5 บทเรียน

ตาราง Q คืออะไร

แนวคิดตาราง Q

ตาราง Q เป็นแนวคิดหลักในการเรียนรู้แบบเสริมกำลัง ตารางนี้เป็นตารางค้นหาที่แต่ละรายการแสดงรางวัลที่คาดหมายจากการเลือกการกระทำเฉพาะในสถานะหนึ่ง

เป้าหมายคือการเรียนรู้ค่า Q ซึ่งช่วยชี้นำให้ตัวแทนเลือกการกระทำที่ดีที่สุดเพื่อให้ได้รางวัลสูงสุด

แนวคิด Q-Table — ภาพประกอบ 1

โครงสร้างของตาราง Q

โครงสร้างของตาราง Q

ตาราง Q มีโครงสร้างดังนี้:

  • แถว: แทนสถานะของสภาพแวดล้อม
  • คอลัมน์: แทนการกระทำที่ตัวแทนสามารถเลือกได้
  • ค่า: แทนค่า Q สำหรับคู่สถานะกับการกระทำ

ตัวแทนจะปรับปรุงค่าเหล่านี้ระหว่างการเรียนรู้

สูตรปรับปรุงค่า Q

สูตรปรับปรุงค่า Q

ค่า Q จะได้รับการปรับปรุงโดยใช้สมการเบลล์แมน:

Q(s, a) = Q(s, a) + α [r + γ max(Q(s', a')) - Q(s, a)]

โดยที่:

  • s: สถานะปัจจุบัน
  • a: การกระทำปัจจุบัน
  • r: รางวัลสำหรับการกระทำ
  • s': สถานะถัดไป
  • α: อัตราการเรียนรู้
  • γ: ตัวคูณลดค่า

ตัวอย่างตาราง Q อย่างง่าย

ตัวอย่างตาราง Q อย่างง่าย

พิจารณาตาราง Q สำหรับโลกแบบตาราง:

สถานะ: ตำแหน่งบนตาราง เช่น A1, B1

การกระทำ: เลื่อนขึ้น ลง ซ้าย ขวา

ในเบื้องต้น ค่า Q ทั้งหมดถูกกำหนดเป็นศูนย์:

สถานะ ขึ้น ลง ซ้าย ขวา
A1 0 0 0 0
B1 0 0 0 0

การกำหนดค่าเริ่มต้นให้ตาราง Q ในไพทอน

การกำหนดค่าเริ่มต้นให้ตาราง Q ในไพทอน

เราสามารถแทนตาราง Q โดยใช้อาร์เรย์ของ NumPy หรือพจนานุกรม:

import numpy as np

# Example: Q-Table for 5 states and 4 actions
num_states = 5
num_actions = 4
q_table = np.zeros((num_states, num_actions))

print("Initial Q-Table:")
print(q_table)

การสำรวจในการเรียนรู้แบบ Q

การสำรวจในการเรียนรู้แบบ Q

ตัวแทนใช้นโยบาย ε-เลือกค่าที่ดีที่สุดเพื่อรักษาสมดุลระหว่างการสำรวจกับการใช้ประโยชน์:

  • ด้วยความน่าจะเป็น ε ให้เลือกการกระทำแบบสุ่ม (การสำรวจ)
  • ด้วยความน่าจะเป็น 1-ε ให้เลือกการกระทำที่มีค่า Q สูงสุด (การใช้ประโยชน์)

ข้อดีของตาราง Q

ข้อดีของตาราง Q

ตาราง Q เรียบง่ายและมีประสิทธิภาพสำหรับสภาพแวดล้อมขนาดเล็ก ข้อดีของตาราง Q ได้แก่:

  • นำไปใช้งานและแก้จุดบกพร่องได้ง่าย
  • ตีความความสัมพันธ์ระหว่างสถานะกับการกระทำได้อย่างชัดเจน
  • มีต้นทุนการคำนวณต่ำสำหรับพื้นที่สถานะกับการกระทำขนาดเล็ก

ข้อจำกัดของตาราง Q

ข้อจำกัดของตาราง Q

ตาราง Q มีข้อจำกัดบางประการ:

  • ไม่สามารถขยายรองรับสภาพแวดล้อมที่มีพื้นที่สถานะ-การกระทำขนาดใหญ่ได้
  • ต้องใช้หน่วยความจำจำนวนมากสำหรับปัญหาที่มีหลายมิติ
  • ไม่สามารถสรุปใช้กับสถานะที่คล้ายกันได้

สรุปและขั้นตอนถัดไป

สรุปและขั้นตอนถัดไป

ในบทเรียนนี้ เราได้:

  • เรียนรู้แนวคิดและโครงสร้างของตาราง Q
  • สำรวจวิธีอัปเดตค่า Q โดยใช้สมการเบลล์แมน
  • อภิปรายข้อดีและข้อจำกัดของตาราง Q

ถัดไป เราจะนำอัลกอริทึมการเรียนรู้แบบ Q อย่างง่ายไปใช้งานใน Python เพื่อดูการทำงานของตาราง Q

แนวคิด Q-Table — ภาพประกอบ 10

คำถามที่พบบ่อย

บทเรียน “แนวคิด Q-Table” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “แนวคิด Q-Table” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 5 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “แนวคิด Q-Table”

การเรียนรู้แบบเสริมกำลังโดยใช้ตาราง คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 5 บทเรียน

บทเรียน “แนวคิด Q-Table” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. แนวคิดพื้นฐานของการเรียนรู้แบบเสริมกำลัง
  2. แนวคิด Q-Table
  3. การนำ Q-Table ไปใช้ใน Python
  4. การเรียนรู้แบบ Deep Q
  5. สำรวจ OpenAI Gym
← กลับไปที่ Python Academy