마인즈앤컴퍼니 53

[RL] 1-1. 강화학습이란?

안녕하세요. 마인즈앤컴퍼니 (이하 MNC) 입니다. :-) MNC의 새로운 'RL' 시리즈를 소개드립니다. 테크리더 명대우 파트너님의 지도 아래, MNC 의 Data scientist 인 최창윤 매니저가 뜻을 모아 강화학습에 대해 연구를 진행하고 있습니다. 몇년 전부터 강화학습에 대한 공부를 해왔지만 내용을 정리하지 않아 다시 공부하는 경우가 많았는데요! 이번 연구를 진행하면서 정리할 필요성을 느꼈고, 해당 내용들을 블로그에 공유드리기로 하였습니다. 연구 배경 해당 연구는 딥러닝 비전 검사 기술을 로봇 팔과 접목하여 실제 산업에 적용하기 위해 진행하게 되었습니다. 바닥과 닿아있는 부분이나 복잡한 물체는 카메라로 촬영할 수 없는 영역이 존재하고 이러한 상황에서도 제품을 효과적으로 검사하기 위해 그리퍼가 달..

[캐글탐험대] PetFinder 대회 (2편)

안녕하세요. 1편에 이어 Kaggle Petfinder 대회 수상후기와 인사이트를 정리해드리려고 합니다! 저번 편에서 Transformer 모델에 대해서 소개해 드렸는데요, 이번 편에서는 Multi-head 모델과 BCE Loss 를 활용하여 학습했던 이야기를 해보려고 합니다. Insight 2 - Multi-head model is powerful! 그리스 신화에 나오는 케르베로스처럼, 하나의 몸에 여러 개의 머리가 달린 모델을 만들면 더 강력하지 않을까요? 실제로 이번 대회에서는 하나의 backbone (feature extractor)에 5개의 Head (predictor)를 붙여 사용했습니다. 이와 같은 Multi-head 모델을 4개 사용해서, 총 20개의 Head의 예측 결과를 앙상블 했습니다..

[캐글탐험대] PetFinder 대회 (1편)

안녕하세요. 마인즈앤컴퍼니에서는 2021년 9월부터 2022년 1월까지 개최된 Kaggle PetFinder Pawpularity Competition에 참여해 3,537팀 중 97등 (Top 3%)로 은메달을 따냈습니다! 이번 레포트에서는 PetFinder Competition에 참여하면서 얻을 수 있었던 몇 가지 흥미로운 인사이트들을 공유하려고 합니다. 캐글 대회에 참여하고자 하는 국내 많은 데이터 사이언티스트들에게 도움이 되었으면 합니다. 그럼 시작하겠습니다! 대회 소개 A picture is worth a thousand words. But did you know a picture can save a thousand lives? 이번 대회는 보호소와 구조 단체에서 보호되고 있는 애완 동물을 입양할..

[ML101]#9. 차원 축소(1)

