정보과학융합탐구 8

17. diff -svc를 직접 사용해 보자.

이번 글에서는 저번 글에서 알아보았던 diffusion 모델 중 하나인 diff-svc를 직접 사용해보겠습니다. https://github.com/prophesier/diff-svc 이 링크의 자료들을 활용하였습니다. 이 모델을 이용하면 어느 사람의 말소리들로 다른 노래를 부르도록 만들 수 있습니다. 저는 쿤타라는 가수의 목소리로 뉴진스의 디토를 부르도록 만들어 볼건데요. 우선 쿤타라는 가수의 목소리를 얻어서 15초 단위로 끊어야 합니다. 데이터가 아주 많아야 결과가 좋긴 하지만 시간 관계상 조금의 데이터로 진행을 해보겠습니다. 보통 몇시간 정도의 데이터가 필요하지만 저는 고작 3분 정도로 해보겠습니다. ㅋㅋ 결과가 어떨지 궁금합니다. 오디오 파일들을 이런식으로 나눠서 준비해 주고요 이걸 압축해 줍니다...

15. 자판기에서 가장 많이 먹을 수 있는 경우의 수

학교에서 지나가다가 자판기를 보게 되었는데 자판기에서 한정된 돈으로 얼마나 많은 음료수를 먹을 수 있는 지 궁금해서 코드로 구현을 해보았습니다. #include #include #define NUM_OF_PRODUCTS 3 // 상품 정보 구조체 typedef struct { char name[20]; int price; } Product; // 상품 정보 배열 초기화 void initializeProducts(Product products[]) { // 각 상품의 이름과 가격을 설정 strcpy(products[0].name, "콜라"); products[0].price = 1000; strcpy(products[1].name, "사이다"); products[1].price = 900; strcpy(p..

14. diff - svc에 대하여

Singing Voice Conversion (SVC)은 노래의 내용과 멜로디는 그대로 유지하면서, 다른 가수의 목소리로 노래를 변환하는 기술입니다. 최근 SVC 모델은 content encoder를 통해 소스 음성에서 추출한 content feature와 conversion model을 사용하여 목소리 변환을 수행합니다. 또한, ASR (자동 음성 인식) 모델을 content encoder로 활용하여 각각을 개별적으로 학습시키는 경우도 있습니다. Conversion model은 GAN이나 회귀 모델을 활용하며, GAN을 사용하는 경우 파형을 생성하고, 회귀 모델을 사용하는 경우 mel spectrogram과 같은 spectral feature로 변환한 후 파형을 생성합니다. 이 논문에서는 diffusi..

11. 가우스 함수 그래프

이번 게시글에서는 가우스 함수에 대하여 간단히 알아보고 R을 이용하여 그래프를 표현해보도록 하겠습니다. 가우스 함수의 일반적 형태는 다음과 같습니다. 여기서 a, b, c는 실수인 상수이고 c는 0이 아닙니다. 가우스 함수의 그래프는 좌우대칭의 종 모양의 곡선으로 +/-의 극한을 향하면서는 급격히 감소하는 특성을 가지게 되는데요. a는 이 종 모양의 높이, b는 꼭대기의 중심 위치, c는 종모양의 너비를 결정하게 됩니다. 가우스 함수의 특징 -로그를 취하면 이차함수의 형태를 띈다. -x = b ± c에서 두 변곡점을 가진다. -해석 함수이다. -x → ∞일 때 극한은 0으로 수렴한다. -두 가우스 함수의 곱은 가우스 함수이며 두 가우스 함수의 합성곱도 가우스 함수이다. -적분 형태가 오차 함수의 형태이다..

10. 해외 이공계 체험 학습 후기

