딥러닝 16

[머신러닝 - 이론] GAN (Generative Adversarial Network) (생성적 적대 신경망)

GAN은 2개의 신경망이 적대적인 관계에서 학습하는 생성 모델입니다. 앞의 글에서 소개했던 웹사이트 주소 역시 GAN을 이용해서 생성한 사람의 얼굴입니다. 1. GAN 1.1 GAN의 원리 생성망 G와 분별망 D라는 두 개의 대립 관계의 신경망을 사용합니다. 이때 G는 D를 속일 수 있을 정도로 품질이 높은 가짜 샘플을 생성해야 하고, D는 G가 만든 가짜 샘플을 높은 정확률로 맞춰야 합니다. 이때 생성망과 분별망을 나눠서 설명하자면, 생성망의 가짜 샘플 생성 분별망이 속지 않음 - 생성망의 생성 방식을 바꿈 분별망이 속음 - 생성망은 그 방향으로 학습함 분별망의 가짜 샘플 분별 분별에 실패함 - 분별망의 분별 방식을 바꿈 분별에 성공함 - 학습을 강화함 이러한 상호작용을 통해 G와 D 둘 다 뛰어나지는..

[머신러닝 - 이론] Generative Model (생성 모델)

인간의 생성 능력을 예시로 들어보자면, 처음 가본 곳의 풍경을 그림으로 그립니다. 하지만 이 그림은 비슷하게 모방할 뿐, 정확히 같지는 않습니다. 의도적인 왜곡, 도구의 한계로 추상화하는 한계가 있습니다. 이를 인공지능에 적용하면 두 가지 모델이 나옵니다. 바로 분별 모델과 생성 모델입니다. 분별 모델은 얼굴, 표정을 보고 상대의 감정을 알아보는 등 이러한 능력을 말합니다. 인공지능은 분별 능력을 중심으로 발전해서, 앞에서 공부한 SVM, MLP, CNN, LSTM, RL 등 모두 분별 모델에 해당합니다. 생성 모델은 사람의 필체를 흉내 내는 인공지능 등이 대표적입니다. 딥러닝 기반 생성 모델인 GAN이 현재는 대표적인 생성 모델입니다. https://thispersondoesnotexist.com/ T..

[머신러닝 - 이론] RNN과 LSTM

1. 시계열 데이터 시계열 데이터란 시간, 순서 정보가 들어 있는 데이터를 말합니다. 문장이 있다면 단어가 나타나는 순서가 중요합니다. 또한 일별 온도를 기록한 데이터가 있다면 날짜의 순서가 중요합니다. 이처럼 데이터에 순서나 시간이 들어가 있는 데이터를 시계열 데이터(time series data)라고 합니다. 시계열 데이터의 독특한 특성에 대해 알아보겠습니다. 요소의 순서가 중요 "세상에는 시계열 데이터가 참 많다"를 "시계열 참 데이터가 많다 세상에는"으로 바꾸면 의미가 훼손됩니다. 샘플의 길이가 다름 짧은 발음 "인공지능"과 긴 발음 "인 ~공~~~지능"이 다름 문맥 의존성 "시계열은 앞에서 말한 바와 ... 특성이 있다"에서 "시계열은"과 "특성이 있다"는 밀접한 관련성이 있음 계절성 미세먼지 ..

[머신러닝 - 이론] 딥러닝의 기본 (Fundamental of Deep Learning)

1. 딥러닝이란? 깊은 신경망은 신경망에 층을 많이 두어 성능을 높이는 기술입니다. MLP에 은닉층을 더 많이 두면 깊은 신경망이 됩니다. 구조적으로는 쉬운 개념입니다. 하지만 학습이 잘 안 되는 경향이 있습니다. 층이 깊어질수록 오류 역전파 알고리즘의 미분 값이 출력 층에서 입력 층으로 갈수록 소멸되기 때문입니다. 이를 그레디언트 소멸 문제라고 합니다. 즉 층이 깊어질수록 학습이 잘 안 됩니다. 또한 데이터 셋이 작으면 추정할 매개변수는 많아지는데 데이터는 적어 over fitting이 일어나게 됩니다. 추가적으로 계산 시간이 매우 크다는 점이 단점입니다. 이때 딥러닝은 새로 창안된 이론이나 원리는 깊은 신경망과 동일합니다. 값싼 GPU의 등장, 데이터 셋의 크기 증가, 학습 알고리즘의 발전 (ReLU..

[머신러닝 - 이론] 딥러닝 - 다층 퍼셉트론 구조, 다층 퍼셉트론의 학습 방법(Deep Learning - Multi Layer Perceptron structrue, MLP Learning method)

앞의 글을 읽으시면 이해에 도움이 됩니다. 2022.04.08 - [Computer Science/머신러닝] - [머신러닝 - 이론] 딥러닝 - 인공 신경망, 퍼셉트론과 학습 방법 (DeepLearning - Artificial Neural Network, Perceptron, Learning Method) [머신러닝 - 이론] 딥러닝 - 인공 신경망, 퍼셉트론과 학습 방법 (DeepLearning - Artificial Neural Network, P 이제부터 머신러닝의 꽃인 딥러닝에 대해 알아보겠습니다. 사실 제 생각엔 딥러닝을 하기 전에 지도, 비지도 학습을 먼저 공부하고, 수학적 이론을 쌓은 다음에 공부해야 하는 게 맞다고 생각합 hi-guten-tag.tistory.com 퍼셉트론을 이해하셨다면..

[머신러닝 - 이론] 딥러닝 - 인공 신경망, 퍼셉트론과 학습 방법 (DeepLearning - Artificial Neural Network, Perceptron, Learning Method)

이제부터 머신러닝의 꽃인 딥러닝에 대해 알아보겠습니다. 사실 제 생각엔 딥러닝을 하기 전에 지도, 비지도 학습을 먼저 공부하고, 수학적 이론을 쌓은 다음에 공부해야 하는 게 맞다고 생각합니다. 근데 시험 공부랑 겹쳐서... 어쩔 수 없이 딥러닝을 먼저 하게 되네요... 추후에 다른 머신러닝 알고리즘도 올리겠습니다. 1. 인공 신경망이란? 인간의 뇌는 신경의 망들로 이루어져 있습니다. 뉴런은 뇌의 정보처리 단위입니다. 처리한 정보를 다른 뉴런으로 옮기고, 받은 뉴런은 자신이 연산을 처리하고 또 다른 뉴런에게 보냅니다. 인간의 뇌는 고도의 병렬 처리기입니다. 하지만 컴퓨터는 아주 빠른 순차 명령 처리기죠. 아무튼 인공 신경망은 생물의 신경망에서 원리를 얻었지만, 실제 구현은 많이 다릅니다. 인공 신경망을 A..