大數(shù)據(jù)潮流下的機器學習及應用場景

機器學習是一門人工智能的科學,能通過經(jīng)驗自動改進的計算機算法的研究。    

成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設計、做網(wǎng)站與策劃設計,蘇尼特右網(wǎng)站建設哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設10余年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:蘇尼特右等地區(qū)。蘇尼特右做網(wǎng)站價格咨詢:18982081108

機器學習是一個多學科交叉的領域,會涉及到計算機、信息學、數(shù)學、統(tǒng)計學、神經(jīng)科學等。

機器學習是大數(shù)據(jù)的核心技術,本質(zhì)都是基于經(jīng)驗的算法處理。機器學習強調(diào)三個關鍵詞:算法、經(jīng)驗、性能,其處理過程如下圖所示。

大數(shù)據(jù)潮流下的機器學習及應用場景

在數(shù)據(jù)的基礎上,通過算法構建出模型并對模型進行評估。評估的性能如果達到要求,就用該模型來測試其他的數(shù)據(jù);如果達不到要求,就要調(diào)整算法來重新建立模型,再次進行評估。如此循環(huán)往復,最終獲得滿意的經(jīng)驗來處理其他的數(shù)據(jù)。

機器學習技術和方法已經(jīng)被成功應用到多個領域,比如今日頭條的個性推薦系統(tǒng),螞蟻金服的金融反欺詐,訊飛的語音識別,自然語言處理和google的機器翻譯,模式識別,智能控制、垃圾郵件等。

機器學習的分類

 監(jiān)督學習

監(jiān)督是從給定的訓練數(shù)據(jù)集中學習一個模型,再用此模型預測,再將預測結果與實際結果進行比較,不斷調(diào)整預測模型,直到達到一個預期的準確率。

常見算法包括回歸分析和統(tǒng)計分類。監(jiān)督學習常用作訓練神經(jīng)網(wǎng)絡和決策樹。他們高度依賴事先確定的分類系統(tǒng)。如垃圾郵件、新聞資訊內(nèi)容分類。

非監(jiān)督學習

非監(jiān)督學習的訓練集沒有人為標注的結果,學習模型是為了推斷出數(shù)據(jù)的一些內(nèi)在結構。常見的應用場景包括關聯(lián)規(guī)則的學習以及聚類等。

大數(shù)據(jù)潮流下的機器學習及應用場景

這類學習型的目標不是讓效用函數(shù)最大化,而是找到訓練數(shù)據(jù)中的近似點。聚類常常能發(fā)現(xiàn)那些與假設匹配的相當好的直觀分類,如基于人口統(tǒng)計的聚合個體可能會在一個群體中形成一個富有的聚合和窮的聚合。

半監(jiān)督學習

介于監(jiān)督學習與無監(jiān)督學習間,產(chǎn)要考慮如何利用少量的標注樣本和大量的未標注樣本進行訓練和分類的問題。學習算法試圖對未標識數(shù)據(jù)進行建模,再對標識的數(shù)據(jù)進行預測,如圖論推理算法或拉普拉斯支持向量機等。

機器學習常用算法

回歸算法

最小二乘法、邏輯回歸、逐步式回歸、多元自適誚回歸樣條以及要地散點平滑估計。

大數(shù)據(jù)潮流下的機器學習及應用場景

基于實例的算法

常被稱為“贏家通吃”學習。常用來對策問題建立模型,這樣的模型常常先選取一批樣本數(shù)據(jù),然后根據(jù)某些近似把新數(shù)據(jù)與樣本數(shù)據(jù)進行比較。通過這種方式來尋找最佳的匹配。

決策樹學習

根據(jù)數(shù)據(jù)的屬性采用樹狀結構建立決策模型,常用來解決分類和回歸問題。

大數(shù)據(jù)潮流下的機器學習及應用場景

貝葉斯學習

主要用來解決分類和回歸問題。樸素貝葉斯算法。

大數(shù)據(jù)潮流下的機器學習及應用場景

聚類、分類算法

