無論它的規模和大小如何,資料已經成為現代企業、公司和組織的一流資產。任何乙個智慧型系統都需要資料驅動,無論它多複雜。每個智慧型系統的核心,均有乙個或多個基於某種資料學習方法的演算法,例如機器學習、深度學習或統計方法,它們利用這些資料來生成知識,並在一段時間內提供智慧型洞察。
演算法本身是非常通用的,但無法在普通原始資料上有效發揮作用。因此,需要從原始資料中提取有意義的特徵,我們才能夠理解和使用這些資料。
任何乙個智慧型資料洞察系統基本上都由端到端的管道組成:
如果有必要的話,還需要根據手頭要解決的問題部署該模型以供將來使用。
獲取原始資料後,直接在資料之上構建模型是魯莽的,因為我們無法從普通原始資料中獲得想要的結果或效能,而且演算法本身也不會自動從中提取有意義的特徵。在上圖中指出的資料準備方面,在對原始資料進行必要的清洗、預處理分析之後,便可以採用多種方法從中提取有意義的屬性或特徵。特徵工程是一門藝術,也是一門科學,這也是為什麼資料科學家在建模之前通常會把70%的時間花在資料準備上。
這讓我們深入了解了為什麼特徵工程是乙個將資料轉化成作為機器學習模型輸入的特徵的過程,換句話說,高質量的特徵有助於提高模型整體的效能和準確性。特徵在很大程度上與基本問題相關聯。
因此,即使機器學習任務在不同的場景中可能是相同的,比如將物聯網事件分類為正常和異常行為,或者將客戶情緒分類,但每個場景中提取的特徵都會有很大的不同。
什麼是特徵?
特徵通常是建立在原始資料之上的特定表示,它是乙個單獨的可測量屬性,通常用資料集中的列表示。對於乙個通用的二維資料集,每個觀測值由一行表示,每個特徵由一列表示,對於每乙個觀測具有乙個特定的值。
因此,就像上圖中的例子一樣,每行通常表示乙個特徵向量,所有觀察到的全部特徵集形成乙個二維特徵矩陣,也稱為特徵集。這類似於用來表示二維資料的資料框或電子**。機器學習演算法通常與這些數值矩陣或張量一起工作,因此絕大多數特徵工程技術都是將原始資料轉換為一些數值表達,以便演算法理解。
基於資料集的特徵可以分為兩大類:
舉乙個簡單的例子:通過將當前日期減去訂單日期,可以從包含「訂單日期」的訂單資料集中建立乙個新的「訂單履行日期」。另一方面,在特定的深度學習演算法中,特徵通常比較簡單,因為演算法本身會內部轉化資料。這種方法需要的資料量會比較大,並以犧牲解釋性為代價。然而,在影象處理或自然語言處理用例中,這樣的折中方法往往是值得的。
對於公司面臨的大多數其他用例,例如**分析,特徵工程是將資料轉換成機器學習所需要的格式。特徵的選擇對模型的解釋性和效能都至關重要。如果沒有特徵工程,今天的大公司就無法部署精確的機器學習系統。
特徵工程
數值資料通常以標量值的形式描述觀測、記錄或測量資料。在這裡,我們所說的數值資料是指連續資料,而不是通常用來表示分類資料的離散資料。數值資料也可以是向量值,其中向量中的每個值或實體都可以表示乙個特定的特徵。整數和浮點數是連續數值資料中最常見和最廣泛使用的數值資料型別。
即使數值資料可以直接輸入機器學習模型,在構建模型之前,仍然需要設計與場景、問題和領域相關的特徵。因此,對特性工程的需求仍然存在。
原文發布時間為:2018-08-23
一文帶你讀懂「TRIZ」
各位好,本期的內容是 triz與經典triz 在開始之前,請您先嘗試回答以下問題 什麼是triz?什麼是 經典triz 經典triz 包括哪些內容?經典triz 與 現代triz 的區別?您可以先思考一會兒。好了,不知您回答對了幾道題呢?為什麼要學習本課程?學習本課程,你可以獲得哪些知識?在此,我要...
一文讀懂矩陣的特徵分解
矩陣的特徵分解非常好理解,假設現在有乙個nxn的矩陣a,如果這個矩陣a有n個線性無關的特徵向量,那麼a就可以分解為 p代表nxn的方陣,中間的 代表對角矩陣 怎麼理解呢?為什麼可以分解成這樣呢?對角矩陣 對角矩陣是指只有主對角線上含有非零元素的矩陣,一般記作 例如 矩陣相似 若矩陣a和矩陣b都是n階...
一文讀懂Nginx
問 nginx的負載均衡演算法有什麼?預設是什麼演算法?答 1 輪詢 按請求的時間輪詢查空閒的後端伺服器 2 指定輪詢機率 機率的原因是後端伺服器的效能不均勻,好的多分點,差的少分點 3 固定ip繫結固定伺服器 預設是加權輪詢,就是優先訪問權重高的伺服器 問 nginx是單執行緒的嗎?答 是單執行緒...