-
uv 사용해보기
MCP를 공부하다가 uv 라는 것을 알게되었다. 어릴적 아이리버 MP3를 뜨겁게 달구던 그 UV 가 아니다. 파이썬 패키지 및 프로젝트 관리 도구이다. uv란 뭘까? uv를 알려면 우선 Rust를 먼저 알아야 한다. 파이썬은 배우기 쉽지만 느리다. C는 빠르지만 메모리 관리가 어렵다. 뭐 이런 프로그래밍 언어들의 장점들을 뽑은게 Rust이다. 마치 국 끓이기 좋게 맛있는 것만 모아 놓은 '코인 육수' 같은 놈이다. 이 Rust로 만든 맛있는 된장찌개가 바로 uv 이다. 기존 파이썬 환경은 가상환경을 생성하고 pip 설치가 굉장히 불편하고 느리다. requirements를 직접 작성 해야하고, pip는 파이썬으로 짜여져있어서 의존성 해석과 설치가 느리다. 이렇기에 이 가상환경을 어디로 옮기려고 한다면 엄청..
-
Multi-Stage Speaker Diarization for Noisy Classrooms(27 May 2025)
* 원문 논문 아카이브https://arxiv.org/abs/2505.10879 Multi-Stage Speaker Diarization for Noisy ClassroomsSpeaker diarization, the process of identifying "who spoke when" in audio recordings, is essential for understanding classroom dynamics. However, classroom settings present distinct challenges, including poor recording quality, high levels of background noarxiv.org Abstract교실 환경은 녹음 품질 저하, 높은 수준의배경 잡..
-
NeMo Multi-Scale Diarization Decoder
Speaker Diarization Task는 정말 어려운 분야 같다. 괜찮은 모델을 찾고 파인튜닝을 해도 오디오의 음질이나 도메인에 너무 큰 영향을 받는다. 도출된 결과로 LLM을 통해 회의록을 만들기라도 하면 화자 분리가 하나라도 잘못되면 재수 없게 회의록은 엉망이 되고 만다. 그러던 중 상당히 흥미로운 모델을 찾았다. NeMo Framework에 Speaker Diarization이다. 'Multi-Scale Diarization Decoder' 이란 명칭이 붙어있고 논문에 따른 성능이나, 도메인에 따른 Pretrained Model 지원 여부, 편리한 학습을 제공한다. 많은 곳에서 그 동안은 많은 곳에서 그랬던 것처럼 Pyannote를 파인튜닝 후 사용 중이었는데 결과가 놀랍다. 논문https:/..
-
갤럭시 폴드 7과 워치 8
최근 서비스 런칭을 위해 매우 바쁜 직장 일과 더불어 개인적으로 민형사 고소로 인해 블로그에 글을 투고 하지 않았다. 세 가지의 취미였던 헬스, 공부(블로그), 데이트 중 데이트를 제외하고 모든 것을 잃은 몇 달이었다. 인생을 취미와 더불어 온 사람이라 취미를 잃으면 스트레스를 받는다. 난스트레스를 받으면 체중이 감소하고 과소비를 하게 된다. 결론적으로 난 12kg을 잃었고 폴드 7과 워치 8을 얻었다. 나의 스마트폰 일대기는 뭐 그리 길지 않다. 갤럭시 노트 4를 시작해 갤럭시 S7+, 아이폰 12 프로, 아이폰 SE 3 세대를 썼었다. 대체로 큰 화면을 선호하던 나였지만 올해 1월 아이폰 SE로 회귀 해버렸다. 아이폰 12 프로는 정말 좋은 폰 이었다. 갤럭시만 쓰던 나에게 ios를 알게 해주었고, ..
-
파이썬에서 깔끔하게 임시 파일 관리하기
파이썬으로 코딩 하다보면 임시 파일을 만들고 삭제해야할 때가 많다. 특히 음성 AI에 종사해 있는 나는 원음의 특정 구간을 청킹해 저장 후 다른 곳에서 사용하곤 한다. Numpy Array 형태로 직접 활용하면 좋지만 대부분의 라이브러리에서는 오디오의 경로를 직접 받게 되어 있어 곤란할 때가 많다. 이럴 때 굳이 temp 경로를 지정하고 직접 삭제를 해야할까? 그동안.. 우선 그동안 내가 했던 방식을 확인해보겠다. 임시 파일 경로를 미리 지정해주고, pydub 라이브러리를 사용해 0.1초 단위로 청킹해 저장 후 시간을 비교해보겠다. 코랩에서 진행해보겠다.from pydub import AudioSegmentimport osimport timefrom tqdm import tqdmaudio_path = '..
-
Supabase DB 사용해보기
최근 개인 프로젝트 때문에 개발 랩탑에 DB를 설치한적이 있다. 사실 DB 쪽은 잘 모른다. 물론 기본적인 쿼리문이나 지켜야할 사항들 등 베이직한 지식들은 알지만 친하지는 않다. 그래서 그런지 설치가 잘되지 않았다. 이유는 뭔지 모르겠다. 방화벽 문제인것 같은데 하다가 스트레스 받아서 포기했다. 그래서 데이터들을 csv와 pandas로 관리하고 있었다. 너무 초보적이라 부끄러웠다. 그러던중 재미있는 서비스를 발견했다. 바로 'Supabase' 이다. Firebase와 비슷한 PostgreSQL 기반 웹 DB 플랫폼이다. 무료이고, 관리가 쉽고, 사용하기 편하다고 한다. 오호라. 그럼 내가 안써볼 수 없다. 바로 써보겠다.https://supabase.com/ Supabase | The Postgres D..
-
해시 값(Hash Value) 으로 버전 관리하기
최근 회사에서 TTA 관련 인증을 진행했다. 그 과정에서 모델 버전 관리를 위해 모델의 해시 값을 알려 달라는 TTA 담당자의 문의가 있었다. 거기서 나는 '오잉?' 했다. 해시 값이 뭐지? 그래서 나름 알아봤다. 해시 값이란? 간단하게 데이터나 파일의 지문(Fingerprint)이라고 생각하면 된다. 데이터를 고정된 길이의 고유한 값으로 변경해 변환한 결과물이다. 파일의 매우 작은 변화만 생겨도 해시 값에는 변화가 생기며, 해시 값을 데이터로 바꾸는 역산도 불가능한 단반향다. 변환 과정에서 사용하는 알고리즘은 MD5, SHA-256, SHA-1 등 암호 알고리즘과 연관이 있다. 특정 데이터에서 특정 해시값이 나오도록 하는 것은 불가능 하지만 깊이 들어가면 해킹 등의 공격으로 가능하다고도 한다. 데이터로..
-
Gemma3 - 무료 멀티모달 LLM 모델 사용하기
오랜만에 블로그에 글을 업로드 한다. 최근 굉장히 바쁜일들이 이어지고 있다. 공적으로는 하나의 프로젝트 마무리 때문에 고객사에게 많은 클레임을 받고 있다. 'AI는 완벽하지 않아요!', 'AI는 사람보다 뛰어날 수 없어요!' 라는 말을 수 백번 해보았지만 통하지 않고 AI가 더 이상 AI가 아닌 하나의 알고리즘을 만들어주기 위한 고군분투를 하고 있다. 사적으로는 개인 프로젝트를 진행중이다. 수 년을 고민하던 프로젝트를 점점 가시화 하고 있다. '주식 AI 에이전트' 관련 프로젝트이고 현재는 백 테스트 진행중이며, 고도화를 진행할 예정이다. 다양한 개발자들과 소통도 하는 중이다. 이 과정에서 블로그에 투고하고 싶은 글이 많았지만 한번 떠오르면 멈추지 못하는 버릇 때문에 개발에만 집중했다. 앞으로 차근차근 ..
-
JIT 컴파일과 데코레이터
서론 파이썬 코드의 가장 큰 단점 중 하나는 실행 속도라고 할 수 있다. C언어보다 쉽다는 장점이 있으나 아직까지 C언어의 속도는 따라갈 수 는 없다. 그래서 빠른 실행 속도를 요구하는 서비스에서는 아직도 C의 선호도가 압도적이다. 이런 C의 속도를 따라가기 위한 뱁새 가랑이인 JIT 컴파일러에 대해 알아 보겠다. 그리고 코드의 가독성을 높이는 데코레이터까지 추가적으로 알아보겠다. 코딩, 특히 실무에서는 속도와 가독성이 생명이니깐.왜 느린가? C는 컴파일 방식이고 파이썬은 인터프리터 방식이다. 그래서 느리다. 쉽게 말하자면 밀키트로 한 방에 요리하기 vs 재료 하나하나 다 준비해가며 요리하기의 차이라고 볼 수있다.컴파일 방식 : 코드를 한번에 기계어로 번역해서 실행.인터프리터 방식 : 코드를 한 줄 한 ..
-
푸리에 변환(Fourier transform, FT)
서론딥러닝을 공부하다보면 데이터 전처리에서 심심치 않게 등장하는 것이 바로 '푸리에 변환' 이다. 우리는 그것을 이해하기 보다는 그저 특징 추출을 위한 하나의 장치로 넘어가곤 한다. numpy.fft 하면 끝나는데 알 필요가 있을까? 물론 알 필요 없다. 하지만 궁금한건 못 참는다. 바로 알아보겠다.시간과 주파수우리는 흔히 오디오 데이터나 시계열 데이터들에 푸리에 변환을 자주 적용한다. 이 둘은 시간에 따른 데이터의 흐름과 변화를 나타내는 '시간 도메인' 으로 표현된다. 시간 도메인은 흐름을 알기는 쉽지만 특징을 잡기가 어렵다.이런 시간 도메인들에서 특징을 찾기 위해 조제프 푸리에 선생님이 고안 해내신 것이 푸리에 변환이다. 시간 도메인을 주파수 도메인으로 바꿔 특징을 찾기 쉽게 해준다. 주파수 도메인을..
-
NeMo Speaker Recognition(SR) 성능 올리기
서론https://catalog.ngc.nvidia.com/orgs/nvidia/teams/nemo/models/titanet_large TitaNet-L | NVIDIA NGCTitaNet model for Speaker Verification and Diarization taskscatalog.ngc.nvidia.com NVIDIA NeMo Framework에서는 오디오 관련 다양한 라이브러리를 지원한다. 특히 TitaNet을 기반으로 하는 Speaker Recognition Pretrained Model은 성능이 매우 우수 하다. 더욱이 별다른 파인튜닝 작업을 거치지 않아도 좋은 성능을 자랑 한다. 필자도 몇 번 학습을 진행했으나 유의미한 효과는 얻지 못했다. 하지만 모델을 도와줄 수 있는 알고리즘..
-
파이썬에서 오디오 파일 다루기(pydub, soundfile)
서론 파이썬에는 다양한 오디오 관련 라이브러리가 있다. 필자는 주로 pydub 라이브러리를 사용한다. 사용하기 간편하고 Numpy 배열로 오디오를 불러오는 방식이 아니어서 조금 더 직관적이기 때문이다. 하지만 pydub을 꾸준히 사용하며 느낀 몇가지 단점들이 있다. 모두 Numpy 배열을 사용하지 않아 일어나는 단점이다.연산 작업을 하면 느리다.다른 작업 시 I/O가 개입되지 않으면 활용이 제한된다. 정밀한 신호 처리가 어렵다. 이러한 단점들때문에 사용하기 어려울 때가 있다. 특히 빠른 처리(실시간 환경 등)에서 오디오를 처리해야 할 때는 pydub이 성능을 떨어트린다. 그래서 soundfile 라이브러리를 사용해보려고 한다.pydub https://github.com/jiaaro/pydub GitHub..
-
리콜(미리보기) 사용기
노트북을 산 지 어언 세달 째. 서피스 랩탑 7은 'Copilot PC' 를 앞세워 호기롭게 키보드에도 코파일럿 키를 박아 두었다. 그런데 유명무실 이랄까. Chat GPT와 Gemini 만 쓰는 나는 코파일럿 키를 눌러본 적이 처음 샀을 때 테스트 용도로 약 2회 정도 사용하고 누르지 않았다. 사실 윈도우 기본 기능들을 좋아하지 않는다. XBOX, Cotana, Teams, WhiteBoard 등 뭐하나 제대로 활용 해본적이 없다. 오히려 노트북 제조사의 서드파티 확장 기능들은 맛깔나게 활용했다. 그렇게 Copilot PC 라는 걸 잊은 어느날 밤, 난 개인 스터디를 마치고 노트북을 끄고 자려했다. 아뿔싸, '윈도우 업데이트 및 종료(예상 : 8분)'. 노트북을 끄고 바로 누우려는 나(Power J)에..
-
API 통신과 소켓 통신
개요예쁘게 AI 파이프라인을 만들어도 서비스를 위해서는 데이터 통신이 필수이다. 내가 실무에서 주로 사용하는 데이터 통신은 API 통신과 소켓 통신이다. 인터페이스 정의서를 바탕으로 클라이언트를 구축하거나 때때로 서버를 구축하기도 한다. 항상 언제 API를 쓰고 소켓을 써야할지 직감적인 것은 있었지만 정확한 차이점은 모른다. 나름 혼자 스터디 해보고 정리 해보겠다.API 통신정의 : 클라이언트가 서버에 요청(Request)를 보내, 서버가 응답(Response)을 반환 하는 요청 - 응답 기반 통신 방식. => 단방향 요청 - 응답 방식.프로토콜 : HTTP / HTTPS주 사용 : 로그인, 회원가입, DB 조회, 서버 상태 확인 등HTTP 기반 REST API : HTTP 프로토콜을 사용해 REST 원..
-
쿨백-라이블러 발산(Kullback–Leibler divergence, KLD)
정의두 확률분포 P와 Q 사이의 차이를 측정하는 비대칭적 척도.분포 Q로 샘플링 했는데, 실제 분포가 P일 때의 "정보 손실"을 의미.값이 0 이면 동일한 분포이고 클수록 두 분포가 다름을 의미.비대칭적 분포P와 Q를 바꾸면 전혀 다른 값이 나옴.생성 모델을 기준으로 진짜 데이터 분포가 P이고, 학습 분포가 Q일때.P || Q : 생성 모델이 놓친 부분.Q || P : 생성 모델이 헛짓을 한 부분.엔트로피와의 관계엔트로피 : 확률분포 P의 엔트로피는 P가 얼마나 불확실한지를 수치화.=> 엔트로피가 높을수록 분포가 더 펴져 있고 불확실성이 높음.교차 엔트로피 : P를 따르는 샘플 Q가 얼마나 잘 예측하는가를 측정.=> 예측 분포 Q가 정답 분포 P를 얼마나 잘 근사하는지 판단.즉, KL 발산은 교차 엔트로..
-
Stable Diffusion Basemodel 로컬에서 사용하기
개기다양한 이미지 생성 AI들이 있지만 대부분 한정된 토큰으로 유료화.이미지 생성 모델을 돌리기 위한 하드웨어를 갖추고 있음.Stable Diffusion 소개개발사 : Stability AILicense : CreativeML Open RAIL+-M License허깅페이스 링크 : https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0소스 코드 : https://github.com/Stability-AI/generative-models stabilityai/stable-diffusion-xl-base-1.0 · Hugging FaceSD-XL 1.0-base Model Card Model SDXL consists of an ensemble of..
-
Proximal Policy Optimization Algorithms(28 Aug 2017)
*원문 논문 아카이브https://arxiv.org/abs/1707.06347 Proximal Policy Optimization AlgorithmsWe propose a new family of policy gradient methods for reinforcement learning, which alternate between sampling data through interaction with the environment, and optimizing a "surrogate" objective function using stochastic gradient ascent. Whereas standararxiv.org1. Introduction 최근 신경망을 활용한 다양한 강화 학습 기법들이 제안. ..
-
CHAPTER 10. 고급 GAN(Part 1.)
10.2 ProGANNVIDIA Labs가 GAN의 훈련 속도와 안정성을 향상하려고 개발.전체 해상도 이미지에서 바로 GAN 훈련하는 대신 4 x 4 저해상도 이미지로 훈련한 다음 점진적으로 추가.후술할 StyleGAN의 기반.10.2.1 점진적 훈련GAN 은 생성자와 판별자가 두 개의 독립적 신경망 구축해 서로 이기기 위한 싸움.생성자가 처음부터 고해상도 이미지에서 고수준 학습으로 작동해 속도 느림.=> 저해상도 이미지로 경량 GAN 훈련 후 점진적 해상도 높임(이미지 보간 사용).이 후 잠재 입력 잡음 벡터 z를 4 x 4 x 3의이미지로 변환하도록 생성자 훈련.판별자는 4 x 4 x 3 입력 이미지를 스칼라 예측으로 변환. 4 x 4 모든 이미지를 학습하고 8 x 8 이미지를 학습. -> 신경망에 ..
-
U-Net: Convolutional Networks for BiomedicalImage Segmentation(18 May 2015)
* 원문 논문 아카이브https://arxiv.org/abs/1505.04597 U-Net: Convolutional Networks for Biomedical Image SegmentationThere is large consent that successful training of deep networks requires many thousand annotated training samples. In this paper, we present a network and training strategy that relies on the strong use of data augmentation to use the available annotated arxiv.org0. Abstract깊은 네트워크의 성공적인 ..
-
CHAPTER 9. 트랜스포머
9.1 소개2017년 구글 브레인에서 발표한 논문이 어텐션 개념을 대중화.복잡한 순환 구조나 합성곱 구조가 필요하지 않고 어텐션 메커니즘에만 의존하는 '트랜스포머'로 강력한 신경망 구축.RNN은 한 번에 한 토큰씩 시퀀스 처리 => 트랜스포머가 단점 극복. 9.2 GPT오픈 AI에서 2018년 6월 발표한 논문 "Improving Language Understandiong by Generative Pre-Training"에서 GPT 소개.GPT는 사전 훈련 과정 동안 다음 단어 예측하도록 사전 훈련 -> 언어 모델링.사전 훈련된 모델을더 작고 작업에 특화된 데이터 셋 사용하여 미세 튜닝 및 파라미터 수정.ex. 분류, 유사성 점수매기기, 질의 응답. 9.2.2 어텐션* 해당 개념들은 제가 리뷰한 논문 '..
-
서피스 랩탑 7 언박싱
학창 시절에는 부모님이 사주신 LG 노트북(혹은 gram)을 주로 사용했다.학업용으로 사주셨기 때문에 내 입맛은 그다지 들어가지 않았다.그렇게 군침을 흘리던 나는 대학에 들어가 내 돈으로 노트북을 샀다.유니크하지 하지만 튀진 않고, 한눈에 들어오지는 않지만 한 번쯤은 뒤돌아보게 되는 그런 테크템을 좋아하는 나의 심장을 두들기는 제품을 CES에서 발견했다.ASUS ZenBook Duo대학생인 나에게 최고급 모델은 부담스러웠고 엔트리 모델을 구매했다.영롱한 듀얼 스크린에서 오는 압도적 감성.가난한 자취생, 한솥 도시락 돈치 고기고기 먹을 돈으로 돈까스 도련님 사 먹어가며 할부금을 갚아 나갔다.ZenBook Duo는 영화관, 코딩 머신, 과제 머신, 추억 저장소가 되었고 나에게 상장, 성적 장학금, 졸업장을 ..
-
CHAPTER 8. 확산 모델
8.2 잡음 제거 확산 모델잡음 제거 확산 모델의 핵심 아이디어는 연속해서 매우 조금씩 이미지에서 잡음을 제거하도록 딥러닝 모델 훈련.8.2.2 정방향 확산 과정정방향 확산 : 원본 이미지 X_0를 많은 단계에 걸쳐 점짐적으로 잡음을 추가해 표준 가우스 잡음과 구별할 수 없게 만듬.=> T 단계에 걸쳐 잡음을 추가했을 때 X_T의 평균은 0이고 단위 분산.* 평균 0 : 추가된 잡음이 데이터의 평균 값을 변화시키지 않고 데이터의 중심을 이동시키지 않음.* 단위 분산 : 추가되는 잡음의 변동 폭이 일정해 모든 단계에서 동일하게 유지.이미지 X_t-1에 분산 β_t를 갖는 소량의 가우스 잡음을 추가해 새로운 이미지 X_t 생성하는 함수 q 정의 가능.* β_t는 정방향 확산 과정에서 각 타임 스텝 t에 추가..
-
CHAPTER 7. 에너지 기반 모델
에너지 기반 모델은 물리 시스템 모델링에서 핵심 아이디어를 차용한 광범위한 생성 모델 분야. 실숫값의 에너지 함수를 0과 1 사이로 정규화하는 함수인 볼츠만 분포로 어떤 이벤트의 확률을 표현할 수 있다는 것. 7.2 에너지 기반 모델(Energy Based Model)에너지 기반 모델은 볼츠만 분포를 사용해 실제 데이터 생성 분포를 모델링. => 0과 1 사이로 정규화.E(x)는 샘플 x의 에너지 함수(혹은 점수).신경망 E(x)를 훈련시켜 가능성 높은 샘플은 낮은 점수(0), 가능성 낮은 샘플은 높은 점수 출력(1).(에너지를 다 써야 좋은 샘플이다!)이러한 방식의 두가지 문제점.점수가 낮은 샘플(그럴듯한 샘플)은 어떻게 생성할까?p(x)가 유효한 확률분포여야 하는데 분모의 적분이 어려움. => 에너지..
-
Attention Is All You Need(2 Aug 2023)
* 원문 논문 아카이브https://arxiv.org/abs/1706.03762 Attention Is All You NeedThe dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a newarxiv.org0. Abstract주요 시퀀스 변환 모델은 복잡한 순환 신경망이나 합성곱 신경망을 기반에 두고 인코더와 디코더를 ..
-
CHAPTER 6. 노멀라이징 플로 모델
노멀라이징 플로 모델은 자기회귀 모델처럼 다루기 쉽고 명시적인 데이터 생성 분포 p(x)를 모델링 할 수 있다. 또한 VAE처럼 데이터를 간단한 분포에 매핑한다. 다만, 매핑 함수는 반전 가능하게 제약을 한다.6.2 노멀라이징 플로 모델VAE : 인코더를 학습해 샘플링이 가능한 단순한 분포로 매핑. -> 디코더를 학습해 단순한 분포에서 복잡한 분포로 매핑.=> 인코도와 디코더는 완전히 다른 신경망.노멀라이징 플로 모델 : 디코딩 함수는 인코딩 함수의 역함수여서 빠르고 다르기 쉬움.=>신경망은 기본적으로 반전 가능한 함수 아님!* 역함수 : y = x에 대칭이며 본함수의 x, y의 자리를 바꾸면 됨.6.2.1 변수 변환가역 함수(invertible function) : 모든 z를 이에 해당하는 x로 다시 ..
-
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding(24 May 2019)
* 원문 논문 아카이브https://arxiv.org/abs/1810.04805 BERT: Pre-training of Deep Bidirectional Transformers for Language UnderstandingWe introduce a new language representation model called BERT, which stands for Bidirectional Encoder Representations from Transformers. Unlike recent language representation models, BERT is designed to pre-train deep bidirectional representations from unlaarxiv.org 0. Abst..
-
CHAPTER 5. 자기회귀 모델
5.2 LSTM 네트워크 소개RNN이란?순차 데이터를 처리하는 순환 층(셀).특정 타임 스텝에서 셀의 출력은 다음 타임 스텝 입력의 일부분.매우 간단하며 tanh 함수 하나로 구성(-1 ~ 1 스케일).그레디언트 소실 일어나 긴 시퀀스에는 부적합.=> LSTM이 문제 해결.5.2.2 텍스트 데이터 다루기이미지와 텍스트 데이터의 차이점.텍스트는 개별적인 데이터 조각이지만, 이미지는 픽셀의 연속적인 색상위의 한 점. 개별 픽셀의 그레디언트를 계산하면 역전파가 쉽지만, 텍스트는 어려움.텍스트는 시간차원이 있고 공간차원이 없지만 이미지는 반대. 단어 사이에는 의존성이 있지만 이미지는 모든 픽셀 동시 처리 가능.텍스트는 개별 단위 변화에 민감하나 이미지는 아님. 픽셀 하나가 달라져도 이미지는 큰 변화가 없지만 문..
-
CHAPTER 4. 생성적 적대 신경망
생성적 적대 신경망(Generative Adversarial Network)의 발견은 생성 모델링의 역사에서 중요한 전환점.4.1 소개GAN은 생성자와 판별자라는 두 적대자 간의 싸움.생성자 : 랜덤한 잡음을 원본 데이터 셋에서 생성한 것처럼 보이는 샘플로 변환.판별자 : 샘플이 원본 데이터 셋에서 나왔는지, 생성자의 위조품인지 예측.=> 둘을 번갈아가며 훈련.4.2 심층 합성곱 GAN(DCGAN)생성자의 마지막 층에서는 시그모이드보다 tanh를 사용.=> 더 강한 그레디언트를 제공.* 시그모이드 : (0, 1) 사이의 값을 출력.* 하이퍼볼릭탄젠트 : (-1, 1) 사이의 값을 출력. 4.2.2 판별자판별자의 목표는 이미지가 진짜인지 가짜인지 예측.=> 지도 학습의 분류 문제.* 마지막 합성곱 층에서 ..
-
CHAPTER 3. 변이형 오토인코더
변이형 오토인코더는 현재 생성 모델링 분야의가장 기본적인 딥러닝 구조.3.2 오토인코더인코딩 : 네트워크 이미지 같은 고차원 입력 데이터를 저차원 임베딩 벡터로 압축.디코딩 : 네트워크 임베딩 벡터를 원본 도메인으로 압축 해제.(원본 임베딩이 없는 위치에서도 재구성 가능)오토인코더 : 인코딩, 디코딩 작업을 수행하도록 훈련된 신경망.3.2.3 인코더입력 이미지를 잠재 공간 안의 임베딩 벡터에 매핑.스트라이드 2를 사용해 각 층에서 출력 크기를 절반 줄이고 채널을 늘려 점진적 고수준 특성 학습.=> 표준 합성곱 층3.2.4 디코더전치 합성곱 층(transposed convolutional layer)디코더의 가장 큰 특징.표준 합성곱 층과 원리는 동일하지만 입력 텐서의 높이와 너비를 두배로 늘림.Strid..
-
CHAPTER 2. 딥러닝
2.1 딥러닝용 데이터정형 데이터 : 많은 머신 러닝 알고리즘이 입력 데이터로 활용.비정형 데이터 : 이미지, 오디오, 텍스트와 같이 태생적으로 특성의 열로 구성할 수 없는 데이터.=> 데이터의 구성 요소가 고차원 공간에서 의존성을 띄고 픽셀, 문자는 독자적 정보. -> 간단한 분류 모델말고 딥러닝이 필수.* 통계학에서의 출력은 '응답 변수', '종속 변수', 머신러닝 분야에서는 '타깃'.2.2 심층 신경망딥러닝 = 심층 신경망2.2.1 신경망이란?심층 신경만은 층을 쌓고, 층은 유닛을 가지며, 이전 층의 유닛과 가중치로 연결.=> 층의 모든 유닛이 이전 층의 모든 유닛과 연결되는 완전연결층(Fully connected layer) 혹은 밀집층(Dense).각 유닛은 입력의 가중치 합에 비선형 변환을 적..