반응형

여러가지공부/머신러닝(Machine Learning) 34

선형회기 Gradient 수식 풀이(편미분, equation, Linear Regression)

목차 이번 포스트에서는 선형회기의 Gradient 구하는 방법을 수식으로 전개해보겠습니다. 선형회기 Gradient 수식 풀이: 선형회기식 선형 회기란 위 그래프와 같이 데이터가 주어져있을 때 데이터 셋을 대표하는 모델링을 하는 것입니다. 위와 같은 모델은 수식1과 같이 간단한 1차원 수식으로 전개 됩니다. 이때 베타 파라미터(parameter) 값을 찾는 것이 선형회기 이론입니다. 위 수식은 하나의 입력에 대한 출력이고 다차원으로 가면 아래와 같이 수식을 쓸 수 있습니다. 위와 같은 수식을 Linear Regression Hypothesis라고 합니다. 선형회기 Gradient 수식 풀이: Cost Function & Gradient Loss 함수 또는 Cost 함수는 수식2의 예측 값의 오차가 얼마나..

[머신러닝]민감도, 특이도, F1-Score란?(Sensitivity, Specificity)

목차 민감도, 특이도란?(Sensitivity, Specificity) 민감도(sensitivity)는 모델이 양성 클래스(positive class)를 정확하게 예측한 비율을 의미하며, 특이도(specificity)는 모델이 음성 클래스(negative class)를 정확하게 예측한 비율을 의미합니다. True Positive (TP): 100개 (실제 스팸인데 스팸으로 예측한 경우) False Positive (FP): 30개 (실제 정상 메일인데 스팸으로 예측한 경우) True Negative (TN): 850개 (실제 정상 메일인데 정상 메일로 예측한 경우) False Negative (FN): 20개 (실제 스팸인데 정상 메일로 예측한 경우) Positive = TP + FN : 120개 (실제..

Classification 모델 성능 검증: Accuracy, Precision/Recall, ROC-AUC(예제 실습, 파이썬)

목차 Classification 모델 성능 검증: Accuracy 머신러닝에서 Accuracy, Precision/Recall, ROC-AUC는 분류 문제의 성능을 평가하는 지표들입니다. 이러한 지표들은 모델의 예측 결과를 실제값과 비교하여 얼마나 잘 예측하는지 측정합니다. Accuracy (정확도)란 전체 데이터 중에서 모델이 올바르게 분류한 데이터의 비율입니다. 정확도는 가장 직관적인 지표이지만, 클래스 간 데이터의 분포가 불균형할 경우 잘못된 성능 평가를 할 수 있습니다. 간단히 말해 실제 데이터 수에서 바르게 예측한 비율입니다. 정확도 = (올바르게 분류된 데이터 수) / (전체 데이터 수) Accuracy 예제 Accuracy를 이해하기 위한 간단한 예제를 드리겠습니다. 이진 분류 문제를 가정해..

엔트로피(Entropy)란? 파이썬 엔트로피 예제 실습

목차 엔트로피(Entropy)란? 엔트로피는 머신러닝에서 데이터셋의 불확실성을 나타내는 척도입니다. 엔트로피를 계산하기 위해서는 데이터셋에서 각 클래스가 발생할 확률을 알아야 합니다. 수식으로 표현하면 다음과 같습니다. 여기서 H(X)는 데이터셋 X의 엔트로피를 나타내며, p(x)는 데이터셋 X에서 클래스 x가 발생할 확률을 나타냅니다. 이 식은 다음과 같이 해석할 수 있습니다. 데이터셋에서 각 클래스가 발생할 확률을 곱한 후, 이를 로그로 변환하고 음수로 바꾼 값들을 모두 더한 것입니다. 수식1에서 log2를 사용하는 이유는 확률의 특성과 관련이 있습니다. 우선, 확률은 항상 0과 1 사이의 값을 가집니다. 하지만, 이러한 확률을 곱하면 값이 매우 작아질 수 있습니다. 예를 들어, 0.001과 0.00..

[머신러닝] k-fold cross validation이란? 파이썬 예제 실습

목차 [머신러닝] k-fold cross validation이란? k-fold 교차 검증(k-fold cross validation)은 머신러닝에서 모델의 성능을 측정하고 검증하는 기술 중 하나입니다. 이 방법은 데이터 세트를 k개의 부분집합으로 분할하고, 이 중 하나를 검증 데이터(validation data)로 사용하고, 나머지 k-1개의 부분집합을 학습 데이터(training data)로 사용하여 모델을 학습시키는 과정을 k번 반복하는 것입니다. 이 과정에서 k개의 모델이 생성되고 각각의 모델은 서로 다른 검증 데이터로 성능을 측정합니다. 이렇게 측정된 성능 지표를 k번 평균하여 최종 성능 지표를 계산합니다. 위 그림의 경우 5-fold cross validation을 수행합니다. 데이터 세트는 5..

[머신러닝] 편형(Bias)와 분산(Variance)란? 파이썬 예제 코드로 이해하기(Trade off)

[머신러닝] 편형(Bias)와 분산(Variance)란? 머신러닝에서 편향(bias)과 분산(variance)은 모델의 성능과 일반화 능력에 영향을 주는 두 가지 주요 요소입니다. 이 두 가지는 모델의 예측 오차를 계산하는 데사용 합니다. **바는 평균을 의미 하고 삿갓은 추정값을 의미합니다. 1. 편향(bias) : 편향은 모델이 실제 데이터와 얼마나 차이가 있는지를 나타내는 척도입니다. 높은 편향을 가진 모델은 학습 데이터에 대해서도 부정확한 예측을 하는 경향이 있습니다. 이는 모델이 너무 단순하거나, 데이터의 복잡한 패턴을 충분히 학습하지 못한 경우 발생합니다. 이를 과소적합(underfitting)이라고도 합니다. 2. 분산(variance) : 분산은 모델이 학습 데이터의 작은 변화에 얼마나 민..

[머신러닝]일반화(Generalization), 과적합(Overfitting, Underfitting)이란? 파이썬 코드 예제(그래프 포함)

목차 일반화(Generalization), 과적합(Overfitting, Underfitting) 이란? 일반화(Generalization) 머신러닝에서 Generalization(일반화)은 모델이 학습 데이터에 대해 학습한 후, 이전에 본 적 없는 새로운 데이터에 대해 정확하게 예측할 수 있는 능력을 말합니다. 예를 들어 앞서 선형 회기(Linear Regression)에서 가지고 있는 데이터 셋을 사용해서 파라미터들을 유추해서 모델링을 만들어 이 후에 발생하는 입력에 대한 출력을 예측 가능하게 하는 것을 의미합니다. 과적합(Overfitting/Underfitting) 일반적으로 머신러닝 모델을 학습시키는 과정에서는, 훈련 데이터셋을 사용하여 모델의 가중치(Weights)를 조정하고 최적화를 수행합니..

[Python] 원핫인코딩(One Hot Encoding)이란? 쉬운 예제로 실습하기

목차 원핫인코딩(One Hot Encoding)이란? 원 핫 인코딩(One Hot Encoding)은 카테고리 변수(Categorical Variable)를 머신러닝에서 처리할 수 있는 Binary 벡터(Vector) 값으로 변환해주는 방법을 말 합니다. 선형 회기 예를 들어 설명하겠습니다. 위 수식1은 다중 선형 회기 수식입니다. X, Y 값은 사용자가 가지고 있는 데이터 셋의 값입니다. 만일 입력 값 중에 하나가 색상의 값으로 빨강, 노랑, 파랑 색으로 들어오면 해당 입력은 범주형 변수(Categorical variable)이므로 Binary로 변환해야 합니다. 그래서 아래와 같이 표현할 수 있습니다. 빨강 [1 0 0], 파랑 [0 1 0], 노랑 [0 0 1] 로 벡터 값으로 변환해서 처리 할 수..

[머신러닝]소프트맥스 회귀란?(Softmax Regression)

목차 해당 포스트(Machine Learning)는 유투브 혁펜하임의 강의 내용을 듣고 제 생각대로 정리한 내용이라 틀린 내용이 있을 수 도 있습니다. Machine Learning 소프트 맥스 회귀란? 앞서 로지스틱 회귀 이론에 대해 알아보았습니다(https://scribblinganything.tistory.com/682). 로지스틱 회귀란 입력 값을 받고 이 값이 해당 라벨에 포함되는지를 확률적인 값으로 출력 해주었습니다. 예제로 여자 사람의 사진일 경우 1에 가까운 값을 출력 하고 그 외는 0에 가까운 값을 출력하는 로직이었습니다. 소프트 맥스 회기란 앞서 로지스틱이 하나의 출력만을 구분 지었다면 이번에는 출력을 벡터(Vector) 형식으로 보내서 여자 사람, 남자 사람, 고양이 등을 벡터에 값으..

[머신러닝]로지스틱회귀란?(Logistic Regression, 시그모이드 함수)

목차 해당 포스트(Machine Learning)는 유투브 혁펜하임의 강의 내용을 듣고 제 생각대로 정리한 내용이라 틀린 내용이 있을 수 도 있습니다. Machine Learning 로지스틱회귀란?(What is Logistic Regression?) 앞서 퍼셉트론(Perceptron)에 대해 살펴 보았습니다(https://scribblinganything.tistory.com/674). 퍼셉트론이란 활성화 함수에 스텝 함수를 넣어서 -1 아니면 1이 되게 출력을 하였습니다. 로지스틱 회귀는 퍼셉트론과 유사한데 활성화 함수에 넣는 값이 Step Function이 아닌 시그모이드 함수(Sigmoid Function)를 넣어서 출력을 처리 합니다. 위 그림과 같은 형태가 시그모이드 함수의 그래프 입니다. 그..

반응형