Deep learning
-
[딥러닝] imbalanced data 학습Deep learning 2022. 9. 21. 23:38
Imbalanced data 학습 방법 기계학습 알고리즘들은 각 클래스의 비율이 비슷한 상황을 가정하기 때문에, 클래스가 불균형한 dataset의 경우 전체적인 데이터에 대해 제대로 학습하지 못하고 큰 비중을 차지하는 클래스에 편향되어 학습한다. 그 결과 정확도는 높으나 정작 원하는 항목에 대해서는 분류해내지 못하는 클래스 불균형 현상이 발생된다. 예를 들면 병원에서 암 진단검사를 받는 환자, 네트워크의 침입탐지, 은행에서의 사기 탐지와 같은 dataset에서 클래스 불균형 현상이 발생한다. 클래스의 불균형을 해소하기 위한 기법으로는 Data Resampling, K-fold cross validation, Weight balancing등이 있다. Resample the training set 불균형한 ..
-
[딥러닝] continual learning ( incremental learning, lifelong learning ) : EWC, VCL, AGS-CL, GEM, A-GEM, ER, PNN, DEN, Piggyback, CPGDeep learning 2022. 9. 21. 15:12
continual learning, incremental learning, lifelong learning 은 기술적으로 목표가 같은 learning 방법들입니다. 단어 그대로 조금씩 차이는 있지만 같은 learning 방식이라고 이해해도 괜찮아 보입니다. 이들은 공통적으로 dataset 여러 개를 순차적으로 학습하는데 (sequential learning) 학습을 진행할수록 성능이 좋아지는 good forward tranfer와 학습이 진행되더라도 이전 dataset 을 기억하는 forgetting 방지를 목표로 합니다 meta learning이나 transfer learning 과 같은 다른 learning 기법들과 혼동된다면 아래 글을 참고하면 좋습니다 https://u-b-h.tistory.com..
-
[딥러닝 vision] NeRFDeep learning 2022. 9. 21. 10:12
'NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis' 2020년 ECCV virtual object를 만들어 내는 방법 3D 물체를 보는 시점에 따라 물체를 잘 표현시켜주기 위한 방법 우리가 움직일 때마다 우리의 시점이 바뀌게 됩니다. 우리의 눈 혹은 카메라가 움직일 때마다 물체가 보이는 면이 달라지고 색도 달라기게 됩니다. 이를 잘 모델링하는 것이 어려운 문제인데 이를 하고자 시도한 것이 NERF이고 좋은 성능으로 최근 가장 핫한 모델입니다. 한 카메라 위치와 방향에서 물체가 있는 모든 pixel로 ( ex 1024x1024 pixel)로 ray를 쏩니다. 하나의 ray를 들여다보면 ray가 지나가는 곳에서 sample poi..
-
[딥러닝 경량화] 모델, 네트워크 경량화 : Quantization - PTQ, QATDeep learning 2022. 9. 3. 08:25
DNN model 크기가 커지는 것을 연산기 성능 향상이 따라가지 못하고 있습니다. 이렇게 빠르게 model이 커짐에 따라 inference, training cost가 너무 커지고 있어 이를 해결하기 위해 모델 경량화 기법들을 사용하고 있습니다. 모델 경량화 기법은 크게는 4가지로 볼 수 있습니다 pruning 0에 가까운 애들 다 지워버리자. fine grained pruning할 떄는 unstructural pruning하면 연산에서 이득이 적음.. 그래서 structural pruning을 많이 사용함 ( good for SIMD ) quantization symmetrics vs assymetric quantization ( symmetrics 이 연산이 간단 ) 극단적으로가면 BNN quant..
-
[딥러닝] Graph Neural Networks(GNN) 2 - GNN : GCN, subgraph embedding, graph attention network(GAT), HAN, GTNDeep learning 2022. 8. 11. 00:45
https://u-b-h.tistory.com/7 에서 shallow encoder node embedding 방법인 random walk, Deep walk, node2vec, metapath2vec을 다루었습니다. 이 글은 그 shallow encoder 방식의 한계점을 보완하고자 더 DNN 스러운 deep한 방법인 GNN 에 대해서 설명하고자 합니다. GNN은 graph structure data를 위한 DNN입니다. 더 쉽게 이전 글에서 다뤘던 node embedding 으로 설명하면, GNN에 graph를 넣으면 각 node들의 embedding vector가 출력으로 나옵니다. 즉 node embedding task에서 GNN은 embedding vector를 만들어내는 function이라고도..
-
[딥러닝] Graph Neural Networks(GNN) 1 - Node embedding : background ~ random walk ~ deepwalk ~ node2vecDeep learning 2022. 8. 10. 23:43
이 글에서는 기본적인 GNN에 대한 내용과 shallow encoder node embedding 방법인 random walk, Deep walk, node2vec, metapath2vec을 다루고려고 합니다. image, text 등 graph와는 다른 data들에 대한 deep learning model들도 task에 관계없이 data에서 feature를 추출하는 것을 학습하는 것이 핵심입니다. GNN도 기본적으로 이들과 동일하게 graph 라는 data에서 feature를 학습하는 방법입니다. 학습된 모델로 입력 graph에서 뽑은 feature를 가지고 task에 맞게 사용하게 됩니다. graph 에서의 ML task - Node classification : node class 예측. node ..
-
[딥러닝] continual learning ( incremental learning, lifelong learning ) vs transfer learning vs multi task learning vs meta laerning 차이점, 비교Deep learning 2022. 7. 23. 11:18
우선 continual learning 에 대해 설명하기에 앞서 adaptive machine learning 이라는 큰 분야에서 사용되고 있는 learning 방법들의 이름이 많아 헷갈리지 않기 위해 이를 정리한다. - continual learning, incremental learning, lifelong learning 은 기술적으로 목표가 같은 learning 방법들이다. 단어 그대로 조금씩 차이는 있지만 같은 learning 방식이라고 이해해도 괜찮아 보인다. 이들은 공통적으로 dataset 여러 개를 순차적으로 학습하는데 (sequential learning) 학습을 진행할수록 성능이 좋아지는 good forward tranfer와 학습이 진행되더라도 이전 dataset 을 기억하는 forg..
-
[딥러닝] generative model : auto regressive(AR) model, VAEDeep learning 2022. 7. 12. 13:28
generative model 은 classification model과 달리 정답이 명확하지 않은데 어떤 것을 기준으로 학습하게 되나 ? 학습의 기준은 object function으로 표현된다. generative model의 objective function은 true data distribution과 generated distribution의 차이이다. 두 distribution 간 차이를 구하는 방법은 여러가지가 있지만, KL divergence를 사용했다. KL divergence 를 최소만드는 식을 풀다보면 - cross entropy loss를 최소화 하는 식이 유도되고,여기서 true data distribution p*를 모르니, true data distribution에서 sample되..