Trước hết, tôi biết rằng một câu hỏi liên quan đã được hỏi here.Sự khác biệt thực hiện giữa TensorFlow Variable và TensorFlow Tensor
Tuy nhiên, câu hỏi này là về việc triển khai và nội bộ. Tôi đã đọc bài báo "A Tour of TensorFlow". Hai điểm sau đây được trích dẫn từ đó:
1.
Một tensor bản thân không giữ hoặc giá trị lưu trữ trong bộ nhớ, nhưng cung cấp chỉ một giao diện để lấy giá trị tham chiếu bởi tensor.
Điều này cho thấy rằng Tensor là một đối tượng đơn giản lưu trữ con trỏ đến kết quả của một thao tác và, khi truy xuất kết quả hoặc giá trị của tensor, nó chỉ đơn giản là dereferences con trỏ.
2.
Các biến có thể được mô tả như dai dẳng, tay cầm có thể thay đổi để bộ đệm trong bộ nhớ lưu trữ tensors. Như vậy, các biến được đặc trưng bởi một hình dạng nhất định và một loại cố định.
Tại đây tôi bị lẫn lộn vì tôi nghĩ, dựa trên điểm trước đó, Tensors chỉ lưu trữ một con trỏ. Nếu chúng chỉ đơn giản là con trỏ, chúng cũng có thể biến đổi được.
Để được chính xác đây là những câu hỏi của tôi:
- ý nghĩa của "bộ đệm trong bộ nhớ" là gì?
- Ý nghĩa của "xử lý" là gì?
- Giả thiết ban đầu của tôi về nội bộ của một tensor có đúng không?
- Sự khác biệt thực hiện nội bộ cần thiết giữa một tensor và một biến là gì? Tại sao họ lại tuyên bố khác biệt và tại sao sự khác biệt đó lại quan trọng đối với TensorFlow?
Đó là một lời giải thích rất thông tin và cảm ơn vì điều đó. Nếu tôi hiểu chính xác, trạng thái chỉ đọc của tensors rất hữu ích vì chúng được sử dụng để biểu diễn các phép toán trung gian mà không quan tâm đến trạng thái cuối cùng của mô hình. Đó là lý do tương tự, tại sao chúng tôi lưu trữ hạt nhân của các tham số convolution như tf.Variable để nó có thể được viết sau này trong các bản cập nhật và được lưu trữ sau này? – Ujjwal