5월 첫째 주에 미국 동부로 해외 이공계 체험학습을 다녀왔는데요. 다녀온지는 조금 됐지만 간단히 정리해보도록 할게요. 1일차: 비행기를 열몇시간 타고 미국에 도착하게 됩니다.뉴욕 jfk공항을 나와서 첫 끼니로는 샌드위치를 먹고 모마 미술관으로 향했습니다. 다양한 미술 작품들을 감상할 수 있어서 좋았습니다. 그 다음에는 자유의 여신상 유람선을 타고 나서 전망대로 가서 뉴욕 시내를 한눈에 볼 수 있었습니다.2일차에는 프린스턴 대학교에 갔습니다.그곳에서 핵융합과 관련된 특강을 인상깊게 들었던것 같습니다. 점심에 먹은 치즈 버거도 정말 맛있었습니다. 그 후 나사 센터에 들려 잠깐 특강을 듣고 2일차를 마무리 하였습니다. 3일차에는 워싱턴 D.C를 탐방하였습니다. 국회의사당, 링컨 기념관등 많은 의미 있는 장소를..

7. one- hot encoding

이번 글에서는 저번 자연어 처리 글과 관련되어 있는 하나의 주제인 one-hot encoding 에 대하여 알아보고 코딩으로 구현해보려고 합니다. -원핫 인코딩이란? 범주형 데이터를 수치데이터(벡터)로 바꾸는 방법 ex) 빨강, 파랑, 초록이 있을때 빨강[1,0,0] 파랑[0,1,0] 초록[0,0,1] *범주의 수가 많아지면 벡터의 차원이 증가하기 때문에 메모리와 연산 비용이 증가하게 되기 때문에 범주의 수가 적은 경우에 적합한 방식입니다. 또한, 단어간의 유사성을 알 수가 없기 때문에 검색 시스템 등에서 효율성이 떨어질 수 있다. 이 원핫 인코딩을 코딩으로 한 번 구현해 보겠습니다. 다음과 같이 알고리즘을 설계하고 C를 활용하여 코드를 구성해보았습니다. #include #include //strcmp ..

6. 자연어 처리(nlp)

이번 글에서는 인공지능이 이용되는 한 분야인 자연어 처리에 대하여 간단히 알아보려고 합니다. -자연어 처리란? NLP(Natural Language Processing)라고 불리는 자연어 처리는 인공지능의 한 분야로서 머신러닝을 사용하여 텍스트와 데이터를 처리하고 해석하는것을 의미합니다. 자연어 인식, 생성, 이해 등이 이것에 포함되어 있습니다. 쉽게 말하여, 우리가 일상 생활에서 사용하는 언어의 의미를 분석하여 컴퓨터가 처리할 수 있도록 만들어 주는 과정입니다. -NLP 분류 1. NLU (Natural Language Understanding): NLU는 자연어의 의미를 이해하는 기술입니다. NLU는 입력된 자연어를 분석하여 의도, 개체명 인식, 감성 분석 등의 정보를 추출합니다. 이를 통해 기계는 ..

3. MSE, MAE를 C로 구현해보자!!

벌써 3번째 게시글을 쓰게 되었네요. 이번 게시글은 첫번째 정보과학융합탐구 게시글인데요. 평소에 관심을 가지던 주제를 코딩으로 구현해보는 과제가 주어졌습니다. 어떤 주제를 정해야할지 고민을 많이 했지만 결국 제가 주제는 MSE, MAE 인데요. -MSE, MAE란 무엇일까? 머신러닝 회귀 모델을 평가할때 사용되는 지표의 종류입니다. 우선 MSE는 mean squared error의 약자로 평균제곱오차를 가리키는데요. 평균제곱오차는 말 그대로 오차를 제곱한 값에 평균을 취한 값입니다. 머신러닝에서 가장 많이 쓰이는 손실 함수 중 하나로 값이 0에 가까울수록 예측 값이 실제값에 가깝다는것이기 때문에 정확도가 높다고 할 수 있습니다. 지표가 직관적으로 나타나 분석에 용이하지만 제곱한다는 특성때문에 1미만의 에..