|
--- |
|
tags: |
|
- music |
|
--- |
|
|
|
# CNN ๊ธฐ๋ฐ ์์
๊ฐ์ ๋ถ๋ฅ๊ธฐ ๐ต |
|
|
|
## ๊ฐ์ |
|
|
|
์ด ๋ชจ๋ธ์ ์์
์ด ์ ๋ฌํ๋ ๊ฐ์ ์ Convolutional Neural Network (CNN) ์ํคํ
์ฒ๋ฅผ ์ฌ์ฉํ์ฌ ๋ถ๋ฅํฉ๋๋ค. |
|
๋ชจ๋ธ์ ์์
์ํ๋ก ๊ตฌ์ฑ๋ ๋ฐ์ดํฐ์
์์ ๊ฐ์ ๋ฒ์ฃผ(Angry, Fear, Happy, Tender, Sad) ์ค ํ๋๋ก ๋ผ๋ฒจ๋ง๋ ๋ฐ์ดํฐ๋ฅผ ํ์ตํ์ต๋๋ค. |
|
|
|
๋ชจ๋ธ์ ์ค๋์ค ๋ฐ์ดํฐ๋ฅผ Mel-spectrogram์ผ๋ก ๋ณํํ ํ, CNN ๋ ์ด์ด๋ฅผ ํตํด ์์
์์ ๊ฐ์ ์ํ์ ๊ด๋ จ๋ ํจํด์ ํ์ตํฉ๋๋ค. |
|
|
|
### ์ฃผ์ ๊ธฐ๋ฅ: |
|
- **์
๋ ฅ**: Mel-spectrogram์ผ๋ก ๋ณํ๋ 5์ด ๊ธธ์ด์ ์ค๋์ค ์ธ๊ทธ๋จผํธ |
|
- **์ถ๋ ฅ**: ๋ค์ ๊ฐ์ ์ค ํ๋ |
|
- Angry (0) |
|
- Fear (1) |
|
- Happy (2) |
|
- Tender (3) |
|
- Sad (4) |
|
|
|
- **์ํคํ
์ฒ**: 3๊ฐ์ ์ปจ๋ณผ๋ฃจ์
๋ ์ด์ด์ ์์ ์ฐ๊ฒฐ์ธต์ผ๋ก ๊ตฌ์ฑ๋ CNN ๋ชจ๋ธ |
|
|
|
## ๋ฐ์ดํฐ์
|
|
|
|
์ด ๋ชจ๋ธ์ ๋ ๊ฐ์ง ๋ฐ์ดํฐ์
์ ์ฌ์ฉํ์ฌ ํ์ต๋์์ต๋๋ค: |
|
1. **MER_audio_taffc_dataset**: ์ด ๋ฐ์ดํฐ์
์ ํน์ ์ฌ๋ถ๋ฉด(Q1~Q4)์ ๋ฐ๋ผ ๋ผ๋ฒจ๋ง๋ ์์
ํ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. |
|
2. **OSF_IO Dataset**: ๋ ๋ค๋ฅธ ์์
ํ์ผ ๋ฐ ๊ฐ์ ๋ผ๋ฒจ๋ก ๊ตฌ์ฑ๋ ๋ฐ์ดํฐ์
์
๋๋ค. |
|
|
|
### ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ: |
|
- ๊ฐ ์ค๋์ค ํ์ผ์ 5์ด ๋จ์๋ก ๋ถํ |
|
- ๋ถํ ๋ ์ค๋์ค ์ธ๊ทธ๋จผํธ๋ฅผ Mel-spectrogram์ผ๋ก ๋ณํ |
|
- ๋ ๋ฐ์ดํฐ์
์ ์์ด์ ํ์ต ๋ฐ ๊ฒ์ฆ์ฉ์ผ๋ก ๋ณํฉ |
|
|
|
## ๋ชจ๋ธ ์์ธ ์ ๋ณด |
|
|
|
### ์ํคํ
์ฒ: |
|
- **์ปจ๋ณผ๋ฃจ์
๋ ์ด์ด**: |
|
- Conv1: 32๊ฐ์ ํํฐ, ์ปค๋ ํฌ๊ธฐ 3x3 |
|
- Conv2: 64๊ฐ์ ํํฐ, ์ปค๋ ํฌ๊ธฐ 3x3 |
|
- Conv3: 128๊ฐ์ ํํฐ, ์ปค๋ ํฌ๊ธฐ 3x3 |
|
- **ํ๋ง**: ๊ฐ ์ปจ๋ณผ๋ฃจ์
ํ MaxPooling ๋ ์ด์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ฐจ์์ ์ถ์ |
|
- **๋๋กญ์์**: ๋๋กญ์์ ์ ๊ทํ๋ฅผ ์ฌ์ฉํ์ฌ ์ค๋ฒํผํ
๋ฐฉ์ง (ํ๋ฅ 0.5) |
|
- **์์ ์ฐ๊ฒฐ์ธต**: |
|
- ์ฒซ ๋ฒ์งธ FC ๋ ์ด์ด: 256 ์ ๋ |
|
- ์ถ๋ ฅ ๋ ์ด์ด: 5๊ฐ์ ์ ๋ (5๊ฐ์ ๊ฐ์ ๋ฒ์ฃผ) |
|
|
|
### ์์ค ํจ์: |
|
- **CrossEntropyLoss**: ๋ค์ค ํด๋์ค ๋ถ๋ฅ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ |
|
|
|
### ์ตํฐ๋ง์ด์ : |
|
- **Adam**: ํ์ต๋ฅ 1e-4๋ก ์ค์ |
|
|
|
## ํ์ต |
|
|
|
์ด ๋ชจ๋ธ์ ๋ณํฉ๋ ๋ฐ์ดํฐ์
์ ์ฌ์ฉํ์ฌ 10 ์ํญ ๋์ ํ์ต๋์์ต๋๋ค. ํ์ต๊ณผ ๊ฒ์ฆ ๋ฐ์ดํฐ ๋น์จ์ 80:20์ผ๋ก ๋๋์ด ๋ชจ๋ธ ์ฑ๋ฅ์ ํ๊ฐํ์ต๋๋ค. |
|
|
|
๊ฒ์ฆ ์ ํ๋๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฐ์ฅ ์ฑ๋ฅ์ด ์ข์ ๋ชจ๋ธ ์ฒดํฌํฌ์ธํธ๋ฅผ ์ ํํ์ฌ ์ ์ฅํ์์ต๋๋ค. |
|
|
|
## ์ฑ๋ฅ |
|
|
|
- ๊ฒ์ฆ ๋ฐ์ดํฐ์ ๋ํด ์ฝ 47% ์ ํ๋ |
|
|
|
## ์ฌ์ฉ ๋ฐฉ๋ฒ |
|
|
|
์์ ์ ์์
๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ๋ถ๋ฅํ๋ ๋ฐ ์ด ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ค๋ฉด Hugging Face Hub์์ ์ง์ ๋ก๋ํ ์ ์์ต๋๋ค: |
|
|
|
```python |
|
from transformers import AutoModel |
|
model = AutoModel.from_pretrained("rkdaldus/music_sent5_classification") |
|
``` |