Và một trong những ứng dụng rất thiết thực đó chính là nhận dạng, phân biệt vật thể. Nhưng việc tiếp cận với các công nghệ AI nói chung và công nghệ nhận dạng, phân biệt vật thể nói riêng là không hề dễ dàng.
Hầu hết, để có thể chuyên sâu vào lĩnh vực này thì đòi hỏi các bạn phải có kiến thức chuyên môn vững chắc.
Nhưng cũng rất may mắn là hiện nay có rất nhiều service (dịch vụ) cho phép người dùng tạo ra các model AI một cách không quá phức tạp (chỉ cần bạn có dữ liệu là được).
Và tất nhiên rồi, trong bài viết này mình sẽ cùng với các bạn tạo ra một model AI đơn giản, hỗ trợ nhận dạng, phân biệt hình vật thể (cụ thể ở đây là ảnh chó mèo nhé các bạn).
I. Làm thế nào để tạo được model AI?
Đọc thêm:
- Cách mạng 4.0 là gì? nó sẽ ảnh hưởng thế nào đến Việt Nam?
- Cách mạng công nghiệp 4.0: Chuyển đổi số và Kinh tế số VN
#1. Chuẩn bị dữ liệu
Dữ liệu có thể nói là phần quan trọng bậc nhất trong các bài toán về nhận dạng, phân biệt vật thể nói riêng và các bài toán về AI nói chung.
Trong bài viết này mình sẽ xây dựng một model AI hỗ trợ nhận dạng và phân biệt chó, mèo. Dưới đây là 10 tấm ảnh dữ liệu về loài chó Pitpull mình đã chuẩn bị.
Tiếp theo là tập 10 ảnh về các loài mèo khác nhau.
#2. Training dữ liệu
+ Bước 1: Các bạn truy cập vào trang: https://teachablemachine.withgoogle.com/ như hình bên dưới.
Thực ra đây là một dịch vụ miễn phí của Google – nơi các bạn có thể traning và tạo ra các model AI đơn giản, nhanh chóng mà không cần phải code gì cả.
Ở đây các bạn có thể tạo 3 loại dự án nhận dạng, phân biệt khác nhau:
- Nhận dạng, phân biệt vật thể qua ảnh (ảnh và video).
- Nhận dạng, phân biệt thông qua âm thanh (audio).
- Nhận dạng chuyển động, hình dạng.
+ Bước 2: Trong bài viết này mình sẽ tạo Model AI nhận diện, phân biệt chó, mèo thông qua hình ảnh nên mình sẽ lựa chọn tính năng đầu tiên (
)+ Bước 3: Tiếp theo, có cũng có hai options thì ở đây mình chọn
+ Bước 4: Bước tiếp theo chúng ta sẽ tải dữ liệu đã chuẩn bị ở bước trước lên.
Các bạn lưu ý là phải tạo trước hai class (đối tượng) tương ứng với hai tập dữ liệu. Ví dụ như bài viết này của mình đó là hai lớp
và như hình bên dưới.Tải lên dữ liệu cho đối tượng
.Tải lên dữ liệu cho đối tượng
.Lưu ý: Các bạn có thể thêm đối tượng bằng cách bấm vào nút:
+ Bước 5: Sau khi tải lên toàn bộ dữ liệu thì các bạn chỉ cần bấm
để bắt đầu quá trình training dữ liệu.Lưu ý là các bạn không được tắt tab này trong quá trình dữ liệu đang training, nếu không quá training sẽ kết thúc.
Bản chất việc training này vẫn diễn ra trên CPU của máy tính của các bạn, chỉ có thuật toán là sử dụng của Google thôi nha các bạn.
+ Bước 6: Quá trình Training này diễn ra nhanh hay chậm sẽ tùy thuộc vào cấu hình máy tính của các bạn, cũng như là tập dữ liệu của bạn có nhiều hay không.
Thường thì nó sẽ tương đối nhanh thôi !
#3. Test Model sau khi Training
Sau khi training thành công thì chúng ta sẽ có được một model. Bạn có thể test (kiểm tra) model bằng hai cách đó là sử dụng trực tiếp camera hoặc tải ảnh lên để test.
Trong bài viết này mình sẽ sử dụng các tải ảnh (chọn option
) như sau:Đây là một bức ảnh trong tập dữ liệu huấn luyện (Training) nên kết quả dự đoán chính xác 100% đó là mèo.
Bây giờ, mình lấy một bức ảnh không thuộc tập dữ liệu training thì kết quả giảm xuống với độ chính xác là 99% (vẫn là một tỷ lệ cao với tập dữ liệu quá ít của mình).
Với model “Chó” thì sao, kết quả sẽ là 100% nếu mình tải lên ảnh một chú chó Pitbull nhưng nếu bạn tải lên ảnh không phải là chó Pitbull thì tỷ lệ này chắc chắn sẽ giảm xuống.
#4. Export Model
Tất nhiên, trang web này tạo ra không phải để chúng ta nghịch ngợm cho vui mà chúng ta hoàn toàn có thể kết xuất model sau khi training rồi nhúng vào các hệ thông khác.
Do nội dung này khá dài nên mình sẽ cùng các bạn tìm hiểu trong một bài viết khác. Như hình bên dưới, nếu bạn nào có hiểu biết về web thì có thể export ra mã Javascript và nhúng vào trang web của các bạn rất đơn giản.
II. Lời kết
Okay, vậy là trong bài viết này mình đã cùng các bạn tạo ra một model AI siêu đơn giản, hoàn toàn không phải code một dòng lệnh nào rồi nhé.
Các công đoạn khó như thuật toán, xử lý dữ liệu thì service của Google đã cung cấp hết rồi
Nhưng nếu các bạn muốn sử dụng model này cho các hệ thống của mình của mình thì bắt buộc các bạn phải tìm cách tích hợp mới được.
Mình sẽ cùng các bạn tìm hiểu việc tích hợp đó trong các bài viết tiếp theo. Hẹn gặp lại các bạn nhé.!