懂一點(diǎn)機(jī)器學(xué)習(xí)(一)

寫在前面: 這是一系列的科普文字,主要講解機(jī)器學(xué)習(xí)相關(guān)的概念和實(shí)際工作中的作用.

小華華同學(xué)的媳婦想吃西瓜, 于是小華華來到了益民市場

在程序員的眼里,買西瓜只是一個排序問題,找出來最好吃的瓜,把這個瓜帶回家


我們都知道 ?數(shù)據(jù)結(jié)構(gòu)+算法=程序設(shè)計(jì)

現(xiàn)在的買瓜的程序設(shè)計(jì)轉(zhuǎn)化為:?

1. ?什么樣的瓜才是最優(yōu)瓜 (算法)?

?2. 如何為西瓜進(jìn)行排序 (數(shù)據(jù)結(jié)構(gòu))?



其實(shí)小華華在買瓜之前已經(jīng)做過了功課


經(jīng)過敲敲打打,最終小華華挑選了一個他認(rèn)為紋路清晰的好瓜

買回家切開一看


天呀,怎么可以這樣?


重要提醒:使用百度搜索一定要擦亮眼睛,自行甄別真?zhèn)?/p>

吸收了經(jīng)驗(yàn)教訓(xùn)后,小華華決定自己研發(fā)一套挑瓜系統(tǒng),選出來最好的西瓜帶回家

設(shè)計(jì)一套挑瓜系統(tǒng),最通常的作法是先設(shè)定模型


但是開發(fā)這一套合理算法模型有個前提就是小華華需要對西瓜非常的了解.

屁股大的西瓜好吃還是屁股小的好吃, 聲音脆的西瓜好還是聲音悶的西瓜好?

這些數(shù)據(jù)如何獲取呢?

最簡單粗暴的方法就是打開所有的瓜,嘗遍所有的瓜總結(jié)規(guī)律


人類學(xué)習(xí)的過程和機(jī)器學(xué)習(xí)的過程是類似的


Machine learning is the subfield of computer science that gives computers the ability to learn without being explicitly programmed

上面一段話來自維基百科,以前我們編寫程序if和else是滿足什么條件就執(zhí)行什么代碼,程序員非常清楚計(jì)算機(jī)要執(zhí)行的邏輯,而機(jī)器學(xué)習(xí)是給與機(jī)器,一種可以自我學(xué)習(xí)的能力,當(dāng)機(jī)器具備了這種能力后,我們無須清楚里面的某個細(xì)節(jié),機(jī)器就可以工作.

機(jī)器學(xué)習(xí)類似一個黑盒子,盒子有輸入有輸出.


以前我們程序員需要對黑盒子里面的內(nèi)容邏輯了如指掌,通過精確的代碼處理輸入,產(chǎn)生輸出

現(xiàn)在我們有了機(jī)器學(xué)習(xí)后,只需要訓(xùn)練機(jī)器就可以了.黑盒子里面的邏輯由程序自動產(chǎn)生

舉個簡單的例子,我們可以這樣訓(xùn)練計(jì)算機(jī):


1+1是多少?10!打屁股,是2

1+2是多少?37!打屁股,是3

1+3是多少?-5!打屁股,是4

……

1+1是多少?5!打屁股,是2

1+2是多少?14!打屁股,是3

1+3是多少?25!打屁股,是4

……

1+1是多少?2!嗯,智商有進(jìn)步

1+2是多少?5!打屁股,是3

1+3是多少?8!打屁股,是4

……

1+1是多少?2!嗯,智商有進(jìn)步

1+2是多少?3!嗯,智商有進(jìn)步

1+3是多少?4!嗯,智商有進(jìn)步

……

========若干年后========

108+205是多少?313!

上面的每一組對話都是訓(xùn)練的數(shù)據(jù)集,

每次訓(xùn)練后的反饋,實(shí)際上是屬于我們的監(jiān)督學(xué)習(xí)的過程

機(jī)器學(xué)習(xí)可以理解為一個黑箱子,有輸入有輸出,里面的邏輯無須考慮,往入口扔進(jìn)去個1+1,出口會扔出來個250.去打黑箱子的屁屁,說不對,應(yīng)該是2.不斷的往入口扔?xùn)|西,打屁屁,給正確答案

在大量的數(shù)據(jù)訓(xùn)練和遞歸分析后, 突然黑箱子就學(xué)會加法了.

同理,可以教會黑箱子加減乘除、攤雞蛋餅、游泳、打架,嘮嗑和吹牛逼

黑箱子和黑箱子之間也可以互相交流學(xué)習(xí), 母箱子還可以教會公箱子怎么泡妞等等.

相關(guān)視頻:



機(jī)器學(xué)習(xí)抓取物體





機(jī)器學(xué)習(xí)預(yù)測未來




機(jī)器學(xué)習(xí)類似一個剛開始學(xué)習(xí)東西的小孩子,開始認(rèn)東西,作為一個大人(監(jiān)督者),第一天,他看見一只京巴狗,你告訴他這是狗;第二天他看見一只波斯貓,他開心地說,這是狗,糾正他,這是貓;第三天,他看見一只蝴蝶犬,他又迷惑了,你告訴他這是狗……直到有一天,他可以分清任何一只貓或者狗.

圖片識別imagenet就是采用這種方式. 帶有監(jiān)督學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò).

相關(guān)視頻:


機(jī)器學(xué)習(xí)圖片識別



