經過這些年的發展,我們都確信ML即使不能表現得更好,至少也可以在幾乎所有地方與前ML時代的解決方案相匹配。比如說一些規則約束,我們都會想到能否把它們替換為基於樹的ml模型。但是世界並不總是黑白分明的,雖然機器學習在解決問題上肯定有自己的位置,但它並不總是最好的解決方案。基於規則的系統甚至可以勝過機器學習,特別是在可解釋性、健壯性和透明度至關重要的領域。
在本文中,我將介紹一些實際的案例,以及如何將手動規則和ML結合使得我們的方案變得更好。
基於規則的系統
基於規則的系統是透過預定義規則來為決策提供支持,系統根據儲存的規則評估數據,並根據映射執行特定操作。
以下是幾個例子:
詐欺偵測:在詐欺偵測中,基於規則的系統可用於根據預定義規則快速標記和調查可疑交易。
比如說國際象棋的作弊者,他們的基本作法是在另一個視窗中安裝電腦象棋應用程序,使用程式進行對弈,對於程式來說無論多複雜,每一步都需要4- 5 秒才能完成。所以加上「閾值」來計算玩家每一步的時間,如果在浮動不大就有可能被判斷為是作弊者,如下圖所示:
醫療保健產業:基於規則的系統可用於管理處方和防止用藥錯誤。它們還可以非常有用地幫助醫生根據先前的結果為患者開出額外的分析處方。
供應鏈管理:在供應鏈管理中,基於規則的系統可用於產生低庫存警報、協助管理到期日或新產品推出。
基於機器學習的系統
機器學習 (ML) 系統使用演算法從資料中學習並做出預測或採取行動,且無需明確編程。機器學習系統使用透過大量資料訓練所獲得的知識來對新資料進行預測和決策。隨著更多資料用於訓練,ML 演算法可以提高其效能。機器學習系統包括自然語言處理、影像和語音辨識、預測分析等。
詐欺偵測:銀行可能會使用機器學習系統從過去的詐騙交易中學習並即時識別潛在的詐騙活動。或者,它可能會對系統進行逆向工程並尋找看起來非常“異常”的交易。
醫療保健:醫院可能會使用 ML 系統來分析病患數據,並根據某些 X 光預測病患罹患某種疾病的可能性。
對比
基於規則的系統和ML系統都有各自的優點和缺點
基於規則的系統的優點很明顯:
- 易於理解並解釋
- 快速實作
- 易於修改
- 健壯的
缺點:
- 涉及大量變數的問題
- 約束條件多的問題
- 限於現有規則
- 自主學習系統
- 解決更複雜問題的能力
- 與基於規則的系統相比,減少了人為幹預,提高了效率
- 透過不斷學習,靈活地適應數據和環境的變化
- 需要的數據,有時很多
- 僅限於先前看到的資料ML
- 認知能力有限
硬編碼規則可以用作特徵工程過程的一部分,以識別和提取輸入資料中的重要特徵。例如,如果問題領域清晰明確,規則可以輕鬆且準確地定義,硬編碼規則可以用來創建新特徵或修改現有特徵,以提高機器學習模型的效能。雖然硬編碼規則和特徵工程是兩種不同的技術,但它們可以結合使用以提高機器學習模型的性能。硬編碼規則可以用於創建新特徵或修改現有特徵,而特徵工程可以用於提取不易透過硬編碼規則捕獲的特徵。
後處理:四捨五入或歸一化最終結果。
硬編碼規則可以作為後處理階段的一部分來修改機器學習模型的輸出。例如,如果機器學習模型輸出一組預測結果與某些已知規則或限制條件不一致,硬編碼規則可以用來修改預測結果,使其符合規則或限制條件。例如過濾或平滑等後處理技術可以透過消除雜訊或錯誤,或提高預測的整體準確性來精細機器學習模型的輸出。當機器學習模型輸出機率預測或輸入資料存在不確定性時,這些技術尤其有效。在某些情況下,後處理技術也可以用於使用額外資訊增強輸入資料。例如,如果機器學習模型是在有限資料集上訓練的,後處理技術可以用來從外部來源(如社交媒體或新聞提要)中提取額外的特徵,以提高預測的準確性。
案例
醫療保健
讓我們來看看心臟病的數據:
clf = RandomForestClassifier(n_estimators=100, random_state=random_seed X_train, X_test, y_train, y_test = train_test_split( df.iloc[:, :-1], df.iloc[:, -1], test_size=0.30, random_state=random_seed ) clf.fit(X_train, y_train))這裡選擇隨機森林的原因之一是它的建構特徵重要性能力。下面可以看到用於訓練的特徵的重要性:
y_pred = pd.Series(clf.predict(X_test), index=y_test.index cm = confusion_matrix(y_test, y_pred, labels=clf.classes_) conf_matrix = ConfusionMatrixDisplay(confusion_matrix=cm, display_labels=clf.classes_) conf_matrix.plot())
f1_score(y_test, y_pred): 0.74 recall_score(y_test, y_pred): 0.747這時一位心臟科醫生看到了你的模型。基於他的經驗和領域知識,他認為地中海貧血特徵(thal)比上面所示的要重要得多。所以我們決定建立一個直方圖並查看結果。
y_pred[X_test[X_test["thal"] == 2].index] = 1
結果的混淆矩陣變成這樣:
f1_score(y_test, y_pred): 0.818 recall_score(y_test, y_pred): 0.9結果有了很大的提升。這就是領域知識在評估患者得分方面發揮了重要作用。 詐騙交易下面的資料集是銀行詐騙交易。
df["Class"].value_counts() 0 28431 1 4925為了建立規則,我們查看特徵的分佈箱線圖:
from hulearn.classification import FunctionClassifier
rules = {
"V3": ("<=", -2),
"V12": ("<=", -3),
"V17": ("<=", -2),
}
def create_rules(data: pd.DataFrame, rules):
filtered_data = data.copy()
for col in rules:
filtered_data[col] = eval(f"filtered_data[col] {rules[col][0]} {rules[col][1]}")
result = np.array(filtered_data[list(rules.keys())].min(axis=1)).astype(int)
return result
hybrid_classifier = FunctionClassifier(create_rules, rules=rules)
我們可以比較純基於規則的系統和kNN方法的結果,這裡使用kNN的原因是,它可以處理不平衡資料:##############可以看到,我們只寫了3個規則,就比KNN模型的表現好######總結######我們這裡的例子可能並不非常的確切,但是它足以說明,混合模型提供了實際的好處,例如快速實施、對異常值的穩健性和增加的透明度。在將業務邏輯與機器學習結合時,它們是有益的。例如,醫療保健中的混合規則-ML 系統可以透過結合臨床規則和分析患者資料的機器學習演算法來診斷疾病。機器學習能夠在許多任務上取得出色的結果,但是它也需要領域知識的補充。領域知識可以幫助機器學習模型更好地理解數據,並更準確地進行預測和分類。 ###混合模型可以幫助我們將領域知識和機器學習模型結合起來。混合模型通常由多個子模型組成,其中每個子模型都針對特定的領域知識進行了最佳化。這些子模型可以是基於硬編碼規則的模型,也可以是基於統計方法的模型,甚至可以是基於深度學習的模型。
混合模型可以利用領域知識來指導機器學習模型的學習過程,從而提高模型的準確性和可靠性。例如,在醫學領域中,混合模型可以結合醫生的專業知識和機器學習模型的能力,以診斷患者的疾病。在自然語言處理領域,混合模型可以結合語言學知識和機器學習模型的能力,以便更好地理解和產生自然語言。
總之,混合模型可以幫助我們將領域知識和機器學習模型結合起來,從而提高模型的準確性和可靠性,並且在各種任務中都有廣泛的應用。
以上是結合基於規則和機器學習的方法來建立強大的混合系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!

