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

Tutorial Pytorch From Basic to Expext.P1: Introduction

0 0 34

Người đăng: Trần Trung Trực

Theo Viblo Asia

Giới thiệu cơ bản

1. Tổng quan

Trước khi đi vào học pytorch , ta phải hiểu pytorch là gì, tính ứng dụng nó ra sao? Thì mình nói ngắn gọn : Pytorch là 1 thư viện Python mã nguồn mở dành cho deep learning được phát triển và nghiên cứu bởi Facebook. Hiện nay do tính linh hoạt, cơ động, dễ sử dụng của Pytorch nên nó được sử dụng rất phổ biến như tensorflow và keras. Bất kì một kỹ sư lập trình viên AI nào cũng phải biết qua. Giới thiệu sơ thôi, chúng ta đi vào phần chính đã ??

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

Trước khi cài đặt Pytorch, hãy đảm bảo các bạn đã cài Python. Nên cài đặt thêm Anaconda để dễ sử dụng. Có nhiều cách cài đặt pytorch mà mình khuyên các bạn nên vô trang chủ pytorch dowload tùy chọn cấu hình phù hợp với máy của bạn rồi dowload về để tránh xảy ra lỗi.

Neural Networks

Deeplearning dựa trên mạng neural nhân tạo đã xuất hiện ở 1 số hình thức từ cuối năm 1950. Các mạng được xây dựng từ các phần riêng lẻ xấp xỉ với nơ-ron thần kinh giống con người, thường được gọi là đơn vị hoặc đơn giản là 'nơ-ron'. Mỗi đơn vị có một số đầu vào trọng số. Các đầu vào có trọng số này được tổng hợp lại với nhau ( một sự kết hợp tuyến tính) sau đó được chuyển qua hàm kích hoạt activation để có được đầu ra của đơn vị.


Thuật toán như hình dưới đây:

Tensors

Ta đã biết tensorflow và keras thường dùng kiểu dữ liệu numpy. Pytorch thì khác , nó sử dụng kiểu dữ liệu Tensor, về cơ bản thì 2 kiểu dữ liệu này tương tự và có thể chuyển đổi qua lại cho nhau, nhưng Tensor nó có thể thực hiện đơn giản trên GPU giúp cho tiến trình huấn luyện mô hình nhanh hơn. Nó cũng cung cấp cho mô hình khả năng tự động tính toán backpropagation trong việc xây dựng mạng neural network. Tóm lại thì Pytorch có kết cục chặt chẽ hơn so với Numpy/Scipy, so với Tensorflow và các frameworks khác. Vậy chúng ta hãy xem Tensor là gì ?

Hiểu một cách đơn giản thì 1 vector đó cũng là 1 tensor 1 chiều, 1 ma trận cũng là 1 tensor 2 chiều, 1 array 3 indices cũng là tensor 3 chiều (bức ảnh màu RGB cũng là 1 ví dụ).
Ví dụ kiểu dữ liệu tensor:

# First, import PyTorch
import torch
### Generate some data
torch.manual_seed(7) # Set the random seed so things are predictable
# Features are 5 random normal variables
features = torch.randn((1, 5))
# create argument a is Tensor([1,2])
a = torch.Tensor([1,2])

Bạn cũng có thể chuyển đổi từ kiểu dữ liệu Tensor sang mảng Numpy bằng hàm .numpy() và ngược lại chuyển từ kiểu numpy sang Tensor bằng hàm torch.from_numpy() như hình dưới:

Exercise

Các bạn có thể tải 8 bài tập từ link để làm. Bài tập gồm 2 phần exercises và solutions. Làm exercise xong mới quay lại xem đáp án nhé ?. Chúc các bạn thành công!

Bình luận

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

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

TorchServe, công cụ hỗ trợ triển khai mô hình PyTorch

Lời mở đầu. Hôm nay tôi sẽ giới thiệu sơ qua cho các bạn công cụ triển khai mô hình dành riêng cho mô hình PyTorch.

0 0 37

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

Bacteria classification bằng thư viện fastai

Giới thiệu. fastai là 1 thư viện deep learning hiện đại, cung cấp API bậc cao để giúp các lập trình viên AI cài đặt các mô hình deep learning cho các bài toán như classification, segmentation... và nhanh chóng đạt được kết quả tốt chỉ bằng vài dòng code. Bên cạnh đó, nhờ được phát triển trên nền tản

0 0 37

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

Pytorch - Một số tips hay, tối ưu cho quá trình huấn luyện model của bạn

Xin chào các bạn, cũng lâu rồi mình mới quay trở lại ngồi viết mấy bài chia sẻ trên viblo. Chẹp, dạo này làm remote nên lười vận động, lười cả viết bài hẳn.

0 0 276

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

Hướng dẫn tất tần tật về Pytorch để làm các bài toán về AI

Giới thiệu về pytorch. Pytorch là framework được phát triển bởi Facebook.

0 0 181

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

Nhận diện khuôn mặt với mạng MTCNN và FaceNet (Phần 2)

Chào mừng các bạn đã quay lại với series "Nhận diện khuôn mặt với mạng MTCNN và FaceNet" của mình. Ở phần 1, mình đã giải thích qua về lý thuyết và nền tảng của 2 mạng là MTCNN và FaceNet.

0 0 733

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

Video Understanding: Tổng quan

"Thợ lặn" hơi lâu, sau sự kiện MayFest thì đến bây giờ cũng là 3 tháng rồi mình không viết thêm bài mới. Thế nên là, hôm nay mình lại ngoi lên, đầu tiên là để luyện lại văn viết một chút, tiếp theo cũ

0 0 97