ML 🐼 20

MIM의 Masking 방법들

Notion 링크 MIM의 Masking 방법들 | Notion0. 들어가며bottlenose-oak-2e3.notion.site  0. 들어가며최근 MAE 논문과 BEVT , Beit논문을 읽으면서 self-supervised learning 학습의 방법중 Masking modeling을 통한 (정확히 말하자면 Mask Auto Encoder) 표현 학습 방법에 관심이 생겼다. 특히, MAE 에서 단순히 랜덤 마스킹을 사용한것에 반에서 Beit에서는 Block wise masking 방법을 활용하는데 이 부분에 대해서 자세히 알고 싶어졌고 추가적 여러 Masking 방법에 대해서 정리하면 좋을 것 같아서 해당 글을 작성하게 되었다.  여러 Masking 방법들을 살펴보기 전에 간단하게 왜 Masking..

[논문리뷰] Masked Autoencoders Are Scalable Vision Learners(MAE)

많은 DL 모델들이 `supervised learning` (지도학습)의 방법으로 학습되면서 좋은 성능을 보여주었다.`Label`이 있는 방대한 양의 데이터는 `LLM`과 같은 `fondation model`의 등장을 이끌어 냈고 `semi-supervised learning`과 합쳐져서 더 많은 양의 데이터로 학습이 가능해졌다. 그러나 실제적으로 라벨링을 수행하는 것은 시간과 돈이 많이 소요되는 작업이다.또한 `Vision` 분야에서 LLM과 같은 거대 모델을 만들어 내기 위해서는 수백만개의 라벨링된 이미지 데이터를 넘어서 수억 또는 수십억개의 라벨링된 이미지 데이터가 요구 된다. 오늘 살펴볼 논문 `Masked Autoencoders Are Scalable Vision Learners`는 이러한 부분..

[밑바닥 부터 식해보는 딥러닝] 01. 수치 미분과 역전파

1. 수치 미분과 역전파 | Notion 참고 자료 bottlenose-oak-2e3.notion.site 0. 들어가면서 딥러닝을 공부하다 보면 항상마주치는 개념이 있다. 딥러닝 뉴비들이 갈려나가는 첫번째 위기라고 할 수 있는 오차역전파 (backpropagation) 이다. 고등학교 이후 수학, 특히 미분과 담을 쌓은 사람이라면 또는 수포자였다면 해당 위기는 정말 큰 위기로 느껴질 것이다. 하지만 딥러닝의 핵심을 이해하기 위해서는 (오차역전파라는 개념이 존재했기 때문에 현재의 딥러닝이 가능한 것이다. 최근에는 역전파 이외에 forward-forward라는 방법도 제시되고 있다) 해당 개념을 이해하고 넘어가는 것이 필수 적이다. 이번 시간에는 역전파와 관련된 개념들을 알아보고 numpy를 활용해서 직접..

[머신러닝+선형대수] 상관관계와 코사인 유사도

통계와 머신러닝에서 가장 근본적이면서 중요한 분석 방법은 상관관계를 분석하는 것이다 상관관계를 살펴보기 위해서는 상관계수를 구하는 방법이 있다 상관계수는 -1 부터 +1까지의 범위로 표현할 수 있는데 +1은 완벽한 양의 상관관계를 나타내며, -1은 완벽한 음의 상관관계를 나타낸다. 0의 경우 선형관계가 없음을 의미한다. 1. 피어슨 상관계수 상관계수를 구하는 방법에는 피어슨 상관계수가 있다. 우선 상관계수는 -1~+1에 존재해야하기 때문에 정규화가 필요하다 피어슨 상관계수에서 정규화는 2가지 방법이 적용된다 | 각 변수의 평균 중심화 | A 벡터와 B 벡터의 상관계수를 구하려고하는데 A와 B의 단위가 다르다면 -1과 +1사이로 표현할 수 없을 것이다 이를 위해서 우리는 평균 중심화를 이용한다 말로 설명하..

[논문 리뷰] Notion 논문리뷰 링크

그동안 논문리뷰를 지속적으로 수행했지만 블로그에 정리할 시간이 없어서 따로 정리를 못하고 있었다 대신에 Notion 페이지에 목록을 만들고 내용을 정리하고 있으니 아래에 간단하게 링크를 첨부해 두겠습니다 :) 논문리뷰 Notion 링크 : https://bottlenose-oak-2e3.notion.site/Paper-Review-2c1a33832d764c45a17cb8f2b000a06a?pvs=4 Paper Review Computer Vision bottlenose-oak-2e3.notion.site

[선형대수] 기저

