機器學習概覽

2021-10-04 21:34:27 字數 3891 閱讀 8611

人們在使用機器學習的時候,把很大的精力放在了選擇演算法、優化演算法上面,其實演算法的選擇只是機器學習其中的乙個步驟,但是機器學習其他的步驟也是很關鍵的,尤其是作為產品經理,了解這個機器學習流程也是至關重要的。

機器學習的流程本質上就是資料準備、資料分析、資料處理、結果反饋的過程,按照這個思路,我們可以把機器學習分為如下步驟:業務場景分析、資料處理、特徵工程、演算法模型訓練、應用服務。下面具體介紹一下這幾個步驟。

1. 業務場景分析

業務場景分析就是將我們的業務需求、使用場景轉換成機器學習的需求語言,然後分析資料,選擇演算法的過程。這個是機器學習的準備階段,主要包括以下3點:業務抽象、資料準備、選擇演算法。

(1)業務抽象

業務抽象說白了就是針對於業務需求,抽象成機器學習的應用場景的問題,我們上節中講了機器學習的分類、聚類、回歸、降維的應用場景,其實業務抽象就是把我們遇到的業務需求抽象成上述應用場景。

比如我們要做產品推薦的需求,我們要把指定的產品推薦給相應的使用者,也就是如何精準營銷,給使用者推薦是合適的產品。

我們抽象成機器學習的語言就是乙個產品a是否要推薦給使用者a,這就是乙個是或者否的問題,也就是乙個分類應用場景。這就是業務抽象,就是把業務需求抽象成機器學習的應用場景。

(2)資料準備

機器學習的基礎就是資料,沒有資料是無法訓練模型,也就是機器是無法學習的,所以資料準備就是識別、收集、加工資料階段。

通過圖譜我們了解到,我們能獲取到的資料有機構化資料、半結構化資料、非結構化資料,機器學習同樣的是這些資料,這些資料型別在知識圖譜有講解,不在贅述,這裡主要講一下作為產品經理進行資料準備時需要考慮的因素。

1)資料字段的考慮

關於資料字段考慮就是說我們在準備資料時,無論是結構化資料、非結構化資料、半結構話資料,我們都要抽象成乙個二維表,二維表表頭就是這些資料的表示或是資料的名稱,這個就是資料字段。

對於資料字段涉及到兩方面:

一方面就是資料字段範圍,也就是我們在做業務需求的時候需要哪些字段作為機器學習引數,這跟我們做後台產品經理類似。

做後台涉及需要進行資料項欄位的設計,這些欄位有業務字段、邏輯字段、系統欄位等,對於機器學習字段考慮要比後台設計的字段考慮更深一些,他不僅僅是後台產生的這寫資料,還包括一些過程資料、結果資料、埋點資料、轉換資料(定性轉定量)等,具體我們可以參考一些統計學的方法,去收集、制定機器學習的字段。

一方面就是字段型別的判定,比如到底是字串型的還是數值型的。

我們做回歸分析,需要的必須是數值型的,因為回歸是連續變數的分析,假如你要分析性別這個字段,那麼必須把他的字段值定義成數值型的,例如0和1,這樣才算是連續變數,才能做回歸分析,假如要做分類,我們就可以把性別的字段設定成字串,例如男和女。

2)資料的考慮

關於資料的考慮就是你能獲取到的資料案例,就是二維表中除了表頭資料欄位名稱剩下的真實資料了,對於資料考慮,作為產品經理我們要考慮兩點:

乙個是資料量,在機器學習中,資料需要一定的量,希望可以盡可能的大;

乙個是資料的預設,這個是資料質量問題,要求我們盡可能完善的收集資料,如果資料缺失比較多或者資料亂碼比較多的字段,可以不參與模型測算,否則會影響結果,

(3)演算法選擇

演算法選擇確定了機器學習的需求、確定了資料項,選擇何種演算法模型的問題,此階段由演算法工程師主導的,我們知道機器學習有很多的演算法,所以演算法選擇也具有多樣性;

同樣乙個問題可以多種演算法解決,隨著電腦科學的發展,為了也會有更多的演算法支援,同時同一種演算法也可以通過調參進行優化。

2. 資料處理

資料處理就是資料的選擇和清洗的過程,資料準備好後,確定了演算法,確定了需求,就需要對資料進行處理,資料處理的目的就是盡可能降低對演算法的干擾。在資料處理中我們會經常用到「去噪」和「歸一」。

去噪就是去除數中干擾的資料,也就是說你的資料案例中存在特別情況的,或者是不正常的資料,一方面要求我們產品經理拿到的資料是反映真實世界的資料,一方面我們通過演算法可以識別干擾的資料,比如對於資料有正態分佈效果的我們可以通過3標準差去噪,因此去噪的目的就是去除掉資料中異常的資料。

歸一就是將資料進行簡化,一般將資料簡化在【0,1】,資料歸一化主要是幫助演算法能夠很好的尋找最優解。

一方面解決的是對於乙個資料字段可有多重標示方式,然後資料拿到的多重標示方式的時候,比如一群羊有30隻羊,然後你那到的資料有以群為單位的,有以只為單位的,那麼著資料必然有誤差;

