一、貝葉斯分類器和其他分類器的區別
貝葉斯分類器的分類原理是通過某對象的先驗概率,利用貝葉斯公式計算出其后驗概率,即該對象屬于某一類的概率,選擇具有最大后驗概率的類作為該對象所屬的類。。也就是說,貝葉斯分類器是最小錯誤率意義上的優化。目前研究較多的貝葉斯分類器主要有四種,分別是:Naive Bayes、TAN、BAN和GBN。
貝葉斯網絡是一個帶有概率注釋的有向無環圖,圖中的每一個結點均表示一個隨機變量,圖中兩結點間若存在著一條弧,則表示這兩結點相對應的隨機變量是概率相依的,反之則說明這兩個隨機變量是條件獨立的。網絡中任意一個結點X 均有一個相應的條件概率表(Conditional Probability Table,CPT),用以表示結點X 在其父結點取各可能值時的條件概率。若結點X 無父結點,則X 的CPT 為其先驗概率分布。貝葉斯網絡的結構及各結點的CPT 定義了網絡中各變量的概率分布。
1,它是一種典型的生成學習方法,其生成方法是由訓練數據學習聯合概率分布P(X,Y),具體來說就是利用訓練數據學習P(Y)和P(X|Y)的估計:P(X,Y) = P(Y)P(X|Y),其概率估計方法是極大似然估計或者貝葉斯估計都行~~~
2,另一個要注意的點是樸素貝葉斯的基本假設是條件獨立性。
<img src= data-rawwidth=586 data-rawheight=127 class=origin_image zh-lightbox-thumb width=586 data-original=>(因為網上沒有找到這個公式,所以我自己打開了word~自從數學建模后就沒編輯過這么復雜的公式,2333~)(因為網上沒有找到這個公式,所以我自己打開了word~自從數學建模后就沒編輯過這么復雜的公式,2333~)
這會使模型包含的條件概率的數量減少,因而樸素貝葉斯法高效,易于實現,但也有缺點,就是其分類的性能不一定很高。
3,樸素貝葉斯發利用貝葉斯定理與學到的聯合概率模型進行分類預測,
<img src= data-rawwidth=408 data-rawheight=106 class=content_image width=408>將輸入x分到后驗概率最大的類y.將輸入x分到后驗概率最大的類y.
<img src= data-rawwidth=499 data-rawheight=75 class=origin_image zh-lightbox-thumb width=499 data-original=>后驗概率最大等價于0-1損失函數時的期望風險最小化。。。
后驗概率最大等價于0-1損失函數時的期望風險最小化。。。
二、機器學習有很多關于核函數的說法,什么是核函數
分類器一般都是線性分類器,對于線性不可分的樣本空間,需要核函數將樣本映射至高維空間使其線性可分。
三、如何用adaboost訓練分類器
Paul Viola和Michael Jones于2001年將Adaboost算法應用于人臉檢測中,其基本思想是針對不同的訓練集訓練同一個分類器(弱分類器),然后把這些不同訓練集上的得到的分類器聯合起來,構成一個最終的強分類器。Adaboost 算法中不同的訓練集是通過調整每個樣本對應的權重來實現的。開始時,每個樣本對應的權重是相同的,對于h1 分類錯誤的樣本,加大其對應的權重; 而對于分類正確的樣本, 降低其權重, 這樣分錯的樣本就被突出出來,從而得到一個新的樣本分布 U2 。在新的樣本分布下,再次對弱分類器進行訓練,得到弱分類器 h2 。依次類推,經過 T 次循環,得到 T 個弱分類器,把這 T 個弱分類器按一定的權重疊加(boost)起來,得到最終想要的強分類器。
訓練系統總體框架,由“ 訓練部分”和 “ 補充部分”構成。依據系統框架,本文的訓練系統可分為以下幾個模塊:
(1)以樣本集為輸入,在給定的矩形特征原型下,計算并獲得矩形特征集;
(2)以特征集為輸入,根據給定的弱學習算法,確定閩值,將特征與弱分類器一一對應,獲得弱分類器集;
(3)以弱分類器集為輸入, 在訓練檢出率和誤判率限制下, 使用A d a B o o s t 算法
挑選最優的弱分類器構成強分類器;
(4)以強分類器集為輸入,將其組合為級聯分類器;
(5)以非人臉圖片集為輸入,組合強分類器為臨時的級聯分類器,篩選并補充
非人臉樣本。
四、sparse encoding是無監督學習嗎
機器學習任務根據訓練樣本是否有label,可以分為監督學習和無監督學習 監督學習的訓練樣本有label,主要是學習得到一個特征空間到label的映射,如分類、回歸等 無監督學習的訓練樣本沒有label,主要是發現樣本的內部結構,如聚類、降維、可視化等
五、有沒有好用的java編寫的分類器,將一些文本文件進行分類?
文本分類的重點不在分類,而在怎么樣描述文本模型和提取文檔中的terms并把它數字化,轉化為分類器可以使用的輸入類型。這前面的處理直接關系到后面分分類效果。就文本模型而言,現在普遍使用的還是Salton 和 McGill的Vector Space Model, 通過TF-IDF統計,如果是英文的話,要進行語義層次的抽象, 這方面可以使用WordNet,網上可以找到JAVA wordnet 的API,,個人認為比較好的是JWNL 如果是中文的話,涉及到分詞, 中科院計算所分詞系統ICTCLAS, 可到其網站上下載免費版。
至于JAVA寫的分類器很多,常用的比如說Weka, RapidMiner(這個相當不錯,有專門的Web data Mining的擴展包,是我的最愛),這些都可以自己調用其接口實現新的算法。個人強烈推薦使用RapidMiner,功能相當強大,幾乎實現了當前的所有機器學習的算法,并且操縱簡便。
學習提示:不要剛開始就希望效果很好,急躁是做學問的大敵,肯定會出現一些意想不到的問題,最主要是勤于思考,善于查找問題,慢慢改進,一個問題,如果比較難,回到它最原始最簡單的問題上去。祝你學業進步。