好奇,好玩,有趣,關注我,一起探索這個好玩的地球[左上]
今天的好玩的是:“寫程式碼的這件事,現在“程式碼”自己幹了!”
故事還要從最近的一個訊息說起,Alphacode,幾個月前參加了Codeforces的10場程式設計比賽,最終成績超過一半人類,是的,你猜對了,他不是人類,他是DEEPMIND公司研發的AI。在他之前,他還有個大哥,叫Alphago,就是當年下圍棋,橫掃了所有人類頂尖高手的阿爾法狗。
大概5年前,Alphago Lee,戰勝了李世石,幾個月後,Alphago Master,戰勝了柯潔。Alphago完成了對人類所有頂尖棋手的橫掃,但是一切還沒有結束,隨後的新一代,Alphagozero,訓練了72個小時,便戰勝了Alphago Lee,40天后,他以89:11戰勝了那個Alphago Master,讓世人,再次驚歎,人工智慧的進化速度,是如何的驚人。
在Alphago完成了圍棋的橫掃之後,很多人提出了一個問題:“假如有一天,Alphago學會了程式設計”,那是不是很可怕?
現在,這一天,來了。
如果你也好奇他的故事,我來講給聽。
Alphago的誕生
先說DeepMind這個公司,DeepMind,位於英國倫敦,是由人工智慧程式師兼神經科學家戴密斯·哈薩比斯等人聯合創立,是前沿的人工智慧企業,其將機器學習和系統神經科學的最先進技術結合起來,建立強大的通用學習演算法。這裡不得不提一下“Alphago”之父戴密斯·哈薩比斯,這位大神,4歲開始下國際象棋,8歲自學程式設計,13歲獲得國際象棋大師稱號。17歲進入劍橋大學攻讀計算機科學專業。在大學裡,他開始學習圍棋。2005年進入倫敦大學學院攻讀神經科學博士,選擇大腦中的海馬體作為研究物件。兩年後,他證明了5位因為海馬體受傷而患上健忘症的病人,在暢想未來時也會面臨障礙,並憑這項研究入選《科學》雜誌的“年度突破獎”。
Alphago的原理
為了讓大家更容易理解,這裡對比一下之前的那個會下國際象棋的電腦“深藍”,他們的本質區別,谷歌AlphaGo背後是一套神經網路系統,這個系統和深藍不同,他不是一臺超級計算機,而是一個由許多個數據中心作為節點相連,每個節點內有著多臺超級計算機的神經網路系統。 就像人腦,是由 50-100 億個神經元所組成的,這也是為什麼這種機器學習架構被稱為神經網路。AlphaGo 是在這個神經網路系統上,專為下圍棋 (Go) 而開發出的一個例項。然而,雖然名字已經介紹了它的功能,AlphaGo 背後的神經網路系統卻適合用於任何智力競技類專案。這個系統的基礎名叫卷積神經網路 (Convolutional Neural Network, CNN) ,這是一種過去在大型影象處理上有著優秀表現的神經網路,經常被用於人工智慧影象識別,比如 Google 的圖片搜尋、百度的識圖功能都對卷積神經網路有所運用。
Alphago的進化
剛剛上文中,我提到過,Master的時候,已經橫掃了所有高手了,到Zero,又用了40天學習就碾壓了Master,這個就是他的進化。
Alphacode
會程式設計的Alphago,自己解決程式設計問題,幾個月前,他被投放Codeforces,與眾多人類碼農比賽,(簡單說Codeforces是Codeforces由俄羅斯程式設計師Mikhail Mirzayanov創辦的程式設計競賽網站,大約每週舉行一次名為“Codeforces Rounds”的程式設計比賽。)透過Codeforces的Elo評分可以衡量一位程式設計師的程式設計水平。AlphaCode 針對 Codeforces 網站上 5000 名使用者解決的 10 項挑戰進行了測試,總體排名位於前 54.3%,也就是說它擊敗了 46% 的參賽者 。DeepMind 估計,AlphaCode 系統的 Codeforces Elo 為 1238,使其過去六個月內在該網站上競爭的使用者中排名前 28%。
Alphacode的未來
Codeforces創始人Mike Mirzayanov在 DeepMind 分享的一份宣告中表示,「我可以有把握地說,AlphaCode 的結果超出了我的預期。」
「我之前還持懷疑態度 ,因為即使在簡單的競爭性問題上,也不僅要實現演算法,而且還要發明演算法,而這才是最難的一部分。AlphaCode 的表現堪比一個有前途的新競爭對手。」這些挑戰意味著人工智慧編碼系統可能得慢慢融入程式設計師的工作中,因為AI 要經歷一個學徒期。但到目前來看,AI學得很快,應該能很快度過學徒期。
簡單介紹了從Aphago到Alphacode,從下棋到程式設計的故事,回到開篇提的問題:人類需要擔心他們會程式設計了嗎?這會是人工智慧開始意識覺醒嗎? 等你答案哈。
人工智慧,會不會意識覺醒我還不確定,但是我相信很快,這個Alphacode會瘋狂的卷我們的程式設計師,可以看看來自眾多程式設計師的嘶吼:
更多話題,我們,下次再聊