大數(shù)據(jù)潮流下的機器學習及應用場景

聚類和分類是機器學習中兩個常用的算法,聚類將數(shù)據(jù)分開為不同的集合,分類對新數(shù)據(jù)進行類別預測,下面將就兩類算法進行介紹。
(1)什么是聚類
聚類(Clustering)指將數(shù)據(jù)對象分組成為多個類或者簇(Cluster),它的目標是:在同一個簇中的對象之間具有較高的相似度,而不同簇中的對象差別較大。

其實,聚類在人們?nèi)粘I钪惺且环N常見行為,即所謂的“物以類聚,人以群分”,其核心思想在于分組,人們不斷地改進聚類模式來學習如何區(qū)分各個事物和人。

(2)什么是分類
數(shù)據(jù)倉庫、數(shù)據(jù)庫或者其他信息庫中有許多可以為商業(yè)、科研等活動的決策提供所需要的知識。分類與預測即是其中的兩種數(shù)據(jù)分析形式,可以用來抽取能夠描述重要數(shù)據(jù)集合或預測未來數(shù)據(jù)趨勢。

分類方法(Classification)用于預測數(shù)據(jù)對象的離散類別(Categorical Label);預測方法(Prediction)用于預測數(shù)據(jù)對象的連續(xù)取值。
分類流程:新樣本→特征選取→分類→評價
訓練流程:訓練集→特征選取→訓練→分類器
最初,機器學習的分類應用大多都是在這些方法及基于內(nèi)存基礎上所構造的算法。目前,數(shù)據(jù)挖掘方法都要求具有基于外存以處理大規(guī)模數(shù)據(jù)集合能力,同時具有可擴展能力。

機器學習庫Spark MLLib

MLlib是Spark的機器學習(Machine Learning)庫,旨在簡化機器學習的工程實踐工作,并方便擴展到更大規(guī)模。機器學習需要多次迭代,如果使用Hadoop計算框架,則每次計算都要進行磁盤讀寫任務,會導致非常大的I/O和CPU消耗,而Spark是基于內(nèi)存的計算具有天生的優(yōu)勢。而且其RDD可與Spark SQL、Spark Streaming、GraphX等其他子框架與庫無縫地共享數(shù)據(jù)和操作,如MLlib可以直接使用SparkSQL提供的數(shù)據(jù),或可以直接和GraphX圖計算進行join操作。

MLlib在 spark 生態(tài)系統(tǒng)中的位置

 大數(shù)據(jù)潮流下的機器學習及應用場景

Spark MLlib 架構

大數(shù)據(jù)潮流下的機器學習及應用場景

從架構圖可以看出MLlib主要包含三個部分:

底層基礎:包括Spark的運行庫、矩陣庫和向量庫;

算法庫:包含廣義線性模型、推薦系統(tǒng)、聚類、決策樹和評估的算法;

實用程序:包括測試數(shù)據(jù)的生成、外部數(shù)據(jù)的讀入等功能。

 

下圖是MLlib算法庫的核心內(nèi)容。

 大數(shù)據(jù)潮流下的機器學習及應用場景

MLlib由一些通用的學習算法和工具組成,包括分類、回歸、聚類、協(xié)同過濾、降維等,同時還包括底層的優(yōu)化原語和高層的管道API。

具體來說,其主要包括以下幾方面的內(nèi)容:

1. 算法工具:常用的學習算法,如分類、回歸、聚類和協(xié)同過濾;
2. 特征化工具:特征提取、轉(zhuǎn)化、降維,和選擇工具;
3. 管道(Pipeline):用于構建、評估和調(diào)整機器學習管道的工具;
4. 持久性:保存和加載算法,模型和管道;
5. 實用工具:線性代數(shù),統(tǒng)計,數(shù)據(jù)處理等工具。

Spark將機器學習算法分成了兩個模塊:

訓練模塊:通過訓練樣本輸出模型參數(shù);

預測模塊:利用模型參數(shù)初始化,預測測試樣本,輸出預測值。

MLLib中經(jīng)典算法解析

 分類

