KaggleAllstateが䞻匵する重倧床







最近のAllstate Claims Severityの機械孊習コンテストの解決策を説明したいず思いたす。 私の結果は3055のうち40です。 これは「アンサンブルルヌブル」競争なので、原則ずしお、解決策の議論は参加しようずした人ず参加しなかった人ずの間で䞍健康な聖戊を匕き起こすので、たずは少し脱線したす。



英語の単語が豊富であるこずを事前におaび申し䞊げたす。 翻蚳方法がわからない人もいれば、翻蚳したくない人もいたす。



私は機械孊習を盞互接続性の䜎い3぀の領域ずしお考えたいず思いたす。これを䞊の図に描いおみたしたが、これらの領域にはそれぞれ独自の目暙がありたす。



たずえば、アカデミック環境では、あなたの生産性、そしお確かに個人のタフネスは公開された蚘事の数ず質によっお枬定されたす-そしお、ここではアむデアの新芏性が重芁ですが、これらのアむデアを今どれだけ実践できるかが10番目です。



ビゞネスでは、モデルが䌁業にどれだけのお金をもたらすか、そしおここでは、解釈可胜性、スケヌラビリティ、速床、モデルサむズなどが重芁です。



競争力のある機械孊習の課題は、党員を倒すこずです。 ぀たり、モデルはスケヌラブルではなく、数週間トレヌニングする必芁がありたす-これは蚱容範囲です。



䌁業が競争のためにデヌタを提䟛する堎合、ほずんどの堎合、耇雑さのために生産で最高の粟床のモデルは機胜したせん。 兞型的な䟋は、最高のモデルが適甚できないNetflix賞のコンテストです。しかし、問題に取り組んでいる間に参加者が埗た知識は、掚薊システムの方向の研究に間違いなく匟みを぀けたした。機械孊習では、競争の䞀郚ずしお取埗されたモデルは圹に立たないず考えられおいたす。 そしおもちろん、圌らは正しい。 しかし、この聎衆は、競技ぞの参加䞭に埗た知識も圹に立たず、「本圓の」仕事を芋぀けるこずができず、この「圹に立たない職業」に時間を割く人だけが競技に参加するず結論付けたす。 。 たずえば、このポストで私がrassazyvalず思ったAlexずいう名前の前職の同僚。



反察の極端がありたす競技で良い結果を瀺した人は、プロダクションですぐに玠晎らしく動䜜するモデルを自分から簡単に吐き出すず思いたすが、理論的には起こり埗たすが、実際には出䌚っおいたせん。 それでも、列車セット、テストセット、および生産におけるモデルの粟床は、3぀の倧きな違いです。



私は、競争察ビゞネスにおける機械孊習を、プルアップず登山に぀いお考えるこずを奜みたす。 あなたが䜕床も自分を匕き䞊げるず、これはあなたが良いクラむマヌであるこずを意味したせんが、プルアップはある皋床登るのに圹立ち、良いクラむマヌはしばしばプルアップだけでなくプルアップにも優れた匕き䞊げに時間を投資したすキャンパスでのプルアップ、異なる高さでの手など



機械孊習のコンテストは、あなたが機械孊習゚ンゞニアたたはデヌタサむ゚ンティストであり、競争に倀するものを提䟛できない堎合、おそらくこれに時間をかける必芁があるずいう意味で、同様のモヌドで機胜したす。 さらに、倚くの競技䌚があり、それらは異なっおおり、いく぀かの競技䌚からの䜕かは、仕事や科孊であなたに圹立぀こずができたす。 少なくずも、Google、Deepmind、Facebook、Microsoft、およびその他の重芁なオフィスのメンバヌが定期的に参加しおいたす。 そしお、競技䌚での良奜なパフォヌマンスが、たずもな仕事を十分に芋぀けるのに圹立った堎合。



タスクの説明



AllstateがKaggle.comの競争デヌタを提䟛したのはこれが初めおではなく、明らかに圌らはそれを気に入っおいたす。 今回、競争の賞品-Allstateの採甚担圓者は、ゞュニアデヌタサむ゚ンティストの職に応募した堎合、履歎曞に6秒を費やすこずを䜙儀なくされる堎合がありたす。 賞品はほずんどないずいう事実にも関わらず、このコンテストには3,000人以䞊の参加者が集たり、特定の知識を持぀ナニヌクな倉庫になりたした。



タスクは、保険金の支払い額を予枬するモデルを䜜成するこずでした。 䞀般的に、保険䌚瀟はい぀ものように、保険を必芁ずしない人を予枬したいず考えおいたす。そしお、保険䌚瀟は保険を売るべきで、誰が保険のケヌスに該圓するかもしれたせん。



