본문 바로가기

머신러닝

(118)
L1, L2 Norm, Loss, Regularization? 정규화 관련 용어로 자주 등장하는 L1, L2 정규화(Regularization)입니다. 이번에는 단순하게 이게 더 좋다 나쁘다보다도, L1, L2 그 자체가 어떤 의미인지 짚어보고자합니다. 사용된 그림은 위키피디아를 참조하였습니다. Norm 우리가 가장 쉽게 알고 있는 Norm은 절댓값입니다. Norm=절대값이 아니라, 많은 Norm 중 하나가 절댓값인거죠. |-1| = 1 이런식으로 썼었는데, 생각해보면 | ? | 속에는 단순 실수만 아니라 벡터도 들어갔었습니다. |(1,2)|이런식으로요. 그리고 이는 절댓값이 아니라 벡터의 크기 정도로 칭했었죠. Norm이란, 수학적 정의는 복잡하지만 결국 어떤 값의 크기를 계산하여, 비교가 가능하게끔하는 어떤 함수 정도입니다. 그 중 하나가 이제부터 계속 보게될 ..
이미지의 각 픽셀을 분류하는 Semantic Segmentation 학습목표 Semantic Segmentation은 각 이미지 내의 픽셀별로 픽셀이 어디에 속하는지 분류를 해결하는 문제로, 본 강의에서는 이 Semantic Segmentation의 개념을 알아보도록 하겠습니다. 이 분야는 실생활에서 의료, 교통 분야에 많이 활용되고 있습니다. 특히 자율 주행 자동차 기술에 많이 접목되어 있기 때문에 흥미를 느끼며 강의를 들으셔도 좋을 것 같습니다. 핵심 키워드 Semantic Segmentation CNN Fully Convolutional Network (FCN) Full-Resolution Residual Nets 학습하기 이번에는 Semantic segmentation을 보겠습니다 .이는 이미지가 주어졌을 때, 각 픽셀별로 어디에 속하는지 분류를 푸는 문제입니다...
Restricted Boltzmann Machine 학습목표 이번 강의에서는 대표적인 Unsupervised Learning 방법 중 하나인 Restricted Boltzmann Machine(RBM)에 대해서 해워보도록 하겠습니다. Deep Learning을 최근에 접하신 분들에겐 생소할 수 있지만 RBM 덕에 DL이 다시 활기를 띌 수 있게 되었습니다. 핵심 키워드 Restricted Boltzmann Machine(RBM) Unsupervised Learning Energy-Based Models Deep Belief Network(DBN) 학습하기 많은 분들에게 이 RBM은 조금 생소할 수 있는데, 이는 DL이 잘 활용될 수 있게 불씨를 제공한 모델입니다. 수식이 굉장히 많이 등장할 텐데, 천천히 따라오시면 충분할 것 같습니다. 우선 Energy ..
Optimization 방법론 핵심 키워드 Optimization (최적화) Gradient Descent Algorithm Adam Bactch Normalization 학습하기 기본적으로 우리는 Gradient descent를 가정합니다. Hessian 이란, 미분(기울기)의 미분값을 의미하고, Newton's method가 일종의 Hessian 을 이용한 방법론입니다. 다만 Parameter의 수가 100개라면, 1차 미분에는 100의 연산이 필요하지만, 2차 미분에는 100^2의 연산이 필요합니다. 때문에 우리는 1차 미분에 대한 정보만을 갖고있다고 가정합니다. Batch gradient descent, 예를 들어, 55000개의 데이터가 있을 때, Gradient를 계산하기 위해 전체 데이터셋을 한 번에 사용하는 것을 의미합..
Nature 논문으로 살펴보는 AlphaGo 알고리즘 핵심 키워드 AlphaGo Nature DeepMind Monte-Carlo Tree Search Policy Network, Value Network 학습하기 이번에는 AlphaGo에 대해 알아보겠습니다. 'Mastering the game of Go with deep neural networks and tree search'논문을 활용하였습니다. 이세돌과의 경기 후 AlphaGo2가 중국의 커제와 대결했는데 모두 승리했습니다. AlphaGo2에 대한 정보는 나온바가 없지만, 아마 AlphaGO와 크게 다르지 않을 것이라고 생각합니다. DeepMind는 기존에 Reinforce Traing을 통해 게임을 플레이하는 모델을 개발했었습니다. 이후 Google에서 인수하여 굉장히 성장했죠 사실 해당 논문에서..
비-수학적 특성 공학(Non-Mathematical Feature Engineering ) 앞서 특성 선택(Feature Selection)에 대한 글을 적은 적이 있는데, 막상 특성 선택 방법론 몇 가지 아는 것으로는 모델을 개선하는데 드라마틱한 결과를 얻어내는 것이 쉽지 않았습니다. 더군다나 RNN처럼 복잡한 모델의 경우에는 더더욱 앞의 방법론 대부분이 무의미합니다. 그렇다고 더이상 데이터를 정제할 방법이 없는 것이 아니겠지요. 특성을 다듬고, 선택(Selection)하고, 스케일링(Scaling)하고, 추출(Extraction)하는 것이 결국 특성 공학(Feature Engineering)의 완성입니다. 이번에는 특성을 비수학적인 방법으로 다듬는 방법에 대해 소개합니다. 특성 공학이란? 사실 대부분의 경우에 있어서, 그저 존재하던 날 것의 데이터를 그대로 모델에 주입시켜 학습한다고 좋은 ..
Overfitting을 막는 regularization 핵심키워드 Regularization Overfitting 학습하기 이번에는 레귤라이제이션을 배워보겠습니다. 이는 딥러닝뿐 아니라 머신러닝 자체에서 굉장히 중요한 영역입니다. 레귤라이제이션이란 뭘까요. 수학적 정의 자체는 저도 잘 모르겠습니다. 그러나 목적은. 명확합니다. 오버피팅이라는 현상을 막는 것이죠. 오버피팅이란 학습 데이터를 너무 믿는 것을 말합니다. 결국 학습 데이터에 과하게 최적화된 나머지, 다른 테스트 데이터에 대한 정확도가 떨어지는 것입니다. 회귀나 분류나 마찬가지입니다. 그렇다고 학습 데이터에 최적화되는 것(=트레인 정확도가 높아지는 것)이 나쁜 것이냐면, 당연히 아닙니다. 잘 맞추는데 좋은 거죠. 다만 문제는, 많은 학습 데이터가 모든 실전 데이터를 대표할 수 있을 만큼 질이 뛰어나지..
[실습] 이미지 처리 실습하기 핵심 키워드 Python 이미지 프로세싱(Image Processing) 학습하기 해당 내용은 코드로 대체합니다.