분류 전체보기
-
CutPaste : self-supervised Learning for Anomaly Detection and Localization전반적인 딥러닝 기법 2022. 9. 21. 17:14
한동안 논문 및 학회 준비로 바쁜 삶을 보냈다. 그러던 도중 기업들도 서치를 해보았는데 역시나 대부분의 제조업 회사들은 이상치 탐지 알고리즘 프로젝트를 진행하고 있었다. 이상치 탐지는 언제 한번 깊게 공부해보고 싶은 분야였기 때문에 관련 논문 하나를 공부해보았으며, 이번 포스트에서는 오랜만에 딥러닝 기법에 대한 소개를 하고자 한다. CutPaste : self-supervised Learning for Anomaly Detection and Localization 이 논문은 2021년 비교적 따끈따끈하게 나왔다. CVPR에서 Google Cloud AI Research 팀이 발표한 이 논문은 사실 간단한 아이디어이지만 매우 실용적이며 훌륭한 결과를 갖고 있다. 먼저 논문 제목을 살펴보자면, "Self-S..
-
시스템 품질 변화로 인한 사용자 불편 예지 AI 경진대회대외활동 2022. 8. 18. 03:42
오늘 포스트에는 데이콘에서 주관하고 LG AI Research에서 주최하였던 2021 시스템 품질 변화로 인한 사용자 불편 예지 AI 경진대회에 참가하였던 후기를 다루겠다. 참고로 해당 대회에서는 0.83441의 최종점수로 상위 13%를 차지하였으며 관련 코드는 아래 Github 주소를 보면 된다. https://github.com/JoyceWLee/Dacon-predict_dissatisfaction GitHub - JoyceWLee/Dacon-predict_dissatisfaction Contribute to JoyceWLee/Dacon-predict_dissatisfaction development by creating an account on GitHub. github.com 나는 정형 데이터의 ..
-
KU 매디컬 해커톤대외활동 2022. 8. 18. 02:33
뒤늦게 올리는 포스트 이지만.. 2019년 건국대학교에서 개최한 KU Medical Hackathon에 참가했었다. 해커톤은 더 클래식 500에서 진행되었으며 무박 2일동안 여러 참가자들이 한 공간에 모여 작업을 하였다. 심사 기준은 1. 고객가치 구현 : 30%, 2. 실제 구현 가능성 : 30%, 3. 파급 효과 : 30%, 4. 해커톤 참여도 : 10%였다. 우리는 여기서 AI 심리분석 시스템인 Mental Illnes Customized Analysis MICA를 제시하였다. MICA의 등장 배경은 다음과 같다. 통계청 자료에 따르면 인구 10만명 당 자살사 수는 한국에서 2017년 24.3명으로 줄어들었지만 2018년 26.6명으로 다시 급증하였다. 또한 의료기관 진료만 집계했을 때 2012년에..
-
Graph attention network (GATs)2022_Project 2022. 4. 14. 15:47
우리가 머신러닝 분야에서 주로 사용하는 Convolutional Neural Network (CNNs)는 data representation이 그리드 형 구조를 지닌다는 전제를 갖고 있다. 이러한 네트워크는 모든 input position 별로 같은 로컬 필터를 재사용하여 학습을 시켜준다. (Convolution이 각 stage 별로 input feature들에 대해 어떻게 일어나는지를 상상하면 된다.) 하지만 모든 데이터들이 이러한 grid-like structure을 가지는 것은 아니다. 상당수의 데이터는 불규칙적인 domain에 존재하며 3D meshes, social networks, brain connectomes 등이 바로 그러하다. 이러한 데이터는 주로 graph의 형태로 표현가능하다. 여기..
-
Multi GPU 사용하기 및 GPU hang 문제 해결리눅스(Ubuntu) 2022. 4. 6. 18:51
GPU 한개만을 이용해서 deep learning code를 돌릴 수 있지만, 보다 더 나은 성능을 위해 multi GPU를 사용해야하는 상황이 올 수 있다. 사실 multi GPU를 사용하도록 하는 코드는 간단한데 이는 아래와 같다. 1. .py 코드로 돌리는 경우 (1) .py 상에서 모델을 지정해줄 때, 다음과 같이 nn.DataParallel을 사용하여 모델을 랩핑해준다. PyTorch는 기본적으로 하나의 GPU만 사용하기 때문에 DataParallel 을 이용하여 모델을 병렬로 실행해 다수의 GPU 에서 작업을 수행한다. model = torch.nn.DataParallel(net).cuda() (2) Terminal에서 .py 코드를 돌릴때 명령어 앞에 CUDA_VISIBLE_DEVICES를 ..
-
Planning by Dynamic Programming (by Silver)Deep Reinforcement Learning 2022. 3. 29. 20:25
오늘 포스트에서는 Dynamic Programming 관점에서 Prediction 및 Control 문제에 대해 간략하게 소개하도록 하겠다. Dynamic Programming이란, 쉽게 설명하자면 한번에 풀기 어려운 큰 문제를 작은 여러 문제들로 나눠서 푸는 것을 의미한다. Subproblem으로 나눈 후, 그 작은 문제들에 대한 해답을 찾고 그 해답들을 모아서 큰 문제를 해결한다. Dynamic Programming 방법론이 되기 위해선 아래와 같은 2가지 조건이 필요하다. 1. Optimal Substructure 전체 큰 문제에 대한 obtimal solution이 subproblem들로 나뉠 수 있어야 한다. 2. Overlapping subproblems 한 subproblem을 풀면 그 문제..
-
Warning message 무시하는 방법전반적인 딥러닝 기법 2022. 3. 28. 16:27
1. Ignore Warning message import warnings warnings.filterwarnings(action='ignore') 2. Reset warnings.filterwarnings(action='default') 3. Temporarily suppress stderr import os import sys sys.stderr = open(os.devnull, "w") # silence stderr sys.stderr = sys.__stderr__ # unsilence stderr
-