機(jī)器學(xué)習(xí)的好處:

在沒有機(jī)器學(xué)習(xí)之前,以開發(fā)圍棋程序?yàn)槔?開發(fā)出來的程序的棋力很大程度上與開發(fā)者的下棋水平有關(guān),開發(fā)者下棋水平越高,設(shè)計(jì)抽象出來的算法可能就越好. 但是使用機(jī)器學(xué)習(xí)后,無須考慮過多算法,電腦可以自己跟自己下棋,自行提高.

下面講解下機(jī)器學(xué)習(xí)中的一些概念 以及在教學(xué)工作中的應(yīng)用

神經(jīng)元

第一次聽到這個概念的時候感覺好高大上,其實(shí)神經(jīng)元模型就是一棵決策樹.

決策樹就是一個分類器,而分類器就是咔嚓砍一刀

看下面的圖,我們來預(yù)測黑馬程序員學(xué)員畢業(yè)后的就業(yè)情況:


大家想想,最簡單地把這兩組特征向量分開的方法是啥?當(dāng)然是在兩組數(shù)據(jù)中間畫一條線,線下方的就業(yè)速度較快 線上方的就業(yè)速度較慢.

一條直線把平面一分為二,一個平面把三維空間一分為二,一個n-1維超平面把n維空間一分為二,兩邊分屬不同的兩類,這種分類器就叫做神經(jīng)元.

二維的平面分割線為 ax+by+c = 0;

三緯的屏幕分割面為 ax+by+cz= d;

推而廣之,三維以上的空間不能用幾何圖形去描述了,只能靠我們的想象,

n維空間中, 滿足n元一次方程a1x1+a2x2+...+anxn=b的點(diǎn)(x1,x2,...,xn)的函數(shù)就叫空間的一張超平面

關(guān)于n維空間:


n維空間你能理解到幾維?



神經(jīng)網(wǎng)絡(luò)

剛才的模型是一個較為簡單的模型, 實(shí)際生活中的事情要比剛才的模型復(fù)雜很多

大家看圖


這種模型采用一個神經(jīng)元 y=kx+b 就不能解決問題了,解決辦法是多層神經(jīng)網(wǎng)絡(luò),底層神經(jīng)元的輸出是高層神經(jīng)元的輸入.

我們可以在中間砍一刀,按照年齡劃分為30歲之前的和30歲之后的,第一個神經(jīng)元的結(jié)果,作為第二個神經(jīng)元的一個輸入,第二個神經(jīng)元根據(jù)第一個神經(jīng)元的輸入加上學(xué)歷進(jìn)行或操作或者與操作.產(chǎn)生最終的結(jié)果.

這種處理方式跟我們大腦處理信號的方式類似,a神經(jīng)元的突觸處理信號,把電信號傳給b神經(jīng)元


神經(jīng)信號從a傳遞到e



神經(jīng)網(wǎng)絡(luò)算法

計(jì)算機(jī)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練依靠反向傳播算法:最開始輸入層輸入特征向量,網(wǎng)絡(luò)層層計(jì)算獲得輸出,輸出層發(fā)現(xiàn)輸出和正確的類號不一樣,這時它就讓最后一層神經(jīng)元進(jìn)行參數(shù)調(diào)整,最后一層神經(jīng)元不僅自己調(diào)整參數(shù),還會勒令連接它的倒數(shù)第二層神經(jīng)元調(diào)整,層層往回退著調(diào)整.經(jīng)過調(diào)整的網(wǎng)絡(luò)會在樣本上繼續(xù)測試,如果輸出的結(jié)果仍然不合理,繼續(xù)來一輪回退調(diào)整,直到網(wǎng)絡(luò)輸出滿意為止.

機(jī)器學(xué)習(xí)就是計(jì)算機(jī)利用已有的結(jié)果數(shù)據(jù)和原因數(shù)據(jù)推測出某種模型,并利用這種模型去預(yù)測未來的一種方法.

影響一個學(xué)生就業(yè)的因素有:

學(xué)習(xí)情況,溝通能力,背景資料,性格特征等四大類:

從這四大類里面又派生出來學(xué)習(xí)方法得當(dāng),勤奮程度,主動尋求他人幫助,模仿能力,求知欲強(qiáng),學(xué)習(xí)專注力,有成就感,自信心,思維靈活,獨(dú)立性,經(jīng)常反思,性格外向,親和力,熱情,能換位思考,語言組織能力,學(xué)歷,證書,工作經(jīng)驗(yàn),樂觀向上,吃苦耐勞,忠實(shí)誠信,勇于迎接挑戰(zhàn),自制力,善于控制情緒,家庭關(guān)系等等等160項(xiàng)小類

這些因素究竟在就業(yè)速度和薪資里面起到多大作用,占據(jù)多大的比例,我們?nèi)祟悷o法評估,

最簡單的做法就是分析我們已經(jīng)畢業(yè)的幾萬名學(xué)生,把數(shù)據(jù)交給機(jī)器,讓機(jī)器分析出來究竟這些內(nèi)容占據(jù)多大的比例,在哪種程度上影響學(xué)生的就業(yè)

下一篇文字我們先來分析模型,研究如何建立模型, 最后利用java語言編寫一個 神經(jīng)網(wǎng)絡(luò)+感知機(jī) 來實(shí)現(xiàn)一個簡易的學(xué)生就業(yè)薪資預(yù)測.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容