Python Basics for AI(3-1) Data structure > #### stack(LIFO, 후입선출) > #### Queue(FIFO, 선입선출) > #### set(집합) > #### collections.deque rotate, reverse 등 Linked list의 특성을 지원 list보다 효율적인 자료구조를 제공, 처리속도 ...
Python Basics for AI(4-2) Module and Project > conda create -n my_project(이름) python=3.9(버전) conda activate my_project conda deactivate def getbinarynumber(decimal_number : int): assert isinstance...
01 Introduction to PyTorch > #### 강의 소개 이번 강의에선 딥러닝 프레임워크의 종류와 PyTorch의 기본적인 작동 구조에 대해 학습합니다. 우리는 딥러닝의 모든 수식과 연산을 직접 개발하기에는 어려움이 있어 이를 손쉽게 개발할 수 있도록 제공되는 딥러닝 프레임워크를 사용합니다. PyTorch는 TensorFlow와 함께 가장 대...
04강 AutoGrad & Optimizer(colab) > ##### 강의 소개 이번 강의에선 Pytorch의 Module, Parameter와 Backward 과정 - Optimizer에 대해 학습합니다. nn.Module을 통해 기본적으로 PyTorch에 구현되어 있는 네트워크 텐서 모듈들을 살펴보고 nn.Parameter이 Module 내부에서 어떤...
06 모델 불러오기(colab) > #### 강의 소개 이번 강의에선 PyTorch 모델 저장 및 불러오는 방법과 이어 학습하기(Transfer Learning)를 학습합니다. state_dict의 의미와 모델의 파라미터를 여러 정보들과 함께 저장하고 불러오는 법을 배우고 전에 학습되어 있는 모델을 활용하는 법을 배웁니다. 본 강의에서 배운 것을 통해 L...
08 Multi-GPU 학습 > #### 강의 소개 PyTorch에서 Multi GPU를 사용하기 위해 딥러닝 모델을 병렬화 하는 Model Parallel의 개념과 데이터 로딩을 병렬화하는 Data Parallel의 개념을 학습합니다. 이를 통해 다중 GPU 환경에서 딥러닝을 학습할 때에 효율적으로 하드웨어를 사용할 수 있도록 하고, 더 나아가 딥러닝 학...
_링크: colab _ function > ### torch.gather() > ### torch.einsum() torch.nn > ### torch.nn.Module(doc) > ### torch.nn.Sequential([doc](https://pytorch.org/docs/stable/generated/torch.nn.Sequential.ht...
1-1 Welcome to Visualization (OT) 시각화는 다양한 요소가 포함된 Task 목적: 왜 시각화하는지 독자: 시각화 결과는 누구를 대상으로 하는지 데이터: 어떤 데이터를 시각화할 것 인지 스토리: 어떤 흐름으로 인사이트를 전달할 것
3-1 Text 사용하기(colab) > #### bbox > #### legend > #### Ticks & text ![](https://images.velog.io/images/redgreen
5-1 Polar Coordinate(colab) >* 극 좌표계를 사용하는 시각화 R(거리), Theta(각)을 이용하여 plot 회전, 주기성 등을 표현하기에 적합 을 추가하여 사용 scatter, line, bar 모두 가능 Radar Chart 극 좌표계를 사
01 딥러닝 기본 용어 설명 - Historical Review 02 뉴럴 네트워크 - MLP (Multi-Layer Perceptron) 02 - 실습 MLP 구현(colab) 기본 과제] MLP Assignment([colab)
03 Optimization > #### bagging vs boosting https://medium.com/analytics-vidhya/ensemble-models-bagging-boosting-c33706db0b0b Gradient Descent Methods Stochastic gradient descent : update every sing...
07 Sequential Models - RNN > ### - Vanilla RNN(Recurrent Neural Network) long-term dependencies가 약함 > ### - LSTM(Long Short Term Memory) forget gate: 버릴 정보를 결정함 input gate: cell state에 저장할 정보를 결정함 ...
6-1 Interactive Visualization > #### 대표 python 라이브러리 Plotly 통계, 지리, 3D, 금융 시각화 등 제공 plotly.express: seaborn과 유사하게 사용가능 D3기반 Bokeh matplotlib 문
6-1 Interactive Visualization > #### 대표 python 라이브러리 Plotly 통계, 지리, 3D, 금융 시각화 등 제공 plotly.express: seaborn과 유사하게 사용가능 D3기반 Bokeh matplotlib 문
03 Linux & Shell Command >### Linux 서버에서 자주 사용하는 OS 오픈소스 안정성, 신뢰성, 유닉스(stability, reliability) 쉘 커맨드, 쉘 스크립트 CLI: Terminal, Command Line Interface
04 Docker > #### 가상화란? : 개발할 때, 서비스 운영에 사용하는 서버에 직접 들어가서 개발하지 않음. Local 환경에서 개발하고, 완료되면 Staging서버, Production 서버에 배포 : 개발을 진행한 Local 환경과 Production 서버
Albumentations: augmentation tool Dataset 구조 DataLoader
07 Training & Inference 1 Loss > * Focal Loss : Class Imbalance 문제가 있는 경우, 맞춘 확률이 높은 class는 조금의 loss를, 맞춘 확률이 낮은 class는 loss를 훨씬 높게 부여 Label Smoothing Loss : Class targeet labeld를 Onehot으로 사용하기 보다는 조금...
09 Ensemble >* Variance가 높은 경우 -> Bagging기법 활용 Bias가 높은 경우 -> Boosting기법 활용 Model Averaging(Voting) > * Hard Voting : 다수결 Soft Voting : 예측값 평균 Cross Validation >* train set과 validation set을 바꾸어가며 성능...
tmux >* #### 설치방법 [sudo] apg-get install tmux 명령어 생성된 tmux 세션은 컴퓨터 재부팅시 전부 사라짐 이름 지정하여 세션 생성 tmux new -s $session_name 기존 생성되어있는 세션 접속 tmux att
tmux >* #### 설치방법 [sudo] apg-get install tmux 명령어 생성된 tmux 세션은 컴퓨터 재부팅시 전부 사라짐 이름 지정하여 세션 생성 tmux new -s $session_name 기존 생성되어있는 세션 접속 tmux att
04 Sementic Segmentation 픽셀단위로 여러 카테고리로 분류 의료영상, 자율주행, computational photography 등에 사용 Fully Convonlutional Networks(FCN) > 임의의 사이즈의 영상을 사용해도 호환성이 높음 sementic segmentation을 위한 end-to-end 구조 공간정보를 고려하...
Gradient ascent - image synthesis(참고블로그) > Loss? reularization은 $l2-norm$ 처음엔 dummy image를 모델에 input gradient ascent에 따라 input이미지가 $class$에 맞게 변화함 C
1 Instance segmentation > https://towardsdatascience.com/review-deepmask-instance-segmentation-30327a072339 개체(instance) 별로 사물을 segmentation하는 방법 1.1 mask R-CNN > _https://lilianweng.githu
1. Conditional Generative Model > 확률모형으로 $P(X|sketch\;of\; a\; bag)$ 추정 $P(high\;resolution\;audio|low\;resolution\;audio)$ : 낮은 퀄리티의 오디오를 높은 퀄리티의 오디오로 변환 $P(English | Chinese)$: 다른 언어로 변환 $P(a\;full...
1. image & text modal 1.1 joint embedding > 이미지로 가까운 태그를 찾거나, 태그로 가까운 이미지를 찾을 수 있다. 유사한 이미지와 텍스트의 embedding거리를 가깝게하고, 유사하지 않은 embedding들은 멀어지게하는 방법 ![](https://images.velog.io/images/redgreen/post/6
1. 3D가 사용되는 곳 > * AI driving AR / VR 3D printing medical applications 2. 3D 표현 방법 > 3. 3D dataset > * ShapeNet: 51,300 3d models / 55 categories PartNet: useful for segmantation, 573,585 part instan...
1. History > 2. Evaluation > mAP(mean Average Precision) : 각 클래스당 AP의 평균 Precision : $TP \over All \; Detections$ Recall : $TP \over All \; Ground \; truth$ PR Curve :
1.Neck > backbone의 마지막 feature map만 사용하던 기존의 방법과 달리 각 feature map마다 RoI를 얻음 큰 feature map일 수록 작은 범위(작은 객체)를 보고 작은 feature map일수록 큰 범위(큰 객체)를 본다고 함 --> 다양한 크기의 객체를 더 잘 탐지하기 위해서 Neck이 필요함, 작은 객체를 잘 탐지 ...
1. Background > Two-stage Detectors : image - Region Proposal - Classification - pred 1) Localization (후보영역찾기) 2) Classification (후보영역 분류) : 속도가 느림 One-stage Detectors : image - Conv layer - featu...
1. EfficientNet > 기존 방법론에서는 heuristic하게 모델의 구조를 변환하여 사용하였음 어느 정도 이상의 크기가 되면 더 이상의 성능향상은 없고 속도만 느려짐 Width Scaling 작은 모델에서 주로 사용됨 ex. Mobilenet, MnasNet wide한 네트워크는 미세한 특징을 잘 잡아내는 경향이 있고, 학습이 쉬움 극단적으로 넓...
1. Cascade RCNN 1.1 motivation > IoU threshold를 몇으로 두냐에 따라 object detection 결과가 달라진다. 실험을 위해 IoU threshold(u)를 0.5, 0.6, 0.7로 설정한 후 RPN를 통과한 IoU와 Head를 통과한 IoU를 비교하였다고 한다. 그 결과 1) input IoU가 낮을 때에는...
오픈소스 annotation 툴이 크게 3종류가 있다고 한다. 프로젝트 시 사용할 일이 있을 것 같아 강의 내용을 정리해보았다.장점: 1) 설치가 용이 2) python으로 작성되어 있어, 기능 추가가 가능 3) polygon, circle, rectangle,
1. FCN의 한계점 > 1. 객체의 크기가 크거나 작은경우 예측을 잘하지 못하는 문제 큰 object의 경우 지역적인(local) 정보만으로 예측 같은 Object여도 다르게 labeling 작은 object 무시 2. object의 디테일한 모습이 사
AvgPooling부분이 사라지고, 4가지 dilated conv를 가지는 branch형태로 바뀜ASPP: Atrous Spatial Pyramid Poolingdilation rate가 작은 layer은 상대적으로 작은 object에 집중하고, dilation rat
U-Net Intro
Production(real world)환경에 모델을 사용할 수 있도록 배포하는 것머신러닝모델 -> 현실세계 사용=서비스화input에 대해 output을 반환크게 아래와 같은 serving이 존재 1) Online serving 2) Batch serving
Voila > 간단한 대시보드 구축 모델을 개발한 후 사람들과 테스트할 수 있는 프로토타입을 만들 때 사용
Voila의 장점: 노트북에서 쉽게 효율적으로 프로토타입을 만들 수 있음. 단, 레이아웃잡기는 어려움다른 조직의 도움없이 빠르게 웹 서비스를 만드는 방법데이터 분석가가 웹 서비스를 작업하는 FLOWStreamlit의 대안 1) R의 Shiny 2) Flask,