# ์คํ ๊ฒฐ๊ณผ
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_4 (InputLayer) [(1, 360, 5)] 0
normalizer_3 (Normalizer) (1, 360, 5) 0
PatchMLP (PatchMLP) (1, 1) 3619
denormalizer_3 (Denormaliz (1, 1) 0
er)
...
_________________________________________________________________
934/934 [==============================] - 7s 6ms/step
Inference time: 7.062 seconds
Throughput: 4231.30 samples/second
Antwerp: val rmse : 8.31779956817627, test rmse : 11.96527099609375
Oslo: val rmse : 9.048280715942383, test rmse : 12.056038856506348
Zagreb: val rmse : 16.360061645507812, test rmse : 13.834146499633789
(3๊ฐ ์ ๋ฝ ๋์ ๋๊ท๋ชจ ๋ฏธ์ธ๋จผ์ง ๋ฐ์ดํฐ| ์ ๋น์ฉ ์ผ์ | ๊ณ ๋น์ฉ ์ผ์ ๋ฐ์ดํฐ ํฌํจ)
์ฌ์ฉํ ๋ฐ์ดํฐ ์ :
Paper Link:
patchMLP๋ฅผ ๋
ผ๋ฌธ์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌํํ๊ณ , ํด๋น ๋ชจ๋ธ์ ์ผ์ ๋ณด์ (์ ๋น์ฉ ์ผ์๋ฅผ ๊ณ ๋น์ฉ ์ผ์ ๋ฐ์ดํฐ๋งํผ ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ์ด์ฉํด์ ๋ณด์ ) ๋ชจ๋ธ๋ก ๋ณํ ํ
์จ-๋๋ฐ์ด์ค ์ฑ๋ฅ ์ธก์ ํ๊ธฐ
Transformer๊ฐ LTSF(Long-Term Time Series Forecasting)์์ ๊ฐ๋ ฅํด ๋ณด์ด๋ ์ด์ ๋ ์์ฒด๊ฐ ์๋๋ผ โPatchโ ํํ ๋์ผ ์ ์์ผ๋ฉฐ, ๋ฉํฐ์ค์ผ์ผ ํจ์น + ์๋ฒ ๋ฉ ๊ณต๊ฐ์์์ ๋จ์ ๋ถํด + Intra/Inter-variable MLP ํผํฉ๋ง์ผ๋ก๋ SOTA๋ฅผ ๋ฌ์ฑํ๋ PatchMLP๋ฅผ ์ ์ํจ
- ์๊ธฐํ๊ท์ ์ด์ง ์์ Transformer์ Permutation-invariant self-attention์ ์ ๋์ ์๊ฐ์ง์๋ฅผ ํฌ์์ํค๋ฉฐ, ์์ ์๊ณ์ด์ ๊ณ ์ฃผํ ์ก์๊ณผ ์ค๋ณต ํน์ง์ ์ทจ์ฝํจ์ ๋ณด์
- ๋ฐ๋ฉด Patch๋ ์ง์ญ์ฑ(locality)์ ๊ฐํํ๊ณ ์ฐจ์์ ์ถ์ํ๋ฉฐ ์ค๋ฌด๋ฉ ํจ๊ณผ๋ก ์ก์์ ์ค์ฌ, ์๊ณ์ด์ ๋ ์ ํฉํ ์ ๋ ฅ ํํ์ ์ ๊ณตํจ
- ์ต๊ทผ ์ ํํ ์ฑ๋ ๋ ๋ฆฝ(channel independence) ๊ฐ์ค์ ๊ณผ๋ํ๊ฐ๋์๊ณ , ์ฌ๋ฐ๋ฅธ ๋ฐฉ์์ ๋ณ์ ๊ฐ ์ํธ์์ฉ(channel mixing) ์ ๋ค๋ณ๋ ์์ธก ์ฑ๋ฅ์ ํ์์ ์์ ๋ณด์
- ์ ํต์ฐฐ์ ๋ฐํ์ผ๋ก, ๋ณต์กํ ์ดํ ์ ์์ด๋ ๋จ์ MLP๋ก ์ต์ฒจ๋จ ์ฑ๋ฅ์ ๋ฌ์ฑํ๋ PatchMLP๋ฅผ ์ค๊ณํจ
PatchMLP๋ ๋ค ๊ฐ์ ๊ตฌ์ฑ์์๋ก ์ด๋ค์ง
- Multi-Scale Patch Embedding (MPE): ์๋ก ๋ค๋ฅธ ๊ธธ์ด์ ํจ์น๋ก ์์ ์๊ณ์ด์ ๋น์ค์ฒฉ ๋ถํ ํ ๋ค, ๊ฐ ํจ์น๋ฅผ ์ ํ ์๋ฒ ๋ฉํ์ฌ ๋ฉํฐ์ค์ผ์ผ ์ ๋ณด๋ฅผ ๊ฒฐํฉํจ
- Feature Decomposition in Embedding Space: ์์ ํธ๊ฐ ์๋๋ผ ์๋ฒ ๋ฉ ํ ํฐ์ ํ๊ท ํ๋ง(AvgPool) ๊ธฐ๋ฐ์ผ๋ก ์ค๋ฌด์ค ์ฑ๋ถ(Xs) ๊ณผ ์์ฐจ ์ฑ๋ถ(Xr) ๋ก ๋ถ๋ฆฌํ์ฌ, ๋๋ค ์๋์ ์ต์ ํ๊ณ ์ ์๋ฏธํ ํจํด์ ๋ถ๊ฐํจ
- MLP Layer with Dual Mixing:
- Intra-variable MLP๋ก ์๊ฐ์ถ ๋ด ํจํด์, Inter-variable MLP๋ก ๋ณ์ ๊ฐ ์ํธ์์ฉ์ ํ์ตํจ
- Inter-variable ๊ฒฝ๋ก์์ ์ ๊ณฑ(dot-product) ๊ฒฐํฉ์ ๋์ ํ์ฌ ๋น์ ํ ์ํธ์์ฉ์ ๊ฐํํจ
- ๊ฐ ๋ธ๋ก ๋ค์ Residual connection๊ณผ ์ ๊ทํ๋ฅผ ์ ์ฉํด ํ์ต ์์ ์ฑ์ ํ๋ณดํจ
- Projection Layer & Loss: ์ ์ฌํํ์ ์๊ณต๊ฐ์ผ๋ก ํฌ์ํด ๋ฉํฐ์คํ ์์ธก์ ์ฐ์ถํ๊ณ , MSE ์์ค๋ก ํ์ตํจ
- ๊ณ ๋น๋ ์ํ๋ง์ผ๋ก ์ธํ ์ค๋ณตยท์ก์ ํน์ฑ์ด ๋ง์ ์๊ณ์ด์์, Patch๋ ์ ๋ ฅ์ ์์ถยทํํํด ๋ ธ์ด์ฆ ๋ฏผ๊ฐ๋๋ฅผ ๋ฎ์ถ๊ณ ์ง์ญ์ ์๋ฏธ ๊ตฌ์กฐ๋ฅผ ๊ฐํํจ
- ํจ์น ํฌ๊ธฐ๋ ์ปค์ง์๋ก ํญ์ ์ ๋ฆฌํ์ง ์์ผ๋ฉฐ, ๋ชจ๋ธ ์ฉ๋(d_model) ๊ณผ์ ๊ท ํ์ด ์ค์ํจ์ ์คํ์ผ๋ก ๋ณด์
- ์ ๋ ฅ ๊ธธ์ด๊ฐ ๊ธธ์ด์ง์๋ก ์ต์ ํจ์น ํฌ๊ธฐ๋ ์ปค์ง๋ ๊ฒฝํฅ์ด ์์ผ๋ฉฐ, ์ง๋์น ์์ถ์ ์ ๋ณด ์์ค์ ์ ๋ฐํ ์ ์์์ ๋ณด๊ณ ํจ
- ์๋ฒ ๋ฉ ํ ๋ถํด: ์ ํต์ ์ถ์ธ/๊ณ์ ๋ถํด๋ฅผ ์์ ํธ์์ ์ํํ๋ ๋์ , ์๋ฒ ๋ฉ ๊ณต๊ฐ์์ ํ๊ท ํ๋ง์ผ๋ก ์ค๋ฌด์ค/์์ฐจ๋ฅผ ๋๋ ๊ฐ๋จํ๋ฉด์๋ ํจ๊ณผ์ ์ธ ์ก์ ์ต์ ๋ฅผ ๋ฌ์ฑํจ
- Dual Mixing: ์ฑ๋ ๋ ๋ฆฝ์ด ๋ง๋ฅ์ด ์๋๋ฉฐ, ์ ์ ํ ๋ณ์ ๊ฐ ํผํฉ์ด ์์ธก๋ ฅ์ ์ผ๊ด๋๊ฒ ๋์ด์ฌ๋ฆผ์ ๋ณด์
- ์ ๊ณฑ ๊ฒฐํฉ ์ด์ : Inter-variable ๊ฒฝ๋ก์์ ๋จ์ ํฉ๋ณด๋ค ์ ๊ณฑ ๊ฒฐํฉ์ด ์ํธ์์ฉ ํํ๋ ฅ์ ๋์ฌ ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์
- ETT ์๋ฆฌ์ฆ, ECL, Traffic, Weather, Solar ๋ฑ 8๊ฐ ํ์ค ๋ฒค์น๋งํฌ์์ 4๊ฐ ์์ธก ์งํ(96/192/336/720) ํ๊ท ์ฑ๋ฅ ๊ธฐ์ค์ผ๋ก ์ ํญ๋ชฉ SOTA๋ฅผ ๋ณด๊ณ ํจ
- iTransformer, PatchTST, Crossformer, FEDformer ๋ฑ Transformer ๊ณ์ด๊ณผ TimeMixer, DLinear, TiDE, TimesNet ๋ฑ CNN/MLP ๊ณ์ด์ ํญ๋๊ฒ ์ํํจ์ ์ ์ํจ
- ์ ๋ ฅ ๊ธธ์ด ์ฆ๊ฐ ์ ๋ค์ ๋ชจ๋ธ์ด ์ฅ๊ธฐ ๊ตฌ๊ฐ์์ ์ฑ๋ฅ ์ ํ๋ฅผ ๊ฒช๋ ๋ฐ๋ฉด, PatchMLP์ DLinear๋ ์์ ์ ๊ฐ์ ์ ๋ณด์ด๋ฉฐ ์ฅ๊ธฐ ํจํด ํฌ์ฐฉ์ ์ ๋ฆฌํจ์ ์์ฌํจ
- MPE ์ ๊ฑฐ ์ ๋ฉํฐ์ค์ผ์ผ ๊ด๊ณ ํ์ต์ด ์ฝํ๋์ด ์ฑ๋ฅ ํ๋ฝ์ด ๋ฐ์ํจ
- ์๋ฒ ๋ฉ ๋ถํด ์ ๊ฑฐ ์ ์ก์ ์ต์ ๊ฐ ์ด๋ ค์์ ธ ์ค๋ฅ๊ฐ ์ฆ๊ฐํจ
- Inter-variable ์ ๊ณฑ ์ ๊ฑฐ ๋๋ ๋ณ์ ํผํฉ ์์ฒด ์ ๊ฑฐ ์ ๋ค๋ณ๋ ์ํธ์์ฉ์ ์์ด ์ ์ํ ์ฑ๋ฅ ์ ํ๊ฐ ๋ฐ์ํจ
- ๊ฒฐ๋ก ์ ์ผ๋ก ๋ฉํฐ์ค์ผ์ผ ํจ์น + ์๋ฒ ๋ฉ ๋ถํด + ์ ๊ณฑ ๊ธฐ๋ฐ ๋ณ์ ํผํฉ์ ์กฐํฉ์ด ์ฑ๋ฅ์ ํต์ฌ ๋๋ ฅ์์ ํ์ธํจ
- ํ๊ท ํ๋ง ๊ธฐ๋ฐ ๋ถํด๋ ๋น์ ์์ฑยท๊ตฌ์กฐ์ ๋ณํ๊ฐ ๋งค์ฐ ํฐ ๋๋ฉ์ธ์์ ์ต์ ์ด ์๋ ์ ์์ผ๋ฉฐ, ์ ์์ ๋ถํด ์ปค๋์ด๋ ํ์ตํ ์ค๋ฌด๋ฉ์ผ๋ก ํ์ฅ์ด ํ์ํจ
- ๋ฉํฐ์ค์ผ์ผ ํจ์น์ ํฌ๊ธฐยท๋น์จ ์ ํ์ ๋๋ฉ์ธ ์ฃผ๊ธฐ์ฑ๊ณผ ์ํธ์์ฉํ๋ฏ๋ก, ์๋ ์ค์ผ์ผ ์ ํ ํน์ ๋ฉํ๋ฌ๋ ๊ธฐ๋ฒ์ ๋์ ์ด ์ ๋งํจ
- Inter-variable ์ ๊ณฑ ๊ฒฐํฉ์ ๋จ์ํ๊ณ ํจ์จ์ ์ด์ง๋ง, ํฌ์ยท๊ฐ๋ณ์ ์๊ด๊ตฌ์กฐ๋ฅผ ๊ฐ์ง ๋ฐ์ดํฐ์์๋ ๊ฐ์ค ๋ง์คํน์ด๋ ์กฐ๊ฑด๋ถ ํผํฉ์ผ๋ก ๋ ๋์ ์ ์์ฑ์ ๊ธฐ๋ํ ์ ์์
PatchMLP๋ ๋ณต์กํ ์ดํ
์
์ค๊ณ ์์ด๋ Patch ํํ์ ๋ณธ์ง์ ์ด์ ๊ณผ ์๋ฒ ๋ฉ ๊ณต๊ฐ ๋ถํด, ์ด์ค ํผํฉ MLP๋ง์ผ๋ก LTSF์์ ๊ฐ๊ฒฐํจยทํจ์จ์ฑยท์ ํ์ฑ์ ๋์์ ๋ฌ์ฑํจ์ ๋ณด์์
์ด๋ LTSF์์ Transformer์ ์ฐ์์ฑ์ด ์ดํ
์
๊ทธ ์์ฒด๊ฐ ์๋๋ผ ์
๋ ฅ ํํ(ํจ์น) ์ ๊ธฐ์ธํ์ ์ ์์์ ์์ฌํ๋ฉฐ, ๋จ์ํ์ง๋ง ์ฌ๋ฐ๋ฅธ ๊ตฌ์กฐ์ ์ ํ์ด ๋์์ด ๋ ์ ์์์ ์
์ฆํจ
[B, L, M] ์ ๋ ฅ โ MPE(๋ฉํฐ์ค์ผ์ผ ํจ์น ์๋ฒ ๋ฉ) โ ์๋ฒ ๋ฉ ๊ณต๊ฐ ๋ถํด(Xs/Xr) โ Dual Mixing MLP ๋ธ๋ก(IntraโInter) โ Predictor โ ์ถ๋ ฅ [B, T]
- ์
๋ ฅ
x_enc โ โ^{BรLรM}์์ L์ ์ ๋ ฅ ์๋ ๊ธธ์ด, M์ ๋ณ์ ์, B๋ ๋ฐฐ์น ํฌ๊ธฐ - MPE๊ฐ ์์ ์๊ณ์ด์ ์ค์ผ์ผ๋ณ๋ก ํจ์นํ โ ๊ฐ ํจ์น๋ฅผ ์ ํ ์๋ฒ ๋ฉ โ ์ค์ผ์ผ ๊ฒฐํฉ
- ์๋ฒ ๋ฉ ๊ณต๊ฐ ๋ถํด๊ฐ ์ด๋ํ๊ท ์ผ๋ก ์ค๋ฌด์ค ์ฑ๋ถ Xs์ ์์ฐจ ์ฑ๋ถ Xr ๋ถ๋ฆฌ
- Dual Mixing MLP ๋ธ๋ก์ด Intra-variable โ Inter-variable ์์ผ๋ก ์๊ฐ/ํน์ง ์ถ๊ณผ ๋ณ์ ์ถ์ ํผํฉ
- Predictor๊ฐ ๋ณ์ ์ถ์ ์์ฝํ๊ณ ์์ธก ์งํ T๋ก ์ฌ์ํด ์ต์ข ์ถ๋ ฅ ์์ฑ
์
๋ ฅ: x = [๋ฐฐ์น, ๊ธธ์ด L, ๋ณ์ M]
- ์ฌ๋ฌ ํจ์น ๊ธธ์ด(์: 4, 8, 16)๋ก x๋ฅผ ์กฐ๊ฐ๋ด๊ณ , ๊ฐ ์กฐ๊ฐ์ ๊ฐ๋จํ Dense์ ํต๊ณผ์์ผ ํ ํฐ์ผ๋ก ๋ฐ๊ฟ
- ์ค์ผ์ผ๋ง๋ค ํ ํฐ ๊ฐ์๊ฐ ๋ค๋ฅผ ์ ์์ผ๋ ๋ณด๊ฐํด์ ๊ธธ์ด๋ฅผ ๋ง์ถ ๋ค์, ํฉ์ณ์ ํ๋์ ํํ์ผ๋ก ๋ง๋ฆ
- ๋ฐฉ๊ธ ๋ง๋ ํ ํฐ์ด์ ์ด๋ํ๊ท ์ผ๋ก ๋ถ๋๋ฝ๊ฒ ๋ง๋ ๊ฒ(Xs)๊ณผ, ์๋ณธ์์ ๊ทธ๊ฑธ ๋บ ์์ฐจ(Xr) ๋ก ๋๋
- ์ฆ โ์ถ์ธ/๋๋ฆฐ ํ๋โ๊ณผ โ๋น ๋ฅธ ๋ณํ/๋ ธ์ด์ฆ์ ๊ฐ๊น์ด ๋ถ๋ถโ์ ์๋ฒ ๋ฉ์์ ๋ถ๋ฆฌํ๋ค๊ณ ๋ณด๋ฉด ๋จ
- Intra-variable(๋ณ์ ๋ด๋ถ) MLP: ๊ฐ ๋ณ์ ์์์ ์๊ฐ/ํน์ง์ ์์ด ๊ทธ ๋ณ์ ์์ฒด์ ํจํด์ ๋ ์ ํํ
- Inter-variable(๋ณ์ ๊ฐ) MLP: ๋ณ์ ์ถ์ ๊ธฐ์ค์ผ๋ก MLP๋ฅผ ๋๋ ค ๋ณ์๋ค ์ฌ์ด ์ํธ์์ฉ์ ํ์ต
interaction="elem": ์์๋ณ ๊ฒ์ดํ (y * x + x) โ ์์ ์ interaction="dot": ์ ๊ณฑ ๊ฒ์ดํธ โ ํํ๋ ฅโ(๊ฐ๋ ๋ฏผ๊ฐ)
ํฌ์ธํธ: ๊ฐ ๋ธ๋ก ๋ค์ Residual/์ ๊ทํ๋ฅผ ์ ์ฉํด ํ์ต ์์ ์ฑ ํ๋ณด
- ๋ณ์ ์ถ์ ํ๊ท (๋๋ ๊ฐ์คํฉ)์ผ๋ก ์์ฝํ ๋ค, Dense(T)๋ก T ์คํ ์์ธก์ ๋ฑ์ด๋
- ์ด ๊ตฌํ์ ๊ธฐ๋ณธ์ด ๋จ์ผ ์๊ณ์ด ์ถ๋ ฅ
[B, T]์ด์ผ. ๋ค๋ณ๋ ์์ธก์ด ํ์ํ๋ฉด ํค๋๋ฅผ ๋ฐ๊พธ๋ฉด ๋จ
- ์ ๋ ฅ์ ์๋ ๊ธธ์ด ๊ธฐ์ค์ผ๋ก ํ์คํํ๋ค๊ฐ, ์์ธก์ ๋ผ ๋ ์์ฒ๋๋ก ๋๋๋ ค์ค
-
MultiScalePatchEmbedding
- ์? ๊ธด ์๊ณ์ด์๋ ๋น ๋ฅธ ๋ณํ๋ ์๊ณ ๋๋ฆฐ ์ฃผ๊ธฐ๋ ์์ด. ์ฌ๋ฌ ๊ธธ์ด์ ํจ์น๋ก ๋ณด๋ฉด ๋ ์์ญ์ ๊ฐ์ด ์ก๊ธฐ ์ฌ์์ง
- ์ด๋ป๊ฒ?
- ๊ธธ์ด
p๋ก ์๋ฆ โ[B, N, p, M] p๊ธธ์ด ํจ์น๋ฅผ ํด์Dense(d_each)โ[B, N, M, d_each]- ์ค์ผ์ผ๋ง๋ค
N(ํ ํฐ ์)์ด ๋ค๋ฅด๋ฉด ๋ณด๊ฐ์ผ๋ก ๋ง์ถค - ์ค์ผ์ผ๋ค์ ํน์ง ์ฐจ์์ผ๋ก ํฉ์น๊ณ
Dense(d_fuse)๋ก ์ ๋ฆฌ flatten_tokens=True๋ผ๋ฉด ํ ํฐ์ ํ๊ท ๋ด์[B, M, d_model]๋ก ์์ถ(์๊ฐ ํด์๋ โ, ๊ณ์ฐ ํจ์จ โ)- ํ: ์ธ๋ฐํ ์๊ฐ ํจํด์ด ์ค์ํ๋ฉด
flatten_tokens=False๋ก ๋๊ณ ํ ํฐ์ ์ ์งํจ
- ๊ธธ์ด
-
FeatureDecomposition (์ด๋ํ๊ท ๋ถํด)
- ์? ์๋ฒ ๋ฉ์๋ ์ฌ์ ํ ๋ ธ์ด์ฆ/๋น ๋ฅธ ์๋์ด ์์. ์ด๋ํ๊ท ์ผ๋ก ๋ถ๋๋ฝ๊ฒ ๋ง๋ ๊ฒ๊ณผ ์์ฐจ๋ก ๋๋๋ฉด, ๋ค์ ๋ธ๋ก๋ค์ด ๋ ์์ ์ ์ผ๋ก ๋ฐฐ์ธ ์ ์์
- ์ด๋ป๊ฒ? ํ ํฐ ์ถ
N๋ฐฉํฅ์ผ๋กAveragePooling1D๋ฅผ ์ ์ฉํ๋๋ฐ, ์๋์ ๋ฐ๋ณตํด์ ํจ๋ฉํด์ ๊ธธ์ด๊ฐ ์ค์ง ์๋๋ก ํ์ - ๊ฒฐ๊ณผ๋
(Xs, Xr)= ๊ฐ์ ๋ชจ์์ ๋ ํ ํฐ์ด
-
Dual Mixing MLP (Intra โ Inter ์์)
- Intra-variable MLP: ๊ฐ ๋ณ์ ์์์ ์๊ฐ/ํน์ง์ ์์ด ํด๋น ๋ณ์์ ํํ์ ์
๊ทธ๋ ์ด๋
axis="feature"๊ฐ ๊ธฐ๋ณธ: ๋ง์ง๋ง ํน์ง ์ฐจ์๋ง MLP๋ก ๋๋ ค ๊ฐ๋ณ๊ณ ์์ ์ axis="token"๋ ๊ฐ๋ฅ: ํ ํฐ ์ถ์ ๋ง์ง๋ง์ผ๋ก ์ฎ๊ฒจ ์๊ฐ ๋ฐฉํฅ ํผํฉ๋ ํ ์ ์์
- Inter-variable MLP: ๋ณ์ ์ถ์ ๋ง์ง๋ง์ผ๋ก ์ฎ๊ฒจ Dense๊ฐ ๋ณ์ ๊ฐ์ ์๊ฒ ํจ
interaction๋ชจ๋๋ก ์ํธ์์ฉ ๊ฐ๋๋ฅผ ๊ณ ๋ฅผ ์ ์์"elem": ์์ ์ , ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋ฌด๋"dot": ์ ๊ณฑ ๊ฒ์ดํธ๋ก ๋ณ์ ๊ฐ ๊ด๊ณ๋ฅผ ๋ ๊ฐํ๊ฒ ํํ(ํ์ต๋ฅ /์ ๊ทํ์ ๋ค์ ๋ฏผ๊ฐ)
- ํฌ์ธํธ: Intra๋ก ๊ฐ ๋ณ์ ๋ด๋ถ๋ฅผ ๋ค๋ฌ๊ณ , Inter๋ก ๋ณ์ ๊ฐ ๊ด๊ณ๋ฅผ ์ก๋๋ค โ ์์๋ฅผ ์ ์งํ๋ ๊ฒ ์์ ์
- Intra-variable MLP: ๊ฐ ๋ณ์ ์์์ ์๊ฐ/ํน์ง์ ์์ด ํด๋น ๋ณ์์ ํํ์ ์
๊ทธ๋ ์ด๋
-
Predictor (์ถ๋ ฅ)
- ์ด ๊ตฌํ์ ๋ณ์ ์ถ์ ๋จผ์ ์์ฝ(ํ๊ท ๋๋ ๊ฐ์คํฉ)ํ๊ณ , ๋จ์ ํํ์ ํด์
Dense(T)์ ๋ฃ์ด[B, T]๋ฅผ ์ถ๋ ฅ - ๋ค๋ณ๋ ์ถ๋ ฅ์ด ํ์ํ๋ฉด?
- ์ง์ฝํ๊ธฐ ์ ์ ๋ณ์๋ณ๋ก
Dense(T)๋ฅผ ์ ์ฉํด์[B, T, M]์ ๋ง๋ค๊ฑฐ๋ Dense(T*M)ํreshapeํ๋ ๋ฐฉ์์ผ๋ก ๋ฐ๊ฟ ์ ์์
- ์ง์ฝํ๊ธฐ ์ ์ ๋ณ์๋ณ๋ก
- ์ด ๊ตฌํ์ ๋ณ์ ์ถ์ ๋จผ์ ์์ฝ(ํ๊ท ๋๋ ๊ฐ์คํฉ)ํ๊ณ , ๋จ์ ํํ์ ํด์
- flatten_tokens
- True: ๋น ๋ฅด๊ณ ๊ฐ๋ฒผ์, ๊ธด ์์ธก ์งํ/๊ณ ์ก์ ๋๋ฉ์ธ์ ์ ๋ฆฌ(์๊ฐ ํด์๋๋ ํฌ์)
- False: ํ ํฐ ์ ์ง๋ก ์ธ๋ฐํ ํจํด ํฌ์ฐฉ(์ฐ์ฐ/๋ฉ๋ชจ๋ฆฌ โ)
- interaction
- "elem"์ผ๋ก ์์ โ ์์ ํ ํ "dot" ์คํ
- pool_size(์ด๋ํ๊ท ์ปค๋)
- ๋ฐ์ดํฐ ์ฃผ๊ธฐ์ ์ฐฝ ๊ธธ์ด๋ฅผ ๋ณด๊ณ 9~25 ์ ๋์์ ํ๋(๋๋ฌด ํฌ๋ฉด ๊ณผํ๊ฒ ๋ถ๋๋ฌ์์ง ์ ์์)
- ์ ๊ทํ(
use_norm=True)- ๋ณ์ ์ค์ผ์ผ์ด ์ ๊ฐ๊ฐ์ด๋ฉด ๊ฑฐ์ ํ์. ์๋ ด๊ณผ ์ผ๋ฐํ์ ๋์