분류 전체보기36 머신러닝 평가 지표 (Machine Learning Metrics ) 평가 지표 Metrics 머신러닝의 '지도 학습'에서는 test set으로 '정답'이 주어지기 때문에, 모델이 잘 학습되고 있는지를 알기 위해 실제값과 예측된 값을 비교하여 두 값 사이의 오차를 구할 수 있다. 즉, (실제값-예측값) = 0이 되면 오차가 없는 것이므로 모델이 값을 100% 잘 맞췄다고 생각할 수 있다. 하지만 이렇게 100% 일치하는 것은 현실적으로 어렵다. 그래서 어느 정도까지 오차를 허용할지 결정해야 한다. 모델 성능 평가를 해야 하는 이유는? 과적합을 방지하고 최적의 모델을 찾기 위해서 실행한다. 평가 지표 종류 예측 모델 평가 지표: mse, mae, r2_score 분류 모델 평가 지표: f1, confusion matrix, roc_auc(tpr, fpr), accuracy,.. 2023. 8. 31. 머신러닝 임계값 Threshold, ROC, AUC Tradeoffs : Recall vs Precision high precision & high recall 가지는 것은 수학적으로 불가능해서 둘을 조화롭게 밸런스 하는 것인 F1 score 사용할 수 있음 정밀도와 재현율을 조정하면 트레이드 오프가 있다. 한 쪽을 강제로 높이면 다른 쪽은 떨어지기 쉬움 F1 Score: 정밀도와 재현율을 결합한 지표, 어느 한쪽으로 치우치지 않는 수치를 나타낼때 상대적으로 높은 값을 가짐. F1 = 2 * (precision * recall/precision + recall) 임계값 Threshold : 0~1 = 0 or 1 으로 분류할 때의 커트라인/기준점 임계값 = 1일 때 FPR=0, TPR=0 threshold INC -> precision inc(FP dec.. 2023. 8. 9. 머신러닝 Train, Test Data 교차검증(k-fold, stratified k-fold, cross_val_score, GridSearch CV) Training and Testing data train : 학습 validation : 학습 중간에 검증 (여러번) test : 모델 평가 (단 한번만) 교차 검증 Cross Validation problem : 데이터를 train, test set으로 나눠도 고정된 학습 데이터로 평가하다 보면 테스트 데이터에만 최적의 성능을 발휘하도록 편향되게 모델을 유도하는 경향이 생겨 과적합(overfitting)이 될 수 있다. 이렇게 되면 결국 다른 테스트용 데이터가 들어올 경우에는 성능이 저하된다. solution : 데이터 편중을 막기 위해, 교차 검증하기! (본 고사(test)를 치르기 전에 모의고사(valid set)으로 검증하듯이) K-fold Cross Validation k 개의 데이터 폴드 세트.. 2023. 7. 27. 데이터분석 머신러닝 개념, 종류 Machine Learning 문제를 풀기 위해서 컴퓨터에 데이터를 학습시켜서 자동으로 문제를 풀 수 있게 모델을 만드는 것 기계 학습 ML 기존 방식 : input(x) -> function (x) -> output(y) 우리가 x 값을 주면 y가 나오도록 함수를 '설계' 했다 기계 학습 : training data(x, y) + learning = Model(Hypothesis) test data(x) -> Model -> output(y) x, y라는 데이터만 줘서 컴퓨터가 가설을 예측하게끔 한다 h(y) = W * X + b 학습 : Weight, bias를 변경하는 일련의 과정 학습 사이클 개념 = 컴퓨터에 데이터만 줘서 loss를 구해서 0이 될 때까지 optimizer로 loss/cost f.. 2023. 7. 27. [HTML/DJANGO 웹개발 기초] GET, POST 방식 차이 예시 HTML GET, POST 방식 차이 GET/POST 방식으로 데이터를 전달하는 것은 웹개발에 있어서 가장 기초적인 부분 중 하나입니다. 이걸 이해하고 있어야 Django 웹 개발을 할 때 훨씬 수월하더라고요! 웹페이지 개발을 할 때 언제 GET 방식을 쓰고, 언제 POST 방식을 써야 할까요? 우선 GET방식과 포스트 방식에 차이점 그리고 장단점에 대해서 간략히 나열해 보겠습니다! 1. GET 방식 GET 방식은 서버로부터 정보를 요청할 때 사용됩니다. 브라우저에서 URL에 데이터를 첨부하여 요청을 보냅니다. 요청한 데이터는 URL의 쿼리 매개변수(query parameters)로 전달됩니다. 그렇기 때문에 주소 값에 전달되는 데이터의 값이 표시됩니다. 데이터가 보이기 때문에 보안에 취약할 수 있겠죠!.. 2023. 7. 5. [Python] 반응형 웹사이트 크롤링 예제 (웹툰, 쇼핑몰) 비동기 통신으로 설계된 페이지 크롤링 (웹툰, 쇼핑몰) 요즘은 반응형(responsive) 웹사이트가 많아지고, 다수의 상품이 진열되는 쇼핑몰 사이트의 경우, 특히 모바일의 경우 페이지 구조를 빠르게 로딩한 후 콘텐츠(상품 이미지 등)를 비동기식으로 채워 넣는 경우가 많습니다. Selenium이란? 셀레니움 = 반복 작업을 자동화하는 툴입니다. 사람이 일반적으로 웹 브라우저를 이용하여 할 수 있는 행동들을 코드로 작성하면 selenium이 이 코드를 웹 브라우저에 전달하여 실행시킵니다. 참고 : Selenium official docs : https://www.selenium.dev/documentation/ https://github.com/SeleniumHQ/seleniumhq.github.io/tr.. 2023. 6. 29. 이전 1 2 3 4 ··· 6 다음