์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- object detection
- ์ด๋ถ ํ์
- ๊ฐ๋์ ๋ง๋ก
- 2023
- NEXT
- ๋ฐฑํธ๋ํน
- BFS
- ๋ถํ ์ ๋ณต
- c++
- ์ธ๊ทธ๋จผํธ ํธ๋ฆฌ
- tensorflow
- dfs
- back propagation
- pytorch
- ์๋ฐ์คํฌ๋ฆฝํธ
- lazy propagation
- Overfitting
- ๋ฌธ์์ด
- ๋ฏธ๋๋_ํ์ฌ์_๊ณผ๊ฑฐ๋ก
- dropout
- ํ๊ณ ๋ก
- ๋๋น ์ฐ์ ํ์
- DP
- ์๊ณ ๋ฆฌ์ฆ
- ํ๋ก์ด๋ ์์ฌ
- ๊ฐ๋์_๋ง๋ก
- ๋ค์ต์คํธ๋ผ
- ์กฐํฉ๋ก
- ํฌ๋ฃจ์ค์นผ
- ์ฐ์ ์์ ํ
- Today
- Total
Doby's Lab
ArgumentIndexError: tensorflow์ LSTM์ ์ฌ์ฉํ ๋ ์ฃผ์ ๊น๊ฒ ๋ณด์์ผ ํ Parameter, return_sequences ๋ณธ๋ฌธ
ArgumentIndexError: tensorflow์ LSTM์ ์ฌ์ฉํ ๋ ์ฃผ์ ๊น๊ฒ ๋ณด์์ผ ํ Parameter, return_sequences
๋๋น(Doby) 2023. 8. 24. 12:59๐ค Problem
tensorflow์์ ์ ๊ณตํ๋ LSTM์ ์ฌ์ฉ์ ํ๋ฉด์ ๋ง์ฃผํ๋ ์๋ฌ ArgumentIndexError
์ ๋ํด ์ ๋ฆฌ๋ฅผ ํด๋ณด๊ณ ์ ํฉ๋๋ค.
์๊ณ์ด ๋ฐ์ดํฐ๋ฅผ ํ์ตํ๋ ค๋ ์๋์ ๊ณผ์ ์์ ์๋ฌ๊ฐ ๋ฐ์ํ์ผ๋ฉฐ, ์๋ฌ์ ์์ธํ ๋ด์ฉ์ Incompatible shapes: [32,4] vs. [32,20,4]
๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ , ์๋ฌ๊ฐ ๋ฌ์๋ ๋ชจ๋ธ์ ์ฝ๋๋ ์๋์ ๊ฐ์ต๋๋ค.
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.LSTM(units=64,
input_shape=train_x.shape[-2:],
dropout=0.1,
recurrent_dropout=0.1,
activation='tanh',
return_sequences=True))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.LSTM(units=32,
dropout=0.1,
recurrent_dropout=0.1,
activation='tanh'))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dense(10))
model.add(tf.keras.layers.Dense(4))
๐ Solution
Incompatible shapes: [32,4] vs. [32,20,4]
์ด ๋ฌธ์ ๊ฐ ์ผ์ด๋ฌ๋ ์ด์ ๋ ๋ชจ๋ธ์ด ํ์ตํ๋ ๊ณผ์ ์์ ๊ธฐ์กด์ ์๋ํ target์ shape๊ฐ ํ์์ ํด๋นํ๊ณ , 2๋ฒ์งธ LSTM์์ ์๋ํ ๋ฐ์ ๋ค๋ฅด๊ฒ output์ด ๋์๊ธฐ ๋๋ฌธ์
๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ 1๋ฒ์งธ LSTM๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก recurrent_sequences๋ฅผ True
๋ก ๋ฐ๊ฟ์ฃผ์ด์ผ ํฉ๋๋ค.
์ด ํ๋ผ๋ฏธํฐ๊ฐ ์๋ฏธํ๋ ๋ฐ๋ LSTM์ด ๊ธฐ๋ฐ์ด ๋๋ RNN์ ๊ตฌ์กฐ๋ฅผ ์ดํด๋ณด๋ฉด ์ดํด๊ฐ ๋ ์ ์์ต๋๋ค. return_squences
๊ฐ default๋ก False์ผ ๊ฒฝ์ฐ, ๋ง์ง๋ง์ ๋ชจ๋ input
๊ณผ ๋ชจ๋ state
์ ํด๋นํ๋ ์์ถ๊ฐ๊ณผ ์ ์ฌํ ๋ง์ง๋ง output๋ง์ LSTM Layer์ output์ผ๋ก ๋ค์ Layer๋ก ๋ณด๋ด๊ฒ ๋ฉ๋๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์๋ํ LSTM์ output์ด [32, 20, 4]
๊ฐ ๋์ค์ง ์์๋ ์ด์ ๋ ํ์์คํ
์ ๋ฐ๋ฅธ output์ ๋ด๋์ง ์๊ณ , ๋จํธ์ ์ธ ํ๋์ output์ ๋ด๋์๊ธฐ ๋๋ฌธ์
๋๋ค.
return_squences
๊ฐ False์ผ ๋, ์๋ ๊ทธ๋ฆผ์ ๋นจ๊ฐ ๋ฐ์ค์ ํด๋นํฉ๋๋ค.
๊ทธ๋์ return_sequences
๊ฐ True์ผ ๊ฒฝ์ฐ์ ํ์ ์คํ
์ ๋ฐ๋ผ output์ ๋ด๋์ผ๋ฉฐ, ์๋์ ๊ทธ๋ฆผ์์ ๋นจ๊ฐ ๋ฐ์ค๊ฐ LSTM์ output์ ํด๋น๋ฉ๋๋ค.
์ฌ์ค ์ด๋ฌํ ์๋ฌ๊ฐ ๊ฐ๋จํ ์๋ฌ๋ผ ๋ณผ ์ ์์์ผ๋, ์ ๋ ํด๊ฒฐ์ ํ๋ฉด์ ๊ธฐ์กด์ ๊ณต๋ถ ๋ฐฉํฅ์ ๋ํด ๊ณ ๋ฏผ์ ํ๋ ๊ณ๊ธฐ๊ฐ ๋์์ต๋๋ค. ๋ํ, ์ ๋ฒ XGB Wrapper
์ ๊ดํ ์๋ฌ์์๋ ๋น์ทํ ์๊ฐ์ ํ์์ต๋๋ค.
์ง๊ธ๊น์ง ์ด๋ก ์ชฝ์ผ๋ก๋ง ๋๋ฌด ์น์ฐ์น๊ฒ ๊ณต๋ถ๋ฅผ ํด์จ ๊ฒ ์๋๊น๋ผ๋ ์๊ฐ์ ํ์ต๋๋ค. ํ๋ ๋ฌผ๋ฆฌํ์ ์ด๋ค์ง ๋ชจ๋ฅด๊ฒ ์ผ๋ ์๋ ๋ฌผ๋ฆฌํ์ ํฌ๊ฒ ์ด๋ก ๋ฌผ๋ฆฌํ๊ณผ ์คํ ๋ฌผ๋ฆฌํ์ผ๋ก ๋๋์๋ค๊ณ ํฉ๋๋ค. ์ ๋ ์ด๋ก ์ชฝ์ผ๋ก๋ง ํธํฅ์ ์ผ๋ก ๊ณต๋ถ๋ฅผ ํด์๊ธฐ์ ์คํ์ ํด๋นํ๋ ์ฝ๋๋ฅผ ๋ค๋ฃจ๋ ๋ถ๋ถ์ ๋ถ์กฑํ๊ธฐ์ ์ด๋ฐ ์๋ฌ๋ค์ ๊ฒช์ ๊ฑฐ๋ผ ํ์ ํฉ๋๋ค.
๊ธฐ์กด์ ์ด ๋ธ๋ก๊ทธ์ ํฌ์คํ ์ ๋ณด๋๋ผ๋ AI์ ๊ด๋ จ๋ ํฌ์คํ ์์๋ ์ด๋ก ์ ๋ํด ์ด์ผ๊ธฐ๊ฐ ๋ง์์ง๋ง, ์ฝ๋๋ก ์ด๋ป๊ฒ ๊ตฌํ์ด ๋ ์ ์๋์ง ํน์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์๋ค๋ฉด, ์ด๋ป๊ฒ ์ฌ์ฉํ ์ ์๋์ง์ ๋ํ ๋ถ๋ถ์ด ๋ถ์กฑํ๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ด๋ฌํ ์๋ฌ๋ค์ ๊ณ๊ธฐ๋ก ์๋ก์ด ์ด๋ก ๋ค์ ๊ณต๋ถํ๊ฒ ๋ ๋๋ ์ด๋ก ๊ณผ ์คํ(์ฝ๋) ๋ ๋ค ์ฑ๊ฒจ๊ฐ๋ ๊ณต๋ถ๋ฅผ ํด์ผ๊ฒ ๋ค๋ ๊ด์ ์ด ๋ง๋ค์ด์ง ๋ฏํฉ๋๋ค.
'Code about AI > tensorflow' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
tf.data.Dataset & tf.data.Dataset์ ์ ์ฉํ Methods (0) | 2023.08.17 |
---|---|
tensorflow์ ImageDataGenerator (0) | 2023.01.11 |
steps_per_epoch, validation_steps (tensorflow model.fit์ Argument) (0) | 2023.01.10 |
Tensorflow์ Callback(EarlyStopping, ReduceLROnPlateau) (0) | 2023.01.03 |
Dataset Shuffle์ ํด์ผ ํ๋ ์ด์ (0) | 2022.12.25 |