- vừa được xem lúc

[GPU in AI] Bài 2: RAPIDS và những điều cần biết

0 0 6

Người đăng: CisMine

Theo Viblo Asia

Ngày nay data ngày một nhiều dẫn đến việc ETL (Extract, Transform, Load) hay còn gọi là phân tích và xử lí data ( data analyis) ngày một phức tạp và tốn nhiều thời gian nên NVIDIA đã tạo nên RAPIDS giúp giải quyết vấn đề này

RAPIDS trong GPU

Khi nhắc đến phân tích và xử lí data chúng ta không thể không nhắc tới: Python, Pandas, SQL, Spark, ... nhưng tất cả các ngôn ngữ trên đều có 1 khuyết điểm lớn là đều chạy trên CPU dẫn đến việc xử lí data rất tốn thời gian và không sử dụng hiệu quả tài nguyên của máy tính nên RAPIDS đã ra đời

RAPIDS là gì

image.png

  • Là các thư viện open-source được viết bởi NVIDIA
  • Dùng Cuda cho backends để tối ưu hóa tốc độ tính toán trên GPU
  • Dùng cho mục đích data science và analytics trên GPU
  • Cung cấp giao diện Python thân thiện với người dùng

Có thể nói ngắn gọn là RAPIDS giúp chúng ta xử lí data và thực hiện các bài toán về Machine Learning trên GPU và 1 điều tuyệt vời là syntax hoàn toàn giống với pandas, Numpy, scikit-learn, ...

Trong RAPIDS sẽ có các thư viện chính là

  • cuDF: giống pandas nhưng chạy trên GPU
  • cuML: giống Sklearn nhưng chạy trên GPU
  • cuGraph: giống NetworkX nhưng chạy trên GPU
  • cuSpatial: giống GIS nhưng chạy trên GPU

image.png

image.png

image.png

Qua các bức ảnh trên ta có thể thấy RAPIDS thể hiện 1 tốc độ vượt trội so với các thư viện khác và điều tuyệt vời là độ chính xác vẫn không thay đổi

1 lưu ý là trong series GPU in AI mình chỉ hướng dẫn 2 thư viện chính là cuDF ( pandas in GPU ) và cuML ( Sklearn in GPU )

Hướng dẫn cài đặt

Trên local

Đây là link để cài RAPIDS

image.png

Các bạn hãy chọn giống như trên TUY NHIÊN nhớ kiểm tra lại để xem Cuda toolkit phiên bản nào bằng lệnh:

$ nvcc -V

image.png

Nếu các bạn chưa cài đặt Cuda toolkit thì hãy tham khảo ở đây

1 lưu ý quan trọng là RAPIDS chỉ hỗ trợ trên python phiên bản 3.9 - 3.10 - 3.11

Và sau khi xong có thể kiểm tra bằng các lệnh:

import cudf

cudf._ _version _ _

import cuml

cuml._ _ version_ _

import cugraph

cugraph._ _ version _ _

import cuspatial

cuspatial._ _ version _ _

import cuxfilter

cuxfilter._ _ version _ _

image.png

Trên Google Colab

Hãy đổi từ CPU sang GPU

image.png

Hãy chạy 2 lệnh này:

!git clone https://github.com/rapidsai/rapidsai-csp-utils.git

!python rapidsai-csp-utils/colab/pip-install.py

Và sau khi xong có thể kiểm tra bằng các lệnh:

import cudf

cudf._ _version _ _

import cuml

cuml._ _ version_ _

import cugraph

cugraph._ _ version _ _

import cuspatial

cuspatial._ _ version _ _

import cuxfilter

cuxfilter._ _ version _ _

image.png

Bình luận

Bài viết tương tự

- vừa được xem lúc

Hành trình AI của một sinh viên tồi

Mình ngồi gõ những dòng này vào lúc 2h sáng (chính xác là 2h 2 phút), quả là một đêm khó ngủ. Có lẽ vì lúc chiều đã uống cốc nâu đá mà giờ mắt mình tỉnh như sáo, cũng có thể là vì những trăn trở về lý thuyết chồng chất ánh xạ mình đọc ban sáng khiến không tài nào chợp mắt được hoặc cũng có thể do mì

0 0 146

- vừa được xem lúc

[Deep Learning] Key Information Extraction from document using Graph Convolution Network - Bài toán trích rút thông tin từ hóa đơn với Graph Convolution Network

Các nội dung sẽ được đề cập trong bài blog lần này. . Tổng quan về GNN, GCN. Bài toán Key Information Extraction, trích rút thông tin trong văn bản từ ảnh.

0 0 219

- vừa được xem lúc

Tìm hiểu về YOLO trong bài toán real-time object detection

1.Yolo là gì. . Họ các mô hình RCNN ( Region-Based Convolutional Neural Networks) để giải quyết các bài toán về định vị và nhận diện vật thể.

0 0 284

- vừa được xem lúc

Encoding categorical features in Machine learning

Khi tiếp cận với một bài toán machine learning, khả năng cao là chúng ta sẽ phải đối mặt với dữ liệu dạng phân loại (categorical data). Khác với các dữ liệu dạng số, máy tính sẽ không thể hiểu và làm việc trực tiếp với categorical variable.

0 0 259

- vừa được xem lúc

TF Lite with Android Mobile

Như các bạn đã biết việc đưa ứng dụng đến với người sử dụng thực tế là một thành công lớn trong Machine Learning.Việc làm AI nó không chỉ dừng lại ở mức nghiên cứu, tìm ra giải pháp, chứng minh một giải pháp mới,... mà quan trọng là đưa được những nghiên cứu đó vào ứng dụng thực tế, được sử dụng để

0 0 72

- vừa được xem lúc

Xây dựng hệ thống Real-time Multi-person Tracking với YOLOv3 và DeepSORT

Trong bài này chúng ta sẽ xây dựng một hệ thống sử dụng YOLOv3 kết hợp với DeepSORT để tracking được các đối tượng trên camera, YOLO là một thuật toán deep learning ra đời vào tháng 5 năm 2016 và nó nhanh chóng trở nên phổ biến vì nó quá nhanh so với thuật toán deep learning trước đó, sử dụng YOLO t

0 0 316