kaggle-homecredit's People
kaggle-homecredit's Issues
bureau x 契約日(半年)
ローン金額系でkmeans
ローンにもいくつかの種類があり、分割回数や金額が似ているものは似た傾向があるかも。
元の次元が小さいので、prevと組み合わせないと効果が薄いかも
★bureau x 契約日(直近1年/2年)
DPDに周期性あるか
同一職種内での相対的な年齢、収入、ローン額
organization_typeかoccupation_typeの同一グループ内での相対値。
gossをstackingに加える
Installment x ローン種別(Credit/Cash)
NNでのdiversify
Null比率が大きい特徴のデバッグ&削除
Pos Cash x 契約日(直近3年)
日付系はlogとってからmean
Cashローンの過去の予実(DAYS_LAST_DUE_1ST_VERSIONとDAYS_LAST_DUEの差)
seed averagingの実装
いつDPDしたかで評価を変える
金融情勢によってDPDの意味合いが変わるかも
★Activeなローンの総合計金額
Installment x Active Loan
DPDの1階微分/2階微分
#33 と近いアイデア。以下の2つの行動を区別したい。
- 連続して延滞を続け、ある時点で一気に支払った場合
- DPDは毎月の支払ごとに1か月分積みあがっていく。
- →1階微分は30day、2階微分は0day.
- 毎月遅延しながら支払っている場合
- DPDは累積せず、毎月近い値を中心にばらつく。
- →1階微分が0
(仮説)testはtrainより後のデータ
- 同一ユーザーと思われる申し込みの組がtrain/testに複数観測されるが、いずれもtestの方が100日以上後
- AMT_CREDITとAMT_ANNUITYの比率の分布が、train/test間でズレている
- 期間の違いによる金利の差を反映している?
- その他、train/testで明確にデータの分布が違う
- Adversarial ValidationでAUCが0.98くらい出る
どの申し込みも直近8年(2922days)分のデータだけ使われているようなので、train/testで集計期間が変わる訳では無い
bureau-balanceのSTATUSで2-gram BoW
bureau-balanceを月度の古い順に並べた時の、STATUSの遷移情報を2-gramのcountで表現する。
Stackingを一本通す
★抱えているアクティブなローンの額と、今回のローン額/支払額の比率
新規申し込みするローンが、その人にとって相対的に大きな額かどうか
Bureau / 平均の代わりにPercentile(20,50,80%)をとる
Bureauはノイズが多いので、**値のほうが効くかも?
(仮説)applicationの中に家族がいる
家族の数、居住エリア、家の情報が完全一致する人がいるか?
近い金額のローンにおける相対dpd
同種のローンで他の人より延滞が多い=延滞リスクが高い?
前倒し支払した金額の、総支払額に対する比率
Activeかつ金額最大のローンに対応したPrevの特徴量を、そのまま加える
e.g. Bosch Solution
一番重要そうなPrevious Loanの列をそのままApplicationに加える
カザフスタンのインフレ率で過去のローンを補正
外部データは使える。
過去の支払い履歴をカテゴリ変数化
- 過去12ヶ月の支払いした/しないを12bitで表現し、そのままカテゴリ変数化するかtarget encoding
pos/credit/bureauそれぞれで実施できる。また、
- 支払いが遅延したかどうか
- リボ払いで買い物したかどうか
などのバリエーションが作れる
ローン間の同期をみる
返済遅延月にクレジットを借りているなど、特にDPDを起こしている月のアクションに注目
アクティブの定義を変えてみる(12->6)
「アクティブなローン」を「最後のMonthly StatusがActiveで、かつ直近12か月に更新があったもの」と定義しているが、これを直近6か月に変えてみる
Credit x STATUS=Active
ハイパーパラメータ調整
max_bin, num_leaves, colsample
application.SK_ID_CURR と prev.SK_ID_PREVに、同一内容のローンがある
applicationにおけるSK_ID_CURR == 208252 (target==0)と、prevにおけるSK_ID_PREV == 2414778 (3回分の支払記録あり、DPD == 0)が同じローンを指している
Bureauのローン残高の推定値 (AMT_CREDIT_SUM_DEBTの欠損が多すぎるので、他から補完)
PrevからInstall.DPDを予測
- Prevのローン情報+Appricationのユーザー情報から、InstallでDPDが起きるかどうかを予測するモデルを作る
- 学習したモデルでApplicationのDPDを予測したものを特徴量に加える
金額が近いローンに関する過去のDPD
金額のオーダーが近いもののほうが重要度が高い?
Revolving Loanをダウンサンプリング
TrainとTestでRevlovingの比率が顕著に異なる。
Pos Cash x 契約日(直近3年)
収入と現在アクティブなローン月度支払の比率
相対ローン額の計算に、previous applicationも使う
#49 の派生。
同一グループ内での相対ローン額を計算する際、prevを使ってaugmentationする
金額系の単位を持つ特徴量同士で比をとる
credit vs applicationなど、テーブルを跨いだ分が余地ありそう
Pos Cash x STATUS=Active
(仮説)bureauは複数の信用機関からの情報からなる
情報の信頼度に差があるなら、分割したほうが精度が上がるかも
prev.FLAG_LAST_APPL_PER_CONTRACT==1に絞る
NNをstackingに加える
現在有効なCash/Creditの数(bureau+credit+cash)
Number of Credit Linesといった名前で、他のローンコンペで使われる特徴量
Install x 契約日(直近90日)
bureauの日付が-40000を下回るものをnanに置換
Open SolutionをStackingに加える
(仮説)前倒し支払の記録のされ方に2通りのパターンがある
ある日に複数回分のローンをまとめて支払う場合があるが、これがinstallments_payments上の記録だと
- 同日に複数回の支払を記録
- AMT_ANNUITYよりも大きな額の1回の支払として記録
の2通りの記録のされ方がある
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.