その決定を説明するテキスト分類子


11

短い文章のテキストカテゴライザを構築しています。「入力したテキストのカテゴリはCです」とユーザーに伝えるだけでなく、この決定を下した理由を簡潔でわかりやすく説明したいと思います。たとえば、「私はあなたの文を複雑な3層ニューラルネットワークに入れ、それが最良のスコアを出した答えです」とユーザーに伝えたくありません。「トレーニングデータにX、Y、Zなどの文が含まれているため、このカテゴリの特徴であるU、V、Wという文が含まれています」などの説明が必要です。

私の質問は、どのような分類アルゴリズムがそのようなアプリケーションに最適ですか?

k-nearest-neighboursは良い候補のように思えます。ユーザーに次のように伝えることができるためです。私はパフォーマンスと説明能力のバランスが取れた分類を探しています。

編集:そのような分類器を探すために多くの時間を費やした後、私はlimduと呼ばれる機械学習ライブラリの構築を開始しました。これにより、分類器が彼らの決定を説明できるようになります。それはまだ開発中ですが、分類器が頻繁に失敗する理由を私自身と同僚に説明するのに役立ちました...


機械学習のポイントは、内部で何が起こるかを気にせず、パフォーマンスのみを気にすることです。他のアプローチは失敗しました、そしてそれが今日誰もがこれらの不透明な統計的アプローチを使用している理由です-それらはとてもずっと良いです。
Yuval Filmus 2013年

2
@Yuval私は他のアプローチが失敗したことに完全に同意しません。それらは最適ではありませんが、人間が実行する能力や忍耐力をはるかに超える分類タスクを自動化するという目標を達成します。不透明なブラックボックスは、特にパフォーマンスが唯一の考慮事項ではないこのような状況で機械学習を効果的に行う唯一の方法ではありません。機械学習タスクの背後にあるさまざまな目標について、もう少し自由に考えてください。
リチャードD

回答:


7

テキスト分類タスクではパフォーマンスが低下しますが、分類の理由を明確に説明したい場合は、インスタンスの分類方法に関する明確なルールを提供するディシジョンツリーが最適です。ツリーのトレースは決定的な値を提供し、ルートノードの近くのインスタンスを分析することにより、分類でより重要な属性を特定できる場合もあります。

もう1つのオプションは、単純なベイズ分類器を使用することです。これにより、テキストマイニングタスクのパフォーマンスが向上し、必要な「理由」を生成するために使用できる確率に基づいた包括的な評価スキームが提供されます。どの属性値が決定を行う上で他の属性値よりも重要でした。

サポートベクターマシン、特に順次最小最適化(SMO)は、これらのタスクでうまく機能するようであり、同様に属性の重みとサポートベクターの形式で分類を行うために使用される値の指標を提供しますが、難しいかもしれませんこれらの重みとベクトルが分類の決定全体にどのように影響したかを明示します。

あなたのプロジェクトで頑張ってください!とても面白いですね。


1
ありがとう。また、パーセプトロンやウィンナウなどのオンライン分類子は、このタスク(少なくとも私のシナリオでは)で非常に優れていることもわかりました。また、各機能が分類スコアに追加する絶対値を見れば、判断を簡単に説明できます。各サンプルについて、(feature * weight)の絶対値に従って特徴を並べ替え、最初のいくつかを示します。
Erel Segal-Halevi 2013

3

Peter Norvigが、LISPの著書であるParadigms of Artificial Intelligence Programming:Case Studies in Common Lispで書かれた医療診断エキスパートシステムMYCINを実装していたことを漠然と思い出しました。

多分それはあなたの研究を始めるのに良い場所です。ルールベースと一緒にオンラインでソースコードを見つけることができますが、テキストを読んで、ソースコードだけから理解しようとしないことを強くお勧めします。

エマイシン(私の強調)のページに直接移動することもできます。

Emycinはエキスパートシステムシェルであり、ドメインエキスパートの知識を記録し、その知識を使用して非エキスパートユーザーが問題を解決するのに役立つプログラムを構築するためのフレームワークです。これは、専門家がデータ型とルールを定義するのに役立つインターフェース、後方連鎖推論アルゴリズム(Prologに似ていますが、主な違いがあります)、不確実性に対処するためのメカニズム、およびシステムが知っていることをユーザーが学習できるイントロスペクションのための機能を提供しますそしてそれが何をしているのか


2
エキスパートシステムがあまり普及していないのには理由がありますが、すべてのルールをコード化することは困難です。
adrianN 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.