CRPS: 베이지안 기계 학습 모델의 점수 매기기 기능
CRPS(연속 순위 확률 점수) 또는 "연속 순위 확률 점수"는 분포 예측을 실제 값과 비교하는 함수 또는 통계입니다.
머신러닝 워크플로의 중요한 부분은 모델 평가입니다. 프로세스 자체는 상식으로 간주될 수 있습니다. 데이터를 훈련 세트와 테스트 세트로 분할하고, 훈련 세트에서 모델을 훈련하고, 채점 기능을 사용하여 테스트 세트에서 성능을 평가합니다.
채점 함수(또는 측정항목)는 실제 값과 그 예측을 비교 가능한 단일 값으로 매핑합니다[1]. 예를 들어 연속 예측의 경우 RMSE, MAE, MAPE 또는 R-제곱과 같은 점수 함수를 사용할 수 있습니다. 예측이 점별 추정이 아니라 분포라면 어떨까요?
베이지안 기계 학습에서 예측은 일반적으로 점별 추정이 아니라 값의 분포입니다. 예를 들어 예측은 분포의 추정된 매개변수이거나 비모수적 경우 MCMC 방법의 샘플 배열일 수 있습니다.
이 경우 기존 채점 기능은 통계 설계에 적합하지 않습니다. 예측 분포를 평균 또는 중앙값으로 집계하면 예측 분포의 분산 및 형태에 대한 상당한 정보가 손실됩니다.
CRPS
CRPS(Continuous Graded Probability Score)는 단일 실제 값을 누적 분포 함수(CDF)와 비교하는 분수 함수입니다.
1970년대에 처음 소개되었으며[4] 주로 사용됩니다. 일기예보는 이제 문헌과 산업계에서 새로운 주목을 받고 있습니다[1][6]. 이는 목표 변수가 연속적이고 모델이 목표의 분포를 예측할 때 모델 성능을 평가하는 측정항목으로 사용할 수 있습니다. 예로는 베이지안 회귀 또는 베이지안 시계열 모델이 있습니다[5].
CRPS는 CDF를 사용하여 모수적 및 비모수적 예측 모두에 유용합니다. 많은 분포의 경우 CRPS [3]에는 분석 표현식이 있고 비모수적 예측의 경우 CRPS는 경험적 누적 분포 함수(eCDF)를 사용합니다.
테스트 세트의 각 관찰에 대한 CRPS를 계산한 후 결과를 단일 값으로 집계해야 합니다. RMSE 및 MAE와 유사하게 (가중치 가능) 평균을 사용하여 요약됩니다.
단일 값을 분포와 비교할 때의 주요 과제는 단일 값을 분포 표현으로 변환하는 방법입니다. CRPS는 지표 함수를 사용하여 Ground Truth를 퇴화된 분포로 변환하여 이 문제를 해결합니다. 예를 들어 참값이 7이면 다음을 사용할 수 있습니다.
표시기 함수는 유효한 CDF이며 CDF의 모든 요구 사항을 충족할 수 있습니다. 그런 다음 예측된 분포를 실제 값의 퇴화된 분포와 비교할 수 있습니다. 우리는 예측 분포가 가능한 한 현실에 가깝기를 원합니다. 따라서 이는 두 CDF 사이의 (제곱) 면적을 측정하여 수학적으로 표현할 수 있습니다.
MAE 대 MAE 관계
CRPS 대 유명한 MAE( 평균 절대 오류)는 밀접한 관련이 있습니다. 점별 예측을 취하고 이를 퇴화된 CDF로 처리하고 이를 CRPS 방정식에 삽입하면 다음과 같은 결과를 얻습니다.
따라서 예측 분포가 퇴화된 분포(예: 점별 추정)인 경우 CRPS는 MAE로 줄입니다. 이는 또 다른 관점에서 CRPS를 이해하는 데 도움이 됩니다. 이는 분포 예측에 대한 MAE를 일반화하는 것으로 볼 수 있거나, 예측 분포가 퇴화될 때 MAE는 CRPS의 특별한 경우라고 볼 수 있습니다.
모델 예측이 모수적 분포인 경우(예: 분포 모수를 예측해야 하는 경우) CRPS는 일부 공통 분포에 대한 분석 표현을 갖습니다[3]. 모델이 정규 분포의 매개변수 μ 및 σ를 예측하는 경우 CRPS는 다음 공식을 사용하여 계산할 수 있습니다.
이 체계는 베타, 감마, 로지스틱, 로그 정규 분포 등과 같은 알려진 분포를 해결할 수 있습니다[3 ].
eCDF 계산은 예측이 비모수적이거나 더 구체적으로 예측이 일련의 시뮬레이션인 경우 지루한 작업입니다. 그러나 CRPS는 다음과 같이 표현될 수도 있습니다:
여기서 X, X'는 F가 독립적이고 동일하게 분포됩니다. 이러한 표현식은 여전히 약간의 계산이 필요하지만 계산하기가 더 쉽습니다.
Python 구현
import numpy as np # Adapted to numpy from pyro.ops.stats.crps_empirical # Copyright (c) 2017-2019 Uber Technologies, Inc. # SPDX-License-Identifier: Apache-2.0 def crps(y_true, y_pred, sample_weight=None): num_samples = y_pred.shape[0] absolute_error = np.mean(np.abs(y_pred - y_true), axis=0) if num_samples == 1: return np.average(absolute_error, weights=sample_weight) y_pred = np.sort(y_pred, axis=0) diff = y_pred[1:] - y_pred[:-1] weight = np.arange(1, num_samples) * np.arange(num_samples - 1, 0, -1) weight = np.expand_dims(weight, -1) per_obs_crps = absolute_error - np.sum(diff * weight, axis=0) / num_samples**2 return np.average(per_obs_crps, weights=sample_weight)
NRG 형식 [2]에 따라 구현된 CRPS 기능. pyroppl[6]
import numpy as np def crps(y_true, y_pred, sample_weight=None): num_samples = y_pred.shape[0] absolute_error = np.mean(np.abs(y_pred - y_true), axis=0) if num_samples == 1: return np.average(absolute_error, weights=sample_weight) y_pred = np.sort(y_pred, axis=0) b0 = y_pred.mean(axis=0) b1_values = y_pred * np.arange(num_samples).reshape((num_samples, 1)) b1 = b1_values.mean(axis=0) / num_samples per_obs_crps = absolute_error + b0 - 2 * b1 return np.average(per_obs_crps, weights=sample_weight)
에서 수정됨 위 코드는 PWM 형식[2]을 기반으로 CRPS를 구현합니다.
요약
CRPS(연속 순위 확률 점수)는 단일 실제 값을 예측 분포와 비교하는 점수 함수입니다. 이 속성은 모델이 일반적으로 점별 추정보다는 분포 예측을 출력하는 베이지안 기계 학습과 관련이 있습니다. 이는 분포 예측을 위해 잘 알려진 MAE를 일반화한 것으로 볼 수 있습니다.
모수적 예측을 위한 분석 표현식이 있고 비모수적 예측을 위한 간단한 계산이 가능합니다. CRPS는 지속적인 목표를 가지고 베이지안 기계 학습 모델의 성능을 평가하기 위한 새로운 표준 방법이 될 수 있습니다.
위 내용은 CRPS: 베이지안 기계 학습 모델의 점수 매기기 기능의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