分類是一種重要的機器學習和數(shù)據(jù)挖掘技術。分類的目的是根據(jù)數(shù)據(jù)集的特點構造一個分類函數(shù)或分類模型(也常常稱作分類器),該模型能把未知類別的樣本映射到給定類別中的一種技術。
分類的具體規(guī)則可描述如下:

給定一組訓練數(shù)據(jù)的集合T(Training set),T的每一條記錄包含若干條屬性(Features)組成一個特征向量,用矢量 x=(x1,x2,..,xn) 表示。 xi 可以有不同的值域,當一屬性的值域為連續(xù)域時,該屬性為連續(xù)屬性(Numerical Attribute),否則為離散屬性(Discrete Attribute)。用 C=c1,c2,..ck 表示類別屬性,即數(shù)據(jù)集有k個不同的類別。那么,T就隱含了一個從矢量X到類別屬性C的映射函數(shù): f(X)?C 。分類的目的就是分析輸入數(shù)據(jù),通過在訓練集中的數(shù)據(jù)表現(xiàn)出來的特性,為每一個類找到一種準確的描述或者模型,采用該種方法(模型)將隱含函數(shù)表示出來。
構造分類模型的過程一般分為訓練和測試兩個階段。在構造模型之前,將數(shù)據(jù)集隨機地分為訓練數(shù)據(jù)集和測試數(shù)據(jù)集。先使用訓練數(shù)據(jù)集來構造分類模型,然后使用測試數(shù)據(jù)集來評估模型的分類準確率。如果認為模型的準確率可以接受,就可以用該模型對其它數(shù)據(jù)元組進分類。一般來說,測試階段的代價遠低于訓練階段。

  MLlib分類算法分類算法基于不同的思想,算法也不盡相同,例如支持向量機SVM、決策樹算法、貝葉斯算法、KNN算法等。Spark.mllib包支持各種分類方法,主要包含 二分類, 多分類和 回歸分析。下表列出了每種類型的問題支持的算法。

大數(shù)據(jù)潮流下的機器學習及應用場景

 每個算法具體的內(nèi)容由于內(nèi)容過多,因此不在此詳細介紹。

分類算法使用場景

1、市民出行選乘公交預測
基于海量公交數(shù)據(jù)記錄,希望挖掘市民在公共交通中的行為模式。以市民出行公交線路選乘預測為方向,期望通過分析廣東省部分公交線路的歷史公交卡交易數(shù)據(jù),挖掘固定人群在公共交通中的行為模式,分析推測乘客的出行習慣和偏好,從而建立模型預測人們在未來一周內(nèi)將會搭乘哪些公交線路,為廣大乘客提供信息對稱、安全舒適的出行環(huán)境,用數(shù)據(jù)引領未來城市智慧出行。

2、基于運營商數(shù)據(jù)的個人征信評估
運營商作為網(wǎng)絡服務供應商,積累了大量的用戶基本信息及行為特征數(shù)據(jù),如終端數(shù)據(jù)、套餐消費數(shù)據(jù)、通信數(shù)據(jù)等等。實名制政策保證了運營商用戶數(shù)據(jù)能與用戶真實身份匹配,并真實客觀的反映用戶行為。廣泛覆蓋的網(wǎng)絡基礎設施提供了積累大量實時數(shù)據(jù)的條件,這些用戶數(shù)據(jù)實時反饋著用戶的各個維度的信息及特征。
在我國,個人征信評估主要通過引用央行個人征信報告,但對于很多用戶沒有建立個人信用記錄的用戶,金融機構想要了解他們的信用記錄成本又較高,傳統(tǒng)征信評估手段難以滿足目前多種多樣的新興需求。金融業(yè)務不同于其他大數(shù)據(jù)業(yè)務,對數(shù)據(jù)的真實性、可信度和時效性要求較高,而這正是運營商數(shù)據(jù)的價值所在。
期望利用運營商用戶數(shù)據(jù),提供完善的個人征信評估。


