Chúng tôi đã đào tạo mạng nơ-ron để chơi Minecraft bằng Video PreTraining (VPT) trên một tập dữ liệu video khổng lồ không gắn nhãn về trò chơi Minecraft của con người, trong khi chỉ sử dụng một lượng nhỏ dữ liệu nhà thầu được gắn nhãn. Với sự tinh chỉnh, mô hình của chúng tôi có thể học cách chế tạo các công cụ kim cương, một công việc thường mất những người thành thạo trong hơn 20 phút (24,000 thao tác). Mô hình của chúng tôi sử dụng giao diện con người nguyên bản của các lần nhấn phím và di chuyển chuột, làm cho nó khá chung chung và thể hiện một bước tiến tới các tác nhân sử dụng máy tính nói chung.
Xem mã và trọng lượng mô hình
Cuộc thi MineRL
Internet chứa rất nhiều video công khai mà chúng ta có thể học hỏi. Bạn có thể xem một người thực hiện một bài thuyết trình tuyệt đẹp, một nghệ sĩ kỹ thuật số vẽ cảnh hoàng hôn tuyệt đẹp và một người chơi Minecraft xây dựng một ngôi nhà phức tạp. Tuy nhiên, những video này chỉ cung cấp bản ghi gì đã xảy ra nhưng không chính xác làm thế nào nó đã đạt được, tức là bạn sẽ không biết trình tự chính xác của các chuyển động chuột và các phím được nhấn. Nếu chúng tôi muốn xây dựng quy mô lớn mô hình nền tảng trong các miền này như chúng tôi đã thực hiện bằng ngôn ngữ GPT, việc thiếu nhãn hành động này đặt ra một thách thức mới không có trong miền ngôn ngữ, nơi "nhãn hành động" chỉ đơn giản là các từ tiếp theo trong một câu.
Để tận dụng vô số dữ liệu video không gắn nhãn có sẵn trên internet, chúng tôi giới thiệu một phương pháp học bắt chước bán giám sát mới lạ nhưng đơn giản: Video PreTraining (VPT). Chúng tôi bắt đầu bằng cách thu thập một tập dữ liệu nhỏ từ các nhà thầu, nơi chúng tôi không chỉ ghi lại video của họ mà còn ghi lại các hành động mà họ đã thực hiện, trong trường hợp của chúng tôi là các thao tác nhấn phím và di chuyển chuột. Với dữ liệu này, chúng tôi đào tạo mô hình động lực học nghịch đảo (IDM), mô hình này dự đoán hành động được thực hiện ở mỗi bước trong video. Điều quan trọng, IDM có thể sử dụng quá khứ và tương lai thông tin để đoán hành động ở mỗi bước. Nhiệm vụ này dễ dàng hơn nhiều và do đó yêu cầu ít dữ liệu hơn nhiều so với nhiệm vụ nhân bản hành vi dự đoán các hành động được đưa ra chỉ khung video trước đây, yêu cầu suy ra những gì người đó muốn làm và làm thế nào để hoàn thành nó. Sau đó, chúng tôi có thể sử dụng IDM được đào tạo để gắn nhãn một tập dữ liệu lớn hơn nhiều về video trực tuyến và học cách hành động thông qua nhân bản hành vi.
Kết quả VPT Zero-Shot
Chúng tôi đã chọn xác thực phương pháp của mình trong Minecraft vì nó (1) là một trong những trò chơi điện tử được chơi nhiều nhất trên thế giới và do đó có vô số dữ liệu video miễn phí có sẵn và (2) là kết thúc mở với nhiều thứ để tương tự như các ứng dụng trong thế giới thực, chẳng hạn như sử dụng máy tính. không giống trước khi công trinh trong Minecraft sử dụng không gian hành động được đơn giản hóa nhằm mục đích giảm bớt khả năng khám phá, AI của chúng tôi sử dụng giao diện người bản địa có thể áp dụng chung hơn, mặc dù cũng khó hơn nhiều: tốc độ khung hình 20Hz với chuột và bàn phím.
Được đào tạo trên 70,000 giờ video trực tuyến có nhãn IDM, mô hình nhân bản hành vi của chúng tôi (“mô hình nền tảng VPT”) hoàn thành các nhiệm vụ trong Minecraft mà gần như không thể đạt được bằng cách học tăng cường từ đầu. Nó học cách chặt cây để thu thập các khúc gỗ, chế tạo những khúc gỗ đó thành những tấm ván, và sau đó chế tạo những tấm ván đó thành một chiếc bàn thủ công; chuỗi này đưa một người thành thạo Minecraft khoảng 50 giây hoặc 1,000 hành động trò chơi liên tiếp.
Ngoài ra, mô hình thực hiện các kỹ năng phức tạp khác mà con người thường làm trong trò chơi, chẳng hạn như bơi lội, săn bắt động vật để kiếm thức ăn và ăn thức ăn đó. Nó cũng học được kỹ năng “nhảy cột”, một hành vi phổ biến trong Minecraft là nâng cao bản thân bằng cách liên tục nhảy và đặt một khối bên dưới mình.
Tinh chỉnh với Nhân bản hành vi
Các mô hình nền tảng được thiết kế để có một hồ sơ hành vi rộng rãi và nói chung có khả năng thực hiện nhiều nhiệm vụ khác nhau. Để kết hợp kiến thức mới hoặc cho phép họ chuyên môn hóa phân phối nhiệm vụ hẹp hơn, thông thường là tinh chỉnh các mô hình này thành các tập dữ liệu nhỏ hơn, cụ thể hơn. Như một nghiên cứu điển hình về việc mô hình nền VPT có thể được tinh chỉnh tốt như thế nào đối với các tập dữ liệu hạ lưu, chúng tôi đã yêu cầu các nhà thầu của mình chơi trong 10 phút trong thế giới Minecraft hoàn toàn mới và xây một ngôi nhà từ vật liệu Minecraft cơ bản. Chúng tôi hy vọng rằng điều này sẽ khuếch đại khả năng của mô hình nền tảng trong việc thực hiện các kỹ năng “đầu trò chơi” một cách đáng tin cậy, chẳng hạn như xây dựng bàn chế tạo. Khi tinh chỉnh tập dữ liệu này, chúng tôi không chỉ thấy sự cải thiện lớn trong việc thực hiện một cách đáng tin cậy các kỹ năng đầu trò chơi đã có trong mô hình nền tảng, mà mô hình tinh chỉnh còn học cách đi sâu hơn nữa vào cây công nghệ bằng cách chế tạo cả bằng gỗ và công cụ bằng đá. Đôi khi chúng ta còn thấy một số công trình xây dựng hầm trú ẩn thô sơ và đặc vụ tìm kiếm khắp các ngôi làng, bao gồm cả việc đột kích các rương.
Cải thiện hành vi đầu trò chơi nhờ tinh chỉnh BC
Chia tỷ lệ dữ liệu
Có lẽ giả thuyết quan trọng nhất trong công việc của chúng tôi là việc sử dụng dữ liệu nhà thầu được gắn nhãn để đào tạo IDM (như một phần của đường ống VPT) sẽ hiệu quả hơn nhiều so với việc đào tạo trực tiếp mô hình nền tảng BC từ cùng một bộ dữ liệu nhà thầu nhỏ đó. Để xác thực giả thuyết này, chúng tôi đào tạo các mô hình nền tảng về việc tăng lượng dữ liệu từ 1 đến 70,000 giờ. Những người được đào tạo về dữ liệu dưới 2,000 giờ được đào tạo về dữ liệu nhà thầu với các nhãn xác thực được thu thập ban đầu để đào tạo IDM và những người được đào tạo trên 2,000 giờ được đào tạo về dữ liệu internet được gắn nhãn IDM của chúng tôi. Sau đó, chúng tôi lấy từng mô hình nền móng và tinh chỉnh nó cho phù hợp với tập dữ liệu xây dựng nhà được mô tả trong phần trước.
Ảnh hưởng của dữ liệu đào tạo mô hình nền tảng đối với việc tinh chỉnh
Khi dữ liệu mô hình nền tảng tăng lên, chúng ta thường thấy khả năng chế tác tăng lên và chỉ ở quy mô dữ liệu lớn nhất, chúng ta mới thấy sự xuất hiện của chế tác công cụ bằng đá.
Tinh chỉnh với Học tập củng cố
Khi có thể chỉ định một chức năng khen thưởng, học tập củng cố (RL) có thể là một phương pháp mạnh mẽ để khơi gợi hiệu suất cao, thậm chí có khả năng là siêu nhân. Tuy nhiên, nhiều nhiệm vụ đòi hỏi phải vượt qua những thử thách khám phá khó khăn và hầu hết các phương pháp RL đều giải quyết chúng bằng ngẫu nhiên mồi thăm dò, ví dụ như mô hình thường được khuyến khích hoạt động ngẫu nhiên thông qua tiền thưởng entropy. Mô hình VPT nên tốt hơn nhiều so với RL vì mô phỏng hành vi của con người có thể hữu ích hơn nhiều so với thực hiện các hành động ngẫu nhiên. Chúng tôi đặt cho mô hình của mình một nhiệm vụ đầy thử thách là thu thập một cái cuốc kim cương, một khả năng chưa từng có trong Minecraft khiến việc này càng trở nên khó khăn hơn khi sử dụng giao diện người bản địa.
Chế tạo một chiếc cuốc kim cương đòi hỏi một chuỗi nhiệm vụ phụ phức tạp và lâu dài. Để làm cho nhiệm vụ này có thể xử lý được, chúng tôi thưởng cho các nhân viên cho mỗi mục trong chuỗi.
Chúng tôi nhận thấy rằng chính sách RL được đào tạo từ lần khởi tạo ngẫu nhiên (phương pháp RL tiêu chuẩn) hầu như không đạt được bất kỳ phần thưởng nào, không bao giờ học cách thu thập nhật ký và hiếm khi thu thập gậy. Ngược lại, tinh chỉnh từ mô hình VPT không chỉ học cách chế tạo cuốc kim cương (điều này xảy ra trong 2.5% các tập Minecraft dài 10 phút), mà nó thậm chí còn có tỷ lệ thành công ở cấp độ con người khi thu thập tất cả các vật phẩm dẫn đến cái cuốc kim cương. Đây là lần đầu tiên có người cho thấy một nhân viên máy tính có khả năng chế tạo công cụ kim cương trong Minecraft, trung bình con người mất hơn 20 phút (24,000 thao tác).
Phần thưởng qua các tập
Kết luận
VPT mở đường cho phép các đại lý học cách hành động bằng cách xem vô số video trên internet. So với mô hình video chung chung hoặc các phương pháp tương phản sẽ chỉ mang lại đại diện trước tiên, VPT cung cấp khả năng thú vị để học trực tiếp trên quy mô lớn sơ đẳng về hành vi trong nhiều lĩnh vực hơn là chỉ ngôn ngữ. Mặc dù chúng tôi chỉ thử nghiệm trong Minecraft, nhưng trò chơi có kết thúc mở và giao diện người dùng gốc (chuột và bàn phím) rất chung chung, vì vậy chúng tôi tin rằng kết quả của chúng tôi là tín hiệu tốt cho các miền tương tự khác, ví dụ như sử dụng máy tính.
Để biết thêm thông tin, vui lòng xem giấy của chúng tôi. Chúng tôi cũng đang mở nguồn cung cấp dữ liệu nhà thầu, môi trường Minecraft, mã mô hình và trọng lượng mô hình, chúng tôi hy vọng sẽ hỗ trợ nghiên cứu trong tương lai về VPT. Hơn nữa, chúng tôi đã hợp tác với cuộc thi MineRL NeurIPS năm nay. Người dự thi có thể sử dụng và tinh chỉnh các mô hình của chúng tôi để cố gắng giải quyết nhiều nhiệm vụ khó khăn trong Minecraft. Những người quan tâm có thể kiểm tra trang web cạnh tranh và cạnh tranh cho một giải thưởng bầu trời xanh của $100,000 ngoài một nhóm giải thưởng thông thường của $20,000. Các khoản tài trợ được cung cấp cho các nhóm và cá nhân không được đại diện tự nhận.
import {Runtime, Inspector, Library} from “https://unpkg.com/@observablehq/runtime@4.12.0/dist/runtime.js”; import notebookEarlyGameBehavior from “https://api.observablehq.com/d/7f62ee5a1b0ddebd.js?v=3”; import notebookRewardOverEpisodes from “https://api.observablehq.com/d/4d319198b6ab74d5.js?v=3”; import notebookBCFineTuning from “https://api.observablehq.com/d/119b327a0da6dc38.js?v=3” const customWidth = function (selector) { return (new Library).Generators.observe(function(change) { var width = change(document.querySelector(selector).clientWidth); function resized() { var w = document.querySelector(selector).clientWidth; if (w !== width) change(width = w); } window.addEventListener(“resize”, resized); return function() { window.removeEventListener(“resize”, resized); }; }); }; const earlyGameBehaviorSelector = “#chart-early-game-behavior”; const earlyGameBehaviorRenders = { “chart”: earlyGameBehaviorSelector, }; new Runtime(Object.assign(new Library, {width: customWidth(earlyGameBehaviorSelector)})).module(notebookEarlyGameBehavior, name => { const selector = earlyGameBehaviorRenders[name]; if (selector) { // key exists return new Inspector(document.querySelector(selector)); } else { return true; } }); const rewardOverEpisodesSelector = “#chart-reward-over-episodes”; const rewardOverEpisodesRenders = { “chart”: rewardOverEpisodesSelector, }; new Runtime(Object.assign(new Library, {width: customWidth(rewardOverEpisodesSelector)})).module(notebookRewardOverEpisodes, name => { const selector = rewardOverEpisodesRenders[name]; if (selector) { // key exists return new Inspector(document.querySelector(selector)); } else { return true; } }); const rewardBCFineTuningSelector = “#chart-bc-fine-tuning”; const rewardBCFineTuningRenders = { “chart”: rewardBCFineTuningSelector, }; new Runtime(Object.assign(new Library, {width: customWidth(rewardBCFineTuningSelector)})).module(notebookBCFineTuning, name => { const selector = rewardBCFineTuningRenders[name]; if (selector) { // key exists return new Inspector(document.querySelector(selector)); } else { return true; } }); var playerObjects = {}; var initVimeo = function () { var videoEls = document.querySelectorAll(‘iframe[data-vimeo]’); videoEls.forEach(function (v) { var id = v.getAttribute(‘data-id’); var player = new Vimeo.Player(v); playerObjects[id] = player; // keep track of players by id }); var triggers = document.querySelectorAll(‘.js-video-trigger’); triggers.forEach(function (t) { t.addEventListener(‘click’, function (e) { var id = this.getAttribute(‘data-video’); if (!id) return; e.preventDefault(); playerObjects[id].play(); }); }); }; function initCanvas() { let needsRecalc = true; const DESIRED_SIZE = window.innerWidth { function step() { if (needsRecalc) { needsRecalc = false; numColumns = Math.floor(window.innerWidth / DESIRED_SIZE); tileWidth = window.innerWidth / numColumns; tileHeight = ((SOURCE_HEIGHT / SOURCE_WIDTH) * tileWidth); canvas.setAttribute(‘width’, window.innerWidth); canvas.setAttribute(‘height’, tileHeight); canvas.parentNode.style.aspectRatio = `${window.innerWidth} / ${tileHeight}`; } let column = 0; for (let i = 0; i < numColumns; i++) { ctx.drawImage(video, tileWidth * i, 0, tileWidth, tileHeight); column++; } requestAnimationFrame(step) } requestAnimationFrame(step); }) } document.addEventListener('DOMContentLoaded', function() { initVimeo(); initCanvas(); });
- '
- "
- 000
- 10
- 2D
- 70
- a
- có khả năng
- Tuyệt đối
- Đạt được
- đạt được
- ngang qua
- Hành động
- Hoạt động
- hành động
- Ngoài ra
- thêm vào
- đại lý
- AI
- Tất cả
- Cho phép
- Đã
- số lượng
- số lượng
- động vật
- bất kỳ ai
- áp dụng
- các ứng dụng
- khoảng
- nghệ sĩ
- có sẵn
- Trung bình cộng
- bởi vì
- được
- giữa
- Chặn
- thương hiệu
- xây dựng
- Xây dựng
- vải
- có khả năng
- trường hợp
- trường hợp nghiên cứu
- thách thức
- thách thức
- thách thức
- thay đổi
- mã
- thu thập
- Thu
- Cột
- Chung
- so
- cạnh tranh
- cạnh tranh
- phức tạp
- máy tính
- liên tiếp
- xây dựng
- chứa
- Nhà thầu
- nhà thầu
- dữ liệu
- dành riêng
- sâu sắc hơn
- mô tả
- thiết kế
- khó khăn
- kỹ thuật số
- trực tiếp
- phân phối
- miền
- lĩnh vực
- xuống
- động lực
- mỗi
- Đầu
- nới lỏng
- hiệu lực
- Hiệu quả
- nỗ lực
- to lớn
- Môi trường
- thú vị
- thử nghiệm
- thăm dò
- Tên
- lần đầu tiên
- thực phẩm
- tìm thấy
- Nền tảng
- từ
- Full
- chức năng
- Hơn nữa
- tương lai
- trò chơi
- Trò chơi
- thu thập
- Tổng Quát
- nói chung
- thế hệ
- tài trợ
- Các nhóm
- đã xảy ra
- cao
- hữu ích
- Cao
- mong
- House
- Độ đáng tin của
- Hướng dẫn
- Tuy nhiên
- HTTPS
- lớn
- Nhân loại
- Con người
- Săn bắn
- ia
- quan trọng
- không thể
- cải thiện
- cải thiện
- Bao gồm
- Tăng lên
- tăng
- các cá nhân
- thông tin
- quan tâm
- Giao thức
- Internet
- tham gia
- IT
- Giữ
- Key
- phím
- Biết
- kiến thức
- nhãn
- Nhãn
- Ngôn ngữ
- lớn
- lớn hơn
- lớn nhất
- hàng đầu
- LEARN
- học
- học tập
- Thư viện
- Có khả năng
- dài
- thực hiện
- làm cho
- Làm
- lớn
- nguyên vật liệu
- toán học
- Các thành viên
- phương pháp
- kiểu mẫu
- mô hình
- tháng
- chi tiết
- hầu hết
- mạng
- tiếp theo
- số
- Cung cấp
- Trực tuyến
- mở
- gọi món
- nguyên
- Nền tảng khác
- một phần
- hợp tác
- hiệu suất
- biểu diễn
- kinh nguyệt
- người
- cột
- đặt
- Play
- máy nghe nhạc
- người chơi
- xin vui lòng
- điều luật
- hồ bơi
- vị trí
- khả năng
- có thể
- mạnh mẽ
- thực hành
- Chính xác
- trình bày
- trình bày
- trước
- giải thưởng
- Hồ sơ
- dự án
- cho
- Ngẫu nhiên
- đạt
- ghi
- đều đặn
- đại diện cho
- yêu cầu
- cần phải
- đòi hỏi
- nghiên cứu
- Kết quả
- trở lại
- tương tự
- Quy mô
- tìm kiếm
- giây
- định
- Shelter
- thể hiện
- tương tự
- Đơn giản
- Six
- Sáu tháng
- kỹ năng
- nhỏ
- So
- động SOLVE
- một số
- không gian
- riêng
- Tiêu chuẩn
- Bắt đầu
- STONE
- Học tập
- phong cách
- thành công
- Hoàng hôn
- dùng
- nhiệm vụ
- nhóm
- Công nghệ
- Sản phẩm
- thế giới
- điều
- Thông qua
- thời gian
- công cụ
- công cụ
- hàng đầu
- đối với
- theo dõi
- Hội thảo
- Dưới
- chưa từng có
- sử dụng
- thường
- sử dụng
- nhiều
- Video
- trò chơi video
- Video
- W
- Đồng hồ đeo tay
- Wealth
- Điều gì
- trong khi
- không có
- từ
- Công việc
- thế giới
- thế giới
- sẽ
- năm
- Năng suất
- không