[Unity+Machine Learning] Tập 2: Training model cho sample của Unity.
This post hasn't been updated for 3 years
Như các bạn theo dõi thì cũng biết, ở bài chia sẻ trước mình có hướng dẫn các bạn tạo ra môi trường để training cho project Machine Learning trên Unity. [Unity+Machine Learning] Tập 1: Tạo môi trường training
Bài này mình sẽ hướng dẫn các bạn training 1 model để thấy được sự vi diệu của Machine Learning nhé
Đầu tiên, chúng ta cần thấy được việc khi chưa training cho model thì game tự chơi nó sẽ chơi ra sao!
Bước 1: Các bạn mở Project đã download về ở bài trước ra: Bước 2: Các bạn mở scene game tennis ra (hôm nay chúng ta sẽ training cho model của game này):
- Các bạn sẽ thấy nó có cấu trúc thế này:
- Và có màn hình game thế này: Bước 3: Các bạn ấn nút play để game chạy: Bước 4: Quan sát trên màn hình game: => Các bạn thấy rằng 2 cây vợt gần như chỉ biết nằm 1 chỗ, nhúc nhích 1 chút 1, và quả bóng luôn bị rơi xuống bàn, ăn may thì được quả bay qua bên kia thôi đúng ko? :v
Rồi! giờ chúng ta sẽ training sao cho các cây vợt có thể di chuyển hứng quả bóng và đánh qua đánh lại với đối thủ 1 cách hoàn toàn tự động nhé
Bước 1: Tìm tới Brain các bạn muốn training: Bước 2: Đổi Brain Type từ Player sang External: Bước 3: Save Scene đó lại, sau đó add Scene đó vào Scenes In Build, check vào Development Build: Bước 4: Ấn Build và lưu vào thư mục python của bài trước. Bước 5: Bật Anaconda prompt: Bước 6: Chuyển thư mục trỏ tới thư mục python: "cd C:\Users\dao.dinh.cuong\Downloads\ml-agents-master\ml-agents-master\python" Bước 7: Nhập câu lệnh sau: “jupyter notebook” => Bạn sẽ thấy 1 trang web được mở ra như sau: Bước 8: Mở file PPO.ipynb ra và sửa value của env_name thành tên file exe bạn build ở bước 4: Bước 9: Chọn mục 1 và nhấn nút run theo từng bước để quá trình training bắt đầu:
- Các bạn lưu ý là khi chạy tới bước nào mà đang còn dấu * thì các bạn đợi cho nó xong rồi hãy chuyển bước tiếp theo nhé!
- Khi tới bước Train The Agent(s) sẽ có 1 cửa sổ game mở ra và nó sẽ tự động chơi, đó chính là nó đang tự training đó, các bạn đợi cho nó chạy cái này xong, hoặc khi đặt được kết quả mong muốn thì mới nhấn tiếp tục nhé! Bước 10: Export kết quả training ra file data có đuôi .bytes theo đường dẫn thư mục từ python là: “python/models/ppo” Bước 11: Copy file .bytes ở trên project unity ở trên: Bước 12: Download và Import Tensorflow vào project: Links: https://s3.amazonaws.com/unity-agents/0.2/TFSharpPlugin.unitypackage Bước 13: Config settings project theo hình sau:
- Chú ý sau khi gõ ENABLE_TENSORFLOW vào ô Scripting Defined Symbols thì phải ấn enter để áp dụng, và cuối cùng save scene lại. Bước 14: Đổi Brain Type từ External sang Internal: Bước 15: kéo file data traning vào Graph Model: => Cuối cùng các bạn chỉ việc ấn play để xem thành quả nhé!
Hẳn là các bạn sẽ thấy rất ngạc nhiên vì 2 cây vợt lại có thể tự động chơi với nhau mà ko cần người điều khiển đúng ko? Quá vi diệu đúng ko? Đó chính là Machine learning đó Và chúng ta sẽ gặp nhau vào tháng tới với 1 bài viết mới nhé
Cảm ơn các bạn đã đọc bài! nếu thấy thích thì follow, thấy hay thì vote nhé
All Rights Reserved