閱讀119 返回首頁    go 技術社區[雲棲]


不知道這些AI知識,可能你就out了!

更多深度文章,請關注雲計算頻道:https://yq.aliyun.com/cloud

最近,我有幸與人工智能領域相關企業的決策者進行交談。 其中幾名高管已經被投資者詢問了他們的機器學習方向的戰略,以及他們現有機器學習項目的情況 那麼為何機器學習會突然成為公司董事會討論的話題呢?

大家都知道,從一開始計算機就被設計成幫助人類解決各種問題。 傳統的軟件工程就是針對某個問題進行編程。換句話說,就是我們告訴計算機一個能解決某個問題的算法,並讓它來執行。現實世界中很多問題可以被描述成某個算法。 比如,小學算數中,我們用加法來解決計數問題。一旦現實問題被抽象成了算法,計算機能比人類更快速,有效地執行它們。

不過,人們也漸漸的發現了這種過程的局限性。對於類似圖像識別這類問題(例如,判斷照片中是否是一隻貓),在人類看來是如此的輕而易舉,然而想把這類問題描述成一種高效的算法卻並不容易。由於對象的特征有可能被隱藏起來,我們不能簡單的用有四條腿有兩隻眼睛來對判斷是否是貓的照片。而且,照片中還可能隻顯示了貓的一部分,問題就演變為識別貓的某個部位,進而使得問題變得愈加複雜。

5c0933b920c652bae1feca5ddf8e89b11661b25a

以上對於傳統編程來說的難題卻恰恰是機器學習的強項。我們並不需要告訴計算機如何解決這個問題,而是使用樣本來訓練計算機,使其學習算法本身。 我們用大量標記為貓的照片來訓練計算機(有監督學習)。 通過這種方式,算法得到了演進,最終能夠識別出各種貓的圖片。

dca922b06280d5f96c09990aea50b82410b536ac

與傳統軟件工程不同,機器學習中的計算機考察的是神經網絡中的邊際權重。 這個原理與人類大腦中的學習過程非常相似,依靠神經元的相互通訊來完成。而人類很難對這個具有邊際權重的網絡做出全麵的解釋。在這種情況下,深度學習應運而生,並被證明了它的成功。深度學習是多種機器學習方法中的一種,目前也成為了人工智能中的一門學科,是計算機科學研究的主要分支之一。 早在2012年,一支Google研究小組成功地訓練了一個由16,000台計算機組成的網絡,這個網絡能通過處理千萬記的視頻圖像,來識別出貓或任何指定的事物對象。而其中他們就采用了深度學習技術。

903088f77fbf5ac2483460c0bcc25c5ba2f4ad86

許多現實世界中的問題更需要通過機器學習的方式來解決。這是由於許多問題常常需要我們發現數據中的某種特征或模式,例如從圖像中識別出某個對象,從語言中提取目標文本,從交易數據中偵測到可能的欺詐行為。

c805ae70ca27b6390ff0240a99813e55cd2a3acc

這裏有一個簡單的例子。假設,我們有許多傳感器在發送並接受數據。為了確保它們的正常工作,我們需要對它們進行實時的監測,一旦其中的某台機器發生故障,我們就要進行及時的處理。通過監測,我們可以從導致故障的數據流中發現某些固定的模式。 一旦了解了這些模式,就可以在日常運行期間偵測這種模式。一單這種模式出現,就能提前預測到可能發生的故障,從而提高運維的效率。

雖然機器學習的原理並不新鮮,但它越來越受到人們的追捧。這有三個主要原因:首先,得益於大數據技術,我們有了充分的樣本數據可以被用來培訓計算機。 其次,我們現在擁有了前所未有的計算能力,特別是在雲計算的基礎下。 第三,一係列開放源碼的項目使得幾乎每個人都可以利用這些機器學習的算法為自己的項目進行研發。

9535c4345bd00e867f11e608d4b66a8d9dee1295

機器學習並不是傳統軟件工程的替代品,而是對其做了很好的補充。 機器學習提供了許多有用的工具,使我們能夠解決更多傳統軟件工程解決不了的問題。 機器學習帶來了許多新的機會,同時現有的係統也越來越多地采用了機器學習技術。

其中,遵循模式的重複操作就是一個典型的例子。 想象一下,一個應用係統有著多達一百多個功能,但其實用戶每天一般隻會使用其中的幾個功能。 通過觀察用戶操作步驟,計算機可以學習並預測用戶的下一步操作,從而提高效率。另一個例子就是分配和轉換數據(例如,用於填充數據倉庫的ETL作業),計算機在這個過程中學習重複的數據和對象,並對其中的步驟進行自動化並提高性能。

在其他領域我們也可以找到這樣的場景:針對不同學生(特別是大型開放式在線課程MOOC課程)定製個性化的學習材料、對疾病的早期診斷、定位正確的在線營銷目標群體、自動識別數據質量問題,或是在線交友網站的自動匹配。

由於其出色的功能,Spark(與Hadoop組合)已經成為機器學習主流的大數據框架。 Talend也正在往這個方向發展,而且它更進一步,使用了更高效的建模作業。在使用建模以後,就能降低複雜性,同時也使得它的底層技術有了自己的獨立性。由於這些技術在不停的改進中,因此隻有少數這方麵的專家才能運用得法。

[object Object]7340f6680ef67796de6d9acd0de2fa952f2aeabc

雖然目前隻有少數專家才需要真正了解機器學習領域的算法細節,但是另一方麵,機器學習概念的普及也同樣重要。從大量的樣本中發現某種模式最終拓展了計算機可以解決問題的類別,具體來說是就是自動化的決策過程,這正是計算機學到的東西它從訓練數據中積累知識,之後利用學到的知識對新數據做出決策。 一方麵,我們可以直接利用機器學習的訓練結果讓決策過程更智能,更準確。 另一方麵,我們也可以對其他領域的機器學習的結果進行分析,改進,使其適合自己的業務領域。

總而言之,如今計算機已經不僅能夠遵循明確的指令(比如,算數計算),還可以通過樣本來進行學習(比如,前麵提到的圖像識別)。在不同的場景下,這兩種方法都有著本身的特點和優勢。 然而,如果我們能換種思路,把這兩種方式結合在一起,那可能在人工智能方麵我們又會向著最終目標更進一步。


本文由北郵@愛可可-愛生活老師推薦,阿裏雲雲棲社區組織翻譯。

文章原標題《What Everyone Should Know About Machine Learning》,作者:Gero Presser 是德國QuinScape GmbH 創始人及CEO。譯者:friday012 審閱:阿福

文章為簡譯,更為詳細的內容,請查看原文

最後更新:2017-10-16 10:03:27

  上一篇:go  為什麼你的Web前端工作經驗不值錢?
  下一篇:go  web前端學習——零基礎web前端學習路線