본문 바로가기
728x90

인공신경망(DL)/Neural Networks6

Neural Network Hyperparameter Part 1: 대표적인 하이퍼 파라미터를 설명 할 수 있습니다 Part 2: ETF (Experiment Tracking Framework)에 대해 알아보고 적용할 수 있습니다. Part 3: (Optional) RandomSearch를 사용해서 하이퍼 파라미터 공간에서 최적의 하이퍼 파라미터를 찾을 수 있습니다 진행방식 데이터를 다운로드 받고 읽어옴(load) 데이터 클리닝을 진행 (필수는 아니지만 추천) / StandardScaler, MinMaxScaler Keras MLP model을 만들고, 학습 진행 * Hyperparameter batch_size training epochs optimizer learning rate (optimizer에 따라서 해당되면) momentum (optimizer.. 2021. 8. 16.
기울기 소실 Vanishing, 발산 Exploding 기울기 소실(Gradient Vanishing)과 발산(Exploding) 깊은 인공 신경망을 학습하다보면 역전파 과정에서 입력층으로 갈수록 기울기(Gradient)가 점차적으로 작아지는 현상이 발생 == 가중치 업데이트가 제대로 안된다. 결국은 최적의 모델을 찾을 수 없게 된다. 이를 기울기 소실(Gradient Vanishing)이라고 한다. 반대의 경우가 기울기 발산(Gradient Exploding) 1. ReLU와 ReLU의 변형들 Sigmoid 함수를 사용하면 입력의 절대값이 클 경우에 Sigmoid 함수의 출력값이 0 또는 1에 수렴하면서 기울기가 0에 가까워진다. 그래서 역전파 과정에서 전파 시킬 기울기가 점차 사라져서 입력층 방향으로 갈수록 제대로 역전파가 되지 않는 기울기 소실 문제가 .. 2021. 8. 15.
Weight Regularization 과적합 방지 Part 1: 모델 아키텍쳐를 어떻게 선택하는 지 배우게 됩니다. Part 2: 가중치의 규제(Regularization) 전략을 배웁니다. Part 3: 다양한 활성함수를 사용함에 발생하는 trade-off에 대해서 논의해볼 수 있어야 합니다. 과적합을 피하는 방법 데이터 양 늘리기 모델 복잡도 줄이기 ( 학습할 파라미터 수 줄이기 ) 복잡도는 은닉층(hidden layer)의 수나 매개변수의 수 등으로 결정 인공 신경망에서는 모델에 있는 매개변수들의 수를 모델의 수용력(capacity)이라고 한다. 적절한 layer 수, node 수, learning_rate ...(하이퍼파라미터 조정 GridSearchCV) weight decay (정보에 제약을 가한다 ) Dropout 정규화를 한다는것은 신경망.. 2021. 8. 15.
sigmoid 미분 * sigmoid 함수 미분 (= Logistic Function), deep learning 에선 sigmoid라고 불림 https://towardsdatascience.com/derivative-of-the-sigmoid-function-536880cf918e 1단계 2단계 3단계 4단계 5단계 6단계 7단계 8단계 9단계 마지막 2021. 8. 14.
역전파( Back Propagation ), 최적화(Optimizer) 경사하강법과 역전파 알고리즘에 대해 이해하고 설명할 수 있다. 경사하강법과 역전파 알고리즘을 사용하여 신경망을 구현할 수 있다. 케라스 프레임워크를 이용하여 모델을 구축할 수 있다. 인공신경망 학습 MLP의 파라미터 개수가 점점 많아지면서 각각의 weight와 bias를 학습시키는 것이 매우 어려워 so, 순방향 신경망(FP)과 같은 다층퍼셉트론(MLP, Multi-layer Perceptron) 구조의 신경망은 경사하강법(Gradient descent, GD)으로 학습을 할 수 있는데 역전파(Backpropagationm, BP) 알고리즘에 의해 필요한 기울기(gradient)계산이 가능 신경망 학습 알고리즘 요약: 학습할 신경망 구조를 선택합니다. 입력층 유닛의 수 = 특징 수 출력층 유닛의 수 = .. 2021. 8. 14.
퍼셉트론(Perceptron), 인공신경망 ANN, DNN 퍼셉트론(Perceptron)을 이해하고 python으로 구현할 수 있다. 신경망(Neural network)의 원리를 이해하고 기본적인 구조를 예를 들어 신경망을 설명할 수 있다. 신경망이 학습된다는 개념을 이해한다 퍼셉트론(Perceptron)이란? 뉴런들 사이에는 시냅스라는 연결이 뉴런마다 1000개에서 10000개까지 연결이 되어서 인터넷처럼 망으로 구성되어 뭔가 찾고 싶을 때, 구글링으로 빠르게 검색하여 결과를 얻는 것처럼, 뇌 속에서 소위 "생각"이라는 검색도구를 통해서 얻고자하는 정보를 빠르게 뇌속에서 찾을 수 있다. 가지(수상)돌기 : Dendrities 이런 개념을 본 딴 것이 퍼셉트론 == '생각'하는 것 같은 무언인가를 만드는 것 다수의 신호를 입력받아서 하나의 신호를 출력 단층 퍼셉.. 2021. 8. 14.
728x90