在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文快速了解機器學習任務中的重要成分和結構

電子工程師 ? 來源:未知 ? 作者:李倩 ? 2018-06-22 08:39 ? 次閱讀

??▌基本概念

我們從一個實例來了解機器學習的基本概念。假設我們現在面臨這樣一個任務(Task),任務的內容是識別手寫體的數字。對于計算機而言,這些手寫數字是一張張圖片,如下所示:

對人來說,識別這些手寫數字是非常簡單的,但是對于計算機而言,這種任務很難通過固定的編程來完成,即使我們把我們已經知道的所有手寫數字都存儲到數據庫中,一旦出現一個全新的手寫數字(從未出現在數據庫中),固定的程序就很難識別出這個數字來。所以,在這里,我們的任務指的就是這類很難通過固定編程解決的任務。

要解決這類任務,我們的計算機需要有一定的“智能”,但是在我們的認知中,只有人類才具備這種“高級智能”(某些靈長類動物雖然具備一定的運用工具的能力,但我們認為那距離我們所說的智能還有很遠的距離),所以如果我們想讓計算機具備這種“智能”,由于這是人造的事物,我們稱這種智能為人工智能(Artificial Intelligence, AI)。

正式地講,人工智能,是指由人制造出來的機器所表現出來的智能。通常人工智能是指通過普通計算機程序的手段實現的類人智能技術。機器學習可以幫助我們解決這類任務,所以我們說,機器學習是一種人工智能技術。

那么機器學習是怎么解決這類任務的呢?

機器學習(Machine learning)是一類基于數據或者既往的經驗,優化計算機程序的性能標準的方法。這是機器學習的定義,看起來可能難以理解,我們對它進行分解:

1、首先,對于手寫數字識別這個任務來說,數據或者既往的經驗就是我們已經收集到的手寫數字,我們要讓我們的程序從這些數據中學習到一種能力/智能,這種能力就是:通過學習,這個程序能夠像人一樣識別手寫數字。

2、性能標準,就是指衡量我們的程序的這種能力高低的指標了。在識別任務中,這個指標就是識別的精度。給定100個手寫數字,有99個數字被我們的“智能”程序識別正確,那么精度就是99%。

3、優化,就是指我們基于既往的經驗或者數據,讓我們的“智能”程序變得越來越聰明,甚至比人類更加聰明。

機器學習,就是能夠從經驗中不斷“學習進步”的算法,在很多情況下,我們將這些經驗用數值描述,因此,經驗=數據,這些收集在一起的數據被成為數據集(Dataset),在這些已有的數據集上學習的過程我們稱之為訓練(Train),因此,這個數據集又被稱為訓練集。

很顯然,我們真正關心的并不是機器學習算法在訓練集上的表現,我們希望我們的“智能”程序對從未見過的手寫字也能夠正確的識別,這種在新的樣本(數據)上的性能我們稱之為泛化能力(generalization ability),對于一個任務而言,泛化能力越強,這個機器學習算法就越成功。

根據數據集的不同,機器學習可以分成如下三類:

監督學習(Supervised learning):數據集既包含樣本(手寫字圖片),還包含其對應的標簽(每張手寫字圖片對應的是那個數字)

無監督學習(Unsupervised learning):與監督學習相對,數據集僅包含樣本,不包含樣本對應的標簽,機器學習算法需要自行確定樣本的類別歸屬

強化學習(Reinforcement learning):又稱為增強學習,是一種半監督學習,強調如何基于環境而行動,以取得最大化的預期利益。

當前大熱的神經網絡深度學習等等都是監督學習,隨著大數據時代的到來以及GPU帶來的計算能力的提升,監督學習已經在諸如圖像識別,目標檢測和跟蹤,機器翻譯,語音識別,自然語言處理的大量領域取得了突破性的進展。

然而,當前在無監督學習領域并沒有取得像監督學習那樣的突破性進展。由于在無人駕駛領域主要應用的機器學習技術仍然是監督學習,本文將重點講監督學習的相關內容。

在本文中,為了便于理解,我們使用手寫數字識別來描述處理的任務,實際上,機器學習算法能夠處理的任務還有很多,例如:分類,回歸,轉錄,機器翻譯,結構化輸出,異常檢測,合成與采樣, 缺失值填補等等。這些任務看似不同,卻有著一個共性,那就是很難通過人為設計的確定性程序來解決。

▌監督學習

經驗風險最小化

監督學習,本質上就是在給定一個集合(X,Y)的基礎上去學得一個函數:

y=f(x)

