1.問題抽象
這裡的抽象成數學問題,指的我們明確我們可以獲得什麼樣的資料,目標是乙個分類還是回歸或者是聚類的問題,如果都不是的話,如果劃歸為其中的某類問題。
2.資料整合
獲取資料報括獲取原始資料以及從原始資料中經過特徵工程從原始資料中提取訓練、測試資料。機器學習比賽中原始資料都是直接提供的,但是實際問題需要自己獲得原始資料。「 資料決定機器學習結果的上限,而演算法只是盡可能的逼近這個上限」,可見資料在機器學習中的作用。總的來說資料要有具有「代表性」,對於分類問題,資料偏斜不能過於嚴重,不同類別的資料數量不要有數個數量級的差距。不僅如此還要對評估資料的量級,樣本數量、特徵數量,估算訓練模型對記憶體的消耗。如果資料量太大可以考慮減少訓練樣本、降維或者使用分布式機器學習系統。
3.特徵獲取
特徵工程包括從原始資料中特徵構建、特徵提取、特徵選擇。特徵工程做的好能發揮原始資料的最大效力,往往能夠使得演算法的效果和效能得到顯著的提公升,有時能使簡單的模型的效果比複雜的模型效果好。資料探勘的大部分時間就花在特徵工程上面,是機器學習非常基礎而又必備的步驟。資料預處理、資料清洗、篩選顯著特徵、摒棄非顯著特徵等等都非常重要。
4.訓練模型、診斷、調優
模型診斷中至關重要的是判斷過擬合、欠擬合,常見的方法是繪製學習曲線,交叉驗證。通過增加訓練的資料量、降低模型複雜度來降低過擬合的風險,提高特徵的數量和質量、增加模型複雜來防止欠擬合。診斷後的模型需要進行進一步調優,調優後的新模型需要重新診斷,這是乙個反覆迭代不斷逼近的過程,需要不斷的嘗試,進而達到最優的狀態。
5.模型驗證、誤差分析
通過測試資料,驗證模型的有效性,觀察誤差樣本,分析誤差產生的原因,往往能使得我們找到提公升演算法效能的突破點。誤差分析主要是分析出誤差**與資料、特徵、演算法。
6.模型融合
提公升演算法的準確度主要方法是模型的前端(特徵工程、清洗、預處理、取樣)和後端的模型融合。在機器學習比賽中模型融合非常常見,基本都能使得效果有一定的提公升。
7.上線執行
大資料時代建模人員需要熟悉很多大資料元件使用。例如:spark,hive, hadoop,yarn等。
海量資料下業務相關資料(使用者行為資料、屬性等)匹配抽取效率低下。
建模工具不統一,機器學習pipeline 不統一,**重複率高,建模過程不能很好沉澱,缺少標
準化監控。
建模人員大多聚焦在模型實驗階段,不擅長工程實現,依賴工程開發人員翻譯整合最終的
pipeline。
資料探索時資料種類繁多,使用資料成本高。
相同特徵存在重複構建,比較好用特徵未得到廣泛應用。
機器學習快速推廣困難
機器學習資料預處理 標準化 歸一化方法
通常,在data science中,預處理資料有乙個很關鍵的步驟就是資料的標準化。這裡主要引用sklearn文件中的一些東西來說明,主要把各個標準化方法的應用場景以及優缺點總結概括,以來充當筆記。首先,我要引用我自己的文章feature preprocessing on kaggle裡面關於scal...
機器學習資料預處理 標準化 歸一化方法
通常,在data science中,預處理資料有乙個很關鍵的步驟就是資料的標準化。這裡主要引用sklearn文件中的一些東西來說明,主要把各個標準化方法的應用場景以及優缺點總結概括,以來充當筆記。首先,我要引用我自己的文章feature preprocessing on kaggle裡面關於scal...
標準化與歸一化 機器學習
歸一化和標準化經常被搞混,程度還比較嚴重,非常干擾大家的理解。為了方便後續的討論,必須先明確二者的定義。如果要把輸入資料轉換到 0,1 的範圍,可以用如下公式進行計算 按以上方式進行歸一化以後,輸入資料轉換到 0,1 的範圍。有時候我們希望將輸入轉換到 1,1 的範圍,可以使用以下的公式 以上兩種方...