ALL100 BPE(Byte Pair Encoding), WordPiece Tokenization BPE에 대해 정리하기 전에 Tokenization에 대해 간단히 정리를 하고 넘어간다. Tokenization Tokenization은 Text를 임의로 지정한 단위, 즉 token으로 나누는 작업이다. NLP 모델을 학습시킬 때 토큰화된 단어의 개수가 모델 성능에 다양한 영향을 미치며, 여기서 특히 Out-of-Vocabulary(OOV)는 큰 문제다. Tokenization은 크게 3가지 유형으로 분류한다. 1. Word based Tokenizer : 말 그대로 단어 단위로 토큰화를 한다. - 하지만 단어 단위로 토큰화를 하면 신조어를 처리하지 못하거나 OOV와 같은 문제가 있다. 2. Character based Tokenizer : 영어 기준 알파벳, 한국어 기준 초성 중성 종성 혹은 음절 단.. 2024. 1. 25. MDGAN : Mask guided Generation Method for Industrial Defect Images with Non-uniform Structures 코드 구현 및 리뷰 논문 : https://www.mdpi.com/2075-1702/10/12/1239 구현 코드 : https://github.com/hits-gold/MDGAN-pytorch/tree/main?tab=readme-ov-file 구현하게 된 배경 인턴으로 근무하던 당시 팀에서 반도체 불량 검출 과제를 하고 있었고, 이 후에도 같은 task를 다수 맡을 예정이었다.이에 '제조업계에서 사용되는 불량 검출 과제'에 선제적 대응을 할 요인을 찾아 대비하는 차원에서 1인 프로젝트를 시작하게 되었다. 선행연구조사를 통해 결함 이미지에 대한 classification이나 segmentation과 같은 task를 진행할 때 일반적으로 결함 이미지가 적어 데이터 불균형이 있다는 것을 알게 되었다. (불량률을 줄이기 위해 .. 2024. 1. 24. Transformer Pytorch 코드 리뷰 기본 Transformer 구조 Pytorch에는 Transformer가 구현되어 있어, 이를 활용한 기본 구조를 만들면 다음과 같다. # nn모듈을 활용한 Transformer 기본구조 import torch import torch.nn as nn import torch.optim as optim class Transformer(nn.Module): def __init__(self, num_tokens, dim_model, num_heads, num_encoder_layers, num_decoder_layers, dropout_p, ): super().__init__() # Layers self.transformer = nn.Transformer( d_model=dim_model, nhead=num_h.. 2024. 1. 24. EfficientDet CV 분야에서 모델의 효율성이 점점 더 중요해지고 있다. EfficientDet은 모델의 효율성을 상승시키기 위한 몇 가지 최적화 방법을 소개한다. Preview 시간이 흐르면서 detection 모델들의 성능이 계속 향상되었지만, 대부분 많은 파라미터를 가지고, 복잡한 구조로 다양한 Device에 적용이 어려웠다. 자율주행 차량 등 제약사항이 많은 곳에 사용되는 효율적인 모델들에 대한 필요성이 대두되었지만 그 요구사항들을 충족시키기 위해서는 해결해야할 근본적인 문제들이 있었다. 높은 정확성과 더 나은 효율을 동시에 달성하는 것이 가능한가? EfficientDet은 이 문제를 해결하기 위해 성능은 유지하면서 효율성을 증대시킬 수 있는 해결책을 두 가지 제시했다. 1. Efficient multi-scal.. 2024. 1. 24. YOLO v4: Optimal Speed and Accuracy of Object Detection Main Ideas 본 논문에서는 모델의 성능을 개선하기 위한 접근법에 따라 다양한 방법을 조합하여 최고의 성능을 보이는 YOLO v4를 제안한다. New Ideas and Modifications Mosaic Mosaic는 본 논문에서 네 개의 학습이미지를 섞는 독자적은 Data augmentation 방법이다. 이미지를 섞음으로써 객체가 인식되는 일반적인 맥락에서 벗어난 관점을 제공한다. SAT(Self-Adverarial Training) 또 다른 독자적인 Data augmentation 방법으로, forward와 backward 두 번의 stage를 걸쳐 수행되는 Data augmentation 방법이다. 첫 번째 stage에서는 원본 이미지를 변형시켜, 이미지 내에 객체가 없는 것처럼 보이는 a.. 2024. 1. 24. 이원분산분석(Two-way ANOVA)(feat.Python) 이원분산분석은 집단의 평균에 영향을 주는 요인이 2개인 경우에 사용한다. 또한 반복이 없는 경우와 반복이 있는 경우로 나뉘는데, 샘플 수가 1개면 반복이 없는 것이고, 2개 이상이면 반복이 있는 것이다. 반복이 없는 경우를 보면 A, B 두가 요인별로 샘플이 하나씩만 있는 것을 알 수 있다. 1. 반복이 없는 경우 이원분산분석은 요인이 2개이므로 가설을 세울 때 요인 별로 따로 세워야해서 2개의 가설을 세워야한다. 또한 이원분산분석의 분산분석표에는 두 번째 요인에 해당하는 값들이 추가된다. 이에 F검정통계량 값도 두 개가 나오고, 이 것으로 두 개의 가설을 검정한다. 여기서 a는 요인A에 의한 집단 수, b는 요인B에 의한 집단 수를 나타낸다. 2. 반복이 있는 경우 반복이 있는 경우는 두 요인에 의한 .. 2024. 1. 23. 일원분산분석 (One-way ANOVA)(feat. Python) 일원분산분석은 평균에 영향을 주는 요인이 1개인 경우에 사용하는 분산분석이다. 예를 들어 4개의 기계별로 생산량을 조사할 때는 집단이 4개이지만 집단 별 영향을 주는 요인은 "기계" 하나이기 때문에 일원분산분석을 사용한다. 만약 기계와 기계를 다루는 작업자 5명을 조사한다고 했을 때는 집단의 수와 상관없이 평균에 영향을 주는 요인은 "기계"와 "작업자"이기 때문에 이원분산분석을 사용한다. 일원분산분석에서는 귀무가설과 대립가설을 세울 때 집단의 수를 맞춰야 한다. 위의 예제처럼 기게가 4대 일 때는 가설을 μ4까지 표현해야한다. 또한 분산분석에서는 여러 계산이 헷갈릴 수 있어 분산분석표를 기준으로 삼아서 하는데, 일원분산분석의 표는 아래와 같다.( 일원분산분석은 크게 "반복이 같은 경우"와 "반복이 다른 .. 2024. 1. 23. 분산분석(ANOVA) 분산분석(ANOVA) - 분산분석은 3개 이상 다수의 집단을 비교할 때 사용하는 가설검정이다. 다수 집단 비교에서 t-test를 여러 번 사용하면, 다중검정문제 발생으로 1종 오류가 증가하게 된다. 따라서, 다수 간의 평균 비교에서 ANOVA를 통해 유의한 차이를 검정한다. A - ANOVA 결과, 그룹 사이의 차이가 없음 B - ANOVA 결과, 그룹 사이의 유의한 차이가 존재 분산분석의 종류 1. 일원분산분석 (One-way ANOVA) - 독립변인 1개와 종속변인 1개일 때, 집단 간의 유의미한 차이 검정 - ex) 각 국가별 학습기술에 따른 성적비교 (독립변인-학습기술, 종속변인-성적, 집단-국가) 2. 이원분산분석(Two-way ANOVA) - 독립변인 2개와 종속변인 1개일 때, 집단 간의 유.. 2024. 1. 23. M2Det(M2Det: A Single-Shot Object Detector based on Multi-level Feature Pyramid Network) FPN의 한계 FPN은 classification task를 위해 설계된 backbone network로부터 Multi-scale feature maps를 추출하는데, 이를 통해 구성된 Feature Pyramid는 객체 인식 task를 수행하기 위해 충분히 representative하지 않다. Feature Pyramid의 각 Level의 feature map들은 주로 backbone network의 single-level-layer로부터 구성되어있고, 이로 인해 객체의 외형에 따른 인식 성능의 차이가 발생한다. 일반적으로 더 깊은 layer의 high-level feature는 classification task에 적합하고, 얕은 Layer의 low-level feature는 localization .. 2024. 1. 22. 이전 1 2 3 4 5 6 ··· 12 다음