在 MNIST 問題中,X就表示我們收集到的所有的手寫數字圖片的集合,Y表示這些圖片對應的真實的數字,函數f則表示輸入一張手寫字圖片,輸出這張圖片表示的數值這樣的一個映射關系。

很顯然,這樣的映射關系中的x有著一個極其巨大的取值域(甚至有無限種可能取值), 所以我們可以把我們已有的樣本集合(X,Y)理解為從某個更大甚至是無限的母體中,根據某種未知的概率分布p,以獨立同分布隨機變量方式來取樣。現在,我們假定存在一個損失函數(Loss function)L,這個損失函數可以表述為:

L(f(x),y)

這個損失函數描述的是我們學得的函數f(x)的輸出和x樣本對應的真實值y之間的距離,很顯然,這個損失越小,表示我們學得的函數f更貼近于真實映射g。以損失函數為基礎,我們定義風險:

函數f的風險,就是損失函數的期望值。由于我們以手寫字分類為例,所以這里各個樣本的概率分布p是離散的,我們可以用如下公式定義風險:

如果是連續的,則可以使用定積分和概率密度函數來表示。這里的xi是指整個樣本空間的所有可能取值,所以,現在的目標就變成了:在很多可能的函數中,去尋找一個f,使得風險R(f)最小。

然而,真實的風險是建立在對整個樣本空間進行考量的,我們并不能獲得整個樣本空間,我們有的只是一個從我們要解決的任務的樣本空間中使用獨立同分布的方法隨機采樣得到的子集(X,Y),那么,在這個子集上,我們可以求出這個真實分布的近似值,比如說經驗風險:

其中(xi,yi)是我們已有的數據集中的樣本,所以,我們選擇能夠最小化經驗風險的函數f這樣的一個策略就被稱之為經驗風險最小化原則。

很顯然,當訓練數據集足夠大的時候,經驗風險最小化這一策略能夠保證很好的學習效果——這也就是我們當代深度神經網絡取得很多方面的成功的一個重要原因。專業的說,我們把我們已有的數據集的大小稱之為樣本容量。不論是什么應用領域,規范的大數據集合,就意味著我們的機器學習任務已經成功了一半。

模型,過擬合,欠擬合

那么學習這個f需要一個載體, 這個載體的作用就是,用它我們可以表述各種各樣的函數f這樣我們就可以通過調整這個載體去選擇一個最優的f,這個最優的f能夠使經驗風險最小化,這個載體我們專業地說,就是機器學習中的模型(model), 單純地說模型的抽象概念可能讓人難以理解,我們選取一種模型的實例來看。

我們以人工神經網絡(artificial neural network,ANN)為例來討論。首先,我們知道我們現在需要的是一個模型,這個模型具有能夠描述各種各樣的函數的能力,下圖是一個神經網絡:

它看起來很復雜,讓人費解,那么我們把它簡化,如下圖:

我們把這個模型理解成一個黑箱,這個黑箱里有很多參數:(w1,w2,w3,...,wn),我們用W來描述這個黑箱中的參數,這些參數叫模型參數,即使模型內部的結構不變,僅僅修改這些參數,模型也能表現出不同的本領。

具體來說:對于手寫字識別任務,我們在手寫字數據集上通過一定的算法調整神經網絡的參數,使得神經網絡擬合出一個函數f,這個f是經驗風險最小化的函數,那么我們訓練出來的這個“黑箱”就可以用于手寫字識別了;另一方面,對于車輛識別來說,假設我們有車輛數據集,相同的思路,我們可以訓練出一個黑箱來最做車輛識別。如下圖所示:

在前文中我們知道,考量一個機器學習模型的關鍵在于其泛化能力,一個考量泛化能力的重要指標就是模型的訓練誤差和測試誤差的情況:

訓練誤差:模型在訓練集上的誤差

測試誤差:模型在從未“見過的”測試集上的誤差

這兩個誤差,分別對應了機器學習任務中需要解決的兩個問題:欠擬合和過擬合。當訓練誤差過高時,模型學到的函數并沒有滿足經驗風險最小化,對手寫字識別來說,模型即使在我們的訓練集中識別的精度也很差,我們稱這種情況為欠擬合。

當訓練誤差低但是測試誤差高,即訓練誤差和測試誤差的差距過大時,我們稱之為過擬合,此時模型學到了訓練集上的一些“多余的規律”,表現為在訓練數據集上識別精度很高,在測試數據集(未被用于訓練,或者說未被用于調整模型參數的數據集合)上識別精度不高。

模型的容量(capacity)決定了模型是否傾向于過擬合還是欠擬合。模型的容量指的是模型擬合各種函數的能力,很顯然,越復雜的模型就能夠表述越復雜的函數(或者說規律,或者說模式)。那么對于一個特定的任務(比如說手寫字識別),如何去選擇合適的模型容量來擬合相應的函數呢?這里就引入了奧卡姆剃刀原則:

奧卡姆剃刀原則:在同樣能夠解釋已知觀測現象的假設中,我們應該挑選”最簡單”的那一個。

這可以理解為一個簡約設計原則,在處理一個任務是,我們應當使用盡可能簡單的模型結構。

“一定的算法”–>梯度下降算法

前面我們說到我們可以通過一定的算法調整神經網絡的參數,這里我們就來介紹一下這個定向(朝著經驗風險最小化的方向)調整模型參數的算法——梯度下降算法。

要最小化經驗風險Rˉ(f),等同于最小化損失函數,在機器學習中,損失函數可以寫成每個樣本的損失函數的總和:

其中θ表示模型中的所有參數,現在我們要最小化L(θ),我們首先想到的是求解導數,我們把這個L對θ的導數記作L′(θ)或者dLdθ, 導數L′(θ)就代表了函數L(θ)在θ處的斜率,我們可以把函數的輸入輸出關聯性用斜率來描述:

L(θ+α)≈L(θ)+αL′(θ)

其中,α是一個變化量,利用這個公式,我們就可以利用導數來逐漸使L變小,具體來說,我們只要讓α的符號和導數的符號相反,即:

sign(α)=?sign(L′(θ))

這樣,L(θ+α)就會比原來的L(θ)更小:

L(θ+α)=L(θ)?|αL′(θ)|

這種通過向導數的反方向移動一小步來最小化目標函數(在我們機器學習中,也就是損失函數)的方法,我們稱之為梯度下降(gradient descent)。

對于神經網絡這種復雜的模型來說,模型包含了很多參數,所以這里的θ就表示一個參數集合,或者說參數向量, 所以我們要求的導數就變成了包含所有參數的偏導數的向量▽θL(θ)。

這里的α就可以理解為我們進行梯度下降的過程中的步長了,我們將學習的步長稱為學習率(learning rate), 它描述了梯度下降的速度。

▌小結

在本文中,我們沒有介紹任何一種具體的機器學習算法和模型,但是我們快速的了解了機器學習任務中的重要成分和結構,以下我們來進行一個小的總結:

首先,機器學習是用來完成特定的任務的:比如說手寫字識別,行人檢測,房價預測等等。這個任務必須要有一定的性能度量,比如說識別精度,預測誤差等等。

然后,為了處理這個任務,我們需要設計模型,這個模型能夠從數據中基于一定的策略(比如說經驗風險最小化原則) 和一定的算法(比如說梯度下降算法) 去學習一個函數。

最后,這個函數要能夠處理這個任務中的各種各樣的情況(包括沒有出現在訓練集中的情況),這個模型要有很好的泛化能力,這樣,我們的機器學習任務就成功了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 人工智能
    +關注

    關注

    1797

    文章

    47867

    瀏覽量

    240779
  • 機器學習
    +關注

    關注

    66

    文章

    8453

    瀏覽量

    133152
  • 數據集
    +關注

    關注

    4

    文章

    1210

    瀏覽量

    24861

原文標題:機器學習入門概覽