3、商品圖片分類
京東含有數(shù)以百萬計的商品圖片,“拍照購”“找同款”等應用必須對用戶提供的商品圖片進行分類。同時,提取商品圖像特征,可以提供給推薦、廣告等系統(tǒng),提高推薦/廣告的效果。
希望通過對圖像數(shù)據(jù)進行學習,以達到對圖像進行分類劃分的目的。


4、 廣告點擊行為預測
用戶在上網(wǎng)瀏覽過程中,可能產(chǎn)生廣告曝光或點擊行為。對廣告點擊進行預測,可以指導廣告主進行定向廣告投放和優(yōu)化,使廣告投入產(chǎn)生最大回報。
希  望基于100萬名隨機用戶在六個月的時間范圍內(nèi)廣告曝光和點擊日志,包括廣告監(jiān)測點數(shù)據(jù),預測每個用戶在8天內(nèi)是否會在各監(jiān)測點上發(fā)生點擊行為。


5、基于文本內(nèi)容的垃圾短信識別
垃圾短信已日益成為困擾運營商和手機用戶的難題,嚴重影響到人們正常生活、侵害到運營商的社會形象以及危害著社會穩(wěn)定。而不法分子運用科技手段不斷更新垃圾短信形式且傳播途徑非常廣泛,傳統(tǒng)的基于策略、關鍵詞等過濾的效果有限,很多垃圾短信“逃脫”過濾,繼續(xù)到達手機終端。
希望基于短信文本內(nèi)容,結合機器學習算法、大數(shù)據(jù)分析挖掘來智能地識別垃圾短信及其變種。


6、 大數(shù)據(jù)精準營銷中搜狗用戶畫像挖掘
“物以類聚,人以群分”這句古語不僅揭示了物與人的自組織趨向,更隱含了“聚類”和“人群”之間的內(nèi)在聯(lián)系。在現(xiàn)代數(shù)字廣告投放系統(tǒng)中,以物擬人,以物窺人,才是比任何大數(shù)據(jù)都要更大的前提。在現(xiàn)代廣告投放系統(tǒng)中,多層級成體系的用戶畫像構建算法是實現(xiàn)精準廣告投放的基礎技術之一。其中,基于人口屬性的廣告定向技術是普遍適用于品牌展示廣告和精準競價廣告的關鍵性技術。在搜索競價廣告系統(tǒng)中,用戶通過在搜索引擎輸入具體的查詢詞來獲取相關信息。因此,用戶的歷史查詢詞與用戶的基本屬性及潛在需求有密切的關系。
希望基于用戶歷史一個月的查詢詞與用戶的人口屬性標簽(包括性別、年齡、學歷)做為訓練數(shù)據(jù),通過機器學習、數(shù)據(jù)挖掘技術構建分類算法來對新增用戶的人口屬性進行判定。

聚類

聚類是把相似的對象通過靜態(tài)分類的方法分成不同的組別或更多的子集(subset),同一個子集中的成員都有相似的屬性,聚類分析可以看作一種非監(jiān)督學習的技術。

在Spark2.0版本中(不是基于RDD API的MLlib),共有四種聚類方法: 
     (1)K-means 
     (2)Latent Dirichlet allocation (LDA) 
     (3)Bisecting k-means(二分k均值算法) 
     (4)Gaussian Mixture Model (GMM)。 
       基于RDD API的MLLib中,共有六種聚類方法: 
     (1)K-means 
     (2)Gaussian mixture 
     (3)Power iteration clustering (PIC) 
     (4)Latent Dirichlet allocation (LDA)** 
     (5)Bisecting k-means 
     (6)Streaming k-means 
       多了Power iteration clustering (PIC)和Streaming k-means兩種

常用的是K-means算法。

K均值算法(K-Means)是一種劃分聚類方法。算法思路是通過迭代尋找聚類中心使各個樣本與所在類均值的誤差平方和達到最小。

