Hai chiều tensor tương tự như các số liệu hai chiều. Số liệu hai chiều có n số hàng và n số cột. Tương tự, tensor hai chiều có n hàng và n cột cũng vậy.
Một tenxơ hai chiều có biểu diễn sau
Hình ảnh vô hướng xám là một ma trận hai chiều gồm các pixel. Cường độ của mỗi pixel được biểu thị bằng một giá trị số nằm trong khoảng từ 0 đến 255 sao cho giá trị cường độ bằng 0 cho biết không có cường độ nào là màu đen hoàn toàn và 255 đại diện cho cường độ tối đa đối với thứ gì đó hoàn toàn là màu trắng. Chúng tôi có thể lưu trữ lưới hai chiều này của các giá trị.
Các bài viết liên quan:
Tạo tensor hai chiều
Để tạo tensor hai chiều, trước tiên bạn phải tạo tensor một chiều bằng cách sử dụng phương thức layout () của ngọn đuốc. Phương thức này chứa hai tham số kiểu số nguyên. Phương pháp này sắp xếp các phần tử trong tensor theo các tham số đã cho. Khi tensor một chiều của bạn được tạo, thì bước tiếp theo của chúng ta là thay đổi chế độ xem của nó ở dạng hai chiều và lưu trữ chế độ xem này ở dạng biến hai chiều.
Hãy xem một ví dụ về việc tạo một tensor hai chiều
import torch x=torch.arange(18) y=x.view(3, 2, 3) y y[1,1,1]
Đầu ra:
Chú ý: Để kiểm tra thứ nguyên của tensor ta phải sử dụng phương thức dim () của tensor.
import torch x=torch.arange(0,9) x y=x.view(3,3) y x.dim() y.dim()
Đầu ra:
Truy cập các phần tử tensor hai chiều
Hãy xem ví dụ về tensor hai chiều để hiểu cách truy cập một phần tử cụ thể từ tensor hai chiều bằng cách sử dụng chỉ mục.
Ví dụ
import torch x=torch.arange(0,9) x y=x.view(3,3) y y[0,2]
Đầu ra:
Nhân Tensors
Phép nhân được thực hiện theo cách tương tự như phép nhân số liệu. Phép nhân tensor được thực hiện với việc nhân hàng tương ứng với cột tương ứng. Nhân căng đóng một vai trò quan trọng trong mô hình học sâu. Độ căng có thể là một chiều, hai chiều, ba chiều, v.v. Phép nhân tensor chỉ được thực hiện với kích thước tương thích.
Hãy xem một ví dụ về Phép nhân Tensor
import torch mat_a=torch.tensor([1,3,5,7,9,2,4,6,8]) mat_a=mat_a.view(3,3) mat_b=torch.tensor([1,3,5,7,9,2,4,6,8]) mat_b=mat_b.view(3,3) mat_a mat_b torch.matmul(mat_a,mat_b)# We can also usemat_a @ mat_b
Đầu ra:
Tensor ba chiều
Teor ba chiều được tạo ra với sự trợ giúp của phương thức view (). Một tenxơ ba chiều có cấu trúc như sau
Truy cập phần tử từ 3D- Tensor
Việc truy cập các phần tử từ 3D-tensor khá dễ dàng. Nó sẽ được thực hiện bằng cách sử dụng chỉ mục.
Ví dụ
import torch x=torch.arange(18) y=x.view(3, 2, 3) y y[1,1,1]
Đầu ra:
Slicing vào three-dimensional tensor
Các lát phân đoạn rất giống với cách chúng ta cắt một tensor một chiều. Cắt một tensor có nghĩa là cắt các phần tử của tensor thành một tensor mới, hoặc chúng ta có thể nói cắt là một quá trình tạo ra một tensor mới bằng cách chia một tensor.
Ví dụ
Để chúng ta có một tensor ba chiều chứa các phần tử từ 0 đến 17 và chúng ta muốn cắt tensor từ 6 đến 11.
import torch x=torch.arange(18) y=x.view(3,2,3) y y[1, 0:2, 0:3] # can also apply y[1, :, :]
Đầu ra: