Skip to content

Commit 555973a

Browse files
authored
Merge pull request #78 from itsnamgyu/tensor_tutorial_fix
'PyTorch๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€์š”?' ํ‘œํ˜„ ๊ฐœ์„ 
2 parents ea8939e + cc6b6cb commit 555973a

File tree

1 file changed

+15
-16
lines changed

1 file changed

+15
-16
lines changed

โ€Žbeginner_source/blitz/tensor_tutorial.pyโ€Ž

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
Tensors
1515
^^^^^^^
1616
17-
Tensor๋Š” NumPy์˜ ndarray์™€ ์œ ์‚ฌํ•˜๋ฉฐ, ์ถ”๊ฐ€๋กœ GPU๋ฅผ ์‚ฌ์šฉํ•œ ์—ฐ์‚ฐ ๊ฐ€์†๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
17+
Tensor๋Š” NumPy์˜ ndarray์™€ ์œ ์‚ฌํ•˜๋ฉฐ, GPU๋ฅผ ์‚ฌ์šฉํ•œ ์—ฐ์‚ฐ ๊ฐ€์†๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
1818
"""
1919

2020
from __future__ import print_function
@@ -51,8 +51,8 @@
5151
print(x)
5252

5353
###############################################################
54-
# ๋˜๋Š” ์กด์žฌํ•˜๋Š” tensor๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ tensor๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด ๋ฉ”์†Œ๋“œ(method)๋“ค์€
55-
# ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ œ๊ณต๋œ ์ƒˆ๋กœ์šด ๊ฐ’์ด ์—†๋Š” ํ•œ, ์ž…๋ ฅ tensor์˜ ์†์„ฑ๋“ค(์˜ˆ. dtype)์„
54+
# ๋˜๋Š” ๊ธฐ์กด tensor๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ƒˆ๋กœ์šด tensor๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด๋“ค ๋ฉ”์†Œ๋“œ(method)๋Š”
55+
# ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ƒˆ๋กœ์šด ๊ฐ’์„ ์ œ๊ณต๋ฐ›์ง€ ์•Š์€ ํ•œ, ์ž…๋ ฅ tensor์˜ ์†์„ฑ๋“ค(์˜ˆ. dtype)์„
5656
# ์žฌ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
5757

5858
x = x.new_ones(5, 3, dtype=torch.double) # new_* ๋ฉ”์†Œ๋“œ๋Š” ํฌ๊ธฐ๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค
@@ -68,7 +68,7 @@
6868

6969
###############################################################
7070
# .. note::
71-
# ``torch.Size`` ๋Š” ์‚ฌ์‹ค ํŠœํ”Œ(tuple)๊ณผ ๊ฐ™์œผ๋ฉฐ, ๋ชจ๋“  ํŠœํ”Œ ์—ฐ์‚ฐ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
71+
# ``torch.Size`` ๋Š” ํŠœํ”Œ(tuple) ํƒ€์ž…์œผ๋กœ, ๋ชจ๋“  ํŠœํ”Œ ์—ฐ์‚ฐ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
7272
#
7373
# ์—ฐ์‚ฐ(Operations)
7474
# ^^^^^^^^^^^^^^^^
@@ -90,27 +90,26 @@
9090
print(result)
9191

9292
###############################################################
93-
# ๋ง์…ˆ: ๋ฐ”๊ฟ”์น˜๊ธฐ(In-place) ๋ฐฉ์‹
93+
# ๋ง์…ˆ: ๋ฐ”๊ฟ”์น˜๊ธฐ(in-place) ๋ฐฉ์‹
9494

9595
# y์— x ๋”ํ•˜๊ธฐ
9696
y.add_(x)
9797
print(y)
9898

9999
###############################################################
100100
# .. note::
101-
# ๋ฐ”๊ฟ”์น˜๊ธฐ(In-place) ๋ฐฉ์‹์œผ๋กœ tensor์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ์—ฐ์‚ฐ์€ ``_`` ๋ฅผ ์ ‘๋ฏธ์‚ฌ๋กœ
102-
# ๊ฐ–์Šต๋‹ˆ๋‹ค.
101+
# ๋ฐ”๊ฟ”์น˜๊ธฐ(in-place) ๋ฐฉ์‹์œผ๋กœ tensor์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ์—ฐ์‚ฐ ๋’ค์—๋Š” ``_``๊ฐ€ ๋ถ™์Šต๋‹ˆ๋‹ค.
103102
# ์˜ˆ: ``x.copy_(y)``, ``x.t_()`` ๋Š” ``x`` ๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.
104103
#
105-
# NumPy์Šค๋Ÿฌ์šด ์ธ๋ฑ์‹ฑ ํ‘œ๊ธฐ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค!
104+
# NumPy์Šค๋Ÿฌ์šด ์ธ๋ฑ์‹ฑ ํ‘œ๊ธฐ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์‹ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค!
106105

107106
print(x[:, 1])
108107

109108
###############################################################
110109
# ํฌ๊ธฐ ๋ณ€๊ฒฝ: tensor์˜ ํฌ๊ธฐ(size)๋‚˜ ๋ชจ์–‘(shape)์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ``torch.view`` ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:
111110
x = torch.randn(4, 4)
112111
y = x.view(16)
113-
z = x.view(-1, 8) # -1์€ ๋‹ค๋ฅธ ์ฐจ์›๋“ค์„ ์‚ฌ์šฉํ•˜์—ฌ ์œ ์ถ”ํ•ฉ๋‹ˆ๋‹ค.
112+
z = x.view(-1, 8) # -1์€ ๋‹ค๋ฅธ ์ฐจ์›์—์„œ ์œ ์ถ”ํ•ฉ๋‹ˆ๋‹ค.
114113
print(x.size(), y.size(), z.size())
115114

116115
###############################################################
@@ -124,16 +123,16 @@
124123
#
125124
#
126125
# ์ „์น˜(transposing), ์ธ๋ฑ์‹ฑ(indexing), ์Šฌ๋ผ์ด์‹ฑ(slicing), ์ˆ˜ํ•™ ๊ณ„์‚ฐ,
127-
# ์„ ํ˜• ๋Œ€์ˆ˜, ๋‚œ์ˆ˜(random number) ๋“ฑ๊ณผ ๊ฐ™์€ 100๊ฐ€์ง€ ์ด์ƒ์˜ Tensor ์—ฐ์‚ฐ์€
128-
# `์—ฌ๊ธฐ <http://pytorch.org/docs/torch>`_ ์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
126+
# ์„ ํ˜• ๋Œ€์ˆ˜, ๋‚œ์ˆ˜(random number) ๋“ฑ, 100๊ฐ€์ง€ ์ด์ƒ์˜ Tensor ์—ฐ์‚ฐ์€
127+
# `์—ฌ๊ธฐ <http://pytorch.org/docs/torch>`_ ์—์„œ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
129128
#
130129
# NumPy ๋ณ€ํ™˜(Bridge)
131130
# -------------------
132131
#
133132
# Torch Tensor๋ฅผ NumPy ๋ฐฐ์—ด(array)๋กœ ๋ณ€ํ™˜ํ•˜๊ฑฐ๋‚˜, ๊ทธ ๋ฐ˜๋Œ€๋กœ ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.
134133
#
135-
# (CPU ์ƒ์˜) Torch Tensor์™€ NumPy ๋ฐฐ์—ด์€ ์ €์žฅ ๊ณต๊ฐ„์„ ๊ณต์œ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—,
136-
# ํ•˜๋‚˜๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ๋‹ค๋ฅธ ํ•˜๋‚˜๋„ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.
134+
# (Torch Tensor๊ฐ€ CPU ์ƒ์— ์žˆ๋‹ค๋ฉด) Torch Tensor์™€ NumPy ๋ฐฐ์—ด์€ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„
135+
# ๊ณต์œ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํ•˜๋‚˜๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ๋‹ค๋ฅธ ํ•˜๋‚˜๋„ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.
137136
#
138137
# Torch Tensor๋ฅผ NumPy ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ
139138
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -157,7 +156,7 @@
157156
###############################################################
158157
# NumPy ๋ฐฐ์—ด์„ Torch Tensor๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ
159158
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
160-
# NumPy(np) ๋ฐฐ์—ด์„ ๋ณ€๊ฒฝํ•˜๋ฉด Torch Tensor์˜ ๊ฐ’๋„ ์ž๋™ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•ด๋ณด์„ธ์š”.
159+
# np (NumPy) ๋ฐฐ์—ด์„ ๋ณ€๊ฒฝํ•˜๋ฉด Torch Tensor์˜ ๊ฐ’๋„ ์ž๋™ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•ด๋ณด์„ธ์š”.
161160

162161
import numpy as np
163162
a = np.ones(5)
@@ -167,8 +166,8 @@
167166
print(b)
168167

169168
###############################################################
170-
# CharTensor๋ฅผ ์ œ์™ธํ•œ CPU ์ƒ์˜ ๋ชจ๋“  Tensor๋Š” NumPy๋กœ์˜ ๋ณ€ํ™˜์„ ์ง€์›ํ•˜๋ฉฐ,
171-
# (NumPy์—์„œ Tensor๋กœ์˜) ๋ฐ˜๋Œ€ ๋ณ€ํ™˜๋„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
169+
# CharTensor๋ฅผ ์ œ์™ธํ•œ CPU ์ƒ์˜ ๋ชจ๋“  Tensor๋Š” NumPy๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๊ณ ,
170+
# (NumPy์—์„œ Tensor๋กœ์˜) ๋ฐ˜๋Œ€ ๋ณ€ํ™˜๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
172171
#
173172
# CUDA Tensors
174173
# ------------

0 commit comments

Comments
ย (0)