KMeans 是一個迭代求解的聚類算法,其屬于 劃分(Partitioning) 型的聚類方法,即首先創(chuàng)建K個劃分,然后迭代地將樣本從一個劃分轉(zhuǎn)移到另一個劃分來改善最終聚類的質(zhì)量。
K-Means聚類算法能輕松地對聚類問題建模。K-Means聚類算法容易理解,并且能在分布式的環(huán)境下并行運行。學習K-Means聚類算法,能更容易地理解聚類算法的優(yōu)缺點,以及其他算法對于特定數(shù)據(jù)的高效性
K-Means聚類算法中的K是聚類的數(shù)目,在算法中會強制要求用戶輸入。如果將新聞聚類成諸如政治、經(jīng)濟、文化等大類,可以選擇10~20的數(shù)字作為K。因為這種頂級類別的數(shù)量是很小的。如果要對這些新聞詳細分類,選擇50~100的數(shù)字也是沒有問題的。K-Means聚類算法主要可以分為三步。
第一步是為待聚類的點尋找隨機選取K個樣本為初始聚類中心;
第二步是計算每個點聚類中心的距離,將每個點聚類到離該點最近的聚類中去;
第三步是計算聚類中所有點的坐標平均值,并將這個平均值作為新的聚類中心點。
反復執(zhí)行第二步,直到聚類中心不再進行大范圍的移動,或者聚類次數(shù)達到要求為止。

聚類算法使用場景

1、基于用戶位置信息的商業(yè)選址
隨著信息技術的快速發(fā)展,移動設備和移動互聯(lián)網(wǎng)已經(jīng)普及到千家萬戶。在用戶使用移動網(wǎng)絡時,會自然的留下用戶的位置信息。隨著近年來GIS地理信息技術的不斷完善普及,結合用戶位置和GIS地理信息將帶來創(chuàng)新應用。如百度與萬達進行合作,通過定位用戶的位置,結合萬達的商戶信息,向用戶推送位置營銷服務,提升商戶效益。
希望通過大量移動設備用戶的位置信息,為某連鎖餐飲機構提供新店選址。


2、中文地址標準化處理
地址是一個涵蓋豐富信息的變量,但長期以來由于中文處理的復雜性、國內(nèi)中文地址命名的不規(guī)范性,使地址中蘊含的豐富信息不能被深度分析挖掘。通過對地址進行標準化的處理,使基于地址的多維度量化挖掘分析成為可能,為不同場景模式下的電子商務應用挖掘提供了更加豐富的方法和手段,因此具有重要的現(xiàn)實意義。

3、非人惡意流量識別
2016年第一季度Facebook發(fā)文稱,其Atlas DSP平臺半年的流量質(zhì)量測試結果顯示,由機器人模擬和黑IP等手段導致的非人惡意流量高達75% . 僅2016上半年,AdMaster反作弊解決方案認定平均每天能有高達 28% 的作弊流量。低質(zhì)量虛假流量的問題一直存在,這也是過去十年間數(shù)字營銷行業(yè)一直在博弈的問題?;贏dMaster海量監(jiān)測數(shù)據(jù),50%以上的項目均存在作弊嫌疑;不同項目中,作弊流量占廣告投放5%到95%不等;其中垂直類和網(wǎng)盟類媒體的作弊流量占比最高;PC端作弊流量比例顯著高于移動端和智能電視平臺。廣告監(jiān)測行為數(shù)據(jù)被越來越多地用于建模和做決策,例如繪制用戶畫像,跨設備識別對應用戶等。作弊行為,惡意曝光,網(wǎng)絡爬蟲,誤導點擊,甚至是在用戶完全無感知的情況下被控制訪問等產(chǎn)生的不由用戶主觀發(fā)出的行為給數(shù)據(jù)帶來了巨大的噪聲,給模型訓練造成了很大影響。
希望基于給定的數(shù)據(jù),建立一個模型來識別和標記作弊流量,去除數(shù)據(jù)的噪聲,從而更好的使用數(shù)據(jù),使得廣告主的利益最大化。

協(xié)同過濾

