Tensor型の2次元配列を1次元に変えたい!!

今日やっていたことの中でTensor型の二次元配列を一次元に変えたいということで、実際にはオセロの盤面の8x8の二次元配列を1x128(2プレイヤーのそれぞれの盤面)の一次元配列に変えることでした。

今はまだ8x8を1x64の配列にすることにしかしてないのですが、pytorchのTensorを使って

board_1 = torch.Tensor([
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 1, -1, 0, 0, 0],
[0, 0, 0, -1, 1, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0]
])
board = torch.flatten(board_1, start_dim = 0)

でできました。

torch.flattenは第一引数に変えたい配列、第二引数にstart_dim=変更後の配列、です。

boardをプリントすると

tensor([ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,

         0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  1.,

        -1.,  0.,  0.,  0.,  0.,  0.,  0., -1.,  1.,  0.,  0.,  0.,  0.,  0.,

         0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,

         0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.])

こんな感じ

次回やることはこの 配列の-1の部分を0にすることとこれを二倍にし、反転させた配列を作ることです。

読んでくださってありがとうございました