reshape(1, n) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² NumPy Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π² Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ-ΡΡΡΠΎΠΊΡ.
ΠΡΠ»ΠΈ Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π΄Π»ΠΈΠ½Ρ n:
import numpy as np
a = np.array([1, 2, 3, 4])
print(a.shape) # (4,)ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ reshape(1, n):
row = a.reshape(1, 4)
print(row)
# [[1 2 3 4]]
print(row.shape) # (1, 4)ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ:
- ΠΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ 1D ΠΌΠ°ΡΡΠΈΠ²
(n,)Π² 2D ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ(1, n) - ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ broadcasting ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ ΠΈΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±ΡΡ, Π³Π΄Π΅ Π½ΡΠΆΠ½Π° ΠΌΠ°ΡΡΠΈΡΠ°-ΡΡΡΠΎΠΊΠ°
- ΠΠ±ΡΡΠ½ΠΎ Π½Π΅ ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅, ΡΠΎΠ·Π΄Π°ΡΡΡΡ view Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΠ½Π½ΡΠΌΠΈ
shapeΠΈstrides
ΠΡΠΈΠΌΠ΅Ρ Ρ broadcasting:
x = np.array([1, 2, 3])
y = np.array([[10], [20]]) # shape (2, 1)
x_row = x.reshape(1, 3) # shape (1, 3)
# Broadcasting ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ
result = y + x_row # shape (2, 3)
print(result)
# [[11 12 13]
# [21 22 23]]ΠΠ΄Π΅Ρ: reshape(1, n) Π΄Π΅Π»Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ, ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°ΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π±Π΅Π· ΡΠΈΠΊΠ»ΠΎΠ².