Học máy trong JavaScript
Theo truyền thống, các ứng dụng Machine Learning đang sử dụng R hoặc Python.
Nhưng JavaScript có một tương lai tuyệt vời với tư cách là ngôn ngữ Machine Learning:
- JavaScript được nhiều người biết đến. Tất cả các nhà phát triển có thể sử dụng nó.
- Bảo mật được tích hợp sẵn. JavaScript không thể truy cập các tệp của bạn.
- JavaScript nhanh hơn Python.
- JavaScript có thể sử dụng khả năng tăng tốc phần cứng.
- JavaScript chạy trong trình duyệt
JavaScript tốt cho học máy
Machine Learning có thể nặng về toán học. Bản chất của mạng lưới thần kinh là mang tính kỹ thuật cao và các thuật ngữ đi kèm với nó có xu hướng khiến mọi người sợ hãi.
Đây là lúc JavaScript phát huy tác dụng, với phần mềm dễ hiểu giúp đơn giản hóa quá trình tạo và đào tạo mạng lưới thần kinh.
Với thư viện Machine Learning mới, nhà phát triển JavaScript có thể thêm Machine Learning và Trí tuệ nhân tạo vào các ứng dụng web.
API WebGL
WebGL là API JavaScript để hiển thị đồ họa 2d và 3D trong bất kỳ trình duyệt nào.
WebGL có thể chạy trên cả card đồ họa tích hợp và độc lập trong bất kỳ PC nào.
WebGL mang đồ họa 3D vào trình duyệt web. Các nhà cung cấp trình duyệt lớn Apple (Safari), Google (Chrome), Microsoft (Edge) và Mozilla (Firefox) là thành viên của Nhóm làm việc WebGL.
Thư viện máy học JavaScript
Học máy trong Trình duyệt có nghĩa là:
- Học máy trong JavaScript
- Học máy cho Web
- Học máy cho mọi người
- Học máy trên nhiều nền tảng hơn
Thuận lợi:
- Dễ sử dụng. Không có gì để cài đặt.
- Đồ họa mạnh mẽ. Trình duyệt hỗ trợ WebGL.
- Sự riêng tư tốt hơn. Dữ liệu có thể ở lại trên máy khách.
- Nhiều nền tảng hơn. JavaScript chạy trên thiết bị di động.
Math.js
Math.js là một thư viện toán học phong phú dành cho JavaScript và Node.js.
Math.js rất mạnh mẽ và dễ sử dụng. Nó đi kèm với một tập hợp lớn các hàm tích hợp, trình phân tích cú pháp biểu thức linh hoạt và các giải pháp để làm việc với nhiều loại dữ liệu như số, số lớn, số phức, phân số, đơn vị, mảng và ma trận.
Brain.js
Brain.js là một thư viện JavaScript giúp bạn dễ hiểu Mạng thần kinh vì nó che giấu sự phức tạp của toán học.
Brain.js rất dễ sử dụng. Bạn không cần phải biết chi tiết về mạng lưới thần kinh để làm việc với Brain.js.
Brain.js cung cấp nhiều cách triển khai mạng nơ-ron vì các mạng nơ-ron khác nhau có thể được đào tạo để làm tốt những việc khác nhau.
ml5.js
ml5.js đang cố gắng làm cho việc học máy trở nên dễ tiếp cận hơn với nhiều đối tượng hơn.
Nhóm ml5 đang nỗ lực hoàn thiện chức năng học máy theo những cách thân thiện hơn.
Ví dụ dưới đây chỉ sử dụng ba dòng mã để phân loại hình ảnh:
<img id="image" src="pic1.jpg" width="100%">
<script>
const classifier = ml5.imageClassifier('MobileNet');
classifier.classify(document.getElementById("image"), gotResult);
function gotResult(error, results) { ... }
</script>
Hãy tự mình thử »Hãy thử thay thế "pic1.jpg" bằng "pic2.jpg" và "pic3.jpg".
TenorFlow
Sân chơi TensorFlow là một ứng dụng web được viết bằng d3.js.
Với Sân chơi TensorFlow, bạn có thể tìm hiểu về Mạng thần kinh (NN) mà không cần toán học.
Trong Trình duyệt web của riêng bạn, bạn có thể tạo Mạng thần kinh và xem kết quả.
TensorFlow.js trước đây được gọi là Tf.js và Deeplearn.js.
Vẽ đồ thị trong trình duyệt
Dưới đây là danh sách một số thư viện JavaScript để sử dụng cho cả biểu đồ Machine Learning và các biểu đồ HTML khác:
Vẽ đồ thị phương trình
Vẽ đồ thị giá trị
Ngôn ngữ học máy
Các ngôn ngữ lập trình liên quan đến Machine Learning và Trí tuệ nhân tạo là:
- LISP
- R
- Python
- C++
- Java
- JavaScript
- SQL
LISP
LISP là ngôn ngữ lập trình lâu đời thứ hai trên thế giới (1958), trẻ hơn Fortran (1957) một tuổi.
Thuật ngữ Trí tuệ nhân tạo được tạo ra bởi John McCarthy , người đã phát minh ra LISP.
LISP được thành lập dựa trên lý thuyết về Hàm đệ quy (hàm tự sửa đổi) và điều này rất phù hợp với các chương trình Machine Learning trong đó “tự học” là một phần quan trọng của chương trình.
Ngôn ngữ R
R là ngôn ngữ lập trình cho đồ họa và tính toán thống kê .
R được hỗ trợ bởi Quỹ R cho tính toán thống kê .
R đi kèm với một loạt các kỹ thuật thống kê và đồ họa để:
- Mô hình tuyến tính
- Mô hình phi tuyến
- Kiểm tra thống kê
- Phân tích chuỗi thời gian
- Phân loại
- Phân cụm
Python
Python là một ngôn ngữ mã hóa có mục đích chung. Nó có thể được sử dụng cho tất cả các loại lập trình và phát triển phần mềm.
Python thường được sử dụng để phát triển máy chủ, như xây dựng ứng dụng web cho máy chủ web.
Python cũng thường được sử dụng trong Khoa học dữ liệu .
Một lợi thế khi sử dụng Python là nó có sẵn một số thư viện rất phù hợp:
- NumPy (Thư viện làm việc với mảng)
- SciPy (Thư viện khoa học thống kê)
- Matplotlib (Thư viện vẽ đồ thị)
- NLTK (Bộ công cụ ngôn ngữ tự nhiên)
- TensorFlow (Học máy)
C++
C++ giữ danh hiệu: " Ngôn ngữ lập trình nhanh nhất thế giới ".
Vì tốc độ nên C++ là ngôn ngữ được ưa chuộng khi lập trình Game trên máy tính.
Nó cung cấp khả năng thực thi nhanh hơn và có ít thời gian phản hồi hơn, được áp dụng trong các công cụ tìm kiếm và phát triển trò chơi máy tính.
Google sử dụng C++ trong các chương trình Trí tuệ nhân tạo và Học máy cho SEO (Tối ưu hóa công cụ tìm kiếm).
SHARK là thư viện C++ siêu nhanh hỗ trợ các thuật toán học có giám sát, hồi quy tuyến tính, mạng lưới thần kinh và phân cụm.
MLPACK cũng là thư viện máy học siêu nhanh dành cho C++.
Java
Java là một ngôn ngữ mã hóa có mục đích chung khác có thể được sử dụng cho tất cả các loại hình phát triển phần mềm.
Đối với Machine Learning, Java chủ yếu được sử dụng để tạo ra các thuật toán và mạng lưới thần kinh.
SQL
SQL (Ngôn ngữ truy vấn có cấu trúc) là ngôn ngữ phổ biến nhất để quản lý dữ liệu.
Kiến thức về cơ sở dữ liệu SQL, bảng và truy vấn giúp các nhà khoa học dữ liệu khi xử lý dữ liệu.
SQL rất thuận tiện cho việc lưu trữ, thao tác và truy xuất dữ liệu trong cơ sở dữ liệu.