1. 程式人生 > >5種來自大自然「饋贈」的AI技術及其應用,你知道多少?

5種來自大自然「饋贈」的AI技術及其應用,你知道多少?

?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

原文來源:Towards Data Science

作者:Luke James

「雷克世界」編譯:KABUDA

對於技術領域中存在的AI相關技術,我們應心存感恩。人類不僅花費了數十年的時間來研究完善數學演算法,以使這些奇妙複雜的演算法發揮效用,而且在這一過程中,我們還在不斷尋求突破性發展,並以此作為靈感,深入研究,從而使得下一代智慧能夠得以存在於我們的星球上。大自然,及其所包含的一切,都深深地根植於AI的運作中,並將在這裡成長壯大。

David Attenborough拍攝的野生動物紀錄片令人印象深刻。他們對地球上許多生物的行為和屬性,進行了令人難以置信的詳細解讀,這使得我們能夠了解這些生物是如何融入自然生態系統,並通過共同努力,從而使我們居住的星球蓬勃發展,最終讓地球成為如今的模樣。雖然我不是David Attenborough,但我還是想將你們帶入到我的野生動物紀錄片中來。我們要探討的明星生物不是別的,正是那些被大自然直接啟發的人工智慧演算法。首先,我需要想你們介紹兩種演算法概念,搜尋/尋路(Search/Pathfinding)和預測建模(Predictive Modelling)。

搜尋(尋路)演算法

搜尋演算法本質上是一種程式,旨在找到一個到達目標的最佳/最短路徑。例如,旅行推銷員(travelling salesman)問題就是一個典型的搜尋優化問題,在這一問題中,你將會得到一個城市及其之間距離的列表。旅行推銷員需要對每個城市訪問一次,你必須為其尋找最短路線,以最大限度地減少旅行時間和費用(確保能夠返回最初城市)。這一問題的實際應用是送貨卡車。假設倫敦有100人線上下單,所有的箱子都被裝在同一輛貨車裡。快遞(例如DPD)必須計算最優路線(平衡距離/時間),以便從倉庫(最終返回倉庫)交付這些包裹,並確保公司在交付過程中儘可能少地浪費時間和金錢。

預測建模演算法

如今,預測建模是炒作的焦點。世界各地的資料科學家都在他們舒適的辦公大樓樓頂高呼“神經網路”,而諸如谷歌這樣的公司正到處奔走,試圖用這些小巧而複雜的“人工大腦”及其不同變體來解決世界上的各種問題。實際上,預測建模使用統計學來預測結果。你經常會聽到資料科學家試圖解決兩種預測建模問題,迴歸和分類。迴歸是發現兩組變數之間相關性的黑魔法,分類是計算資料集屬於不同組的概率的過程。

5種生物啟發學習演算法

1.人工神經網路(ARTIFICIAL NEURAL NETWORKS)

?wx_fmt=png

前饋神經網路 - 最基本的神經網路型別

演算法型別:預測建模

生物學啟示:認知大腦功能(神經元)

應用示例:情感分析、影象識別/檢測、語言修正、機器人

我們從最常見的人工智慧(AI)演算法開始。神經網路是人工智慧領域中一個稱之為機器學習的子類別的一部分。它們的設計和構建模仿了神經元層面的大腦功能(即軸突和樹突相互作用,通過系統傳遞資訊),通過一系列“層”生成預測輸出。每一層都提供了一個額外的資料表示層,從而使得你能夠對最複雜的問題進行建模。

神經網路可能是目前應用最廣泛的機器學習演算法,也是資料科學和機器學習領域的研究熱點。這一概念最初是在1958年提出的,稱之為“感知機”。後來Geoffrey Hinton對其進行了提煉,並被Google和Facebook等公司中進行推廣。神經網路可用於解決各種型別的問題,包括自然語言處理、視覺識別等。這種監督學習演算法既支援迴歸問題,也能用於分類問題,且其應用的例項可以在日常的消費類產品中找到,包括智慧手機及聯網家庭裝置。

2.遺傳演算法

?wx_fmt=png

遺傳演算法中個體的繁殖

演算法型別:搜尋/尋路

生物學啟示:適者生存/進化(細胞繁殖)

應用示例:資料探勘/分析、機器人、製造/設計、過程優化

為了解決搜尋問題,遺傳演算法在一組連續的世代個體中採用了一種類似於“適者生存”的進化方法。每一代都含有一些字串,標記了我們在DNA中所看到的的染色體。群體中的每個個體都代表搜尋空間中的一個點,因此每個個體都是可能的候選解。為了提高解的數量,我們將個體置於進化的過程中。

•整體中的每個個體都會為爭奪資源和配偶而競爭

•相較於競爭中失敗的個體而言,每場競爭中勝出的個體(通常)會產生更多的子個體。

•更加“理想”的候選個體基因在種群中傳播,會導致優秀的父母將產生更具有潛力的後代。

3.群體/集體智慧(SWARM/COLLECTIVE INTELLIGENCE)

?wx_fmt=png

蟻群優化例項, 一種集體智慧演算法

演算法型別:搜尋/尋路

生物啟示:蟻群/魚群/鳥群

應用示例:機器人、視訊遊戲AI、製造、路線規劃

