Study

    [ML] Activation Function : Sigmoid / Softmax

    이번에는 머신러닝의 기본 핵심 개념인 Activation Function(활성화 함수) 중 Classification의 Output을 위해 자주 사용되는 Sigmoid와 Softmax에 대해 정리를 해보도록 하자. 우선 활성화 함수란, 간단하게 설명하면 신경망의 출력(Output)을 결정하는 하나의 식이다. 신경망에서는 노드에 들어오는 값들에 대해 바로 다음 레이어로 전달하는 것이 아니라, 활성화 함수를 통과시킨 후 전달한다. 활성화 함수는 입력 신호의 총합을 출력 신호로 변환하는 함수로, 입력 받은 신호를 얼마나 출력할지 결정하고 네트워크에 층을 쌓아 비선형성(Non-Linear)을 표현할 수 있도록 해준다. 활성화 함수는 주로 비선형인데, 그 이유는 선형 함수를 사용할 시 층을 깊게하는 의미가 줄어들..

    [Computer Vision] Image Segmentation이란?

    새롭게 준비할 연구 주제로, 차량 부분 영상에서 파손 부위를 인식 및 표시할 수 있는 시스템을 구현해보려고 한다. 조금 찾아보니 쏘카에서 개발한 내용이 있던데, U-Net을 이용한 Image Segmentation 기법을 사용했다고하여 Image Segmentation에 대한 정리를 해본다. Image Segmentation은 영상에서 인간이 직관적으로 분류할 수 있는 개체별로 Class나 Label을 나누는 것을 말한다. Segmentation은 Classification처럼 영상 자체를 하나의 범주로 분류하는 것이 아니라, 영상의 픽셀 하나하나에 Label을 나누어 하나의 픽셀이 어떤 레이블에 속할지 분류하는 것을 뜻한다. 위와 같은 영상에서 자전거 선수의 손 부분을 확대해보면 수 많은 픽셀들로 이루..

    [YOLOv8] 새로운 YOLO 모델, YOLOv8 Review

    2022년에 YOLOv5를 이용해 프로젝트를 진행했었는데, 꽤 괜찮은 성능을 보여 만족했던 기억이 있다. 특히 Object Detection 관련하여 논문이나 연구들을 찾아보면 YOLOv3나 v5를 활용한 사례들이 많이 보이는데, YOLO 특유의 사용자 편의성과 준수한 성능 때문이 아닐까 생각한다. YOLOv3, YOLOv5 모델 둘다 ultralytics에서 개발했고 꽤나 인기가 많아 아직까지도 많이 사용되고 있는데, (v6는...) 이번에 ultralytics에서 새로운 버전인 YOLOv8을 배포하여 리뷰해볼까 한다. 참고로 YOLO 모델 같은 경우엔 v4나 v7 같은 차기 버전들도 있지만 내가 알기론 개발자가 다른것으로 알고 있어 ultralytics에서 개발한 v8이 제일 의미가 있다고 생각한다...

    [ResNet] Deep Residual Learning for Image Recognition

    ResNet은 Computer Vision의 CNN 모델들의 발전에 있어 중요한 한 획을 그은 모델이다. 지금이야 우리가 CNN 모델을 구성할 때 모델의 Complexity에 따른 Overfitting이나 Optimization을 걱정해야하지만, 당시에는 모델이 더 복잡해지더라도, 그러니까 모델의 Layer 개수가 늘더라도 성능 향상에 있어 뚜렷한 효과를 보기 힘들었다고 한다. 그러한 당시의 문제점을 해결한 모델이 바로 ResNet이다. ResNet은 2015년에 논문으로 처음 세상으로 나왔다. 당시 최대의 성능을 보여주던 CNN 모델은 2014년에 개발된 GoogLeNet이었고, 이 모델의 Layer 개수는 22개에 불과했다. 그래도 GoogLeNet은 Inception이라고 불리는 신경망을 Propo..