File size: 2,717 Bytes
b05c606 66c9e9d 81c4438 66c9e9d 81c4438 b05c606 |
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
---
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")
``` |