2011-03-18 59 views
2

對於最近的一個項目,我實施了FP-Growth算法來讀取事務並生成公共集合,然後生成關聯規則。這對我的目的很有效。推薦的數據結構或表格模式用於高效查找/評估關聯規則?

現在,我正在生成數以千計的規則,我正在尋找一種有效的方法來執行它們......目前我將規則存儲在一個postgres表中,其中body是一個整數數組,頭是一個int。我的查詢查找行的地方,我所擁有的項目集包含正文,但不包含頭部。

我僅限於使用PHP和Postgres--這個項目是一個更大的應用程序的一小部分。

任何人都可以推薦一個數據結構或表模式/直接給我一些好的資源嗎?另外,在討論關聯規則的應用時,最好的術語是什麼 - 評估,執行,查找,運行?

謝謝!

回答

1

所以你有一套規則,每一個左邊描述爲一組謂詞。 其中一種方法是用像Lucene這樣的布爾搜索引擎對它們進行索引,然後給出適用於當前事件的謂詞集合,然後試圖準確地應用它們,然後確定它將工作得非常快。

其他選項是按照謂詞排序並將每個規則轉換爲規則左側字符串(P1 P2 P3 P4)。現在我們來到許多字符串匹配的領域,並且可以使用前綴樹(我們應該搜索子字符串的一個問題不是很精確,但是它的複雜度也是O(log(n)))