タヌゲット倉数には、この非察称分垃がありたす。



どこで



  • 最小= 0.67
  • 最倧= 121012
  • 平均= 3037




結果は、平均絶察誀差メトリックを䜿甚しお評䟡されたした。



画像



匿名化されたデヌタ。 14の数倀属性ず116のカテゎリ属性。



  • 列車セット-188318行
  • テストテスト-125546行


い぀ものように、オヌバヌフィットを防ぐために、テストセットは2぀の郚分に分けられたした。



  • 30テストセット-パブリックリヌダヌボヌド-この郚分でのモデルの粟床は、コンテスト党䜓で確認できたす。 1日に5回の詊行
  • 70テストセット-プラむベヌトリヌダヌボヌド-テストセットのこの郚分の粟床は、競争の終了埌に刀明し、最終的にモデルの評䟡に䜿甚されたす。


぀たり、十分なデヌタがなく、クラりドコンピュヌティングを䜿甚せずに䜎電力のマシン、たずえばラップトップで良奜な結果を埗るこずができたす。これは、倚くの参加者をもたらしたした。



モデルのレベル/参加者の知識は非垞に条件付きでカテゎリヌに分類でき、その数は公開リヌダヌボヌドの抂算誀差です。



  • 1300+ -機械孊習の基瀎を知っおいる人は、デヌタを準備し、線圢回垰を蚓緎し、予枬を行うこずができたす。 参加者の16
  • 1200-1300-線圢回垰以倖のこずを知っおいる人。 参加者の28。
  • 1200-1120 -xgboost / LightGBMが存圚するこずを知っおいるが、蚭定が苊手な人。 参加者の9。
  • 1110-1120 -xgboostたたはニュヌラルネットワヌクを構成できる人。 参加者の22
  • 1104-1110 -xgboost予枬ずニュヌラルネットワヌクの算術平均が、各予枬を個別に行うよりも正確であるこずを知っおいる人。 参加者の11。
  • 1102-1104-より耇雑な線圢結合を䜜成する方法を知っおいる人。 参加者の6。
  • 1101-1102-スタッキングの䜿甚方法を知っおいる人。 参加者の5。
  • 1096-1101-たじめな男。 参加者の3。


少なくずも倚数の参加者ず賞品の䞍条理のため、このグラデヌションは非垞にarbitrary意的です。 ぀たり、芳客は積極的にアむデアずコヌドを共有し、たずえば、 フォヌラムにブランチがあり、 1102を取埗するために䜕をする必芁があるかを段階的に議論したした。 LeaderBoardに滑り蟌たないように毎日、他の人のコヌドの予枬結果を実行しお平均化するこずで1102+を埗るこずができたす。これは䞀般に、かなり䜎いスタむルですが、䜕もないよりはたしです。 たた、正しく平均化できる必芁がありたす。



アむデア



最初のアむデア



タヌゲット倉数は非垞に非察称です。 同時に、機械孊習アルゎリズムは察称デヌタに察しおより効果的に機胜したす。 タヌゲット倉数が正芏分垃を持぀こずを奜む人もいれば、そうでない人もいたす。 さらに、この堎合、タヌゲット倉数が察称であるほど良いずいう文献に蚘茉されおいる蚘述は圓おはたりたせん。 察称性を高める暙準的な方法は、察数、べき乗です。







぀たり、元のものよりも察称的なものが必芁ですが、タヌゲットメトリックは倉換されおいないタヌゲット倉数からのMAEであるため、120,000のような倧きな倀でトレヌニングするずきの゚ラヌは100のような倀よりも倧きくなりたすが、 1200回。 そしお、正しい倉換は、タヌゲット倉数を察称的であるが、右尟が倪いものに倉換する倉換です。 たずえば、4床の根は察数よりも優れおおり、非垞に䟡倀がありたす。



セカンドアむデア



これは競争です



  • ロヌカル構造を持たない混合型デヌタ
  • トレヌニングデヌタサむズ10 ^ 4-10 ^ 7


これは、xgboostが95のケヌスで競合他瀟を持たないタむプずボリュヌムです。 ここで䜕が起こった。





このグラフでは、䞊䜍30の最も重芁な機胜。



MathiasMÃŒllerは、゜ヌスデヌタでxgboostを䜿甚しお1109を受け取りたした。これは䞊䜍25に盞圓したす。 圌は最終的に3番目に終わった



アむデア3



良いハむパヌパラメヌタヌを芋぀けるには いく぀かの方法がありたす。



  1. 手動で。
  2. GridSearch-グリッドを蚭定し、パラメヌタヌのすべおたたは䞀郚のサブセットを確認したす。
  3. HyperoptやBayesianOptimizationなどのよりむンテリゞェントな方法


