入門簡單資料探勘步驟

2021-10-10 00:16:36 字數 1649 閱讀 2945

由於自己是資料分析與大資料技術專業的,並且最近剛入門資料探勘與機器學習,如有不當之處希望各位讀者指正。在本文開始之前先引入幾個概念。

資料集:是資料的集合,所謂的集合表現就是一張資料庫(例如excel表)、乙個資料庫(例如會員庫)、乙個資料檔案(例如.csv檔案)等,iris.csv就是乙個資料集,裡面包含了許多條資料,每一條資料都是乙個樣本,而每個樣本又有n個特徵(也叫維度),這些含有許多特徵的樣本集合到一起就是乙個資料集,在iris資料集csv檔案中,每一條資料都是乙個樣本,可以理解為一朵鳶尾花,它有4個特徵(花瓣的長度和寬度,花萼的長度和寬度)以及乙個標籤(花的種類)。

資料探勘:一種解釋是「識別出海量資料中有效的、新穎的、潛在有用的、最終可理解的模式的非平凡過程」,顧名思義,資料探勘就是試圖從海量資料中找出有用的知識。而談到資料探勘,必然少不了資料庫技術與機器學習,他們之間的關係是資料探勘利用資料庫技術來管理海量的資料,並利用機器學習和統計分析來進行資料分析。

機器學習:任何通過資料訓練的學習演算法的相關研究都屬於機器學習,比如線性回歸(linear regression)、k均值(k-means聚類)、決策樹(decision trees,運用概率分析的一種**法)、隨機森林(random forest,運用概率分析的一種**法)、pca(principal component analysis,主成分分析)、svm(support vector machine,支援向量機)。

分析是分類還是回歸型別的問題,如iris的標籤是鳶尾花的種類,很明顯為分類問題,而比如資料集的標籤是房價,商品的**等那麼既是回歸問題。二者的本質一樣,分類只是將**的結果離散化。

我們拿到的資料是骯髒的比如有缺失值,異常值,資料不一致 (前後矛盾,如 age = 「42」 「 birthday = 「01/09/1985」),資料冗餘 (redundant)即資料量或者屬性數目超出資料分析需要的情況,資料重複等,這時候就要對其進行清洗,如填補缺失值(用均值、眾數、中位數等),除去異常和重複的資料。特徵量過多的時候還需要考慮降維操作。

除此之外我們拿到的資料值之間可能懸殊過大,這時候需要進行 資料的標準化(normalization),將資料按比例縮放,使之落入乙個小的特定區間。在某些比較和評價的指標處理中經常會用到,去除資料的單位限制,將其轉化為無量綱的純數值,便於不同單位或量級的指標能夠進行比較和加權。

特徵工程是機器學習最為重要的一部分,特徵工程往往是開啟資料密碼的鑰匙,是資料科學中最有創造力的一部分。因為往往和具體的資料相結合,很難優雅地系統地講好。舉個例子,比如要判斷乙個人的胖瘦程度,肯定不可以單獨用體重來衡量,身高很高的人體重不大但不一定胖,這時候就需要用bmi指數來衡量,即bmi=體重(千克)除以身高(公尺)的平方。這就是乙個非常經典的特徵工程。簡而言之,特徵工程就是根據已有的特徵去建立新的與標籤關聯度更高的特徵(公升維),也可以篩出關聯度低的特徵(降維),當然大佬的特徵工程跟八仙過海一樣這裡不多說。

根據不同的資料集選擇合適的模型匯入訓練集進行訓練,再將測試集的特徵匯入得出**的標籤。可判斷過擬合和欠擬合,通過交叉驗證等方法來選擇引數,調整模型複雜度,如knn演算法中可調整超引數k的值得到不同k下的準確率,選取準確率最高的引數。

通過對結果的分析判斷誤差的**並對模型進行改進得到更高的準確率。

除此之外,還可利用matplotlib,seaborn等工具包進行資料視覺化,將資料更直觀的表達出來。

資料探勘步驟(流程)

流程說明 暫且總結為五步 1 確立挖掘目的,2 資料準備,3 數學建模,4 模型評估,5 模型應用。第一步 確立挖掘目的,確立業務目標 對目標做簡單評估,確立所需要的資料型別,人力資源及風險等,確立資料探勘的目標 制定實施計畫 第二步 資料準備 1 資料選擇 白貓黑貓能抓老鼠就是好貓,只要第一步確立...

MySQL入門之簡單資料查詢

include include include include include int main con mysql real connect mysql,localhost root 123456 mydb2 0,null,0 if con null else 執行sql查詢 mysql quer...

keras入門 簡單資料集的運用

keras keras是乙個高層神經網路api,keras由純python編寫而成並基tensorflow theano以及cntk後端。keras為支援快速實驗而生.keras的核心資料結構是 模型 模型是一種組織網路層的方式。keras中主要的模型是sequential模型,sequential...