# cross validation

35개의 포스트
post-thumbnail

[ML] CV, PCA, 일반화 등등 정리

1. K-fold Cross Validation 구성요소 Split : k개의 폴드가 뭉쳐진 것 fold : 한 개의 Validation fold와 나머지 Train Folds > 최종적으로는 K번 검증된(K개의 Split을 활용하여) 결과 값의 평균을 도출 ! 1.1. Stratified Cross Validation >(공통점) : k-fold와 같이 k-1개의 Train과 1개의 Validation Fold를 이루지만 (차이점) : Fold별 클래스 비중을 모두 동일하게 진행한다는 차이점만 존재 데이터의 차원을 축소하기 위한 방법 변수 선택(Feature Selection) 주어진 많은 변수들 중 특정 기준에 따라, 혹은

2023년 8월 30일
·
0개의 댓글
·
post-thumbnail

모델 평가를 위한 교차 검증 이해하기

우리는 예측 모델을 구축하기 위한 다양한 머신러닝 작업에 직면합니다. 그러나 좋은 모델을 구축하는 것만으로는 충분하지 않습니다. 모델의 성능을 확인하고 새로운 데이터에 일반화할 수 있는 능력을 점검해야 합니다. 이 때문에 교차 검증이 필요한 것입니다. 이 블로그 포스트에서는 교차 검증 개념에 대해 더 자세히 알아보고, 파이썬과 scikit-learn을 사용하여 이를 어떻게 구현하는지 알아보겠습니다. 교차 검증이란 무엇인가요? 교차 검증은 모델의 성능과 새로운 데이터에 일반화하는 능력을 평가하기 위한 강력한 기법입니다. 이는 과적합을 방지하고 모델의 정확성에 대해 더 신뢰할 수 있는 측정치를 제공하는 데 사용됩니다. 교차 검증의 아이디어는 간단하지만 강력합니다. 데이터셋을 여러 하위 집합(폴드)으로 나눈 후, 모델은 다양한 하위 집합에서 훈련을 받고 나머지 하위 집합에서 평가를 받습니다. K-폴드 교차 검증 가장 흔히 사용되는 교차 검증 기법 중 하나는 K-폴드

2023년 7월 27일
·
1개의 댓글
·
post-thumbnail

[혼자 공부하는 머신러닝+딥러닝] - CH.5-2 Cross Validation & Grid Search