이번 글에서 다룰 주제는 지금까지 공부했던 방법론들과는 조금 다른 목적을 가진 방법론을 다루고자 합니다. 그 주인공은 바로 "차원 축소(Dimesionality Reduction)"입니다. 차원 축소란 쉽게 이야기하면 중요한 변수들을 취하여 우리가 다루는 변수의 수를 줄이는 프로세스입니다. [ML101-#1. Machine Learning?] 을 통해 차원 축소에 대해서 개괄적으로 소개를 해드렸는데요, 조금 더 자세히 살펴보도록 하겠습니다. 차원이란 무엇일까요? 이미 앞선 글들을 통해 계속 공부해오셨다면 쉽게 받아들이시고 있으실 거라고 생각됩니다. 차원이란 변수, 피처(feature), 열(column)과 같은 의미로 이해하시면 됩니다. 그렇다면 이 차원을 왜 축소시켜야 하는 것일까요? 반대로, 차원이 ..

AI Study/ML101 2022.04.26

[ML101]#8.Clustering (2)

지난글에서는 대표적인 Unsupervised learning 모델의 하나인 clustering의 개요, 유형에 대해 알아봤습니다. 이번 글에서는 clustering의 대표적인 모델인 K-means clustering / Mean-shift clustering / DBSCAN (Density-based spatial clustering of applications with noise) / EM clustering using Gaussian mixture 에 대해서 좀 더 자세히 알아보고자 합니다. 1. K-means clustering K-means clustering은 대표적인 분할 군집 기법입니다. 군집 별로 centroid (중심)을 가지고 있으며, centroid에 가까운 data들 끼리 묶어 군집..

AI Study/ML101 2022.04.26

[ML101] #7. Clustering (1)

지난 글까지 Regression에 대해 공부했습니다. Regression의 개념과 유형, Regression 모델의 성능을 높이는 데 사용되는 방법, 성능을 측정하는 방식들을 말이죠. 이번 시간부터는 Clustering에 대해 배워볼 예정입니다. [ML101] #1. Machine Learning? 에서 Machine Learning을 크게 Supervised Learning, Unsupervised Learning, Reinforcement Learning 으로 구분할 수 있다는 내용 기억하시나요? 지난 글까지 살펴본 Regression이 Supervised Learning의 대표적인 모델이었다면 오늘부터 살펴볼 Clustering은 Unsupervised Learning의 대표적인 모델입니다. 말 그..

AI Study/ML101 2022.04.26

[ML101] #6. Overfitting

앞의 과정들을 통해 머신러닝이 어떻게 작동하는지 살펴보았습니다. 머신러닝 모델이란 실제 데이터를 대체할 수 있는 모형이고 이러한 모델을 통해 실제 데이터 없이도 현실 세계에서 활용할 수 있습니다. 그런데 이 모델은 정교해지기 위해 복잡하게 만들면 학습한 데이터와 조금만 다른 데이터가 들어와도 큰 오차를 만들 수 있고, 반대의 경우는 변수들과의 관계를 충분히 설명할 수 없게 되는 Trade-off 문제가 발생하게 됩니다. 이러한 문제를 수학적으로 표현한 것이 Bias-Variance(편향-분산) Trade-off 입니다. 조금 더 자세히 알아보겠습니다. Bias-Variance Trade-off 를 설명하는 유명한 그림 중 하나 입니다. 사격 게임을 할 때 가장 높은 점수를 받는 방법은 나에게 주어진 총알..

AI Study/ML101 2022.04.26

[ML101] #5. Confusion matrix

최근 인공지능에 대한 뜨거운 관심을 뒷받침하듯 기업, 나라에서 앞다투어 인공지능 해커톤, 경진대회, AI Challenge를 주체하고 있습니다. 대회에선 우수한 문제 해결 알고리즘을 개발한 팀에게 상금/보상을 부여하죠. 그렇다면 "우수한 알고리즘" 은 어떻게 선정되는 걸까요? 보통 인공지능 경진대회에선 문제별 평가지표를 함께 공개하며, 평가지표에 따라 높은 예측도를 가진 모델을 우수한 알고리즘으로 선정합니다. 인공지능을 활용하여 해결할 수 있는 문제가 무궁무진하듯 성능 역시 다양한 척도로 평가되어야 합니다. 그렇다면 평가 척도는 어떤 유형이 있으며, 어떻게 계산되는 걸까요? 모델을 평가하기 위한 평가 척도 (Evaluation Metric)에는 크게 분류(Classification) 척도와 예측(Regr..

AI Study/ML101 2022.04.26

[ML101] #4. Gradient descent

[ML101] 시리즈의 세 번째 주제는 경사 하강법(gradient descent)입니다. 지난 시리즈에서 손실 함수(loss function)를 통해 모델의 예측값이 실제값과 차이가 나는 정도, 즉 오차값을 측정하는 방법들을 알아보았습니다. 우리가 가지고 있는 데이터들을 잘 설명할 수 있도록 손실 함수, 비용 함수(loss function, cost function), 또는 목적 함수(objective function)를 이용하여 가장 최적의 모델을 만듭니다. 이 과정은 최적화(optimization)라고도 하는데, 여기에서 사용되는 방법이 경사 하강법입니다. 경사 하강법은 손실함수의 결과값(오차값, 그림의 y축)이 최소값이 되는 최적인 모델의 파라미터 θ(x축)를 찾는 과정입니다. 그림에서 볼 수 있..

AI Study/ML101 2022.04.26

[ML101] #3. Loss Function

[ML101] 시리즈의 두 번째 주제는 손실 함수(Loss Function)입니다. 손실 함수는 다른 명칭으로 비용 함수(Cost Function)이라고 불립니다. 손실 함수는 고등학교 수학 교과과정에 신설되는 '인공지능(AI) 수학' 과목에 포함되는 기계학습(머신러닝) 최적화의 기본 원리이며 기초적인 개념입니다. 이번 시리즈에는 이 "손실 함수"의 개념과 종류에 대해 알아보도록 하겠습니다. 위의 그림은 일반적인 통계학적 모델의 형태로 입력 값(Input x)이 들어오면 모델을 통해 예측 값(Output y)이 산출되는 방식입니다. 그러면 이 예측 값이 실제 값과 얼마나 유사한지 판단하는 기준이 필요한데 그게 바로 손실 함수(Loss function)입니다. 예측 값과 실제 값의 차이를 loss라고 하며..

AI Study/ML101 2022.04.26