AlphaGo là chương trình chơi cờ vây do DeepMind (công ty con của Google) phát triển, nổi tiếng vì thắng kỳ thủ Hàn Quốc Lee Sedol 4–1 tại Seoul tháng 3 năm 2016. Đây là lần đầu một máy tính thắng một kỳ thủ chuyên nghiệp hàng đầu thế giới ở cờ vây trên bàn 19x19 mà không chấp quân. Trước đó, đa số chuyên gia ước đoán việc này còn phải chờ thêm khoảng mười năm.
AlphaGo thắng không phải nhờ tính nhiều hơn theo kiểu Deep Blue, mà nhờ kết hợp hai mạng nơ-ron học sâu với phương pháp tìm kiếm cây Monte Carlo. Một mạng gợi ý nên xét nước nào, mạng kia ước lượng thế cờ đang có lợi cho ai. Bài này giải thích vì sao cờ vây khó với máy, AlphaGo làm cách nào vượt qua, chuyện gì xảy ra trong năm ván với Lee Sedol, và những đời máy kế tiếp. Phần cờ vây thay đổi ra sao sau AlphaGo có bài riêng trong danh mục cờ vây của trang.
Vì sao cờ vây từng là bài toán khó nhất cho máy
Ở cờ vua, mỗi lượt trung bình có khoảng ba mươi lăm nước hợp lệ. Ở cờ vây trên bàn 19x19, con số đó vào khoảng hai trăm năm mươi, và một ván kéo dài hơn hai trăm nước. Số thế cờ hợp lệ của cờ vây đã được nhà khoa học máy tính John Tromp tính chính xác năm 2016, vào khoảng 2 nhân 10 mũ 170, lớn hơn số nguyên tử ước tính trong vũ trụ quan sát được rất nhiều lần. Tìm kiếm thô sức theo kiểu Deep Blue không thể với tới.
Khó khăn thứ hai còn lớn hơn: rất khó viết hàm chấm điểm cho một thế cờ vây. Ở cờ vua, đếm quân đã cho một ước lượng thô khá tốt. Ở cờ vây, mọi quân đá giống nhau, giá trị của một nhóm quân phụ thuộc vào việc nó sống hay chết, mà sống chết lại phụ thuộc vào những trận đánh chưa xảy ra. Kỳ thủ chuyên nghiệp đánh giá bằng cảm nhận về "độ dày", "ảnh hưởng", thứ mà họ cũng khó giải thích thành quy tắc.
Trước AlphaGo, các chương trình tốt nhất đã chuyển sang tìm kiếm cây Monte Carlo: thay vì chấm điểm thế cờ, máy chơi thử ngẫu nhiên rất nhiều ván tới cuối rồi đếm tỉ lệ thắng. Cách này đưa máy lên trình nghiệp dư khá, nhưng vẫn cần được chấp vài quân khi đấu kỳ thủ chuyên nghiệp.
AlphaGo được ghép từ những bộ phận nào
Mạng chính sách (policy network). Mạng nơ-ron nhận vào thế cờ và trả ra xác suất cho từng nước, tức là "nếu là kỳ thủ giỏi, khả năng cao sẽ đi đâu". Ban đầu mạng này học có giám sát từ hàng chục triệu thế cờ lấy trong các ván đấu trực tuyến của người chơi trình cao, rồi được cải thiện thêm bằng cách tự chơi với chính các phiên bản của nó.
Mạng giá trị (value network). Mạng thứ hai nhận thế cờ và trả ra một con số: xác suất bên đang đi sẽ thắng. Đây chính là thứ hàm chấm điểm mà các lập trình viên cờ vây thiếu suốt mấy chục năm, nhưng thay vì viết tay, nó được học từ hàng triệu thế cờ trong các ván tự chơi.
Tìm kiếm cây Monte Carlo. Khi đến lượt, AlphaGo dựng cây các nước có thể đi. Mạng chính sách cho biết nhánh nào đáng xét trước, nên máy không phí thời gian vào hai trăm nước vô lý. Mạng giá trị, kết hợp với các ván chơi thử nhanh, cho biết mỗi nhánh tốt đến đâu. Sau hàng chục nghìn lần mô phỏng, nước được thăm nhiều nhất là nước được chọn.
Phần cứng lớn. Bản đấu với Lee Sedol chạy phân tán trên nhiều máy chủ với rất nhiều bộ xử lý đồ hoạ. Đây là điểm cần nhớ: AlphaGo năm 2016 không phải thứ chạy được trên máy tính ở nhà.
Từ Phàn Huy đến Lee Sedol: các mốc chính
Hành trình công khai của AlphaGo khá ngắn, chỉ khoảng một năm rưỡi từ ván đầu tiên tới khi giải nghệ.
- Tháng 10 năm 2015: AlphaGo thắng Phàn Huy (Fan Hui), kỳ thủ chuyên nghiệp gốc Trung Quốc, nhà vô địch châu Âu, với tỉ số 5–0 trong một trận kín ở London.
- Tháng 1 năm 2016: DeepMind công bố kết quả và phương pháp trên tạp chí Nature. Đây là lúc giới cờ vây biết chuyện, nhiều người vẫn tin Lee Sedol sẽ thắng dễ vì Phàn Huy kém anh xa.
- Tháng 3 năm 2016, Seoul: trận năm ván với Lee Sedol, một trong những kỳ thủ thành công nhất thập niên trước đó. AlphaGo thắng ba ván đầu, Lee Sedol thắng ván 4, AlphaGo thắng ván 5. Chung cuộc 4–1.
- Cuối năm 2016 và đầu năm 2017: một phiên bản mới đấu ẩn danh trên mạng với nhiều kỳ thủ chuyên nghiệp hàng đầu ở thể thức cờ nhanh và thắng toàn bộ sáu mươi ván.
- Tháng 5 năm 2017, Ô Trấn (Trung Quốc): AlphaGo thắng Kha Khiết (Ke Jie), kỳ thủ khi đó đứng đầu nhiều bảng xếp hạng, 3–0. Sau sự kiện này, DeepMind tuyên bố AlphaGo thôi thi đấu.
Chuỗi mốc này cũng cho thấy tốc độ tiến bộ: bản thắng Phàn Huy và bản thắng Kha Khiết cách nhau chưa đầy hai năm nhưng chênh nhau rất xa về sức cờ.
Nước 37 ván 2 và nước 78 ván 4
Hai nước cờ trong trận Seoul được nhắc đi nhắc lại, và chúng nói lên hai mặt của AlphaGo. Ở ván 2, nước thứ 37 của AlphaGo là một nước "vai" ở dòng thứ năm, vị trí mà lý thuyết cờ vây truyền thống coi là quá cao, nhường đất cho đối phương. Bình luận viên chuyên nghiệp lúc đầu tưởng máy đi nhầm. Về sau, chính nhóm phát triển cho biết mạng chính sách chỉ gán cho nước này xác suất được người chơi chọn vào khoảng một phần mười nghìn: máy biết con người hầu như không đi như vậy, nhưng phần tìm kiếm vẫn đánh giá nó tốt nhất. Ván đó AlphaGo thắng, và nước 37 trở thành biểu tượng cho chuyện máy tìm ra ý tưởng ngoài khuôn khổ của người.
Ở ván 4, Lee Sedol đi nước thứ 78, một nước "chen" vào giữa vùng của AlphaGo mà máy không lường trước. Sau nước đó, AlphaGo chơi một loạt nước kém rõ rệt, thậm chí với người xem trình nghiệp dư cũng thấy lạ, rồi thua. Giải thích được đưa ra sau đó là nước 78 nằm trong vùng mà mạng chính sách gán xác suất rất thấp, nên cây tìm kiếm gần như không xét tới; khi nó xảy ra, đánh giá của máy bị lệch và máy không tự nhận ra.
Hai nước này cho thấy điểm mạnh và điểm yếu của cách học từ dữ liệu: máy giỏi ở chỗ dữ liệu và tự chơi đã phủ, nhưng có những góc mù. Ván thắng của Lee Sedol là ván duy nhất một con người thắng phiên bản AlphaGo thi đấu chính thức.
Các đời AlphaGo khác nhau ở đâu
Tên AlphaGo được dùng cho nhiều phiên bản. Khi đọc tài liệu, nên phân biệt rõ để khỏi lẫn kết quả của bản này sang bản kia.
| Phiên bản | Học từ đâu | Điểm đáng nhớ |
|---|---|---|
| AlphaGo bản đấu Phàn Huy | Ván của người chơi trình cao, rồi tự chơi | Lần đầu thắng kỳ thủ chuyên nghiệp không chấp, công bố trên Nature đầu năm 2016 |
| AlphaGo bản đấu Lee Sedol | Như trên, huấn luyện thêm nhiều tháng | Thắng 4–1 ở Seoul, thua ván 4 vì góc mù sau nước 78 |
| AlphaGo bản "Master" | Như trên, cải tiến mạng và huấn luyện | Thắng sáu mươi ván cờ nhanh trên mạng và thắng Kha Khiết 3–0 năm 2017 |
| AlphaGo Zero | Chỉ luật chơi, tự chơi từ con số không | Công bố cuối năm 2017, không dùng ván của người, mạnh hơn mọi bản trước |
| AlphaZero | Chỉ luật chơi, một thuật toán cho nhiều trò | Áp dụng cho cờ vây, cờ vua và cờ tướng Nhật (shogi); có bài riêng trong danh mục này |
Điểm quan trọng nhất trong bảng là AlphaGo Zero: bỏ hoàn toàn dữ liệu ván của người mà vẫn mạnh hơn. Kết quả này gợi ý rằng kiến thức cờ vây tích luỹ hàng nghìn năm của con người, dù quý, không phải là con đường duy nhất để chơi giỏi.
Người chơi cờ phong trào nên hiểu gì từ AlphaGo
Không phải ai đọc về AlphaGo cũng là người làm trí tuệ nhân tạo. Với người chơi cờ, có vài điều thực tế rút ra được.
- Máy cờ vây mạnh hiện nay đều đi theo hướng AlphaGo mở ra: mạng nơ-ron kết hợp tìm kiếm cây. Khi bạn dùng một phần mềm phân tích cờ vây, con số "tỉ lệ thắng" nó hiện ra chính là đầu ra của một mạng giá trị, không phải kết quả đếm đất chính xác.
- Tỉ lệ thắng của máy là ước lượng cho cuộc đấu giữa hai máy cùng sức, không phải cho bạn. Một thế máy đánh giá có lợi chín mươi phần trăm vẫn có thể rất khó thắng với người chơi nghiệp dư.
- Nước "lạ" của máy không tự động là nước nên học. Nước 37 hay ở chỗ nó đúng trong cả chuỗi tính toán phía sau; chép một nước lạ mà không hiểu lý do thì thường dẫn tới thế xấu.
- Máy có góc mù, như ván 4 cho thấy. Các bản sau đã khắc phục nhiều, nhưng nguyên lý vẫn còn: thế cờ càng hiếm gặp trong dữ liệu huấn luyện, đánh giá của máy càng nên được kiểm lại.
- Bàn 9x9 là nơi tốt để bắt đầu học cờ vây và cũng là nơi phần mềm phân tích giải thích rõ hơn, vì cây nước đi nhỏ hơn nhiều.
Ý nghĩa của AlphaGo ra ngoài bàn cờ, và chỗ hay bị nói quá
AlphaGo thường được nhắc như cột mốc của học sâu, và điều đó có cơ sở: nó cho thấy mạng nơ-ron có thể học được thứ "cảm nhận thế cờ" mà con người không viết thành quy tắc được, rồi kết hợp với tìm kiếm để ra quyết định trong một không gian khổng lồ. Cách ghép giữa học và tìm kiếm này về sau được DeepMind và nhiều nhóm khác dùng lại cho các bài toán không phải trò chơi, chẳng hạn lập kế hoạch, tối ưu và một số bài toán khoa học.
Chỗ hay bị nói quá là coi AlphaGo như bằng chứng máy đã "biết suy nghĩ" nói chung. AlphaGo chỉ chơi cờ vây, trên bàn 19x19, theo một bộ luật cụ thể; đổi kích thước bàn hay đổi luật tính điểm là phải huấn luyện lại. Nó không giải thích được nước đi bằng lời, không biết mình đang chơi một trò chơi văn hoá có lịch sử hàng nghìn năm. Môi trường cờ vây có luật rõ, thông tin đầy đủ, kết quả thắng thua rõ ràng và có thể tự chơi vô hạn để tạo dữ liệu, những điều kiện mà phần lớn việc ngoài đời không có.
Đọc tin về AI, bạn có thể dùng chính AlphaGo làm thước đo: một hệ thống được quảng bá là "vượt con người" thì vượt ở việc gì, trong điều kiện nào, có tự tạo được dữ liệu như cờ vây hay không. Ba câu hỏi đó giúp tách thành tựu thật khỏi lời quảng cáo.
Câu hỏi thường gặp
AlphaGo có thua ván nào trong thi đấu chính thức không?
Có một ván: ván 4 trận với Lee Sedol năm 2016, sau nước 78 của Lee Sedol. Các phiên bản sau, gồm bản thắng sáu mươi ván trên mạng và bản đấu Kha Khiết năm 2017, không thua ván nào trong các sự kiện đã công bố.
AlphaGo có dùng ván cờ của người để học không?
Các phiên bản đầu có: mạng chính sách khởi đầu bằng cách học từ thế cờ trong ván đấu trực tuyến của người chơi trình cao, rồi mới tự chơi để cải thiện. AlphaGo Zero, công bố cuối năm 2017, bỏ hẳn dữ liệu người và chỉ học từ việc tự chơi.
Có thể tải AlphaGo về chơi không?
Không. DeepMind không phát hành AlphaGo thành phần mềm cho công chúng. Tuy vậy, dựa trên các bài báo đã công bố, cộng đồng đã làm ra nhiều chương trình cờ vây mã nguồn mở theo cùng hướng, và nhiều chương trình trong số đó mạnh hơn kỳ thủ chuyên nghiệp.
Vì sao AlphaGo chơi nhiều nước khiến người xem tưởng là sai?
Vì máy tối ưu xác suất thắng chứ không tối ưu cách biệt điểm. Khi đã dẫn, nó sẵn sàng nhường đất để thế cờ đơn giản, khiến người xem tưởng nó yếu đi. Ngoài ra, một số nước như nước 37 đơn giản là nằm ngoài lý thuyết truyền thống.
AlphaGo khác Deep Blue ở điểm cơ bản nào?
Deep Blue dùng hàm đánh giá do người viết và tìm kiếm cực nhanh trên chip chuyên dụng. AlphaGo dùng mạng nơ-ron học từ dữ liệu để vừa chọn nước đáng xét vừa đánh giá thế cờ, nhờ đó xét ít thế hơn rất nhiều mà vẫn chơi mạnh trong một trò khó hơn.
Lee Sedol nói gì về trận đấu sau này?
Lee Sedol giải nghệ năm 2019. Trong các phát biểu được báo chí đưa tin khi đó, anh cho rằng sự xuất hiện của máy cờ vây mà con người không thể thắng là một trong những lý do khiến anh dừng thi đấu chuyên nghiệp.