백준 14502: 연구소(골드 5)
·
Algorithm(Python)
문제 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크기가 N×M인 직사각형으로 나타낼 수 있으며, 직사각형은 1×1 크기의 정사각형으로 나누어져 있다. 연구소는 빈 칸, 벽으로 이루어져 있으며, 벽은 칸 하나를 가득 차지한다. 일부 칸은 바이러스가 존재하며, 이 바이러스는 상하좌우로 인접한 빈 칸으로 모두 퍼져나갈 수 있다. 새로 세울 수 있는 벽의 개수는 3개이며, 꼭 3개를 세워야 한다. 예를 들어, 아래와 같이 연구소가 생긴 경우를 살펴보자. 2 0 0 0 1 1 0 0 0 1 0 1 2 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 ..
AI Voice Conversion Project(음성 합성 모델) #3: 모델 로컬화
·
MLOps/MLOps projects
지난번에 이어 이번에는 그래서 현재 google Colab에 올라가 있는 모델을 어떻게 로컬화를 시켰는지 이야기하고자 한다. # 코드의 로컬화 사실 이 로컬화 하는 과정에서 가장 많은 시간과 오류에 마주쳤었다. 딥러닝 모델을 탑재한 google colab은 특성상 코드를 돌리는 것이 아닌 실제 실행되는 코드를 gui로 겉이 포장되어 있다. 예를 들어 아래와 같이 데이터를 전처리하는 부분이 아래와 같다면. 이를 굳이 process data를 누르지 않고도 데이터가 업로드 되면 자동으로 데이터를 전처리 해줄 수 있도록 해줘야한다. 즉 하나하나 코드를 다 까보고 함수를 뒤져서 찾아내야한다는 것이다. 심지어 코드 주석이 전부 중국어로 되어 있어서 파파고까지 돌려가며 했다는 사실.. 예를 들어 위 gui를 까면 ..
AI Voice Conversion Project(음성 합성 모델) #2: 모델 생성
·
MLOps/MLOps projects
오늘은 지난번에 이어 그래서 음성 학습을 위해 어떤 모델을 썼는지, 파이프라인은 어떻게 되는지 설명하도록 하겠다. 이 프로젝트에 있어 다시 돌아보면 모델 선택에 매우 많은 어려움이 있었던 것 같다. 지난 포스팅에서 언급했듯이 우리 프로젝트의 조건에 맞는 모델을 찾는 것이라곤 매우 까다로웠기 때문이다.. 일단 먼저 그중 대표적인 모델 두가지에 대해 설명하고 결론적으로 우리 프로젝트에는 어떤 모델을 사용했고 어떻게 녹여냈는지 설명하겠다. # Diffusion SVC vs RVC 1. Diffusion SVC 먼저 Diffusion SVC이다. pipeline만 봐도 정말 어려운것이 딥러닝에 대해 공부를 많이 했던 사람도 처음 보는 용어가 매우 많다.. 하지만 사실 왼쪽 상단의 Noise와 아래족 하단의 No..
AI Voice Conversion Project(음성 합성 모델)
·
MLOps/MLOps projects
#1 들어가기 앞서 요즘 유튜브나 컴뮤니티에서 AI 음성 학습 기술을 이용해 가수의 목소리 혹은 특정인의 목소리로 노래를 부르는 것을 본 적이 있을거다. 특히 Google Colab에서 딥러닝 모델을 보기 쉽게 GPU instance까지 지원을 해줌으로써 너도 나도 쉽게 학습을 시키고 parmeter tuning까지 시킬 수가 있다. 하지만 실제 Google Colab으로 딥러닝 모델을 한번이라도 돌린 사람들은 한번에 되는 경우가 없다는 것을 알 것이다. Google 계정을 mount 시키는 것부터 정말 정말 다양한 오류를 쉽게 마주칠 수 가 있다. 때문에 나와 팀원들은 이런 AI 음성 학습 모델을 정말 일반인들도 쉽게 돌리고 결과를 받을 수 있는 프로젝트를 하기로 계획을 했다. 이번 포스팅 부터 당분간..