728x90 파이썬머신러닝3 [PYTHON] 데이터 불균형 해결을 위한 Focal Loss와 Class Weight의 3가지 차이점과 적용 방법 실질적인 머신러닝 프로젝트를 진행하다 보면 가장 빈번하게 마주치는 문제 중 하나가 바로 데이터 불균형(Imbalanced Data)입니다. 암 진단 데이터, 이상 거래 탐지(Fraud Detection), 시스템 장애 예측 등 대부분의 가치 있는 도메인에서 우리가 타겟으로 삼는 'Positive' 클래스는 전체의 1% 미만인 경우가 많습니다. 과거에는 오버샘플링 기법인 SMOTE(Synthetic Minority Over-sampling Technique)가 만능 열쇠처럼 여겨졌으나, 고차원 데이터에서의 노이즈 생성 문제와 연산 비용의 한계로 인해 최근에는 손실 함수(Loss Function) 자체를 최적화하는 Focal Loss나 Class Weight 방식이 더 선호되고 있습니다. 본 포스팅에서는 이.. 2026. 4. 28. [PYTHON] 모델 Calibration의 3가지 핵심 지표와 서비스 신뢰도 해결 방법 딥러닝 모델이 "이 이미지는 고양이일 확률이 99%입니다"라고 출력했을 때, 실제로 100개의 샘플 중 99개가 고양이여야 우리는 그 모델을 신뢰(Trust)할 수 있습니다. 하지만 현대의 복잡한 신경망, 특히 거대 언어 모델(LLM)이나 깊은 ResNet 계열은 예측 성능(Accuracy)은 높지만, 자신의 예측에 대해 지나치게 확신하는 과잉 확신(Overconfidence) 경향을 보입니다. 이러한 확률 값의 왜곡은 자율주행, 의료 진단, 금융 사기 탐지 등 실패 비용이 막대한 서비스에서 치명적인 문제를 일으킵니다. 본 포스팅에서는 모델의 예측 확률을 실제 빈도와 일치시키는 Calibration의 수학적 해석과 이를 시각화하는 Reliability Diagram, 그리고 Python을 통한 7가지 해.. 2026. 4. 28. [PYTHON] Python으로 배우는 실전 머신러닝 입문 머신러닝(Machine Learning)은 데이터에서 스스로 패턴을 학습하고 예측하거나 결정을 내리는 알고리즘을 만드는 기술입니다. Python은 그 간결한 문법과 풍부한 라이브러리 생태계 덕분에 머신러닝 분야에서 가장 많이 사용되는 언어로 자리 잡았습니다. 이 글에서는 Python 기반 머신러닝의 실용적인 예제부터 실제 모델 구축 방법까지, 깊이 있고 독창적인 내용을 제공하여 초보자도 쉽게 실무로 연결할 수 있도록 구성했습니다.Python이 머신러닝에 적합한 이유다양한 라이브러리: scikit-learn, TensorFlow, PyTorch, XGBoost 등 머신러닝에 최적화된 라이브러리 제공커뮤니티: 전 세계적으로 활발한 커뮤니티와 오픈소스 생태계가독성: 수학적 개념을 직관적으로 코드로 구현 가능생.. 2025. 7. 23. 이전 1 다음 728x90