Depth Anything(2024) 논문 리뷰
·
Paper Reviews
Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data용어 정리monocular depth estimationfoundation modelmodels which are pretrained on vast amount of datasemi-supervised learningunlabeled data를 활용하는 학습방식. labeled data로 학습된 teacher model을 가지고, unlabeled data의 pseudo depth map을 만들어, 새로운 student model에 labeled, unlabeled data를 supervised learning으로 학습시키는 방식.zero-shot depth estimationtrain ..
Stereo Vision 정리 글 공유
·
AI/Computer Vision
* Computer Vision 관련 논문을 읽으면서 나오던 생소한 단어들을 공부할 수 있음! * 스토리와 인과관계가 명확한 아주 감사한 글임! https://johnwlambert.github.io/stereo/
Learning "HOW TO LEARN"
·
카테고리 없음
혼자 무언가를 공부하다보면 '내가 이걸 잘 배우고있는게 맞나?' 라는 생각이 든다. 배우는 법에 대한 호평을 받는 강의가 Coursera에 무료로 올라와 있어 이를 수강 및 정리해 보려 한다. 목적: 강의를 들으며 얻은 인사이트 공유 예상 결론: 내가 배운 점을 설명 가능하며, 이 강의가 필요할 사람을 구체적으로 인지하고 글로 풀 수 있길 바란다.
PyTroch DataLoader의 병렬 프로세싱!
·
AI/Deep Learning
다른 분이 작성한 PyTorch 코드를 보던 중, Dataset.__getitem__(index) 메서드에서 하드, 서버에 저장된 데이터를 불러오도록 구현한 것을 확인하였다. __getitem__(index) 는 학습 과정에서 사용되는 매서드인데, 학습 과정에서 batch를 만들기위해 매번 하드에 접근한다면 큰 시간적 비효율이 있을텐데 왜 이렇게 다들 구현을 한건지 궁금해졌다. 그래서 찾아보던 중 PyTroch의 똑똑한 기능을 알게되어 공유해본다. PyTrorch의 DataLoader는 기본적으로 병렬 프로세싱을 지원해 다음과 같이 CPU, GPU 자원을 시간효율적으로 사용할 수 있도록 지원한다. 여기서 병렬 프로세싱은, 아래처럼 GPU가 forward와 backward를 수행하는 동안, CPU는 디스크..
Tensorflow Custom Loss Function 만들기
·
AI
https://dacon.io/en/codeshare/4444
Problem Solving ?
·
카테고리 없음
Kaggle Competition을 진행하는 요즘, 나는 어디서부터 어떻게 건드려야 할지 모르는 기분에 압도당한적이 정말 많았다. 그러던 중, 우연히 기업 채용 공고에서 "Problem Solving"이란 키워드를 보았다. 주먹구구로 접근하는 듯 한 나의 모습에 초라함을 느끼던 찰나, '대학교 때 교양수업을 듣던 것 처럼, 인터넷에 있는 엔지니어링 Problem Solving 강의를 들어보면 어떨까?' 생각을 해보았다. 하나씩 영상을 정리해서 올려보겠다 :) 영상은, 우리가 어떤 문제를 마주했을 때 그 문제를 어떻게 풀어야 하는지에 대해 말한다. 화자인 Ariana Glantz는 "solution minded"라고 한다. 이는 마인드셋으로, 모든 문제에는 해결책이 존재하고, 우리가 그곳에 도달할 길을 가..
Batch Normalizaion(2015) 설명
·
Paper Reviews
왜 사용할까? batch normalization을 사용하는 이유는 1)학습 효율향상, 2)Regularization 때문입니다. 다시말해, batch normalization을 적용 시 1)모델이 훨씬 빠르게 학습되고 2)general feature또한 더 잘 찾아내 성능도 더 좋아진다고 생각해 볼 수 있을 것 같습니다. 어떻게 가능할까? 어떻게 이것이 가능할까요? 딥러닝의 학습 방식에는 한가지 문제가 있습니다. 바로 학습이 되면서 레이어들의 parameter가 계속해서 업데이트 되기 때문에, 각 레이어들의 output 또한 매번 다른 분포를 출력하게 되어, 그 값의 범위가 들쭉날쭉 해진다는 점 인데요.(internal covariate shift) 딥러닝은 레이어의 출력에 비선형함수를 달기 때문에 출..
Deep Networks with Stochastic Depth, ECCV 2016
·
Paper Reviews
*논문 요약 *해당 논문은 dropout이 나온지 2년 뒤, resnet이 나온지 1년 뒤인 2016년에 나온 논문입니다. - 매우 깊은 신경망을 학습하는 것에는 여러 난관들이 따른다. - gradient vanishing, forward flow diminishing, slow training time 등의 문제들이 있다. - Training 할 때, 각 mini-batch 마다, 레이어의 부분집합들을 랜덤하게 drop 하고, 이전 입력을 출력으로 forward 시켜주면, - training time을 확연히 줄어들고, 거의 모든 데이터셋에서 test error을 많이 개선하며, residual networks 의 depth를 훨씬 깊게 만들어 기존보다 더 좋은 결과가 나옴을 확인할 수 있다. on p..
1D Convolutional Neural Networks and Applications - A Survey
·
Paper Reviews
1D CNN 이란 녀석의 동작과 특징 등이 궁금해 공부해 보며 해당 2019년 서베이 논문을 읽고 3줄로 요약해 보았다. 동작은, 짧은 1D 필터가 긴 1D데이터 막대기를 지나가며 convolution 연산을 수행한다고 생각하면 된다. - 1D data 에서 feature을 추출한다. - 2D CNN에 비해 상대적으로 얕은 깊이와, 작은 크기의 필터로 매우 좋은 성능을 보인다. - 그래서 computational cost가 정말 적게 든다. 모바일 기기에서 CPU로 충분히 동작할 정도이다. https://www.kaggle.com/competitions/asl-signs/discussion/406684 Google - Isolated Sign Language Recognition | Kaggle www...
.parquet 포맷
·
소프트웨어
캐글 공모전을 공부하던 중, 처음보는 parquet이란 데이터타입을 봤다. .parquet 타입은 하둡에서 칼럼방식으로 저장하는 저장 포맷이다. 압축율이 높아서 효율적으로 활용되는 저장방식이라고 한다. 향후 대용량 데이터를 다룰 때 유용할 것 같다. 데이터 출처: (내가 지금 공부중인 competition) https://www.kaggle.com/competitions/asl-signs/ 의 데이터타입을 보다가 다루게 됨. 공부 출처: https://butter-shower.tistory.com/245
일을 잘한다는 것 이란?
·
Insights/서평
https://recruit.navercorp.com/cnts/people_detail?id=7 NAVER Careers People recruit.navercorp.com "일을 잘한다는 것은 무엇일까요. 일을 하는 동력이 자기 자신한테 있는 사람이 일을 잘하는 거 같아요. 다른 사람 때문에 일을 하지 않는 사람이라고 할까요. 동력이 자기 자신한테 있다는 건 이 일을 되게 사랑하고 있다는 증거이기도 하고, 잘하려고 스스로 노력을 하기 때문에 그 결과로 일을 잘하는 걸로 비춰지는 것 같고요. 그리고 회사에서는 벌린 일을 잘 마무리하는 것 자체도 굉장히 중요하다고 생각해요. 벌리기는 쉬운데 끝까지 마무리하는 게 프로페셔널로서의 조건인 것 같고요."
Cross Entropy Loss with Softmax 미분에 대한 이해
·
AI/cs231n
https://madalinabuzau.github.io/2016/11/29/gradient-descent-on-a-softmax-cross-entropy-cost-function.html Gradient descent on a Softmax cross-entropy cost function In this blog post, you will learn how to implement gradient descent on a linear classifier with a Softmax cross-entropy loss function. I recently had to implement this from scratch, during the CS231 course offered by Stanford on visua..
산술평균, 기하평균, 조화평균 의 이해
·
AI/Computer Vision
https://gaussian37.github.io/math-pb-averages/ 산술, 기하, 조화 평균gaussian37's bloggaussian37.github.io 해당 블로그의 포스팅을 보고 확실하게 이해할 수 있었다.평균값에 대해 더 깊게 이해할 수 있었고, 데이터를 더 넓은 관점으로 해석할 수 있을 것 같다.
재미로 보는 딥러닝 발전 히스토리!
·
Insights
AI대학원 입시준비를 하며 딥러닝 기본 개념들을 자세히 보게 되었는데, 알고리즘들의 발전 순서를 이렇게 나열해보니 재미있어서 글로 작성해보았다. 오래된 순으로 정리해보았다! 출처는 인하대학교 도서관 여러 책들로부터다ㅋㅋ 아이디어가 처음 제시된 년도, 논문이 출판된 년도를 딱히 구분하진 않았으니, 세부적 년도에 오류가 있을 수 있으나, 흐름을 캐치하는데는 문제가 없을거다! Binary Neural Network (McCulloch & Pitts) 1943 - 인간 신경망에서 영감을 받아 범용 계산장치의 구조로 모델링한, 돌이켜보면 첫 인공신경망이라 불리는 모델. - 저 시대에 아무도 실용성을 논하지 않았을 것 같은데, 개인적으로 탐구정신이 너무 멋있다. Perceptron (Frank Rosenblatt)..
LayerNorm 과 BatchNorm 의 차이
·
AI/Deep Learning
표본추출된 mini-batch내부 각 feature 값들의 mean, std를 구해 정규화를 진행해준다. https://docon.tistory.com/37: 더 자세한 분석입니다! Batch에 어떤 크기의 데이터들이 있든 관계없이, 샘플단위로 normalization을 시켜준다. 요점은, 내가 가져온 데이터 혹은 모델 내부에서의 latent vector가 어떤 연산을 하게되는지에 따라 적절한 Normalization 방식을 채택하면 좋을 것 같다. 예를들어, 데이터의 feature중, 특정 feature의 분포가 너무 큰 경우는 Gradient Exploading 등 학습 중 장애가 우려되기에, batch normal..