文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    《具身智能機器人系統》第7-9章閱讀心得之具身智能機器人與大模型

    的應用。MAML算法通過二階優化找到對任務變化敏感的模型參數,實現了快速適應。上下文學習則引入了注意力機制,使模型能夠根據當前場景動態調整行為策略。在預訓練-微調范式,我們要注意
    發表于 12-24 15:03

    【「具身智能機器人系統」閱讀體驗】+數據在具身人工智能的價值

    嵌入式人工智能(EAI)將人工智能集成到機器人等物理實體,使它們能夠感知、學習環境并與之動態交互。這種能力使此類機器人能夠在人類社會中有效地提供商品及服務。 數據是
    發表于 12-24 00:33

    【「具身智能機器人系統」閱讀體驗】+初品的體驗

    《具身智能機器人系統》 書由甘鳴、俞波、萬梓燊、劉少山老師共同編寫,其封面如圖1所示。 本書共由5部分組成,其結構和內容如圖2所示。 該書可作為高校和科研機構的教材,為學生和研究人
    發表于 12-20 19:17

    cmp在機器學習的作用 如何使用cmp進行數據對比

    機器學習領域,"cmp"這個術語可能并不是個常見的術語,它可能是指"比較"(comparison)的縮寫。 比較在機器學習
    的頭像 發表于 12-17 09:35 ?340次閱讀

    傅立葉變換在機器學習的應用 常見傅立葉變換的誤區解析

    傅里葉變換在機器學習的應用 傅里葉變換是種將信號分解為其組成頻率分量的數學運算,它在機器學習
    的頭像 發表于 12-06 17:06 ?368次閱讀

    eda在機器學習的應用

    機器學習項目中,數據預處理和理解是成功構建模型的關鍵。探索性數據分析(EDA)是這一過程中不可或缺的部分。 1. 數據清洗 數據清洗 是機器
    的頭像 發表于 11-13 10:42 ?421次閱讀

    魯棒性在機器學習重要

    機器學習領域,模型的魯棒性是指模型在面對輸入數據的擾動、異常值、噪聲或對抗性攻擊時,仍能保持性能的能力。隨著人工智能技術的快速發展,機器學習
    的頭像 發表于 11-11 10:19 ?621次閱讀

    【「時間序列與機器學習」閱讀體驗】時間序列的信息提取

    重要環節,目標是從給定的時間序列數據中提取出有用的信息和特征,以支持后續的分析和預測任務。 特征工程(Feature Engineering)是將數據轉換為更好地表示潛在問題的特征,從而提高機器
    發表于 08-17 21:12

    【《時間序列與機器學習》閱讀體驗】+ 了解時間序列

    。 可以探索現象發展變化的規律,對某些社會經濟現象進行預測。 利用時間序列可以在不同地區或國家之間進行對比分析,這也是統計分析的重要方法之。 而《時間序列與機器學習
    發表于 08-11 17:55

    FPGA在人工智能的應用有哪些?

    FPGA(現場可編程門陣列)在人工智能領域的應用非常廣泛,主要體現在以下幾個方面: 、深度學習加速 訓練和推理過程加速:FPGA可以用來加速深度學習的訓練和推理過程。由于其高并行性和低延遲特性
    發表于 07-29 17:05

    機器學習的數據分割方法

    機器學習,數據分割是項至關重要任務,它直接影響到模型的訓練效果、泛化能力以及最終的性能評
    的頭像 發表于 07-10 16:10 ?2206次閱讀

    如何理解機器學習的訓練集、驗證集和測試集

    理解機器學習的訓練集、驗證集和測試集,是掌握機器學習核心概念和流程的重要
    的頭像 發表于 07-10 15:45 ?4758次閱讀

    深度學習在工業機器視覺檢測的應用

    隨著深度學習技術的快速發展,其在工業機器視覺檢測的應用日益廣泛,并展現出巨大的潛力。工業機器視覺檢測是工業自動化領域的
    的頭像 發表于 07-08 10:40 ?1282次閱讀

    工業機器任務編程基本流程

    是其中至關重要環。今天跟隨創想智控焊縫跟蹤小編一起了解工業機器任務編程基本流程。 1. 任務
    的頭像 發表于 07-02 10:41 ?665次閱讀

    pcb應變測試有多重要了解

    pcb應變測試有多重要了解
    的頭像 發表于 02-24 16:26 ?1207次閱讀
    主站蜘蛛池模板: 五月婷婷伊人网 | 六月婷婷精品视频在线观看 | 四虎永久精品视频在线 | 免费的黄色大片 | 加勒比一区二区三区 | 人人澡 人人澡 人人看 | 国产高清免费在线 | 永久免费的啪啪免费的网址 | 色多多视频官网 | 日本特黄特色大片免费播放视频 | 99久久精品免费看国产免费 | 一区二区三区四区视频在线 | h视频日本| 四虎国产精品永久地址49 | 第四色亚洲色图 | 黄色软件合集 | 一级毛片一级毛片一级毛片 | 岛国一级毛片 | 一本久草| 李老汉和小花的性生生活 | 中文字幕第一页在线 | 特级黄视频 | 欧美黄色大片免费 | 综合网天天操天天射 | 天堂网在线www资源网 | 天天拍拍天天爽免费视频 | 久久精品免费观看视频 | 日本人亚洲人成人 | 免费看欧美一级特黄α大片 | 午夜va | 免费在线播放视频 | 国产一区二区三区欧美精品 | 新版天堂中文资源8在线 | 两性色视频 | 97干干 | 国产婷婷色一区二区三区 | 欧美高清激情毛片 | 久青草国产手机视频免费观看 | 久久精品免费观看视频 | 日韩亚洲欧洲在线com91tv | 成人综合色站 |