-
음성 신호와 DCGAN | 대한민국 입시의 현실AI, DataScience 2023. 9. 14. 13:43728x90
들어가기
이 글을 잡담 카테고리로 넣어야 할까 하다가 AI 카테고리로 넣는다.
음성 신호(Audio Synthesis)와 DCGAN(Deep Convolutional Generatice Adversarial Network)
내가 왜 이 생소한 주제로 글을 쓸까?
그것은 나의 주말 알바 일터. 경남 진주의 한 컴퓨터 학원 소통 디코방에서 시작된다.
듣자 하니, 특목고 입시 포트폴리오를 만든다고 한다.
아니 요즘 특목고 입시하는데 포트폴리오를 만들어?
포트폴리오는 그렇다 쳐. 근데 인공지능을 해? 그것도 GAN을? 그것도 DCGAN을???
그래 뭐 DCGAN 관심 있으면 공부할 수 있지.
근데, DCGAN을 이용하여 프로젝트를 만들어???
왜 대학원생이 하는 일을 중학생이 하는 건데~~~
프로젝트 설명
암튼 수강생이 하고 있는 프로젝트를 잠깐 설명하자면,
음악을 STFT(Short Time Fourier Transform)로 변환하여 spectrogram이미지를 만든 다음, 그 이미지를 DCGAN으로 학습하여, 새로운 spectrogram을 만들어 음악을 만든다
spectrogram은 시계열 신호(소리 등)를 시각화하기 위한 도구라고 한다.
STFT는 spectrogram을 만드는 방법 중 하나라고 한다...?
일단 더 공부해 봐야겠지만, 아무튼 이 이미지를 DCGAN 모델을 만들어보자! 가 프로젝트의 핵심이다.
기존 논문 분석
일단 뭔지 잘 모르겠으니, 기존 논문을 찾아보자. Google Scholar에서 키워드를 찾고, Papers with code를 열심히 뒤져서 적당한 논문 몇 가지를 찾아보았다.
1. WaveNet
https://paperswithcode.com/paper/wavenet-a-generative-model-for-raw-audio
구글에서 나온 건데, 이 연구의 기반논문이라고 할 수 있겠다.
2. WaveGAN
https://paperswithcode.com/paper/adversarial-audio-synthesis
ICLR 2019 (ㄷㄷ) 수강생이 만든다고 하는 프로젝트와 유사하다
3. MelGAN
https://paperswithcode.com/paper/melgan-generative-adversarial-networks-for
NeurIPS 2019 (ㄷㄷㄷ)
수강생이 만든다고 하는 프로젝트와 유사하다
이 3가지 논문 참고하라고 던져주긴 했다. 코드 있으니 알아서 하겠지 뭐.
사실 논문을 읽어보았다는 것만 해도 대단한 거 아닌가?
논문 구현만 하면 그 나이면 천재 아닌가?
새로운 모델 만들면 KCC, KSC 주니어 논문 대상감이지... 국제 학회 낼 수도..?
결론
흠 근데 왜 이걸 하지...
중3이면 중3답게 MNIST나 할 것이지... 아니 사실 MNIST도 중학생이 하기에는 과한데..
근데 요즘에는 Diffusion Model이 대세 아닌가...
여담으로 맨 위 사진 Generator의 loss 증가는 무엇을 의미하냐고 하면
GAN (Generative Adversarial Networks) 모델은 Generator와 Discriminator 두 개의 신경망이 서로 경쟁하면서 학습하는 구조를 가지고 있습니다.
Generator는 실제 데이터와 유사한 가짜 데이터를 생성하려고 하며, 반면에 Discriminator는 주어진 데이터가 실제 데이터인지 Generator가 생성한 가짜 데이터인지를 판별하려고 합니다.
Generator의 loss 증가는 일반적으로 Discriminator가 Generator가 생성한 가짜 데이터를 더 잘 구분하게 되었음을 의미합니다.
즉, Generator의 성능이 상대적으로 저하되었거나, 또는 Discriminator의 성능이 향상되었다는 것을 나타냅니다.
이러한 현상은 GAN 모델에서 자주 발생하는데, 이는 GAN 모델의 학습 과정 중에 발생하는 "Mode Collapse"나 "Discriminator Overpowering" 등과 같은 문제 때문일 수 있습니다.
=> Mode collapse: 이것은 Generator가 매우 제한된 종류의 샘플만 생성해내게 되어 다양성을 잃게 되는 현상을 말합니다.
=> Discriminator overpowering: 이것은 Discriminator가 너무 강력해져서 Generator보다 훨씬 빨리 학습되어 버리는 현상을 말합니다.
따라서, Generator의 Loss가 계속해서 증가한다면, 해당 GAN 모델의 학습 전략을 재조정해야 할 필요성이 있습니다. 예를 들어, Discriminator와 Generator 사이에 균형잡힌 학습 속도를 유지할 수 있는 방법을 찾아야 할 수 있습니다.
-- ChatGPT뭐 그렇다고 한다.
데이터를 더 다양하게 하거나
Discriminator의 성능을 낮추거나
라벨 스무딩을 하거나...
근데 왜 대학원생이 하는 일을 중학생이 하는 건데~~~
중학생이면 중학생답게 그냥 롤이나 하라고~~
행렬도 안 배운 것들이 뭔 딥러닝이여~~
왜 특목고 입시 때문에 최상급 학회 논문을 봐야 하는 건데~~~
이건 아니잖슴~~~
우리나라 입시 너무한 거 아니냐고~~
728x90'AI, DataScience' 카테고리의 다른 글
tensorflow.keras 에러 해결법 (0) 2024.11.06 SHAP Value란 무엇인가? (0) 2023.09.18 [Pandas] IndexingError: Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed object do not match). 해결법 (0) 2023.08.24 [논문 리뷰] Improving Imbalanced Classification by Anomaly Detection (0) 2023.08.22 [NumPy] np.all, np.any 실전 사용예시 (0) 2023.06.26