1

我的要求可能接近「專家系統」的預期。並尋找最簡單的解決方案,它可以給我實時或接近實時的推斷,以及一些離線(非實時)學習功能。理想的算法方法 - 規則引擎/決策樹和一些學習邏輯?

爲了詳細說明,我的問題是 -

觀看正在直播更新日誌,每個條目爲紅色,綠色和藍色的分類。 紅,綠,藍的分類是基於編纂爲生產規則的邏輯(正如我今天的想象)。

那裏得到挑戰的一點是 -

1)登錄項標記藍最終還是要根據隨後的日誌條目,我們希望有更多的詳細信息標記紅色/綠色,所以有有點記住要完成。確切的等待時間不會提前知道,但有一個最大限制。當然,在任何特定的時間點,可能會有數十萬個標記爲藍色的條目。

2)確定紅色的規則並不完美,所以標籤有時會出現錯誤。所以偶爾的手動審計會揭示這些錯誤。我面臨的主要挑戰是如何以最少的編程工作來實現規則更新的某些部分的自動化。

我的(繼續研究)顯示,基於RETE算法的規則引擎可能服務於我的分類&標籤,包括重新標籤。如果這有效,我仍然需要弄清楚如何自動化「從錯誤中學習」的部分?是否可以採取統計方法 - s.a.貝葉斯分類?此外,對於初始分類s.t.,我們是否可以完全針對規則引擎採用貝葉斯分類?我已經手動培訓系統了嗎?貝葉斯方法似乎「通過」信任統計「方法來」維持一套正確的規則「,尤其是在進行這些定期的人工審覈時,」啞口無嗅「。

PS>我的主要應用程序是用C++編寫的(如果有的話)。

回答

2

這聽起來像複雜事件處理(CEP),在那裏你有規則和使用時間計算像事件X是事件Ÿ後2分鐘內的能力。

In Java land,Drools Fusion(或Drools Expert)能夠很好地處理這個問題(雖然我有偏見)。在C++ land ...嗯,也許你可以設置一個drools-camel-server並通過XML與它溝通。

+0

謝謝@ geoffrey-de-smet。過了一段時間(特別是ESPER),CEP已經過去了,但不知怎的,這種現象已經消失了,你很高興能夠提起它。試圖趕上Drools融合,我來到這個[有趣的職位](http://hansgilde.wordpress.com/2009/05/22/drools-fusion-oss-competitor-to-businessevents/)和一個更有趣的評論,它將ESPER與Drools-Fusion進行了比較。兩者可能相互補充的方式是有趣的。這當然是我想深入探索的一條途徑。再次感謝。 – icarus74 2011-05-25 14:11:31