728x90
반응형

Intro to DeepLearning 6

[Kaggle Course] Binary Classification(이진 분류) - sigmoid, cross-entropy

지금까지 neural network로 'regression problems'를 어떻게 해결할 수 있는 배웠습니다. 이제 머신러닝의 또다른 골칫거리, 바로 'Classification'을 neural network에 적용해봅시다. 가장 큰 차이점은 우리가 사용했던 loss function에서, 그리고 마지막 layer에서 나온 출력값의 종류에서 찾을 수 있습니다. (저게 차이점이 아니야!) Binary Classification 두 그룹(class) 중 하나로 분류하는 것은 일반적인 머신러닝 기법입니다. 고객이 구매할 가능성이 있는지, 신용 카드 거래가 사기였는지, 우주에서 온 신호가 새로운 행성의 증거가 되는지 등, 모두 "Binary Calssification" 문제입니다. raw data에서 이 같은..

[Kaggle Course] Dropout, Batch Normalization

딥러닝의 세계에는 dense layers 외에도 더 있습니다. 12종류가 넘는 layer를 한 모델에 추가할 수도 있죠 전처리 또는 변형을 다른 방식으로 한다거나, 뉴런 간 연결 관계를 새롭게 정의할 수도 있고요 이번 시간에는 특별한 두 종류의 layers에 대해 알아봅니다. 이들은 neurons을 가지고 있지 않지만, model을 개선시켜주는 기능을 추가해주죠. Dropout Layer overfitting을 수정할 때 사용 traindata 속 가짜 패턴을 학습한 neuron으로 인해 생긴 overfitting을 처리해보려 합니다. '가짜 패턴'을 알아채기 위해선 network는 종종 특정한 가중치들의 조합들, 즉 가중치의 'conspiracy'에 의존합니다. 너무 구체적이면, 망가지기 쉬우므로 하나..

[Kaggle Course] Overfitting, Underfitting → early_stopping + capacity↑

이번 튜토리얼에서는 아래의 두 가지에 대해 배우게 됩니다. - learning curve 해석 - 그 해석을 바탕으로 model development 특히, learning curve의 underfitting 또는 overfitting의 요소를 찾고 이를 개선하기 위한 방책을 세우는 것이죠. Interperting the Learning Curves train data에는 두 가지의 정보가 있습니다. - signal: 일반적으로 생기며, 새로운 data에서도 모델이 좋은 예측을 하도록 해줍니다 - noise: 오직 train data에서만 참값을 보입니다ㅠ (그렇다고 noise가 도움되지 않는 건 아닙니다...!) noise는 실세계의 데이터 또는 model에 부수적이고 도움되지 않는 패턴으로 인해 발생..

[Kaggle Course] Stochastic Gradient Descent

이전까지, fully-connected networks를 만드는 법에 대해서 배웠습니다. 무조건 모든 network의 가중치는 무작위로 설정했고요. 이 상태는 network가 아무 학습도 되지 않은 상태입니다. 이번 시간에는 nerual network를 훈ㄹ녀시키는 방법을 배우게 됩니다. 모든 기계학습 일이 그렇듯, training data부터 시작합니다. training data 속 각각의 example은 몇가지 features(입력값)과 하나의 예상되는 target(출력값)으로 구성되어 있습니다. network를 훈련한다는 것은 features를 target으로 변형시키는 방식을 이용해 가중치를 조절하는 것입니다. 80 Cereals dataset으로 'sugar', 'fiber', 'protein'..

[Kaggle Course] Deep Neural Networks _ nonlinear with ReLU

이번 시간에는 어떻게 복잡한 관계로 엮인 깊은 신경망(deep nets)를 표현할 수 있는 nerual networks를 생성하는 법에 대해 배우게 됩니다. "Modularity"가 주요 아이디어입니다. 이는, 더욱 간단한 functional units로부터 comples network를 생성해줍니다. 이전 시간에 linear unit이 어떻게 linear function을 계산하는지 보았습니다. 이제 이러한 single unit을 어떻게 결합하고 수정할 수 있는지 봅시다 Layers neurons는 layer로, layer가 쌓여 neural network가 됩니다. 공통된 입력값을 사용하는 linear unit을 합치면 dense layer을 얻을 수 있습니다. 사진 설명: A dense layer ..

[Kaggle Course] A Single Neuron _ Define a linear model

Introduction Tensorflow와 Keras를 앞으로 이용하여 배우게 될 것들은, fully-connected neural network 아키텍쳐 생성하기 기초적인 머신러닝(regression, classification) 기법에 neural nets 적용하기 stochastic gradient descent로 neural net 훈련하기(train) dropout, batch normalization 등의 기법으로 성능 향상시키기 What is Deep Learning? 수없이 쌓인 계산(deep stacks of computations)해야 할 때 그 중의 특징을 잡아내어 기계에 학습시키는 것 계산의 양은 딥러닝 모델에 어떻게 현실의 데이터 속 복잡하고 계층적인 패턴을 적용 가능하는가에 달..

728x90
반응형