본문 바로가기
반응형

Data Science32

[DL] 손실함수 (Loss Function) : 오차제곱합(SSE), 교차 엔트로피 오차(Cross-Entropy) 손실함수(Loss Function) 신경망 학습에서는 현재의 상태를 ‘하나의 지표’로 표현합니다. 그리고 그 지표를 가장 좋게 만들어주는 가중치 매개변수의 값을 탐색하는 것이 목표입니다. (최적의 매개변수 값을 탐색) 신경망 학습에서 사용하는 지표를 손실 함수(loss function)라고 합니다. 이 손실함수는 임의의 함수를 사용할 수도 있지만 일반적으로는 오차제곱합과 교차 엔트로피 오차를 사용합니다. 손실 함수는 신경망 성능의 ‘나쁨’을 나타내는 지표 현재의 신경망이 훈련 데이터를 얼마나 잘 처리하지 ‘못’하느냐를 나타냄 손실 함수에 마이너스만 곱하면 ‘얼마나 좋으냐’라는 지표로 변신 나쁨을 최소로 하는 것과 좋음을 최대로 하는 것은 결국 같은 것이니까 본질적으로 같음 훈련 데이터에 대한 손실 함수의.. 2022. 3. 4.
[DL] 신경망(Neural network) 퍼셉트론에서 신경망으로 편향을 명시한 퍼셉트론의 형태는 다음과 같습니다. 관련 식을 간결한 형태로 작성하면 다음과 같습니다. 입력 신호의 총합이 h(x)라는 함수를 거쳐 변환되어, 그 변환된 값이 y의 출력이 됩니다. h(x) : 입력이 0을 넘으면 1을 돌려주고, 그렇지 않으면 0을 돌려주는 함수입니다. 활성화 함수 (Activation function) h() : 입력 신호의 총합을 출력 신호로 변환하는 함수입니다. 2단계로 처리합니다. 가중치가 곱해진 입력 신호의 총합을 계산 그 합을 활성화 함수에 입력해 결과(y)를 냄 자세하게 살펴보면 가중치 신호를 조합한 결과가 a라는 노드가 되고, 활성화 함수 h()를 통과하여 y라는 노드로 변환되는 과정입니다. 신경망의 동작을 더 명확히 드러내고자 할 때는.. 2022. 2. 25.
[DL] 신경망 활성화 함수 - 시그모이드(sigmoid), ReLU, 계단함수 활성화 함수 (Activation Function) 활성화 함수란 입력 신호의 총합을 출력 신호로 변환하는 함수입니다. 본 글에서는 활성화 함수의 종류 중 시그모이드(sigmoid) 함수와 ReLU 함수, 계단(step) 함수에 대해서 알아보겠습니다. 계단 함수(Step Function) 계단 함수는 임계값을 경계로 출력이 바뀌는 활성화 함수입니다. 퍼셉트론에서는 활성화 함수로 계단 함수를 이용합니다. import numpy as np import matplotlib.pylab as plt def step_function(x): return np.array(x > 0, dtype=np.int) X = np.arange(-5.0, 5.0, 0.1) Y = step_function(X) plt.plot(X,.. 2022. 2. 25.
[DL] 퍼셉트론(Perceptron) 퍼셉트론 (Perceptron) 프랑크 로젠블라트가 1957년 고안한 알고리즘 퍼셉트론이 신경망(딥러닝)의 기원이 되는 알고리즘이기 때문에 공부가 필요 여기서 기술하는 퍼셉트론은 ‘인공 뉴런’ 혹은 ‘단순 퍼셉트론’ 의미. 퍼셉트론은 다수의 신호를 입력으로 받아 하나의 신호를 출력. 퍼셉트론 신호는 ‘흐른다/안 흐른다(1 or 0)’의 두 가지 값을 가질 수 있음 입력이 2개인 퍼셉트론 x1, x2 : 입력신호 y : 출력 신호 w1, w2 : 가중치 그림의 원 : 뉴런 혹은 노드라고 부름 뉴런에서 보내온 신호의 총합이 정해진 한계를 넘어설 때만 1을 출력하고, 그 한계를 임계값이라 하며, Θ (세타)로 표현합니다. 퍼셉트론은 복수의 입력 신호 각각에 고유한 가중치를 부여하며, 가중치가 클수록 해당 신호.. 2022. 2. 24.
[ML] 회귀 (Regression)와 경사하강법 (Gradient descent) 회귀 (Regression) 회귀는 보통 연속적인 숫자, 예측값이 float 형태인 문제들을 해결하는 데 사용됩니다. 즉, 회귀는 출력 값에 연속성이 있습니다. train data를 가장 잘 나타낼 수 있는 선형(Linear) 모델을 생성 후 예측을 진행합니다. 아래에서 자세히 설명하겠습니다. 예시 : 공부에 투자한 시간(x)을 바탕으로 시험 점수(y)(0~100) 예측 모델(가설) H(x) = Wx + b H(x) : 우리가 가정한 가설(Hypothesis) W : 가중치 (Weight) b : 편향값 (bias) x(특성(Feature), 설명변수)가 하나인 경우를 단순 선형 회귀(Simple Linear Regression)이라 하고, x가 2개이상인 경우를 다중 선형 회귀(Multiple Line.. 2022. 2. 22.
[ML] 분류(Classification) 분류 지도학습의 한 종류로 target이 범주형(이산형) 레이블인 데이터를 다루는 학습입니다. 연속형인 레이블을 가진 데이터셋을 다루는 학습은 회귀라고 부릅니다. 다음 글에 설명해놓았습니다. 분류의 종류 이진 분류 다중 분류 다중 레이블 분류 다중 출력 분류 이진 분류 이진 분류기는 한 레이블만 구별하는 것입니다. 예를 들면, 5-감지기는 '5'와 '5아님' 두 클래스를 구분할 수 있는 이진 분류기입니다. 다중 분류 셋 이상의 클래스 구별합니다. 예를 들어, 언어라는 target이 있다면, 값에는 한국어, 영어, 프랑스어, 스페인어 등 여러 클래스가 존재할 것입니다. 일부 알고리즘(SGD 분류기, 랜덤 포레스트 분류기, 나이브 베이즈 분류기 등)은 여러 개의 클래스를 직접 처리할 수 있는 반면, 다른 알.. 2022. 2. 6.
[ML] 머신러닝(Machine Learning)이란? 머신러닝 기계 학습(機械學習) 또는 머신 러닝(machine learning)은 경험을 통해 자동으로 개선하는 컴퓨터 알고리즘의 연구이고, 인공지능의 한 분야로 간주됩니다. 머신러닝에서 알고리즘은 대규모 데이터 세트에서 패턴과 상관관계를 찾고 분석을 토대로 최적의 의사결정과 예측을 수행합니다. 궁극적으로는 의사 결정 기준에 대한 구체적인 지침을 소프트웨어에 직접 코딩해 넣는 것이 아닌, 대량의 데이터와 알고리즘을 통해 컴퓨터 그 자체를 ‘학습’시켜 작업 수행 방법을 익히는 것을 목표합니다. 참고로 인공지능과 머신러닝, 딥러닝은 위의 포함 관계가 있다고 생각하시면 됩니다. 장점 전통적인 프로그래밍 기법과 알고리즘은 시간이 지나면서 업데이트하거나 수정해야 해서 유지 보수가 힘듭니다. 하지만 머신러닝은 데이터.. 2022. 2. 6.
[ML] 결정 트리 (Decision Tree) 결정 트리 (Decision Tree) 분류와 회귀 작업 그리고 다중 출력 작업도 가능한 다재다능한 머신러닝 알고리즘 분류 : 목표변수가 범주형인 경우 회귀 : 목표변수가 연속형인 경우 지도 학습 알고리즘에 해당 매우 복잡한 데이터셋도 학습할 수 있는 강력한 알고리즘 의사결정 나무 방식의 최대 장점은 데이터 전처리 불필요 → 특성의 스케일을 맞추거나 평균을 원점에 맞추는 작업 등이 필요하지 않음. 결정 트리 학습과 시각화, 예측 사이킷런(scikit-learn) - tree.DecisionTreeClassifier from sklearn.datasets import load_iris from sklearn import tree iris = load_iris() X, y = iris.data, iris.t.. 2022. 2. 1.
반응형