분류 전체보기270 [머신러닝] 선형 회귀 - 옵티마이저와 학습률(Learning Rate) 이번 포스팅에서는 옵티마이저와 학습률에 대해 다루려고 합니다. 사실 옵티마이저와 학습률은 선형 회귀 알고르즘에만 해당 되는 것은 아닙니다. 모든 알고리즘에 해당 되는 개념입니다. 가장 기본이 되는 이론이라 처음부터 알고 가는 것이 좋습니다. 최적화 알고리즘(Optimizer) 선형 회귀를 포함한 수많은 머신 러닝, 딥 러닝의 학습은 결국 비용 함수를 최소화하는 매개 변수인 w와 b를 찾기 위한 작업을 수행해야 합니다. 이때 사용되는 알고리즘을 옵티마이저(Optimizer) 또는 최적화 알고리즘이라 합니다. 이 옵티마이저를 통해 가장 적합한 w와 b를 찾아내는 과정을 머신 러닝에서 훈련(training) 또는 학습(learning)이라 합니다. 가장 기본적인 옵티마이저 알고리즘인 ‘경사하강법(Gradien.. 2023. 9. 10. [머신러닝] 선형 회귀(Linear Regression) 와 비용함수 머신 러닝 알고리즘 중에 가장 기본이 되는 모델이 선형 회귀(Linear Regression) 입니다. '왜 선형 회귀가 가장 기본이 됐을까요?' 저도 처음에 이런 생각을 했었는데요. 이유는 우리가 사는 세상에서 발생하는 일들의 상관관계가 선형으로 많은 부분 설명이 되기 때문입니다. 그러면 모델의 특징과 종류들에 대해 알아 보도록 하겠습니다. <!-- 디스플레이_고정형_30.. 2023. 9. 9. [머신러닝] 과적합(Overfitting) 해소 방법 - 정규화 이번 포스팅에서는 과적합을 해소하는 방법 중에 정규화에 대해 알아보도록 하겠습니다. 정규화는 제약 조건을 늘려서 모델을 일반화하기 때문에 규제화(Regularization) 라고 부르기도 합니다. 일반적으로 모델의 가중치(weight)에 대한 제약 조건을 추가함으로써 모형이 과도하게 최적화되는 현상을 방지합니다. 즉, 과하게 최적화되는 것을 막는 방법이라고 생각할 수 있습니다. 대표적인 정규화 방법은 라쏘(Lasso)와 릿지(Ridge)가 있습니다. 라쏘(Lasso) 라쏘는 선형 모형에서 쓰이는 MSE 손실함수 = $ \frac{1}{n}\sum (y_{i}-y_{i})^{2} $ 를 사용합니다. 실제 값($ 𝑦_{𝑖} $)과 예측 값($𝑦_{e}$)의 차이가 오차이고, 이 값을 제곱해서 평균 낸 것입니.. 2023. 9. 8. [머신러닝] 과적합(Overfitting) 해소 방법 - 모델 단순화 이번 포스팅에서는 과적합을 해소시키는 방법을 좀 더 상세히 알아보도록 하겠습니다. 먼저 더 많은 데이터를 확보하는 방법과 모델의 복잡도를 제어하는 방법에 대해 다루겠습니다. 데이터 증대(Augmentation) 새로운 데이터를 더 구하는 방법이 있겠지만 현실에서는 만만치 않습니다. 그래서 원본 데이터를 이용하여 데이터를 확장하는 방법을 사용합니다. 이런 방법을 데이터 증대라고 하고 이미지 분류(CNN)에서 특히 많이 사용하며 효과도 좋습니다. 만약 동물 사진을 분류하는 모델이라고 한다면, 원래 이미지 뿐만 아니라 그 사진들을 회전시키거나 약간 찌그러뜨린 수정본들도 함께 학습 시키게 되면 실제 많은 데이터를 확보하는 것 같은 효과가 나타납니다. 이 방법은 훈련 데이터에서만 사용하는 것이며, 테스트 데이터에.. 2023. 9. 7. [머신러닝] 과대적합 vs 과소적합(overfitting, underfitting) 데이터 분석을 하다 보면 한가지 문제에 봉착하게 됩니다. 바로 과적합에 대한 문제입니다. 이번 포스팅에서는 과대적합과 과소적합에 대해서 알아보도록 하겠습니다. Underfitting(과소적합) 먼저 생각해 볼 부분이 왜 Underfitting은 발생하는 걸까요? 대체적으로 Underfitting(과소적합)은 모델이 너무 단순하기 때문에 생깁니다. 우리가 분석하고자 하는 데이터의 내재된 구조를 제대로 학습하지 못할 때 발생하게 됩니다. Underfitting을 알 수 있는 방법은 학습 데이터 오류율이 테스트 데이터 오류율 비슷하게 나오지만 오류율이 여전히 큰 경우는 Underfitting을 의심해 봐야 합니다. 그렇다면 어떻게 Underfitting 해소할 수 있을까요? 모델이 데이터를 담아내기에 충분치 .. 2023. 9. 6. [머신러닝] 데이터 전처리 - 변수 결합 지금까지는 내부에 있는 데이터를 이용하여 데이터를 전처리 했다면 이번에는 외부 데이터까지 연결하는 작업입니다. 데이터의 속성은 예측을 위해 더 많은 정보가 있을 수록 유리합니다. 그렇기 때문에 공공 데이터 포털과 같은 외부 데이터와의 결합도 분석가는 고려해야 합니다. 1. Mashup의 필요성 수집한 원자료 이외 외부 데이터와 연결해서 분석하여 더 넓은 관점에서 Insight를 찾아는 방법입니다. 예를 들어, 공공데이터 포털에서 제공 다양한 행정, 날씨 등의 데이터들이 있습니다. 다양한 아이디어를 통해 외부 데이터와 결합했을 때 더 좋은 알고리즘 및 서비스를 만들 수 있습니다. 분석가가 예측하려는 Y(타겟) 변수와 연관이 있어 영향력이 있을 것으로 판단되는 데이터를 결합하는 방법입니다. 단, 외부 데이터.. 2023. 9. 5. [머신러닝] 데이터 전처리 - 변수 추가/제거 1. 변수 추가 지금까지는 원자료를 기준으로 데이터를 전처리 했다면 이번에는 새로운 변수를 추가하는 기법입니다. 새로운 변수를 추가한다는 것은 기존 변수보다 의미있는 특성을 찾아 낸다는 점에서 아이디어가 필요한 작업입니다. 역시 비지니스를 분석과 데이터의 형태 분석이 중요한 요소입니다. 물론 변수를 추가하는 것이 어떤 경우던 효과가 좋은 것은 아닙니다. 기존 변수와 상관도가 너무 높은 변수를 추가하게 된다면 다중공선성에 의해 더 좋지 않은 모델을 만들 수 도 있습니다. 다중공선성(Multicollinearity)은 통계학에서 변수들 간에 강한 상관관계가 나타나는 경우 입니다. 일반적으로 회귀분석에서 사용되는 용어이며 변수간의 선형 독립이 아닌 경우 모델에 부정적인 영향을 미치는 현상을 말합니다. 변수를 .. 2023. 9. 4. 데이터 전처리 필수 단계: 결측치 처리 방법 비교 분석 데이터 전처리 과정 중 데이터가 값이 없는 경우. 즉, 결측이 발생했을 때 처리하는 방법은 두가지가 있습니다. 바로 제거하기와 대체하기 입니다. 결측은 왜 발생할까?데이터셋의 결측이 발생하는 이유는 다양한데요. 센서 데이터와 같은 경우 오작동에 의해 해당 값이 수집이 안되는 경우도 있고, 인간의 실수나 시스템 오류 등으로 인해 데이터가 제대로 수집되지 않을 수 있습니다. 또 데이터를 필수로 수집해야 하는 경우도 있지만 선택적으로 수집할 때 해당 항목에 대해 응답을 거부할 경우에도 데이터가 비어서 들어옵니다. 결측 확인하기몇가지 방법을 사용하여 데이터셋의 결측치 현황을 다각도로 파악할 수 있습니다. 결측치 확인 후에는 상황에 따라 제거, 대체 등의 적절한 처리 방법을 선택하여 적용해야 합니다.# 전체.. 2023. 9. 1. [머신러닝] 데이터 전처리 - 실수를 줄이는 데이터 확인 데이터 전처리라고 하면 뭔가 거창하게 생각하거나 단순하게 생각합니다. 통계상으로 분석가들의 70~80% 정도 일량이라고 하니 많은 시간이 소요되는 작업입니다. 이런 이유 때문에 분석 프로젝트 초기에 시간을 절약하려고 샘플 데이터를 받는 방법을 사용합니다. 샘플 데이터를 이용하여 미리 분석을 진행하고 실제 인터페이스 될 경우 적용하게 되기 때문이죠. Sample Data는 주로 엑셀, csv 등 파일 형태로 받는 경우는데요. 이메일 또는 저장장칠르 통해 직접 받기도 합니다. 이때 중요한 포인트는 원활한 업무를 위해 신속하게 확인 필요합니다. 아래 빨간색 '필수'라고 표시한 부분은 반드시 수행할 필요가 있는 단계에 대해 표시했습니다. 1. 업무(시나리오) 분석 및 검토 - 필수초기에 데이터 확인이 이.. 2023. 8. 28. 이전 1 ··· 27 28 29 30 다음