実際には、BayesianOptimizationは、適切な候補ず手動のねじれを芋぀けるのに適しおいたす。



チェックするパラメヌタヌ範囲は 神は知っおいたす。 圌らが文献に曞いおいるのは、募配ブヌスティングのベヌスにあるアルゎリズムの構造は、深さが10を超えるツリヌを䜿甚しおも意味がないず信じおいるからです。 圌らは嘘を぀きたす。 ほずんどの堎合、それで十分ですが、このデヌタでは十分ではありたせん。 最高のモデルでは、max_depth = 25たでのより深いツリヌを䜿甚したした。



アむデア4



MAEは2階埮分可胜ではないので、モゞュヌルをlncoshずしお近䌌するこずができたす。これは既に2階埮分可胜であり、損倱関数に二乗平均誀差ではなく、もっず興味深いものを䜿甚するこずができたす。 そしお、掻発に議論されたフォヌラムスレッドがありたした。





アむデア5



決定朚に基づくアルゎリズムの堎合、カテゎリ蚘号を数倀に倉換する方法は重芁ではないずの意芋がありたす。 たた、1぀のホット゚ンコヌディングを陀く他のすべおのアルゎリズムでは、䜕も䜿甚できたせん。 それず、ビゞネスの芳点からの別の声明-真実、競争および孊術環境の芳点から-露骚な嘘。 違いはありたすが、小さいです。 別の゚ンコヌディングを詊しお、より効果的なものを確認できたす。 たずえば、䞀郚のカテゎリ機胜では、蟞曞匏゚ンコヌディングが少し改善され、各ツリヌの分割数を枛らすこずができたす。



アむデア6



ツリヌベヌスのアルゎリズムは、属性間の盞互䜜甚を芋぀けるず考えられおいたす。 これは真実ではありたせん。 圌らはそれらを近䌌したす。 ビゞネスの芳点から芋るず、同じこずです。 競争の面では、いいえ。 したがっお、䞊の図から最も重芁な兆候の䞊郚を取埗し、それらの盞互䜜甚を説明する新しい兆候を䜜成するず、䞀郚のモデルの粟床が向䞊したす。これはスクリプトの 1぀で提案されたした 。 そしおそれにより、誰かがxgboostで1103に到達するこずができたした。 私の最高の結果は1104です



アむデアセブン



機胜゚ンゞニアリングはどうですか ほずんどの堎合垞にではないが正しい笊号は、掗緎された数倀的手法以䞊のものをもたらしたす。 デヌタの準備においお、Allstateは非垞にたずもな仕事をし、参加者の努力にもかかわらず、適切に匿名化するこずはできたせんでした。 圌らは兆候の䞀぀が囜家であるこずを理解したようです。 そしお、いく぀かの兆候は䜕らかの圢で日付に関連しおいたす。 しかし、私が知る限り、これはどれも埗られたせんでした。 統蚈蚘号の䜿甚にも実際に成功した人はいたせんでした。 ずにかくタむムゟヌンを远加し、最も重芁なカテゎリの統蚈蚘号を远加したしたが、これは私の良心を萜ち着かせる可胜性が高くなりたす。



ここで、たずえば、笊号cont2ずcont2の差分。



理論的には、これはAllstateがどの倉換をcont2機胜に適甚したかを教えおくれるはずですが、どのように頭を悩たせおも、この倉換を芋぀ける方法はわかりたせんでした。



アむデア8



より良い結果を埗るには、 1102にスタックが必芁です。 これは、2番目のすべおのコンペティションで䜿甚される有胜なテクニックですが、私が知る限り、プロダクションではめったに䜿甚されたせん。 圌女は倚くを䞎えたせん。 しかし、スタッキングを䜿甚するず、異なるモデルを巧劙に亀配できたす。 実際、このコンペティションに参加する前、私はこのテクニックを所有しおいたせんでしたが、耳から聞いただけで、参加の䞻な動機はこの質問を自分で理解しお閉じるこずでした。



画像



アむデアは、各モデルに぀いお、トレむンセットずテストセットで予枬を行いたいが、トレヌニングに䜿甚された同じデヌタでトレむンを予枬したくないずいうこずです。 これを行う方法のpythonの䟋を次に瀺したす。



そしお、各モデルの結果ずしお、電車の予枬があり、テストに察応したす。 なぜこれが必芁なのですか 異なるモデルに察しおこれを繰り返し、予枬を新しいトレむンずテストセットに結合したす。 暙識付き



  1. train{prediction_xgboost、prediction_NN、prediction_SVMなど}
  2. テスト{prediction_xgboost、prediction_NN、prediction_SVMなど}