기계 학습 및 데이터 과학 분야에서 모델 해석 가능성은 항상 연구자와 실무자의 초점이었습니다. 딥러닝, 앙상블 방법 등 복잡한 모델이 널리 적용되면서 모델의 의사결정 과정을 이해하는 것이 특히 중요해졌습니다. explainable AI|XAI는 모델의 투명성을 높여 머신러닝 모델에 대한 신뢰와 확신을 구축하는 데 도움이 됩니다. 모델 투명성을 향상시키는 것은 여러 복잡한 모델의 광범위한 사용은 물론 모델을 설명하는 데 사용되는 의사 결정 프로세스와 같은 방법을 통해 달성할 수 있습니다. 이러한 방법에는 기능 중요도 분석, 모델 예측 간격 추정, 로컬 해석 가능성 알고리즘 등이 포함됩니다. 특성 중요도 분석은 모델이 입력 특성에 미치는 영향 정도를 평가하여 모델의 의사결정 과정을 설명할 수 있습니다. 모델 예측 구간 추정

C++의 기계 학습 알고리즘이 직면하는 일반적인 과제에는 메모리 관리, 멀티스레딩, 성능 최적화 및 유지 관리 가능성이 포함됩니다. 솔루션에는 스마트 포인터, 최신 스레딩 라이브러리, SIMD 지침 및 타사 라이브러리 사용은 물론 코딩 스타일 지침 준수 및 자동화 도구 사용이 포함됩니다. 실제 사례에서는 Eigen 라이브러리를 사용하여 선형 회귀 알고리즘을 구현하고 메모리를 효과적으로 관리하며 고성능 행렬 연산을 사용하는 방법을 보여줍니다.

