決定木とロジスティック回帰を除いて、他のどの分類モデルが適切な解釈を提供しますか?精度やその他のパラメータには関心がなく、結果の解釈のみが重要です。
決定木とロジスティック回帰を除いて、他のどの分類モデルが適切な解釈を提供しますか?精度やその他のパラメータには関心がなく、結果の解釈のみが重要です。
回答:
1)意思決定ツリーは、人々が理解するほど解釈可能ではないと主張します。各ノードは単純なバイナリの決定であるため、それらは解釈可能に見えます。問題は、ツリーを下に行くにつれて、各ノードがその上のすべてのノードに条件付きであることです。ツリーの深さが4または5レベルしかない場合でも、1つのターミナルノードのパス(4または5分割)を解釈可能なものに変換することはそれほど難しくありません(たとえば、「このノードは、複数のアカウントを持つ高所得の男性である長期的な顧客を反映しています")ですが、複数のターミナルノードを追跡するのは困難です。
モデルが解釈可能であることをクライアントに納得させるだけの場合(「見て、ここの各円には単純なはい/いいえの決定があり、理解しやすいです、いいえ?」)、決定ツリーはリストに入れておきます。 。実用的な解釈が必要な場合は、彼らがカットを行わない可能性があることをお勧めします。
2)別の問題は、「結果の解釈可能性」によってあなたが何を意味するかを明確にすることです。私は4つのコンテキストで解釈可能性に遭遇しました:
方法論を理解できるクライアント。(あなたが何を求めているのかではありません。)ランダムフォレストは、類推によってかなり簡単に説明でき、簡単に説明すれば、ほとんどのクライアントはそれに慣れます。
方法論がモデルにどのように適合するかを説明します。(クライアントに、決定木がどのように適合されているかを説明し、結果をよりインテリジェントに使用する方法を理解するのに役立つと感じたため、説明を求めました。たくさんの素敵な図を含む非常に素晴らしい記事を書いた後、彼らは主題を落としました。解釈/理解することはまったく役に立ちません。)繰り返しますが、これはあなたが求めていることではないと私は信じています。
モデルがフィッティングされると、モデルが予測子について「信じる」または「言う」ことを解釈します。ここで、意思決定ツリーは解釈可能に見えますが、第一印象よりもはるかに複雑です。ここではロジスティック回帰はかなり単純です。
特定のデータポイントが分類される場合、その決定が行われた理由を説明します。なぜあなたのロジスティック回帰はそれが詐欺の80%の確率であると言うのですか?なぜあなたの決定木はそれが低リスクだと言っているのですか?ターミナルノードに至る決定ノードを出力することにクライアントが満足している場合、これは決定ツリーにとって簡単です。「なぜ」を人間の話し言葉に要約する必要がある場合(「この人は私たちの会社に高所得で複数のアカウントを持っている長期の男性顧客であるため、リスクが低いと評価されます」)、それははるかに困難です。
したがって、1つのレベルの解釈可能性または説明可能性(上記の#1と少し#4)では、K-Nearest Neighborは簡単です。「この顧客は、以前に評価され、最も多かった10人の顧客のうち8人が高リスクであると判断されたため、 X、Y、Zの点でそれらと同様であり、リスクが高いことが判明しました。」実用的なフルレベル#4では、それはそれほど解釈可能ではありません。(私は実際に他の8人の顧客を彼らに提示することを考えましたが、それらはそれらの顧客にドリルダウンしてそれらの顧客が共通しているもの、つまり評価された顧客が彼らと共通しているものを手動で理解する必要があります。)
タイプ4の自動説明を考え出すために感度分析のような方法を使用することについて、最近いくつかの論文を読みました。まだ手元にありません。おそらく誰かがコメントにリンクを入れることができますか?
使用しているデータによって異なります。精度に関心がない場合は、データと分類の視覚化は、データとアルゴリズムのパフォーマンスを解釈する最良の方法の1つだと思います。
以下は、さまざまな分類子の比較例です。各行は異なるデータセットであり、データの分離性はさまざまです。各列は各分類子の視覚化です。
http://scikit-learn.org/stable/auto_examples/classification/plot_classifier_comparison.html
判別分析は、RAフィッシャー(https://en.wikipedia.org/wiki/Linear_discriminant_analysis)に100年以上さかのぼる元の分類モデルです。最近の専門用語とより一貫性のあるアプローチに取って代わられた今日の機械および統計学習モデルの世界では、それはあまりにしばしば無視されています。
このペーパーはJournal of Machine Learningにあり、他のいくつかの方法のランドリーリストがあります。実際の分類問題を解決するには何百もの分類子が必要ですか? http://jmlr.org/papers/volume15/delgado14a/delgado14a.pdf
機能とクラス間の関係を見つけるには、関係メソッドを使用できます。カイ二乗法を使用して、フィーチャがクラスに関連付けられているかどうかを確認することもできます。これを行うには、クラスラベルの等価性を使用する必要があります。たとえば、機能1とクラス1をテストしている場合、機能1のビニングを実行し、ビニングされた確率と、クラスが1の場合に1の値を持つメンバーシップ変数の間のchi ^ 2を計算する必要があります。このように、クラス1であることが機能1に依存している場合、一部のビンはクラス1である割合が高く、一部のビンはそれより低くなります。
私が適度に成功して試した追加の方法は、クラスの機能を正規分布に適合させることでした。次に、クラス内のすべてのサンプルについて、サンプルの分布への適合度によって特徴のスコアを改善します。クラスにないすべてのサンプルについて、フィットネスのために機能にペナルティを課します。明らかに、クラスにあるサンプルとクラスにないサンプルの数を正規化する必要があります。これは、通常の配布に近い形で配布される機能でのみ機能します。この方法を使用して、すべてのクラスの機能ごとにスコアを割り当てました。
最近傍分類について言及された人はいません。これは非常に簡単に説明できます。観測は、それに最も近い観測の中で最も一般的なクラスに従って分類されます。私たちは通常、奇数の最近傍を選択して調べるので、壊す絆はありません。