주요 개념 Validatio Set: 하이퍼파라미터 튜닝을 위해 모델을 평가할 때, 테스트 세트를 사용하지 않기 위해 훈련 세트에서 다시 떼어 낸 데이터 세트 Cross Validation: 훈련 세트를 여러 폴드로 나눈 다음 한 폴드가 검증 세트의 역할을 하고 나머지 폴드에서는 모델을 훈련, 이런식으로 모든 폴드에 대해 검증 점수를 얻어 평균하는 방법 Grid Search: 하이퍼파라미터 탐색을 자동화해주는 도구, 탐색할 매개변수를 나열하면 교차 검증을 수행하여 가장 좋은 검증 점수의 매개변수 조합을 선택, 마지막으로 이 매개변수 조합으로 최종 모델 훈련 Random Search: 연속된 매개변수 값을 탐색할 때 유용, 탐색할 값을 직접 나열하는 것이 아니라 탐색값을 샘플링 할 수 있는 확률 분포 객체를 전달, 지정된 횟수만큼 샘플링하여 교차 검증을 수행하기에 시스템 자원이 허락하는 만큼 탐색량 조절 가능 ![](https://velog.velcdn.co

2022년 11월 15일
·
0개의 댓글
·
post-thumbnail

머신러닝 - Bike Sharing Demand

https://www.kaggle.com/competitions/bike-sharing-demand 데이터셋 전처리 연, 월, 일, 시, 분, 초 만들기 !

2022년 11월 10일
·
0개의 댓글
·
post-thumbnail

머신러닝 - Titanic data (feature-cv)

데이터 전처리 파생변수 만들기 가족의 수 성별 호칭 Cabin Feature Engineering One

2022년 11월 9일
·
0개의 댓글
·
post-thumbnail

머신러닝 -Regression

데이터 구성 데이터셋 로드 Outcome별 Insulin 학습, 예측해야 할 값 학습, 예측에 사용할 컬럼 학습, 예측 데이터셋 만들기 머신러닝 알고리즘 학습 cross validation 학습 세트의 오차 측정 crossvalpredict 함수 예시 실제값 - 예측값 차이 시각화 ![](https://velog.velcdn.com/images/psy4072/post/498e4f79-bc25-441a-9b83-cdc5c70f4

2022년 11월 3일
·
0개의 댓글
·

[Day 34] kaggle - Titanic(2)

22.11.02. 어제에 이어 캐글 타이타닉을 진행하며 kaggle 경진대회에 참여하는 법을 배웠다! 이 과정에서 머신러닝을 배웠다. 특히, pd.get_dummies()를 통해 인코딩하는 법, train set과 test set을 전처리 하는 법, 결측치를 대체하는 법에 대해서도 배웠으며, cross-validation에 대해 공부했다. 머신러닝을 위한 데이터 전처리 파생변수 만들기 머신러닝에 사용할 feature를 파생변수로 만들어 준다. 이는 여러 수치형 변수 컬럼들을 계산하여 만든 값이 될 수도 있고, 범주형 변수 컬럼을 인코딩 하기 좋도록 범주를 정리해 준 것일 수도 있으며 간단한 바이너리 인코딩을 통해 범주형 변수를 수치형 변수로 바꾸어 준 것일 수도 있다. 전처리를 할 때, 도메인 전문가 등의 의견이나 실제 현업에서 어떻게 쓰이는지 조사를 하고 전처리 해야한다. 머신러닝을 위해 데이터를 전처리 할 때, 주의해야 할 점이 있다

2022년 11월 2일
·
0개의 댓글
·
post-thumbnail

Cross Validation을 사용한 Wine 분류모델

앞서 사용했던 wine 데이터를 사용해서 Cross Validation을 사용한 와인 분류 모델을 만들어보려 한다..! 1. 데이터 불러오기 데이터 > > 이번에도 color 컬럼에 레드와인은 1, 화이트와인은 0 값을 주고, 두 데이터를 합쳤다. > 그리고 taste 값이 5보다 크면 1, 5이하면 0 값을 갖는 quality 컬럼도 만들었다. 2. KFold > > X는 feature, y는 분류 대상을 의미한다. 분류대상인 taste 는 quality 로 만든 것이므로, X는 두 컬럼을 제외한 다른 컬럼이 된다. > kfold 에서 데이터를 5등분 하는것으로 설정했다. Decision Tree 는 max_depth를 2로 설정했다. > ![](https://velog.velcdn.com/im

2022년 10월 24일
·
0개의 댓글
·

K-fold Cross Validation(교차검증)

1. 의미 모델이 학습 데이터에만 과도하게 최적화되어 일반화된 데이터에서는 예측 성능이 과하게 떨어지는 현상을 과적합 이라고 한다. 과적합을 막기 위해 사용하는게 Cross Validation(교차검증) 이다. 일반적인 모델 학습 방식은 데이터셋을 train/test 데이터로 분류한뒤에 train 데이터로 모델을 학습시키고 test 데이터로 성능을 측정한다. K-fold Cross Validation은 train 데이터을 여러개로 나눈 뒤에 한 블록은 test, 나머지는 train 데이터로 사용하는 방법이다. ![](ht

2022년 10월 24일
·
0개의 댓글
·

Deep Learning(기초) - 3. Optimization

Optimization 1. BackGround 1) Generalization > 우리가 인공지능 모델을 실생활에서 사용할 때 접하는 데이터는 학습시킬 때 사용했던 데이터는 대부분이 모델을 훈련시킬 때 사용했던 데이터와 다른 데이터가 입력된다. > Generalization, 즉 일반화란 이러한 상황에서 우리 모델의 성능이 학습시킬 때와 비슷하게 나오도록 해주는 것이다. > 따라서 Generalization성능을 높이는 것은 우리가 실제 이 모델을 사용하는데 있어 가장 중요하다고 할 수 있다. > 2) Overfitting <img src="https://velog.velcdn.com/images/abrahamkim98/post/1d47cfce

2022년 10월 4일
·
0개의 댓글
·
post-thumbnail

Train-Validation-Test

machine learning에서는 일반적으로 학습하기 전에 전체 data를 training set과 validation set, test set으로 나누는 과정을 거친다. data set 중에서 training set은 모델을 training(학습)시키는 데에 활용하며, test set의 경우 모델을 evaludation(검증)하는 데에 사용한다. > 머신러닝 모델의 학습에서 전체 데이터를 학습에 전부 사용하지 않고 나누어 사용하는 이유를 알아보자. machine learning은 컴퓨터에게 학습을 시키는 것이다. 즉 학습하는 데에 있어 정답을 알고 학습을 할 경우, 주어진 data set에서는 높은 확률로 정답을 맞힐 수 있겠지만 새로운 데이터가 input으로 주어질 경우, 낮은 확률로 정답을 맞힐

2022년 7월 17일
·
0개의 댓글
·
post-thumbnail

[DS 면접대비]Leave-p-Out Cross Validation & Leave-One-Out Cross Validation 이란?

Leave-p-Out Cross Validation & Leave-One-Out Cross Validation 이란? Leave-p-Out Cross Validation >- 전체 데이터 중에서 p개의 샘플을 선택 -> 모델 검증에 사용 따라서, test set을 구성할 수 있는 경우의 수 $$nCp$$ : 조합 각 데이터 폴드 세트의 검증 결과들을 평균 -> 최종적인 검증 결과를 도출하는 것이 일반적 데이터 폴드 세트의 경우의 수가 매우 크기 때문에, 계산 시간에 대한 부담이 매우 큼 Leave-One-Out Cross Validation >- Leave-One-Out Cross Validation은 k분할 교차 검증에서 개별 분할 샘플이 하나 K개의 데이터를

2022년 6월 8일
·
0개의 댓글
·
post-thumbnail

[DS 면접대비] Hold-Out Cross Validation(홀드 아웃 교차 검증)이란?

Hold-Out이란? 데이터 셋을 Train Set과 Test Set 두 세트로 나누는 과정 일정 비율로 설정 Train Set이 작으면 모델 정확도의 분산 증가 -> 과소적합 가능성 상승 반대로, Train Set이 커지면 과대적합 가능성 상승 최고의 효율을 내기 위해 Random Subsampling이 있다. Train set과 Test set을 바꿔가면서 hold-out을 반복적으로 실행하는 것

2022년 6월 6일
·
0개의 댓글
·
post-thumbnail

[DS 면접대비]Stratified k-fold cross validation(계층별 k-겹 교차검증)

Stratified k-fold cross validation(계층별 k-겹 교차검증) K-fold 문제점 일정하게 fold를 나누기 때문에 데이터 편향이 일어날 수 있음 이것을 해결하기위해 Stratified k-fold를 사용하여 해결 Stratified k-fold cross validation k-fold의 문제점인 target 데이터의 비율을 일정하게 유지하지 못하는 것을 일정하게 유지하게 해줌 대체적으로 회귀에서는 기본적인 K-fold를사용 , 분류에서는 Stratified k-fold를 사용

2022년 6월 6일
·
0개의 댓글
·

[DS면접 대비] Cross Validation은 무엇이고 어떻게 해야하나요?

참고 데이터 사이언스 인터뷰 질문 모음집 Cross Validation은 무엇이고 어떻게 해야하나요? Cross Validation이란? >#### Cross Validation은 교차 검증이라고 합니다. 보통 활용할 데이터가 있으면 Train set으로 모델을 훈련하고 Test set으로 모델을 검증합니다. Test set으로만 모델 검증을 진행하면 약점이 존재합니다. 고정된 Test Set을 가지고 모델의 성능을 측정하게 된다면 과적합(Overfitting)되어 다른 실제 데이터를 가지고 수행하게 되면 엉망인 결과가 나오게 된다. 이를 해결하기 위해 하는 것이 Cross Validation(교차 검증)이다. C

2022년 6월 3일
·
0개의 댓글
·
post-thumbnail

AIB: N224 Model Selection

1. Model Selection 1.1 Cross Validation 1.1.1 왜 하는가? 데이터의 크기가 작은 경우, Cross Validaion이어느 정도 해결해줄 수 있다. 서로 다른 Machine Learning 모델을 비교해주고, 얼마나 성능을 낼 수 있을지에 대해 추측해볼 수 있다. 여러 번의 검증 결과를 종합해서 일반화를 할 때의 성능을 확인할 수 있다. 최적화와 일반화의 차이는?(면접 단골 질문) 최적화(optimization): 파라미터(모델)와 하이퍼파라미터(연구자)를 조정해서 모델의 성능을 높이는 것. 학습할 때 하이퍼파라미터를 성능이 가장 좋은 성능을 만드는 것. 일반화(generalization): 검증 데이터나 새로운 데이터에서도 학습 데이터와 비슷한 성능

2022년 3월 7일
·
0개의 댓글
·
post-thumbnail

기계학습 모델의 Cross Validation

기계학습 모델의 성능 검증 기계학습 모델은 성능을 평가할 때, 그 모델이 모집단에 대해서 일반화를 잘 되었는지 확인하는 것이 중요하다. 예를 들어, 스팸 메일 여부를 확인하는 기계학습 모델이 있다면 모집단은 온 세상에 존재할 수 있는 가능한 모든 메일 메시지일 것이다. train, test 데이터 셋이 모집단의 표본으로서 수집될 것이고 학습에 사용할 train 데이터 셋의 경우 그것이 스팸 메일인지 아닌지 label을 포함할 것이다. 우리가 train 데이터 셋으로 학습한 모델은 train 데이터 셋 뿐만 아니라 모델이 한 번도 확인하지 않은 test 데이터 셋에서 좋은 성능을 보여주어야 일반화가 잘 된, 좋은 모델이라고 할 수 있다. test dataset을 고정하면 생기는 문제 test 데이터 셋을 고정한다면, 그 test 데이터 셋에 대해 모델이 overfit될 수 있다. 그 test set에서만 성능이 잘 나오도록 모델이 학습될 수 있는 것이다. K

2022년 2월 26일
·
0개의 댓글
·
post-thumbnail

CS231n Lecture 2 -2 발표 정리

아래의 그림은 NN 알고리즘을 실제로 적용하여 NN의 decision regions를 그린 것이다. 점: 학습데이터 색: 각 타겟 이 2차원 평면이 나타나게 된 간략한 원리 : 2차원 평면 내의 모든 좌표에서 각 좌표가 어떤 학습 데이터와 가장 가까운지 계산하여 각 좌표를 해당 타겟으로 칠한 결과를 나타낸 것임 여기서 알 수 있는 NN분류기가 좋지 않은 이유? 초록색 영역에 노란색이 끼어있다. 파란색의 영역을 교묘하게 빨간색과 초록색이 침범하고 끼어들어 있다. →노란색은 초록색이어야 했고, 파란색을 침범한 것들은 가짜이거나 noise일 것이다. *노이즈란? : 데이터로서 얻게 되는 Signal(신호) 내에서 배경에 존재하는 말그대로 잡음과 같은

2022년 1월 24일
·
0개의 댓글
·
post-thumbnail

[공모전 수상작 리뷰] Reactjs+Nodejs+python+scikit-learn{ PCA(주성분 분석), VAR(다변량시계열분석)}으로 공연 예매 추이 시나리오 별 예측하는 서비스 만들어보기 - 데이터 분석 편(3)

확정 모델(m9)로 직접 공연 예매 건수 예측해보기 기본적인 피처 설명 기간: 2019.01.01 ~ 2021.08.31 >- #### ottusercount: OTT앱 일 별 사용자 수, >- #### ottusagetime: OTT앱 일 별 사용시간, >- #### deliveryusercount: 배달앱 일 별 사용자 수, >- #### deliveryusagetime: 배달앱 일 별 사용시간, >- #### usedusercount: 중고거래앱 일 별 사용자 수, >- #### usedusagetime: 중고거래앱 일 별 사용시간, >- #### meetingusercount: 화상회의앱 일 별 사용자 수, >- #### meetingusagetime: 화상회의앱 일 별 사용시간, >- #### corona_count: 일 별 코로나 확진자 수, >- #### subway_count: 일 별 지하철 이용자 수, >- #### KOSPI

2022년 1월 6일
·
0개의 댓글
·
post-thumbnail

[공모전 수상작 리뷰] Reactjs+Nodejs+python+scikit-learn{ PCA(주성분 분석), VAR(다변량시계열분석)}으로 공연 예매 추이 시나리오 별 예측하는 서비스 만들어보기 - 데이터 분석 편(2)

데이터 분석을 하며 공부한 점 >- ##### 다양한 소스에서 데이터 수집 >- ##### 수집한 데이터를 목적에 맞게 전처리 >- ##### 데이터 모델링 및 모델 간 교차검증 >- ##### 다변량 시계열 분석 최종 모델 개발 데이터 모델링 및 모델 간 교차검증과정 데이터 로드 및 기본적인 전처리 작업 기본적인 피처 설명 기간: 2019.01.01 ~ 2021.08.31 >- #### ottusercount: OTT앱 일 별 사용자 수, >- #### ottusagetime: OTT앱 일 별 사용시간, >- #### deliveryusercount: 배달앱 일 별 사용자 수, >- #### deliveryusagetime: 배달앱 일 별 사용시간, >- #### usedusercount: 중고거래앱 일 별 사용자 수, >- #### usedusagetime: 중고거래앱 일 별 사용시간, >- #### meetinguserco

2022년 1월 6일
·
0개의 댓글
·