▶자기지도학습(Self-supervised Learming) 이번 글에서는 unlabeled 데이터가 많을 때 효과적인 학습 방법인 자기지도학습에 대해 알아보겠습니다 :) 1. 등장 배경 요즘은 국가에서나 각종 대회를 통해 인공지능 학습용 데이터를 개방하곤 하는데요. 그들 입장에서도 이미지 데이터를 얻었다면 그 다음은 label을 다는 작업일 겁니다. 저도 매일 그냥 쓰는 입장이라 별 생각 없이 썼는데 말이죠..? 만약에 다음과 같은 이미지들의 label을 단다고 해봅시다. 아래 이미지에서 'eclipse'와 'car' label을 달기는 뭐 어렵지 않을 것입니다. 그렇지만 이미지가 1000만개 정도 주어지고 label을 달아라..하면 힘이 들 수도 있습니다. label을 다는 것이 상당히 어려운 경우 ..
▶GAN(Generative Adversarial Networks) 지난 글 마지막에 Autoencoder의 성능이 좋지 못해 그 대안으로 나온 네트워크들이 있다고 했었습니다. 오늘은 그 중에서 GAN(Generative Adversarial Networks)에 대해 알아보겠습니다. 1. GAN 왜 나온건데? Autoencoder 복습 차원 축소의 한 방법 Autoencoder는 차원 축소의 딥러닝 버전! 네트워크 layer들을 점점 축소되는 형태로 인코딩, 다시 확대하는 형태로 디코딩 이 과정에서 latent Code라고 하는 것으로부터 다시 원래 데이터로 충분히 잘 복원을 할 수 있다고 한다면 결국 input의 데이터가 잘 축소된 것으로 볼 수 있음! Discriminative Model (Discr..
▶오토인코더(Autoencoder) 이번 글에서는 딥러닝의 임베딩이라고도 말할 수 있는 오토인코더에 대해서 알아보겠습니다 :) 1. 등장 배경 지난 번 RNN 구현해보는 글에서 임베딩을 통해 차원을 축소해서 학습을 진행했었음 (layer를 하나더 쌓음으로써) 차원축소는 비지도 학습 종류 중 그래서 차원축소는 왜 하는건데..? 차원의 저주 input 데이터의 차원이 굉장히 크다고 하면 이 데이터로 학습을 하는 것은 어려움 생성 모델 차원축소를 함으로써 데이터가 가지고 있는 잠재적인 정보 추출 가능 그 잠재적인 정보를 바탕으로 또 다른 형태의 데이터 생성 가능 데이터 증강(Data Agmentation)과도 관련 있음 우리의 목표 우리는 가능한한 차원을 적게 만들어야 함(적은 차원의 벡터로 만들어야 함) 그..
▶전이학습(Transfer Learning) 오늘은 전이학습(Transfer Learning)에 대해서 알아보려고 합니다 :) 1. 등장하게 된 이유 근래에 개발된 CNN 모델들을 설명하면서 ImageNet 데이터셋을 기반으로 하는 대회들이 있는데 이 대회들을 통해 다양한 네트워크 모델들이 개발되었음 이때 사용된 데이터셋(ILSVRC 2012 기준) 1,000개의 classes, 125만개의 이미지 다 해서 겅의 150GB의 데이터 이러한 이미지 데이터셋을 바탕으로 여러 CNN 모델들이 나온 것임 여기서 우리가 생각해 보아야 할 것 우리가 직접 이런 이미지를 분류한다고 했을 때 충분히 실행시킬 수 있는 하드웨어적인 성능을 뒷받침해줄 수 있는 환경이 되어있는가? class에 포함되어 있지 않은 이미지가 주..
▶ RNN을 위한 PyTorch 구현 RNN 학습 과정 t-1 시점의 hidden state와 t 시점의 input vector를 받음 → 학습 → 나온 결과물로 output vector를 도출 RNN 학습 ← U, W, V 이 3가지의 weight를 학습을 하는 것 Text generation 이번 글에서 해볼 학습은 Text generation 입니다. 예를 들어 'hello'라는 단어가 있다고 했을 때, 모델의 input으로 'h', 'e', 'l', 'l', 'o' 하나하나씩 들어오게 됩니다. 이때 input이 'h'일 경우 output은 그 다음 글자 'e'가 됩니다. 'e'가 input으로 들어오게 되면 output은 'l'이 되야겠죠? 이러한 input과 output을 알고 있다고 했을 때 ..
▶RNN(Recurrent Neural Network) 1. RNN 등장 배경 연속적인 데이터(Sequence data)를 다뤄야 한다면? 🙍🏻♀️그래서 기존 모델들로는 sequnce data를 학습할 수가 없어서 RNN이 나온건가요? 👩🏻💻기존 모델들로도 해결할 수 있기는 합니다만..... Snapshots을 이용하는 방법..? 각 시점에 대한 데이터를 끄집어내서 그때에 대한 output을 각각 도출 하지만 sequence data는 트랜드성이 존재(=dynamic behaviors) snapshots 형태로 학습을 하게 되면 dynamic한 hehavior들을 포함할 수 없음 즉, 이전 데이터들과의 연관성은 학습하지 못한 모델이 되게 됨 Sliding predictor를 사용한 방법..? 아래와 ..
- Total
- Today
- Yesterday
- react-query
- HTML
- rtl
- 프론트엔드 기초
- 프론트엔드
- react
- 디프만
- 스타일 컴포넌트 styled-components
- frontend
- 프론트엔드 공부
- next.js
- 파이썬
- 머신러닝
- 데이터분석
- jest
- 딥러닝
- 리액트
- 프로젝트 회고
- TypeScript
- Python
- 인프런
- 리액트 훅
- 자바
- JSP
- 타입스크립트
- 자바스크립트
- testing
- CSS
- styled-components
- 자바스크립트 기초
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |