찾다
기술 주변기기일체 포함교차 검증의 중요성은 무시할 수 없습니다!

교차 검증의 중요성은 무시할 수 없습니다!

Nov 06, 2023 pm 08:17 PM
기계 학습교차 검증

본래의 의미가 변하지 않기 위해 다시 표현해야 할 것은 다음과 같습니다. 먼저 교차 검증이 왜 필요한지 알아야 합니다.

교차 검증은 예측 모델의 성능과 일반화 능력을 평가하기 위해 기계 학습 및 통계에서 일반적으로 사용되는 기술입니다. 특히 데이터가 제한되어 있거나 새로운 보이지 않는 데이터로 일반화하는 모델의 능력을 평가할 때 검증은 매우 중요합니다.

교차 검증의 중요성은 무시할 수 없습니다!

어떤 상황에서 교차 검증이 사용되나요?

  • 모델 성능 평가: 교차 검증은 보이지 않는 데이터에 대한 모델 성능을 추정하는 데 도움이 됩니다. 교차 검증은 데이터의 여러 하위 집합에 대해 모델을 훈련하고 평가함으로써 단일 훈련-테스트 분할보다 모델 성능에 대한 더 강력한 추정치를 제공합니다.
  • 데이터 효율성: 데이터가 제한적인 경우 교차 검증을 통해 사용 가능한 모든 샘플을 최대한 활용하여 훈련 및 평가에 모든 데이터를 동시에 사용함으로써 모델 성능에 대한 보다 신뢰할 수 있는 평가를 제공합니다.
  • 하이퍼파라미터 조정: 교차 검증은 모델에 가장 적합한 하이퍼파라미터를 선택하는 데 자주 사용됩니다. 데이터의 다양한 하위 집합에 대한 다양한 하이퍼파라미터 설정을 사용하여 모델의 성능을 평가함으로써 전체 성능 측면에서 가장 좋은 성능을 보이는 하이퍼파라미터 값을 식별할 수 있습니다.
  • 과적합 감지: 교차 검증은 모델이 훈련 데이터에 과적합하는지 여부를 감지하는 데 도움이 됩니다. 모델이 검증 세트보다 훈련 세트에서 훨씬 더 나은 성능을 발휘하는 경우 과적합을 나타낼 수 있으며 정규화 또는 더 간단한 모델 선택과 같은 조정이 필요할 수 있습니다.
  • 일반화 능력 평가: 교차 검증은 보이지 않는 데이터를 일반화하는 모델의 능력을 평가합니다. 여러 데이터 분할에서 모델을 평가함으로써 무작위성이나 특정 학습-테스트 분할에 의존하지 않고 데이터의 기본 패턴을 캡처하는 모델의 능력을 평가하는 데 도움이 됩니다.

교차 검증의 일반적인 아이디어는 그림 5-겹 교차에 표시될 수 있습니다. 각 반복에서 새 모델은 4개의 하위 데이터 세트에서 훈련되고 마지막으로 보관된 하위 데이터 세트에서 테스트되어 모든 데이터가 일치하는지 확인합니다. 사용을 얻었습니다. 평균 점수, 표준 편차 등의 지표를 통해 모델 성능의 진정한 척도가 제공됩니다

교차 검증의 중요성은 무시할 수 없습니다!

모든 것은 K-폴드 크로스오버에서 시작됩니다.

KFold

K-겹 교차 검증이 Sklearn에 통합되었습니다. 다음은 7겹 예입니다.

from sklearn.datasets import make_regressionfrom sklearn.model_selection import KFoldx, y = make_regression(n_samples=100)# Init the splittercross_validation = KFold(n_splits=7)

교차 검증의 중요성은 무시할 수 없습니다!

또 다른 일반적인 작업은 분할을 수행하기 전에 Shuffle을 수행하여 샘플의 원래 순서를 더욱 파괴하는 것입니다. 과적합 위험 최소화:

cross_validation = KFold(n_splits=7, shuffle=True)

교차 검증의 중요성은 무시할 수 없습니다!

이렇게 하면 간단한 k-겹 교차 검증이 완료될 수 있습니다. 소스 코드를 꼭 확인하세요! 소스코드를 꼭 확인해보세요! 소스코드를 꼭 확인해보세요!

StratifiedKFold

StratifiedKFold는 분류 문제를 위해 특별히 설계되었습니다.

일부 분류 문제에서는 데이터가 여러 세트로 나누어지더라도 목표 분포가 변경되지 않고 유지되어야 합니다. 예를 들어, 대부분의 경우 클래스 비율이 30~70인 이진 타겟은 훈련 세트와 테스트 세트에서 여전히 동일한 비율을 유지해야 합니다. 일반 KFold에서는 데이터가 분할되기 전에 섞이기 때문에 이 규칙이 깨집니다. 카테고리 비율은 유지되지 않습니다.

이 문제를 해결하기 위해 Sklearn에서 특별히 분류를 위한 또 다른 스플리터 클래스가 사용됩니다 - StratifiedKFold:

from sklearn.datasets import make_classificationfrom sklearn.model_selection import StratifiedKFoldx, y = make_classification(n_samples=100, n_classes=2)cross_validation = StratifiedKFold(n_splits=7, shuffle=True, random_state=1121218)

교차 검증의 중요성은 무시할 수 없습니다!

KFold와 유사해 보이지만 이제 모든 분할 및 반복에서 클래스 비율은 일관되게 유지됩니다

ShuffleSplit

때때로 훈련/테스트 세트 분할 프로세스는 교차 검증과 매우 유사한 방식으로 여러 번 반복됩니다.

논리적으로는 다양한 무작위 시드를 사용하여 여러 훈련/테스트 세트를 생성합니다. 테스트 세트는 강력한 교차 검증과 유사해야 합니다. 충분한 반복으로 검증 프로세스를 수행합니다. 해당 인터페이스는 Scikit-learn 라이브러리에서도 제공됩니다.

from sklearn.model_selection import ShuffleSplitcross_validation = ShuffleSplit(n_splits=7, train_size=0.75, test_size=0.25)

교차 검증의 중요성은 무시할 수 없습니다!TimeSeriesSplit

데이터 세트가 시계열인 경우 기존 교차 검증을 사용할 수 없으므로 이 문제를 해결하려면 Sklearn에서 또 다른 Splitter인 TimeSeriesSplit을 제공하는 것을 참조하세요.

from sklearn.model_selection import TimeSeriesSplitcross_validation = TimeSeriesSplit(n_splits=7)

교차 검증의 중요성은 무시할 수 없습니다! 검증 세트가 항상 훈련 세트의 인덱스 뒤에 위치하는 상황 아래에서 그래프를 볼 수 있습니다. 이는 인덱스가 날짜이기 때문에 실수로 미래 날짜에 시계열 모델을 훈련하고 이전 날짜를 예측할 수 없기 때문입니다

비독립적이고 동일하게 분포된(non-IID) 데이터의 교차 검증

위 방법은 독립적이고 동일하게 분포된 데이터 세트에 대해 처리됩니다. 즉, 데이터 생성 과정은 다른 샘플의 영향을 받지 않습니다

그러나 , 어떤 경우에는 데이터가 IID(Independent and Identified Distribution) 조건을 충족하지 않습니다. 즉, 일부 샘플 간에 종속 관계가 있습니다. 이러한 상황은 Google Brain Ventilator Pressure 대회와 같은 Kaggle 대회에서도 발생합니다. 이 데이터는 수천 번의 호흡(들숨과 날숨) 동안 인공폐의 기압 값을 기록하며, 매 호흡마다 기록됩니다. 각 호흡 과정에 대한 데이터 행은 약 80개이며, 이러한 행은 서로 관련되어 있습니다. 이 경우 데이터 분할이 "호흡 과정 중간에 발생할" 수 있기 때문에 전통적인 교차 검증 방법을 사용할 수 없습니다. 그룹 데이터는 관련되어 있습니다. 예를 들어 여러 환자로부터 의료 데이터를 수집하는 경우 각 환자는 여러 샘플을 갖게 됩니다. 하지만 이러한 데이터는 환자 개개인의 차이에 영향을 받을 가능성이 높기 때문에 그룹화도 필요합니다

특정 그룹에 대해 훈련된 모델이 보이지 않는 다른 그룹에도 잘 일반화될 수 있기를 바라는 경우가 많습니다. 이러한 데이터 그룹을 "태그"로 지정하고 이를 구별하는 방법을 알려줍니다.

Sklearn에서는 이러한 상황을 처리하기 위해 여러 인터페이스가 제공됩니다.

GroupKFold
  • StratifiedGroupKFold
  • LeaveOneGroupOut
  • LeavePGroupsOut
  • GroupShuffleSplit
  • 교차 유효성에 대한 아이디어를 이해하는 것이 좋습니다. ation 및 방법 그것을 구현하려면 Sklearn 소스 코드를 살펴보십시오. 내장을 살찌우는 나쁜 방법은 아닙니다. 또한 자신의 데이터 세트에 대한 명확한 정의가 필요하며 데이터 전처리가 정말 중요합니다.

위 내용은 교차 검증의 중요성은 무시할 수 없습니다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 51CTO.COM에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
요리 혁신 요리 : 인공 지능이 식품 서비스를 변화시키는 방법요리 혁신 요리 : 인공 지능이 식품 서비스를 변화시키는 방법Apr 12, 2025 pm 12:09 PM

AI 식품 준비 여전히 초기 사용 중이지만 AI 시스템은 음식 준비에 점점 더 많이 사용되고 있습니다. AI 구동 로봇은 부엌에서 햄버거를 뒤집기, 피자 만들기 또는 SA 조립과 같은 음식 준비 작업을 자동화하는 데 사용됩니다

파이썬 네임 스페이스 및 가변 범위에 대한 포괄적 인 안내서파이썬 네임 스페이스 및 가변 범위에 대한 포괄적 인 안내서Apr 12, 2025 pm 12:00 PM

소개 파이썬 기능에서 변수의 네임 스페이스, 범위 및 동작을 이해하는 것은 효율적으로 작성하고 런타임 오류 또는 예외를 피하는 데 중요합니다. 이 기사에서는 다양한 ASP를 탐구 할 것입니다

비전 언어 모델 (VLMS)에 대한 포괄적 인 안내서비전 언어 모델 (VLMS)에 대한 포괄적 인 안내서Apr 12, 2025 am 11:58 AM

소개 생생한 그림과 조각으로 둘러싸인 아트 갤러리를 걷는 것을 상상해보십시오. 이제 각 작품에 질문을하고 의미있는 대답을 얻을 수 있다면 어떨까요? “어떤 이야기를하고 있습니까?

Mediatek은 Kompanio Ultra 및 Dimensity 9400으로 프리미엄 라인업을 향상시킵니다.Mediatek은 Kompanio Ultra 및 Dimensity 9400으로 프리미엄 라인업을 향상시킵니다.Apr 12, 2025 am 11:52 AM

제품 케이던스를 계속하면서 이번 달 Mediatek은 새로운 Kompanio Ultra and Dimensity 9400을 포함한 일련의 발표를했습니다. 이 제품은 스마트 폰 용 칩을 포함하여 Mediatek 비즈니스의 전통적인 부분을 채우고 있습니다.

이번 주 AI : Walmart는 패션 트렌드를 설정하기 전에 패션 트렌드를 설정합니다.이번 주 AI : Walmart는 패션 트렌드를 설정하기 전에 패션 트렌드를 설정합니다.Apr 12, 2025 am 11:51 AM

#1 Google은 Agent2agent를 시작했습니다 이야기 : 월요일 아침입니다. AI 기반 채용 담당자로서 당신은 더 똑똑하지 않고 더 똑똑하지 않습니다. 휴대 전화에서 회사의 대시 보드에 로그인합니다. 세 가지 중요한 역할이 공급되고, 검증되며, 예정된 FO가 있음을 알려줍니다.

생성 AI는 사이코브블을 만난다생성 AI는 사이코브블을 만난다Apr 12, 2025 am 11:50 AM

나는 당신이되어야한다고 생각합니다. 우리 모두는 Psychobabble이 다양한 심리적 용어를 혼합하고 종종 이해할 수 없거나 완전히 무의미한 모듬 채터로 구성되어 있다는 것을 알고 있습니다. 당신이 fo를 뿌리기 위해해야 ​​할 일

프로토 타입 : 과학자들은 종이를 플라스틱으로 바꿉니다프로토 타입 : 과학자들은 종이를 플라스틱으로 바꿉니다Apr 12, 2025 am 11:49 AM

이번 주 발표 된 새로운 연구에 따르면 2022 년에 제조 된 플라스틱의 9.5%만이 재활용 재료로 만들어졌습니다. 한편, 플라스틱은 계속해서 매립지와 생태계에 전 세계에 쌓이고 있습니다. 그러나 도움이 진행 중입니다. 엥인 팀

AI 분석가의 부상 : AI 혁명에서 이것이 가장 중요한 일이 될 수있는 이유AI 분석가의 부상 : AI 혁명에서 이것이 가장 중요한 일이 될 수있는 이유Apr 12, 2025 am 11:41 AM

최근 Enterprise Analytics 플랫폼 Alteryx의 CEO 인 Andy MacMillan과의 대화는 AI 혁명 에서이 비판적이면서도 저평가 된 역할을 강조했습니다. MacMillan에서 설명했듯이 원시 비즈니스 데이터와 AI-Ready Informat의 격차

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기