Loading...
2024. 4. 19. 03:02

Pytorch에서 padding sequence vs. packed sequence 차이 이해하고 구현하기

https://heekangpark.github.io/ml/shorts/padded-sequence-vs-packed-sequence Padded Sequence vs. Packed Sequence | Reinventing the Wheel 문제상황 자연어와 같은 sequence 데이터들을 다루다 보면 짜증나는 요소가 하나 있는데, 바로 그 길이가 일정하지 않다는 것이다. 이미지 데이터의 경우 crop이나 resize 등으로 가로 세로 크기를 맞 heekangpark.github.io 자연어같은 sequence 데이터는 input들의 길이가 다 다른 경우가 보통이기 때문에 이것을 어떻게 처리할 지 고민할 필요가 있다. 이미지는 crop이나 resize로 이미지 크기를 전부 맞추고 진행하면, batch로 ..

2024. 4. 16. 21:13

transformer 간단요약2 - encoder, attention, positional encoding, decoder

1. encoder encoder는 self attention 구조와 feed forward Neural Network 구조의 두개의 sub layer로 구성되어 있다 단어 입력의 경우에는 먼저 embedding vector로 변환하는 것이 기본이다. 당연하지만 word embedding은 맨 밑단 첫 입력에서만 일어남 벡터 크기는 hyperparameter로 적절하게 정한다고 한다. embedding된 벡터 각각은 자기만의 경로를 따라 encoder를 지나간다 위에서 보면 첫 통과 layer로 self attention을 지나가는데 도대체 무슨 일이 일어날까? 예를 들어보면 ‘The animal didn’t cross the street because it was too tired.’을 생각해보자. 이..

2024. 4. 16. 20:42

transformer 간단요약1 - transformer의 핵심 아이디어, 무엇을 이해해야하는가

1. sequential model의 어려운 점 sequence data가 다루기 어렵다는 이유 중 input의 차원이 어느 정도인지 알기 어렵다는 점이 있었다. 추가로 시간 순서가 바뀌어서 들어온다든지 일부가 잘려서 들어온다든지 아니면 섞여서 들어온다든지 그래서 또 다루기가 어렵다 2. transformer 핵심 아이디어 위와 같은 input의 무작위성 때문에 sequence data를 다루기 어렵다는 한계를 극복하고자 등장했다. 처음 도입되었을 때는 기계어 번역 문제를 풀기 위해 도입했다. 지금은 이미지 분류, detection 등 다방면에서 활용되고 있다. sequence를 다루는 모델인데 그 동안 RNN이 재귀적구조를 활용했다면 Transformer은 attention구조를 활용했다. 3. tra..

2023. 6. 17. 01:48

object detection 모델인 RetinaNet과 DETR(DEtection TRansformer) 핵심 아이디어

1. RetinaNet 구조 backbone인 ResNet에서 feature를 뽑아감 low level feature와 high level feature를 모두 활용하기 위한 3단? Feature pyramid network 활용 심지어 multi scale object detection에 더욱 잘 대응하기 위해 각 단계에서 모두 detection을 사용 각 단계에서 2가지 branch로 들어가는데 각각 object classification과 box regression을 수행한다 ResNet에서 feature를 뽑아가면서 마지막 단계의 feature부터 low level feature를 다시 합쳐나간다 합쳐나가는건 concat이 아니라 더하기 심지어 각 단계에서 모두 object classificati..

2023. 5. 8. 03:08

NLP에서 language model의 역사 훑어보기

1. language model 앞의 주어진 문맥을 활용해 다음에 나타날 단어를 예측하는 모델 사람의 언어를 이해하는 것은 쉬운 일은 아니지만 통계적 관점, 딥러닝적 관점에서 문맥이 주어질 때 다음 단어를 잘 예측했다면 언어의 패턴을 잘 학습한 것이다. 2. 확률적 관점 언어 모델은 문장에 대한 확률을 부여하는 task 조건부확률을 이용하여 생성확률을 부여 ’오늘은 햇살이 좋다’라는 문장에 대한 확률은 ‘오늘은’이 먼저 나올 확률에 ‘오늘은’이 주어질때 ‘햇살이’가 나타날 확률에 ‘오늘은 햇살이’ 주어질 때 ‘좋다’가 나타날 확률을 곱한 것 3. RNN을 활용한 예측 x는 input이고 y는 현재 시점의 예측값, h는 각 시점에서 모델이 기억하는 잠재적인 정보 U,V,W는 RNN의 parameter 이전..

2023. 3. 2. 01:29

visual attention + visual & sound modeling 기본 개념 배우기

1. show attend and tell 입력 이미지가 주어졌을때 CNN 모델로 feature를 추출 vector로 만드는 것이 아니라, 14*14의 spatial 정보를 가지는 feature map으로 추출 그리고 feature map과 LSTM의 interaction으로 서로 feedback을 통해 attention할 위치를 추론함 각각 어디를 봐야할지 집중할 위치를 찾아 매 순간마다 단어 단위로 text를 생성 2. visual attention 사람이 이미지를 바라볼때, 전반적인 내용을 한번에 뇌에 담지는 못한다 사람은 이미지를 볼때 한곳에 시선이 오래보고있지 않고 시선을 빠르게 움직이면서 물체를 스캔하는 형태로 물체 인지를 한다. 눈을 훑어보고, 코를 보고 입을 보고 전체적인 모습을 보면서 이..