가중치

AI/MachineLearning

L1, L2 정규화(Regularization) 기법

L1 정규화 L1 정규화는 가중치(weight)의 절댓값에 비례하는 손실(loss)이 기존 손실 함수(loss function)에 추가되는 형태이다. TotalLoss=Loss+λw∑​∣W∣ L1 정규화는 모델 내의 일부 가중치를 0으로 만들어 의미있는 가중치만 남도록 만들어주고, 이를 통해 모델을 일반화시킬 수 있다. 다른 말로 Sparse Model을 만든다라고도 한다. L1 정규화를 적용하기 위해 사용하는 함수/라이브러리 tf.keras.layers.Dense(kernel_regularizer = tf.keras.regularizers.l1(ratio)) ratio : 가중치에 L1 정규화를 적용하는 비율 (0.001 ~0.005) L2 정규화 L2 정규화는 가중치의 제곱에 비례하는 손실이 기존 손..

AI/MachineLearning

Naive한 가중치 초기화 방법

가중치 초기화 문제는 활성화 함수의 입력값이 너무 커지거나 작아지지 않게 만들어주려는 것이 핵심이다. 초기화 설정 문제 해결을 위한 Naive한 방법으론 평균이 0, 표준 편차가 1인 표준 정규 분포를 이용해 초기화하는 방법과 평균이 0, 표준 편차가 0.01인 정규분포로 초기화하는 방법이 있다. 이번 실습에서는 각 방법으로 가중치를 초기화 해보고, 각 경우에 활성화 결괏값들의 분포가 어떻게 변화하는지 확인해자. 실습을 마치고 나면 왜 Naive한 방식으로 가중치를 초기화 해서는 안되는지 알 수 있다. 표준 정규 분포(평균이 0, 표준 편차가 1인 정규 분포)를 따르는 무작위 데이터를 만들기 위한 함수/라이브러리 x = np.random.randn(50,20) : 표준 정규 분포를 따르는 무작위 데이터는..

AI/MachineLearning

Gradient descent 알고리즘 구현하기

Gradient descent 알고리즘 Gradient descent 알고리즘은 손실 함수(loss function)의 미분값인 gradient를 이용해 모델에게 맞는 최적의 가중치(weight), 즉 손실 함수의 값을 최소화 하는 가중치를 구할 수 있는 알고리즘이다. 이번 실습에서는 Gradient descent 알고리즘을 직접 구현한 후, 이를 이용해 데이터를 가장 잘 설명하는 선형 회귀 직선의 기울기와 y절편, 즉 선형 회귀 모델에게 맞는 최적의 가중치를 찾아보자. 선형 회귀 직선의 수식은 다음과 같은 1차 함수 형태이며, 우리가 Gradient descent 알고리즘을 사용해 찾을 값, 즉 가중치는 w_0w0​과 w_1w1​이다. f(x) = w_0+w_1 xf(x)=w0​+w1​x 손실 함수 (..

AI/MachineLearning

NAND & NOR gate

앞선 실습에서는 가중치(Weight), Bias, Step Function을 이용하여 단층 퍼셉트론인 AND gate와 OR gate를 구현해보았다. 이번 실습에서는 가중치와 Bias 값을 조정해보며 동일한 단층 퍼셉트론 NAND gate와 NOR gate를 구현해보도록 하자. import numpy as np ''' 1. NAND_gate 함수를 완성하세요. Step01. 이전 실습을 참고하여 입력값 x1과 x2를 Numpy array 형식으로 정의한 후, x1과 x2에 각각 곱해줄 가중치도 Numpy array 형식으로 적절히 설정해주세요. Step02. NAND_gate를 만족하는 Bias 값을 적절히 설정해주세요. Step03. 가중치, 입력값, Bias를 이용하여 가중 신호의 총합을 구합니다. ..

향식이
'가중치' 태그의 글 목록