번역기 | 검토자: Li Rui | Chonglou 인공 지능(AI) 및 기계 학습(ML) 모델은 오늘날 점점 더 복잡해지고 있으며 이러한 모델에서 생성되는 출력은 이해관계자에게 설명할 수 없는 블랙박스입니다. XAI(Explainable AI)는 이해관계자가 이러한 모델의 작동 방식을 이해할 수 있도록 하고, 이러한 모델이 실제로 의사 결정을 내리는 방식을 이해하도록 하며, AI 시스템의 투명성, 이 문제를 해결하기 위한 신뢰 및 책임을 보장함으로써 이 문제를 해결하는 것을 목표로 합니다. 이 기사에서는 기본 원리를 설명하기 위해 다양한 설명 가능한 인공 지능(XAI) 기술을 살펴봅니다. 설명 가능한 AI가 중요한 몇 가지 이유 신뢰와 투명성: AI 시스템이 널리 수용되고 신뢰되려면 사용자가 의사 결정 방법을 이해해야 합니다.

기계 학습 분야에서 Go 언어의 적용 가능성은 엄청납니다. 동시성: 병렬 프로그래밍을 지원하며 기계 학습 작업에서 계산 집약적인 작업에 적합합니다. 효율성: 가비지 수집기 및 언어 기능은 대규모 데이터 세트를 처리할 때에도 코드의 효율성을 보장합니다. 사용 용이성: 구문이 간결하므로 기계 학습 애플리케이션을 쉽게 배우고 작성할 수 있습니다.

MetaFAIR는 대규모 기계 학습을 수행할 때 생성되는 데이터 편향을 최적화하기 위한 새로운 연구 프레임워크를 제공하기 위해 Harvard와 협력했습니다. 대규모 언어 모델을 훈련하는 데는 수개월이 걸리고 수백 또는 수천 개의 GPU를 사용하는 것으로 알려져 있습니다. LLaMA270B 모델을 예로 들면, 훈련에는 총 1,720,320 GPU 시간이 필요합니다. 대규모 모델을 교육하면 이러한 워크로드의 규모와 복잡성으로 인해 고유한 체계적 문제가 발생합니다. 최근 많은 기관에서 SOTA 생성 AI 모델을 훈련할 때 훈련 프로세스의 불안정성을 보고했습니다. 이는 일반적으로 손실 급증의 형태로 나타납니다. 예를 들어 Google의 PaLM 모델은 훈련 과정에서 최대 20번의 손실 급증을 경험했습니다. 수치 편향은 이러한 훈련 부정확성의 근본 원인입니다.

1. SUM 함수는 열이나 셀 그룹의 숫자를 합하는 데 사용됩니다(예: =SUM(A1:J10)). 2. AVERAGE 함수는 열이나 셀 그룹에 있는 숫자의 평균을 계산하는 데 사용됩니다(예: =AVERAGE(A1:A10)). 3. COUNT 함수, 열이나 셀 그룹의 숫자나 텍스트 수를 세는 데 사용됩니다. 예: =COUNT(A1:A10) 4. IF 함수, 지정된 조건을 기반으로 논리적 판단을 내리고 결과를 반환하는 데 사용됩니다. 해당 결과.

머신 러닝은 명시적으로 프로그래밍하지 않고도 컴퓨터가 데이터로부터 학습하고 능력을 향상시킬 수 있는 능력을 제공하는 인공 지능의 중요한 분야입니다. 머신러닝은 이미지 인식, 자연어 처리, 추천 시스템, 사기 탐지 등 다양한 분야에서 폭넓게 활용되며 우리의 삶의 방식을 변화시키고 있습니다. 기계 학습 분야에는 다양한 방법과 이론이 있으며, 그 중 가장 영향력 있는 5가지 방법을 "기계 학습의 5개 학교"라고 합니다. 5개 주요 학파는 상징학파, 연결주의 학파, 진화학파, 베이지안 학파, 유추학파이다. 1. 상징주의라고도 알려진 상징주의는 논리적 추론과 지식 표현을 위해 상징을 사용하는 것을 강조합니다. 이 사고 학교는 학습이 기존을 통한 역연역 과정이라고 믿습니다.

C++에서 기계 학습 알고리즘의 구현에는 다음이 포함됩니다. 선형 회귀: 연속 변수를 예측하는 데 사용됩니다. 단계에는 데이터 로드, 가중치 및 편향 계산, 매개변수 업데이트 및 예측이 포함됩니다. 로지스틱 회귀: 이산형 변수를 예측하는 데 사용됩니다. 이 프로세스는 선형 회귀와 유사하지만 예측에 시그모이드 함수를 사용합니다. 지원 벡터 머신(Support Vector Machine): 지원 벡터 계산 및 레이블 예측을 포함하는 강력한 분류 및 회귀 알고리즘입니다.
