- Web安全之機器學習入門
- 劉焱
- 486字
- 2019-01-05 10:21:45
機器學習的概念非常多,從有監督到無監督,從聚類到回歸,從淺層學習到深度學習,從準確率到召回率,它們究竟是什么意思呢?本章將介紹最主要的幾個概念。不少機器學習初學者甚至包括業內老司機,一直被困擾的就是如何找到合適的訓練數據和測試數據,針對數據的處理也花費了大量人力物力,究竟如何把身邊各種形態的實物最終轉換成機器可以理解的數字特征呢?本章將介紹數據集的獲取與特征提取方案。本章介紹的數據集包括KDD 99、SEA、ADFA-LD等共10類,重點介紹如何針對數字型和文本型的數據進行特征提取以及常見的數據讀取方式,最后介紹如何對機器學習的結果進行驗證。
3.1 機器學習基本概念
1.有監督學習:對具有概念標記(分類)的訓練樣本進行學習,以便盡可能對訓練樣本集外的數據進行標記(分類)預測。這里,所有的標記(分類)是已知的。因此,訓練樣本的歧義性低。
2.無監督學習:對沒有概念標記(分類)的訓練樣本進行學習,以便發現訓練樣本集中的結構性知識。這里,所有的標記(分類)是未知的。因此,訓練樣本的歧義性高。聚類就是典型的無監督學習。
3.準確率與召回率:信息檢索、分類、識別、翻譯等領域中有兩個最基本指標:召回率(Recall Rate)和準確率(Precision Rate),召回率也叫查全率,準確率也叫查準率。
對一個二分問題來說,會出現四種情況。如果一個實例是實際為真并且也被預測成真,即為真正類(True positive, TP),如果實際為假被預測成真,稱之為假正類(False positive,FP)。相應地,如果實際為假被預測成假,稱之為真負類(True negative, TN),實際為真被預測成假則為假負類(false negative, FN)。
召回率和準確率的關系如表3-1所示。
表3-1 召回率與準確率的關系

召回率=TP/(TP+FN)
準確率=TP/(TP+FP)
用一個吃貨都可以理解的例子來解釋這兩個枯燥的概念:一個池塘有10條魚和20只小龍蝦,漁夫撒網打魚,結果撈上來8條魚12只小龍蝦,那么準確率為8/(8+12)=40%,召回率為8/10=80%。
- Securing Blockchain Networks like Ethereum and Hyperledger Fabric
- 網絡空間攻防技術原理
- 深入淺出隱私計算:技術解析與應用實踐
- 工業控制網絡安全技術
- 信息安全案例教程:技術與應用(第2版)
- 人工智能安全(精裝版)
- Disaster Recovery Using VMware vSphere Replication and vCenter Site Recovery Manager
- VMware vCloud Security
- 網絡安全實戰詳解(企業專供版)
- 云計算安全防護技術
- Web安全攻防從入門到精通
- 網絡安全監控實戰:深入理解事件檢測與響應
- 從實踐中學習Nmap滲透測試
- 黑客攻防從入門到精通:絕招版(第2版)
- 網絡安全設計