協(xié)同過濾(Collaborative Filtering,簡稱CF,WIKI上的定義是:簡單來說是利用某個興趣相投、擁有共同經(jīng)驗之群體的喜好來推薦感興趣的資訊給使用者,個人透過合作的機制給予資訊相當程度的回應(如評分)并記錄下來以達到過濾的目的,進而幫助別人篩選資訊,回應不一定局限于特別感興趣的,特別不感興趣資訊的紀錄也相當重要。

協(xié)同過濾常被應用于推薦系統(tǒng)。這些技術旨在補充用戶—商品關聯(lián)矩陣中所缺失的部分。

MLlib 當前支持基于模型的協(xié)同過濾,其中用戶和商品通過一小組隱性因子進行表達,并且這些因子也用于預測缺失的元素。MLLib 使用交替最小二乘法(ALS) 來學習這些隱性因子。

用戶對物品或者信息的偏好,根據(jù)應用本身的不同,可能包括用戶對物品的評分、用戶查看物品的記錄、用戶的購買記錄等。其實這些用戶的偏好信息可以分為兩類:

  • 顯式的用戶反饋:這類是用戶在網(wǎng)站上自然瀏覽或者使用網(wǎng)站以外,顯式地提供反饋信息,例如用戶對物品的評分或者對物品的評論。

  • 隱式的用戶反饋:這類是用戶在使用網(wǎng)站是產(chǎn)生的數(shù)據(jù),隱式地反映了用戶對物品的喜好,例如用戶購買了某物品,用戶查看了某物品的信息,等等。

顯式的用戶反饋能準確地反映用戶對物品的真實喜好,但需要用戶付出額外的代價;而隱式的用戶行為,通過一些分析和處理,也能反映用戶的喜好,只是數(shù)據(jù)不是很精確,有些行為的分析存在較大的噪音。但只要選擇正確的行為特征,隱式的用戶反饋也能得到很好的效果,只是行為特征的選擇可能在不同的應用中有很大的不同,例如在電子商務的網(wǎng)站上,購買行為其實就是一個能很好表現(xiàn)用戶喜好的隱式反饋。

推薦引擎根據(jù)不同的推薦機制可能用到數(shù)據(jù)源中的一部分,然后根據(jù)這些數(shù)據(jù),分析出一定的規(guī)則或者直接對用戶對其他物品的喜好進行預測計算。這樣推薦引擎可以在用戶進入時給他推薦他可能感興趣的物品。

MLlib目前支持基于協(xié)同過濾的模型,在這個模型里,用戶和產(chǎn)品被一組可以用來預測缺失項目的潛在因子來描述。特別是我們實現(xiàn)交替最小二乘(ALS)算法來學習這些潛在的因子,在 MLlib 中的實現(xiàn)有如下參數(shù):

  • numBlocks是用于并行化計算的分塊個數(shù)(設置為-1時 為自動配置);

  • rank是模型中隱性因子的個數(shù);

  • iterations是迭代的次數(shù);

  • lambda是ALS 的正則化參數(shù);

  • implicitPrefs決定了是用顯性反饋ALS 的版本還是用隱性反饋數(shù)據(jù)集的版本;

  • alpha是一個針對于隱性反饋 ALS 版本的參數(shù),這個參數(shù)決定了偏好行為強度的基準。

 大數(shù)據(jù)潮流下的機器學習及應用場景

協(xié)同過濾算法 應用場景

1、電商平臺的買了XX的還買了XX,組合搭配套餐、隨便看一看功能。

2、今日頭條的個性化推薦。

3、豆瓣相同興趣的小組。

4、電影推薦系統(tǒng)。

5、百度地圖基于地理位置的附近的美食

……

 

參考資料

1、Spark官網(wǎng)MLlib說明

2、Spark企業(yè)級實戰(zhàn)

3、天池DataCastleCCF

 

文章標題:大數(shù)據(jù)潮流下的機器學習及應用場景
文章起源:http://muchs.cn/article26/ihpojg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供服務器托管靜態(tài)網(wǎng)站、網(wǎng)站策劃、關鍵詞優(yōu)化、定制開發(fā)、移動網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站