Bài 1: Giới thiệu - Pytorch Cơ bản

Đăng bởi: Admin | Lượt xem: 3785 | Chuyên mục: AI


PyTorch được định nghĩa là một thư viện machine learning mã nguồn mở cho Python. Nó được sử dụng cho các ứng dụng như xử lý ngôn ngữ tự nhiên. Ban đầu nó được phát triển bởi nhóm nghiên cứu trí tuệ nhân tạo của Facebook và phần mềm Uber’s Pyro để lập trình xác suất.
PyTorch được Hugh Perkins phát triển như một trình bao bọc Python cho LusJIT dựa trên khuôn khổ Torch. Có hai biến thể PyTorch.
PyTorch thiết kế lại và triển khai Torch bằng Python trong khi chia sẻ cùng các thư viện C lõi cho code phụ trợ. Các nhà phát triển PyTorch đã điều chỉnh mã back-end này để chạy Python một cách hiệu quả. Họ cũng giữ nguyên khả năng tăng tốc phần cứng dựa trên GPU cũng như các tính năng mở rộng đã tạo nên Torch dựa trên Lua-based.

1. Features (Tính năng):

Các tính năng chính của PyTorch
  • Giao diện thân thiện - PyTorch cung cấp API dễ sử dụng; do đó nó được coi là rất đơn giản để vận hành và chạy trên Python. Việc thực thi mã trong khuôn khổ này khá dễ dàng.
  • Sử dụng Python - Thư viện này được coi là Pythonic tích hợp trơn tru với ngăn xếp khoa học dữ liệu Python. Do đó, nó có thể tận dụng tất cả các dịch vụ và chức năng được cung cấp bởi môi trường Python.
  • Đồ thị tính toán - PyTorch cung cấp một nền tảng tuyệt vời cung cấp đồ thị tính toán động. Do đó người dùng có thể thay đổi chúng trong thời gian chạy. Điều này rất hữu ích khi nhà phát triển không biết cần bao nhiêu bộ nhớ để tạo mô hình mạng nơron.
PyTorch được biết đến với ba cấp độ trừu tượng như được đưa ra dưới đây
  • Tensor − Mảng n-chiều bắt buộc chạy trên GPU.
  • Variable −Nút trong đồ thị tính toán. Lưu trữ dữ liệu và gradient.
  • Module −Lớp mạng nơ-ron sẽ lưu trữ trạng thái hoặc trọng số có thể học được.

2. Ưu điểm của PyTorch :

  • Dễ dàng để gỡ lỗi và hiểu mã.
  • Gồm rất nhiều hàm mất mát(loss function).
  • Có thể coi đây là phần mở rộng NumPy cho GPU.
  • Cho phép xây dựng các mạng có cấu trúc phụ thuộc vào chính tính toán.

3. TensorFlow vs. PyTorch

Chúng ta sẽ xem xét sự khác biệt chính giữa TensorFlow và PyTorch :
PyTorchPyTorch
PyTorch có liên quan chặt chẽ với khung Torch dựa trên lua-based được phát triển bởi Facebook.TensorFlow được phát triển bởi Google Brain và được phát triển bởi Google.
PyTorch tương đối mới so với các công nghệ cạnh tranh khác.TensorFlow không phải là mới và được nhiều nhà nghiên cứu và các chuyên gia trong ngành coi là một công cụ cần thiết.
PyTorch bao gồm mọi thứ theo cách bắt buộc và năng động.TensorFlow bao gồm các đồ thị tĩnh và động dưới dạng kết hợp.
Đồ thị tính toán trong PyTorch được xác định trong thời gian chạy.TensorFlow không bao gồm bất kỳ tùy chọn thời gian chạy nào.
PyTorch bao gồm triển khai đặc trưng cho các khuôn khổ di động và nhúng.TensorFlow hoạt động tốt hơn cho các frameworks nhúng.
Bài tiếp theo: Cài đặt >>
vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!