私の要件は、おそらく「エキスパート システム」に期待されるものに近いものです。そして、いくつかのオフライン (非リアルタイム) 学習機能を備えた、リアルタイムまたはほぼリアルタイムの推論を提供できる最も単純なソリューションを探しています。
詳しく言うと、私の問題は -
ライブで更新されているログを見て、各エントリを赤、緑、青に分類します。赤、緑、青の分類は、プロダクション ルールとして体系化されたロジックに基づいています (現在の私が想像するとおり)。
それが難しくなるポイントは -
1) 青とタグ付けされたログ エントリは、最終的には、後続のログ エントリに基づいて赤/緑とタグ付けされる必要があり、より詳細な情報が必要になるため、少し覚えておく必要があります。待機する正確な期間は事前にわかりませんが、最大制限があります。もちろん、任意の時点で、Blue のタグが付けられたエントリが数十万件存在する可能性があります。
2) 赤と緑を決定するルールが完全ではないため、ラベリングでエラーが発生することがあります。そのため、時折手動で監査すると、これらの間違いが明らかになります。私の主な課題は、最小限のプログラミング作業でルール更新の一部を自動化できるかどうかを確認することです。
私の (継続的な調査) は、RETE アルゴリズム ベースのルール エンジンが、私の分類とラベル付け (再ラベル付けを含む) に役立つ可能性があることを明らかにしています。それが機能する場合、「間違いから学ぶ」部分を自動化する方法を理解する必要がありますか? ベイジアン分類などの統計的アプローチをとることはできますか? また、ベイズ分類をルールエンジンと比較して完全に取ることができますか?最初の分類stについては、システムを手動で十分にトレーニングしましたか? ベイジアンアプローチは、特にこれらの定期的な手動監査があるため、「統計を信頼する」アプローチにより、正しいルールセットを維持するタスクを「馬鹿にする」ようです。
PS> 私のメイン アプリケーションは C++ で書かれています (それが重要な場合)。