再比如形容乙個小時,我們可以以小時單位,也可以以分鐘為單位,也可以以秒單位,因為資料分析是不分析單位的,就需要歸一化處理,這也就是歸一化解決的第乙個問題「去量綱」這需要產品經理在獲取資料的時候,統一資料計量單位;

歸一化另外乙個問題就是解決演算法「收斂」的問題,這個需要演算法去實現,比如你要分析x和y,x的資料範圍是【0-10】,y的資料範圍是【0-100000】演算法在處理時考慮到資料收斂問題,會對資料標準化處理。

當然在資料處理中有很多手段,並且有很多演算法協助去處理,資料梳理的目的就是按照業務場景將資料優化成對演算法模型干擾最小的階段。

3. 特徵工程

在機器學習中有這麼一種說法,資料和特徵決定了機器學習的上限,模型和演算法只是逼近這個上限,資料和特徵是演算法模型的基礎,所謂特徵工程就是對處理完成後的資料進行特徵提取,轉換成演算法模型可以使用的資料。

特徵功能的目的有以下幾個方面:

從資料抽取出對**結果有用的資料;從資料中構建衍生出對結果有用的資訊;尋找更好的特徵提高演算法高效性;尋找更好的特徵可以選擇簡單的模型就能出具更好的擬合效果。一般情況下在資料處理過程中就可以進行特徵工程的工作,比如歸一化處理,我們可能在進行特徵發現的時候,還需要進一步進行資料處理。

什麼是特徵?特徵就是在原始資料可測量的屬性,可測量可以理解成這個資料指標可以被統計,可以被運算或是計算,比如時間戳資料,我們通常獲取的資料就是年月日時分秒的結構,比如2019-01-09;12:30:45,這樣乙個資料是無法被機器學習所運算的,所以需要對這個數進行特徵轉換,轉換成一些數值的表示式,以便於演算法理解。

特徵工程處理過程包括特徵的抽象、特徵的評估與選擇(同一資料可以抽象成多種特徵,對多種特徵進行評估和選擇)、特徵的衍生(特徵與特徵之間進行組合使用)。特徵工程是特徵業務定義、演算法、資料處理綜合的應用。

作為產品經理,我們重點說明一下特徵的抽象。特徵的抽象就是對原資料轉換成特徵資料的過程。

我們舉幾個例子來說明一下:比如你收集到的資料值字元型的資料,比如你收集到的資料是「是和否」型的資料,這種資料機器是無法運算的,那麼我們可以轉換成「0和1」這樣講資料進行特徵抽象後就可以機器學習了。

特徵工程是機器學習很重要的一環,特徵的好壞直接影響了機器學些的結果,對於同一組資料,我們可能用了相同的演算法,但是因為特徵選擇的不同,我們最終得出的質量也會有很大的差別。所以對特徵工程有興趣的可以參考相關其他相關更詳細的資料。

4. 模型訓練與應用服務

模型訓練就是經歷了資料準備、資料處理、特徵工程之後,根據選擇好的演算法,進行訓練與評估,通過演算法訓練得到演算法模型,通過新資料測試完成模型質量的評估,這款主要工作在演算法工程師這裡,產品經理重點關注模型在新資料不斷注入的情況下是可以反覆訓練的。

應用服務就是說模型訓練好了,如何輸出的問題,以及如何快速訓練模型、配置模型相關引數的問題,對於模型的應用可以通過api的方式**用層呼叫,應用層也可以通過配置頁面來配置模型相關引數,比如置信度等。

5. 了解機器學習流程對產品經理意義

通過簡單直白的介紹機器學習流程,對我們產品經理有以下意義:

機器學習過程,不是乙個簡單的過程,不是說定好了需求,直接交給演算法工程師就可以了,產品經理要把握機器學習業務場景抽象;要對原始資料質量、數量有很好的把控;對特徵的抽象需要有深入的了解;機器學習的基礎是資料、以及資料特徵的轉換,需要我們對處理的處理過程有更深層次的了解與掌握,需要多學一些資料、統計學、計量學相關知識;機器學習的需求也不僅僅是通過原型、文件就能解決的,需要產品經理與工程師深度的合作,參與到機器學習的過程中。

機器學習概覽

當今機器學習是乙個非常熱門的話題,每個人都在談論機器學習,並討論它如何在他們的業務或職業生涯中發揮作用。機器學習是一種資料分析方法,可以使分析模型建立自動化。它是人工智慧的乙個分支,其基礎是機器應該能夠通過經驗學習和適應。機器學習的型別 監督學習 無監督學習 強化學習 建立良好的機器學習系統需要什麼...

機器學習概覽

什麼是機器學習?機器學習是基於歷史資料,從中學習和一種滿足業務的模型,然後用這個模型去 類似模型資料的事件。機器學習的應用場景 1.事物存在某種潛在規律 2.某些問題難以使用普通程式設計解決 3.有大量資料可以使用 機器學習的分流程 機器學習的演算法分類 按輸出空間劃分 1.分類問題 2.回歸問題 ...

機器學習 概覽

型別 目的演算法 監督學習 結果 分類,回歸 非監督學習 發現潛在結構 聚類,降維 強化學習 長期利益最大化,回報函式 馬爾科夫決策,動態規劃 邏輯回歸 lr logistic regression 支援向量機 svm support vector machine knn k nearest nei...