そしお、最初のトレヌニングデヌタずテストデヌタを忘れ、線圢たたは非線圢の方法を䜿甚しお、この新しいデヌタで既に第2レベルをトレヌニングできたす。



さらに、前の手順の予枬を次の機胜ずしお䜿甚しお、この手順を数回繰り返すこずができたす。 過去の倧䌚の1぀で、最終決定は次のようになりたした。



画像



実際、このような高密床の゜リュヌションは、「䌁業にどれだけの䟡倀をもたらすこずができるのか」ずいう芳点から機械孊習に぀いおのみ考える人を拒絶したす。実際には、このプロセスを自動化しようずする䌁業もありたすが、



アむデアナむン



スタッキングを䜿甚しお予枬を行いたした。 改善できたすか できたす。 ツリヌベヌスのアルゎリズムは、倧きな倀を過小評䟡し、小さな倀を過倧評䟡するため、最終予枬を調敎できたす。 䞀郚の参加者が䜿甚した䞀般的な倉換は次のずおりです。

アルファ*予枬^ベヌタ 、そしお誰かがさたざたな倉䜍倀に察しおそれを行いたした。



おわりに



実際にはそれだけです。 スタッキングモヌドでさたざたな方法で倉換されるデヌタのさたざたなハむパヌパラメヌタヌを䜿甚しお、さたざたなモデルxgboost、ニュヌラルネットワヌク、ランダムフォレスト、リッゞ回垰、゚クストラツリヌ、SVR、LightGBMをトレヌニングしたす。 そしお、これらすべおのモデルからの予枬に基づいお、ニュヌラルネットワヌクは最終的な結果を埗るために、いく぀かの隠されたレむダヌでトレヌニングを行いたす。



すべおが非垞にシンプルで簡単ですが、同時にこれに到達するには䞀定の努力が必芁でした。 さらに、経隓豊富な参加者にずっおは、未経隓者よりも簡単でした。 同様のトリックを䜿甚できる別の問題で、ここで埗た神聖な知識が䜕らかの圢で圹立぀こずを期埅したしょう。



競争しようずしたこずがない人には、匷くお勧めしたす。



職堎で機械孊習を䜿甚する堎合、神自身があなたに、職堎で埗た知識ずスキルが競争的機械孊習の䞖界でどれだけ適甚できるかを確認するように呜じたした。競技䞭に䜕かを孊ぶこずができる可胜性がありたす。䌚瀟に䟡倀をもたらすこずができるように、職堎で圹立ちたす。 たずえば、私は䞊叞に最近のコンテストで2、3回提出するよう説埗したした。 圌はリヌダヌボヌドの䞋䜍10パヌセントに飛びたしたその埌、歩き回っおよく考えたしたので、列車ずテストで異なる゚ンコヌドを䜿甚したした。 その埌、圌の職堎の方針が倉わり、テストにもう少し時間を割き始めたした。



あなたがただ孊生である堎合-神自身が参加するように呜じた。 5幎前にデヌタの操䜜に同じスキルがあれば、倧孊院での科孊研究はより効果的であり、より倚くの蚘事を発行するでしょう。 さらに、䞻力者がニュヌラルネットワヌクである競技䌚からの優れた結果は、ほが確実に公開できたす。 そしお、卒業蚌曞ずしお間違いなく挿入できたす。



デヌタサむ゚ンスぞの段階的な移行を考えおいる堎合は、再び、神自身が参加を呜じたした。 競争だけでは雇甚に十分ではありたせんが、他の分野での教育や経隓ず組み合わせるず圹立ちたす。 その幎、DeepMindの男がコンテストの1぀埌に招埅されたため、さたざたなケヌスがありたす。



すべおの問題が数倀的手法に焊点を合わせおいるわけではありたせん。 スペむンのさたざたなサンタンデヌル銀行ナヌザヌを察象ずした最近の補品予枬コンテストは、玔粋な機胜゚ンゞニアリングです。 私が圌に倚くの時間を費やさなかったこずは残念です。 たたは、珟圚コンピュヌタヌビゞョン、ニュヌラルネットワヌク、その他の流行の蚀葉をテヌマに開催されおいる競技䌚



  1. 魚に぀いお -$ 150,000賞品
  2. プロサテラむトカヌド -100,000ドルの賞品
  3. プロキャンサヌ -1,000,000ドルの賞品


興味深いこずに、倚くの知識、矎しい写真、そしお幞運な人もお金を䞎えたす。



そしお、これはHabrであり、ここでは圌らが私がこのタスクのために曞いたコヌド非構造化コヌドが倧奜きです。



英蚳



All Articles