Hi,
It will depend on the functions. You can see in the doc if a function returns a view of the original tensor or not.
Also id() tells you if the python objects are the same, but this is not the right way to check this. You can check if the location in memory of the beginning of the storage is the same:
tensor_1.storage().data_ptr() == tensor_2.storage().data_ptr().
Note that advance indexing is a bit special in this regard as depending on the arguments, you will or will not get a view.