참고 문헌 [선형대수] 기저(basis)의 의미 기저(basis)의 의미 losskatsu.github.io 행렬과 선형변환 - 공돌이의 수학정리노트 (Angelo's Math Notes) angeloyeo.github.io 1. 좌표 평면에서 기저 행렬 변환을 이해하기 위해서는 `기저 벡터`에 대한 이해가 필요하다 위 두개의 2차원 좌표 평면이 존재한다고 가정해보자 그리고 이를 행렬로 표현 하면 아래와 같다 1번 2번 그렇다면 이 행렬들은 모두 해당 좌표 평면의 기저가 될 수 있을까? 1번의 경우 될 수 있지만 2번의 경우 불가능하다 2번의 경우 사실상 나타내는 것은 X축에 불과하기 때문이다 또한 1번의 경우는 선형변환을 통해서 좌표 평면의 모든 점을 표현할 수 있다 따라서 1번의 경우는 기저 벡터가 ..

Entropy, CrossEntropy 그게 뭔데?

본글은 순수한 의문에 의해서 작성된 글입니다 글쓴이의 부족한 수학지식에 의해서 오류가 있을 경우가 다분하니 참고해서 읽어주시길 바랍니다 딥러닝 모델을 학습하다 보면 항상 마주치는 문제가있다 물론 모델이 마주치는 문제가 아니라 모델을 작성하거나 공부하는 인간이 마주치는 문제이다 " 바로 수식이다 " 수학은 많은 사람들을 혼란스럽게 만든다 이번 글은 그런 수식에 관한 글이다 이번 글을 시작으로 다양한 딥러닝의 수식들을 정리해보려고한다 물론 당장 딥러닝 모델을 학습 시키는데 완벽한 이해는 필요없는 부분이지만 우리의 슨배님들이 모두 구현 해놓았다고 공부하지 않을 수는 없다 ✅ 정보이론 : 정보량 (Quantity of information) Entropy와 CrossEntropy를 이해하기 위해서는 우선 정보이..

[논문 리뷰] CutMix : Regularization Strategy to Train Strong Classifiers with Localizable Features

CutMix는 Data Augmentation의 방법 중 하나로 자랑스러운 우리 Naver Clova에서 작성한 논문이다. 2019년도에 나온 논문이지만 아직까지 상당한 영향을 미치고 있고 실제로 데이콘, 캐글같은 대회에서 Agumentation을 할때 무조건 등장하는 기법이다. 오늘은 이러한 CutMix의 논문인 CutMix : Regularization Strategy to Train Strong Classifiers with Localizable Features을 자세히 살펴보고 추가적인 설명과 코드를 살펴보려고 한다. 본 글은 논문의 1~3 부분까지 리뷰를 하고 있으며 4에 해당되는 실험결과 내용은 논문을 참고하기를 바란다 ✅Paper : https://arxiv.org/pdf/1905.04899..

[딥러닝]활성화 함수 (Activation)

1. Activation? 딥러닝 모델을 구성하다 보면 레이어 안에 활성화 함수(Activation)이 구성된다는 것을 알 수 있다. 그렇다면 활성화 함수는 무엇일까? 그리고 왜 사용하는 것일까? 활성화 함수는 은닉층을 통과 해서 나온 가중치 곱의 합에 '비선형성'을 추가하기 위해서 사용된다. '비선형성'을 왜 추가해야할까? 바로 모델 레이어를 깊게 쌓는 것에 의미를 부여하기 위해서이다. 쉽게 말해서 활성화 함수 위치에 선형함수를 사용하게 되면 그냥 단순한 선형분류기의 기능밖에 하지 못한다. 위의 사진을 보면 선형과 비선형의 의미를 이해할 수 있을 것이다. 선형으로 분류하는 문제같은 경우는 신경망 모델이 아니더라고 기존 머신러닝 모델로 해결가능하다. 그러나 실제 세계의 문제에서는 선형 그래프의 모양처럼 ..

[딥러닝]규제 Regularization

1. Regularization? 딥러닝 모델을 구성하다 보면 우리가 만든 모델이 실제 데이터에 잘 맞지않는 (과적합 or 과소적합) 결과를 마주치게 될것이다. 이이럴때 우리는 '규제' Regularization를 활용해서 이러한 현상을 피할 수 있는데 쉽게 설명하자면 모델에 조건들을 추가해서 어느 선을 넘지 않은 이상한 모델이 만들어 지지 않게 만드는 것이다. 그렇다면 왜 이러한 규제들을 사용할까? 앞에서 설명했듯이 과적합이나 과소적합 (Overfitting, Underfitting)을 피하기 위해서 이다. 과적합과 과소적합을 피하기 위해서 우리가 할 수 있는 방법은 크게 2가지이다. 1. DataSet의 Size를 증가한다 하지만 이러한 방법은 실제 데이터를 수집하는 환경에 제약이 있다. 또한 캐글이..