Vì sao bọn làm AI toàn dùng Python thay vì C++ thế?

by admin

À thì phần lớn người làm AI không-phải-kỹ-sư-phần-mềm, họ không cần quan tâm về quản lý bộ nhớ, tham biến/tham trị, và đa kế thừa. Họ cần một công cụ giúp họ trực quan hóa dữ liệu (visualize data), kết nối các thí nghiệm với vài dòng code, và tương tác/thay đổi data và mô hình mà không cần biên tập lại (recomplile) và chạy lại toàn bộ hệ thống mỗi lần thay đổi xíu xiu. 

Python đáp ứng tất cả những yêu cầu trên, C++ thì không. 

Tuy vậy, các mô hình học máy (machine learning model) yêu cầu phần cứng rất cao, ví dụ như GPU đối với các tác vụ tính toán dạng ma trận, (matrix operations). Để xử lý nó, đương nhiên cần các ngôn ngữ bậc thấp như là C/C++. Và thực ra, phần lớn thư viện như Tensorflow cung cấp các giao diện Python (Python interface) tuy nhiên, các mô-đun con (submodule) được viết bằng C để đảm bảo vấn đề hiệu suất. 

(hình bên dưới là mô hình về một phần-mềm-AI) 

Vậy nên, bạn có thể tự làm bánh cho mình rồi tự thưởng thức luôn (OP chơi chữ, vì dính tới C/C++ là dính tới câu chuyện build-it-yourself, tự nướng cái bánh của mình đi). Chúng ta có thể tận dụng lợi thế của sự dễ dàng và đơn giản của Python, và hiệu suất & khả năng tương tác với các phần cứng ở tầng thấp (low level intergration) của C++.

You may also like

Leave a Comment