torch.cartesian_prod¶
- torch.cartesian_prod(*tensors)[來源][來源]¶
對給定的張量序列執行笛卡爾積。行為類似於 python 的itertools.product。
- 參數
*tensors (Tensor) – 任意數量的 1 維張量。
- 回傳
一個張量,相當於將所有輸入張量轉換為列表,對這些列表執行itertools.product,最後將結果列表轉換為張量。
- 回傳型別
範例
>>> import itertools >>> a = [1, 2, 3] >>> b = [4, 5] >>> list(itertools.product(a, b)) [(1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5)] >>> tensor_a = torch.tensor(a) >>> tensor_b = torch.tensor(b) >>> torch.cartesian_prod(tensor_a, tensor_b) tensor([[1, 4], [1, 5], [2, 4], [2, 5], [3, 4], [3, 5]])