1.機器學習可以根據訓練時監督的量和型別分為四類 :監督學習,非監督學習,半監督學習和強化學習
1.1監督學習:用來訓練演算法的訓練資料報含了答案(即標籤)
重要的監督學習演算法:k近鄰演算法,線性回歸,邏輯回歸,支援向量機,決策樹和隨機森林,神經網路
1.2非監督學習:用來訓練演算法的訓練資料沒有包含標籤的
重要的非監督學習演算法:1.聚類(k均值,層次聚類分析-hca;期望最大值)2.視覺化和降維(主成分分析,核主成分分析,區域性線性嵌入,t-分布鄰域嵌入演算法)3.關聯性規則學習(apriori演算法,eclat演算法)
1.3半監督學習:部分資料帶標籤,通常是大量不帶標籤資料加上小部分帶標籤資料
多數半監督學習演算法是非監督和監督演算法結合。例如:深度信念網路是基於被稱為互相疊加的受限玻爾曼機的非監督元件。rbm是先用非監督方法進行訓練,再用監督學習方法進行微調
1.4強化學習:強化學習非常不同,它可以對環境進行觀察,選擇和執行動作,獲得獎勵
對於乙個機器學習的問題,資料和特徵決定了結果的上限,而模型和演算法的選擇與優化則是在逐步的逼近這個上限
面試問題:
1.資料歸一化
資料歸一化不是萬能的,通過梯度下降法求解的模型需要歸一化,包括knn,adaboost,線性回歸,邏輯回歸,支援向量機,神經網路,k均值聚類演算法等;但概率模型(樹形模型)不需要歸一化,如決策樹模型,隨機森林(因為歸一化不會改變資訊增益)
2.類別型特徵
類別型特徵原始輸入通常是字串形式,除了決策樹(但scikit-learn使用了cart演算法的優化版本;它目前還不支援類別變數)等少數模型可以直接處理字串輸入外,對於邏輯回歸,支援向量機等模型,必須轉換成數值型特徵才行。
編碼的方法有三種:序號編碼(ordinal encoding),獨熱編碼(one-hot encoding),二進位制編碼(binary encoding)
在使用獨熱編碼和二進位制編碼的時候需要結合特徵選擇來降低維度
3.組合特徵處理
為了提高複雜關係的擬合能力,在特徵工程中經常會把一階離散特徵兩兩組合,構成高階組合特徵;但是實際應用中,不是所有的組合能得到乙個有效的組合特徵,乙個有效的方法尋找特徵組合是:基於梯度提公升決策樹來尋找(該方法的思想是每次都在之前構建的決策樹的殘差上構建下一棵樹),每條從根節點到葉節點的路徑都可以看成一種特徵組合方式。
4.模型評估
評估指標:均方根誤差(root mean square error,rmse),一般情況,rmse可以很好的反映回歸模型的**值與真實值的偏離程度,但是如果有離群點,即使非常少,也會讓rmse指標變得很差。針對這個問題,我們的解決方案是:第一,如果我們認定這些離群點是「雜訊點」的話,需要在資料預處理的時候過濾掉,第二,如果不認為這些是離群點的話,就需要進一步提高模型的**能力,將離群點產生的機制建模進去,第三,可以找乙個更合適的指標來評估模型,比如平均絕對百分比誤差(mean absolute precent error,mape);相比rmse,mape相當於把每個點的誤差進行了歸一化,降低了個別離群點帶來的絕對誤差的影響
4.1 roc 曲線
初識機器學習演算法有哪些?
機器學習無疑是現在資料分析領域的乙個重要內容,凡事從事it工作領域的人都在平時的工作中或多 或少的會用到機器學習的演算法。機器學習有很多演算法,不過大的方面可分為兩類 乙個是學習的方式,乙個是演算法的類似性。學習方式 根據資料型別的不同,對乙個問題的建模有不同的方式。在機器學習或者人工智慧領域,人們...
js函式哪些事
js函式概念 js函式就類似把任意一段 放在乙個盒子裡面,呼叫函式就是直接呼叫這個這個盒子,讓盒子執行裡面得 得到想要得結果 函式規則 高內聚,低耦合。高內聚 即函式要有很明確的功能性,解決一類問題,而不只是乙個問題 低耦合 即函式對其他元素的依賴性,函式在執行過程中,不應該太多的依賴其他的方法或者...
《機器學習那些事》讀書筆記
1 模型的三要素 a 表示 假設空間 目前很多書籍對模型的分類都是基於假設空間的 b 評價 損失函式 是乙個評價標準 c 優化 優化演算法 乙個搜尋演算法,能夠在假設空間中找到評價函式得分最高的假設 2 泛化 訓練集要和測試集分開 3 模型選擇 根據資料之間的關係和模型的表示 這裡指的是假設 來選擇...