Datawhale学習ノート【アリ雲天池金融風制御-貸付違約予測】task 1試合問題理解
阿里雲天池学習試合【金融風制御-貸付違約予測】試合問題データ及び背景 学習目標 試合問題概況 データ概要 予測指標 予測指標の直接導入 sklearnの一般的な評価指標 経験総括
試合問題データ及び背景
阿里雲天池学習試合【金融風制御-貸付違約予測】https://tianchi.aliyun.com/competition/entrance/531830/introduction
学習目標
1.試合問題のデータと目標を理解する.明確な採点システム
試合問題の概況
試合は参加選手に与えられたデータセットに基づいてモデルを構築し、金融リスクを予測することを要求した.試合問題は金融リスクの予測を任務とし、データセットの申し込み後に表示され、ダウンロードすることができる.このデータはあるクレジットプラットフォームのローン記録から来ており、総データ量は120 wを超え、47列の変数情報を含み、そのうち15列は匿名変数である.試合の公平性を確保するため、トレーニングセットとして80万本、テストセットAとして20万本、テストセットBとして20万本を抽出し、employmentTitle、purpose、postCode、titleなどの情報を脱敏する.
データの概要 idは貸付明細書に割り当てられた唯一の信用状識別 である. loanAmnt貸付金額 term貸付期間(year) interestRate貸付金利 installment分割支払金額 grade貸付等級 subGrade貸付等級の子 employmentTitle就業職名 employmentLength就業年限(年) homeOwnership借入人が登録時に提供した家屋所有権状況 annualIncome年収 verificationStatus検証ステータス issueDateローン発行の月 purpose借入人の貸付申請時の貸付用途カテゴリ postCode借入人がローン申請で提供した郵便番号の上位3桁の regionCode地区コード dti債務収入比 delinquency_2 years借入人の過去2年間の信用書類の30日以上の違約事件数 ficoRangeLow借入人がローン発行時のficoが属する下限範囲 ficoRangeHigh借入人がローン発行時のficoが属する上限範囲 openAcc借入人信用書類中の未決済信用額の数量 pubRecが公共記録をけなす数 pubRecBankruptcies公開レコードクリア数 revolBal貸付回転残高合計 revolUtilサイクル使用率、または借り手が使用できるすべてのサイクルクレジットに対するクレジット金額 を使用する totalAcc借入人信用ファイルの現在の信用額総数 initialListStatusローンの初期リスト状態 アプリケーションタイプは、ローンが個人申請なのか、それとも2人の共同借入人との共同申請なのかを示しています. earliesCreditLine借り手が最初に報告した信用限度額が開設された月 title借入人が提供する貸付名 policyCode公開利用可能なポリシー_コード=1新製品非公開利用ポリシー_コード=2 nシリーズ匿名特徴匿名特徴n 0-n 14、一部の貸し手行為カウント特徴の処理 予測指標
競技はAUCを評価指標とする.AUC(Area Under Curve)は、ROC曲線の下で座標軸に囲まれた面積として定義される.
予測指標の直接導入
個人の専門知識が限られているため、AUCの定義をうまく説明できないシロが自分の予測した結果をどのように迅速に評価するかは重要な問題です.ここでは、どのように迅速に評価する方法をsklearnに導入することをお勧めします.metricsでは評価の大部分を提供しており、予測結果の評価を直接行うことができます.
sklearnでよく見られる評価指標
評価指標分類問題(Classification)
関数(評価指標詳細は公式文書参照)
評価側重点
accuracy
metrics.accuracy_score
正確に予測されたサンプル数の総予測サンプル数に対する比
average_precision
metrics.average_precision_score
すべての予測が正しいサンプルのうち、どれだけが本当の正しいサンプルであるか
f1
metrics.f1_score
F値は精度1とリコール率2の平均値である
f1_micro
metrics.f1_score
全体的なTP 3,FN 4,FP 5の数を先に計算してからF 1を計算する
f1_macro
metrics.f1_score
まず各カテゴリのF 1値を計算してから平均します.例えば、次のような多分類問題があります.全部で1,2,3,4の4つのカテゴリがあります.まず1のF 1,2のF 1,3のF 1,4のF 1を算出してから、平均(F 1+F 2+F 3+4)/4を取ることができます.
f1_weighted
metrics.f1_score
各カテゴリのF 1値を算出し、対応するカテゴリラベルが占めるサンプルの割合に乗算し、加算してf 1_を得るweighted
f1_samples
metrics.f1_score
各インスタンスの指標を計算し、その平均値を見つけます.
neg_log_loss
metrics.log_loss
すなわちlog_loss(y_true,y_pred)は、正のスコア-スコアが小さいほど、パフォーマンスが向上します.
precision etc.
metrics.precision_score
精度1計算
recall etc.
metrics.recall_score
リコール率2計算
roc_auc
metrics.roc_auc_score
特性曲線(ROC AUC)における面積を予測スコアから計算した.(本試合で用いた評価指標)
評価指標クラスタリング問題(Clustering)
関数(評価指標詳細は公式文書参照)
評価側重点
adjusted_rand_score
metrics.adjusted_rand_score
2つのクラスタ間の類似度メトリックは、すべてのサンプルペアを考慮し、予測されたクラスタリングと実際のクラスタリングで同じまたは異なるクラスタリングに割り当てられたペアを計算することによって計算される.
評価指標回帰問題(Regression)
関数(評価指標詳細は公式文書参照)
評価側重点
neg_mean_absolute_error
metrics.mean_absolute_error
へいきんぜったいごさかいきそんしつ
neg_mean_squared_error
metrics.mean_squared_error
へいきんごさかいきそんしつ
neg_median_absolute_error
metrics.median_absolute_error
ちゅうかんぜったいごさかいきそんしつ
r2
metrics.r2_score
R^2(決定係数)はスコア関数に戻ります.
今回の試合で使われた評価指標はroc_aucの使い方は以下の通りです
その他の評価指標関数の詳細は、対応する関数名をクリックして詳細な解釈ドキュメントを参照してください.
経験の総括試合開始前に試合問題の目標、評価指標を理解する. 試合はいつ始まり、いつ終わり、いつBランキングのデータを交換しますか.Aランキング:予測結果ファイルを提出し、点数を返してランキングを行い、初歩的な判断のみを行う:最終オンライン成績とランキングはBランキングの成績とランキングを基準にABランキングを採用する主な原因は機械学習モデルの汎化能力を考察することである.簡単に言えば、テストセットがAとBに区分され、「テストセット」のすべての予測結果(AとBを含む)を提出することである.ランキングには試験集Aの成績、すなわちAの成績しか表示されず、最終的な成績はやはりBの成績を見る必要がある. はこの試合と似たような試合があるかどうか参考にすることができます. オンラインで結果を提出する回数は限られていることが多く、毎日提出できる回数を事前に理解しておくと、総提出回数を制限する試合もあるかもしれません. 試合で使用される評価指標はどのようなもので、同じ評価指標をオフライン検証の方式として選択することができる. は、訓練セットを比例的に再び訓練セットとテストセットに分割し、モデルの汎化能力を向上させることができる.
END by xiaoc【Datawhale学習群名称:南山有鳶】
精度:すべての予測が正しいサンプルのうち、どれだけが本当の正しいサンプルであるかは、キャリブレーション率として理解できる.Precision=TP/(TP+FP)すなわち、正確に予測された正例数/予測正例総数↩︎ ↩︎
リコール率:実際の正サンプルでは、分類器がどれだけ予測できるか.真率と等しく,完全率として理解できる.Recall=TP/(TP+FN)すなわち正確に予測された正例数/実例総数↩︎ ↩︎
真陽性(TP):予測は正であり,実際にも正である.↩︎
偽陰性(FN):予測は負、実際は正↩︎
偽陽性(FP):予測は正、実際は負↩︎
試合問題データ及び背景
阿里雲天池学習試合【金融風制御-貸付違約予測】https://tianchi.aliyun.com/competition/entrance/531830/introduction
学習目標
1.試合問題のデータと目標を理解する.明確な採点システム
試合問題の概況
試合は参加選手に与えられたデータセットに基づいてモデルを構築し、金融リスクを予測することを要求した.試合問題は金融リスクの予測を任務とし、データセットの申し込み後に表示され、ダウンロードすることができる.このデータはあるクレジットプラットフォームのローン記録から来ており、総データ量は120 wを超え、47列の変数情報を含み、そのうち15列は匿名変数である.試合の公平性を確保するため、トレーニングセットとして80万本、テストセットAとして20万本、テストセットBとして20万本を抽出し、employmentTitle、purpose、postCode、titleなどの情報を脱敏する.
データの概要
競技はAUCを評価指標とする.AUC(Area Under Curve)は、ROC曲線の下で座標軸に囲まれた面積として定義される.
予測指標の直接導入
個人の専門知識が限られているため、AUCの定義をうまく説明できないシロが自分の予測した結果をどのように迅速に評価するかは重要な問題です.ここでは、どのように迅速に評価する方法をsklearnに導入することをお勧めします.metricsでは評価の大部分を提供しており、予測結果の評価を直接行うことができます.
sklearnでよく見られる評価指標
評価指標分類問題(Classification)
関数(評価指標詳細は公式文書参照)
評価側重点
accuracy
metrics.accuracy_score
正確に予測されたサンプル数の総予測サンプル数に対する比
average_precision
metrics.average_precision_score
すべての予測が正しいサンプルのうち、どれだけが本当の正しいサンプルであるか
f1
metrics.f1_score
F値は精度1とリコール率2の平均値である
f1_micro
metrics.f1_score
全体的なTP 3,FN 4,FP 5の数を先に計算してからF 1を計算する
f1_macro
metrics.f1_score
まず各カテゴリのF 1値を計算してから平均します.例えば、次のような多分類問題があります.全部で1,2,3,4の4つのカテゴリがあります.まず1のF 1,2のF 1,3のF 1,4のF 1を算出してから、平均(F 1+F 2+F 3+4)/4を取ることができます.
f1_weighted
metrics.f1_score
各カテゴリのF 1値を算出し、対応するカテゴリラベルが占めるサンプルの割合に乗算し、加算してf 1_を得るweighted
f1_samples
metrics.f1_score
各インスタンスの指標を計算し、その平均値を見つけます.
neg_log_loss
metrics.log_loss
すなわちlog_loss(y_true,y_pred)は、正のスコア-スコアが小さいほど、パフォーマンスが向上します.
precision etc.
metrics.precision_score
精度1計算
recall etc.
metrics.recall_score
リコール率2計算
roc_auc
metrics.roc_auc_score
特性曲線(ROC AUC)における面積を予測スコアから計算した.(本試合で用いた評価指標)
評価指標クラスタリング問題(Clustering)
関数(評価指標詳細は公式文書参照)
評価側重点
adjusted_rand_score
metrics.adjusted_rand_score
2つのクラスタ間の類似度メトリックは、すべてのサンプルペアを考慮し、予測されたクラスタリングと実際のクラスタリングで同じまたは異なるクラスタリングに割り当てられたペアを計算することによって計算される.
評価指標回帰問題(Regression)
関数(評価指標詳細は公式文書参照)
評価側重点
neg_mean_absolute_error
metrics.mean_absolute_error
へいきんぜったいごさかいきそんしつ
neg_mean_squared_error
metrics.mean_squared_error
へいきんごさかいきそんしつ
neg_median_absolute_error
metrics.median_absolute_error
ちゅうかんぜったいごさかいきそんしつ
r2
metrics.r2_score
R^2(決定係数)はスコア関数に戻ります.
今回の試合で使われた評価指標はroc_aucの使い方は以下の通りです
import numpy as np
from sklearn.metrics import roc_auc_score
y_true = np.array([0, 0, 1, 1])
y_scores = np.array([0.1, 0.4, 0.35, 0.8])
roc_auc_score(y_true, y_scores)
# 0.75
その他の評価指標関数の詳細は、対応する関数名をクリックして詳細な解釈ドキュメントを参照してください.
経験の総括
END by xiaoc【Datawhale学習群名称:南山有鳶】
精度:すべての予測が正しいサンプルのうち、どれだけが本当の正しいサンプルであるかは、キャリブレーション率として理解できる.Precision=TP/(TP+FP)すなわち、正確に予測された正例数/予測正例総数↩︎ ↩︎
リコール率:実際の正サンプルでは、分類器がどれだけ予測できるか.真率と等しく,完全率として理解できる.Recall=TP/(TP+FN)すなわち正確に予測された正例数/実例総数↩︎ ↩︎
真陽性(TP):予測は正であり,実際にも正である.↩︎
偽陰性(FN):予測は負、実際は正↩︎
偽陽性(FP):予測は正、実際は負↩︎