軟AI(被定義為AI系統,旨在使用近似推理,模式識別和靈活的決策執行特定的狹窄任務 - 試圖通過擁抱歧義來模仿類似人類的思維。 但是這對業務意味著什麼

答案很明確 - 只是雲計算需要向雲本地安全工具轉變,AI需要專門為AI獨特需求而設計的新型安全解決方案。 雲計算和安全課程的興起 在

企業家,並使用AI和Generative AI來改善其業務。同時,重要的是要記住生成的AI,就像所有技術一樣,都是一個放大器 - 使得偉大和平庸,更糟。嚴格的2024研究O

解鎖嵌入模型的力量:深入研究安德魯·NG的新課程 想像一個未來,機器可以完全準確地理解和回答您的問題。 這不是科幻小說;多虧了AI的進步,它已成為R

大型語言模型(LLM)和不可避免的幻覺問題 您可能使用了諸如Chatgpt,Claude和Gemini之類的AI模型。 這些都是大型語言模型(LLM)的示例,在大規模文本數據集上訓練的功能強大的AI系統

最近的研究表明,根據行業和搜索類型,AI概述可能導致有機交通下降15-64%。這種根本性的變化導致營銷人員重新考慮其在數字可見性方面的整個策略。 新的

埃隆大學(Elon University)想像的數字未來中心的最新報告對近300名全球技術專家進行了調查。由此產生的報告“ 2035年成為人類”,得出的結論是,大多數人擔心AI系統加深的採用


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Atom編輯器mac版下載
最受歡迎的的開源編輯器

Dreamweaver CS6
視覺化網頁開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能