蟻群優化和粒子群優化是符合“集體智慧”概念的兩種最常見演算法。在基本層面上,我們所討論的演算法都需要利用多個工作智慧體(working agents)。每個工作智慧體都表現出非常基本的行為能力,這些行為通過集體(作為一個整體)工作,以便可以觸發更復雜、更緊急的行為,以解決問題。

蟻群優化(ACO)與粒子群優化(PSO)有很大不同。兩者都旨在實現緊急行為,但採用了不同的方法。像真正的螞蟻群體一樣,ACO利用資訊素氣味引導個體智慧體選擇最短路徑。最初,在問題空間中初始化一個隨機資訊素。隨後,個體智慧體開始遍歷搜尋空間,在搜尋過程中釋放資訊素氣味。在每個時間段中,資訊素將以一個確定的速率衰減。單一智慧體根據其前方資訊素氣味的強度做出決策,以遍歷搜尋空間。特定方向的氣味越強烈,就越有可能向那個方向前進。資訊素氣味最強的方案就是最優解決方案。

PSO更多的是關注整體方向。一些單一智慧體被初始化,隨後它們從隨機方向開始。每個時間段,每個智慧體都需要做出決策是否要改變方向。這一決策將以最優解決方案(pbest/全域性最優)的方向、最鄰近的方向(區域性最優)以及當前前進方向作為基礎。新的前進方向通常是對所有這些值的 “妥協”。

4.強化學習

?wx_fmt=png

強化學習環境中的智慧體行為

演算法型別:預測建模

生物啟示:經典條件反射

應用示例:視訊遊戲、自主車輛控制、生產線軟體、金融系統

隨著心理學的發展和一個類似於經典條件反射的過程,強化學習可以對智慧體所採取的有利行動做出積極的數字反應。學習強化學習的概念往往比學習經典的條件反射更容易。巴甫洛夫的狗(Pavlov’s Dogs),這是在19世紀90年代進行的一項研究,當時俄羅斯心理學家Ivan Pavlov正在研究狗的唾液對餵食的反應。這裡可以找到一篇能夠很好地解釋這件事的文章。本質上而言,如果一個強化學習採取了一個好的行動,能夠向完成任務的方向邁出了一步,那麼它將得到一個數字獎勵。該智慧體將學習使用一個策略,從而使每一步都能獲得最大獎勵。將原始輸入應用到演算法中,可以讓智慧體開發自身對問題的感知,並改進該如何利用最有效的方式去解決問題。

將強化學習演算法與其他機器學習技術相結合的應用是非常普遍的,例如神經網路。這通常被稱為深度強化學習。神經網路常用於預測強化學習在作出特定決策時應得到的獎勵。如今,Deep Mind是Google旗下的一所公司,它在這一領域取得了很大的進步,並可以採用Deep Q Learning方法來解決更為普遍的問題(例如一種演算法能夠玩轉整個Atari遊戲庫,並且在遊戲“GO”中,在沒有任何幫助的前提下擊敗了世界冠軍)。他們目前正在採用這種方法來處理更復雜的遊戲,如“星際爭霸II”。

作為參考,Q Learning是一種無模型版本的強化學習演算法。它可以為任何有限的馬爾可夫決策過程(Markov Decision Process)找到最優的動作選擇策略。在程式初始化時,每個動作值對應的Q值由開發人員定義,並在每個時間段由強化學習演算法進行更新。下圖展示的是更新Q動作值對(Q action-value pair)的等式示例。

?wx_fmt=png

Q學習值(Q Learning Value)更新方程

5.人工免疫系統

?wx_fmt=png

演算法型別:預測建模

生物學啟示:免疫系統

用例:安全軟體、自主導航系統、排程系統、故障檢測軟體

免疫系統是通過產生免疫反應來保護身體免受物質和病原體侵害的系統。人工免疫系統(Artificial Immune System,AIS)是受理論免疫學和應用於解決問題的觀察免疫功能啟發而產生的適應性系統。AIS是生物啟發計算和自然計算的子領域,與機器學習和人工智慧相關。通常有多個與AIS相關聯的演算法:

•克隆選擇(Clonal Selection)

•樹突狀細胞(Dendritic Cell)

•陰性選擇(Negative Selection)

•人工免疫識別(Artificial Immune Recognition)

與生物免疫系統一樣,AIS能夠將系統內的所有細胞分為“自我”和“非我”兩類。一個分散式的情報工作隊被用來對所有的細胞採取行動。參與免疫活動的最重要的兩類細胞是B細胞和T細胞(於你我而言是白血細胞)。T細胞分為三類,一種是用來啟用B細胞,一種是用來結合並破壞外來入侵者,還有一種是用來抑制自身免疫問題。B細胞負責產生抗體,即與抗原(毒性/外來物質)相結合的特異性蛋白質。人工免疫系統通常用於通過監測入侵檢測以抵禦網路攻擊,並且通常被集成於企業級軟體中。與本文中提到的其他演算法不同,關於此主題的免費線上學習資料非常有限,該技術可能是本文提及的所有技術當中最不發達的一種。

歡迎個人分享,媒體轉載請後臺回覆「轉載」獲得授權,微信搜尋「ROBO_AI」關注公眾號