□文/李洪剛
?
用訓(xùn)練代替編程:創(chuàng)新教育的人工智能未來
□文/李洪剛
人工智能不該成為少數(shù)人的“奢侈品”,而應(yīng)更多“賦權(quán)于民”。與此同時(shí),機(jī)器人教育正隨著這股浪潮風(fēng)起云涌,人工智能的大規(guī)模普及也必將促進(jìn)教育的創(chuàng)新?,F(xiàn)階段,機(jī)器人教育創(chuàng)新到底怎么做?創(chuàng)客大爆炸的實(shí)踐給我們帶來了啟發(fā)。
在人工智能開始普及的今天,創(chuàng)新教育,尤其是機(jī)器人教育被重新定義。人工智能的開發(fā)工具和教學(xué)工具令教育者和受教育者站在了更高的起點(diǎn)上。近十年,人工智能算法逐漸從實(shí)驗(yàn)室走進(jìn)科技大公司。最典型的便是互聯(lián)網(wǎng)公司的云計(jì)算,它已經(jīng)發(fā)展成從網(wǎng)絡(luò)用戶分析到包括視覺和運(yùn)動(dòng)在內(nèi)的機(jī)器人算法應(yīng)用,正在編織一張巨大的商業(yè)應(yīng)用網(wǎng)絡(luò)。
如同互聯(lián)網(wǎng)和移動(dòng)互聯(lián)網(wǎng)的發(fā)展有賴于開源軟件技術(shù)和眾多開發(fā)者的參與一樣,人工智能和機(jī)器人發(fā)展到今天,也將會(huì)通過技術(shù)的“賦權(quán)于民”來創(chuàng)造前所未有的爆炸式發(fā)展。開源硬件,以及“親民”的人工智能開發(fā)工具將成為眾多潛在開發(fā)者破除技術(shù)和工程圍欄的武器,也是建立新的創(chuàng)新教育體系的基礎(chǔ)。
在開源硬件和人工智能開發(fā)工具這一基礎(chǔ)上,小到紐扣級(jí)可穿戴方案,大到自動(dòng)駕駛裝備,都將成為更多的開發(fā)者,包括中小學(xué)生開發(fā)者可以涉獵的教育內(nèi)容,這樣一來,創(chuàng)造出個(gè)性化,層次多樣的創(chuàng)新成果就將是水到渠成的事情了。
AlphaGo戰(zhàn)勝李世石,對(duì)于智能計(jì)算來說,注定將開啟一個(gè)新的時(shí)代。不同于深藍(lán)(DeepBlue)通過暴力算法(Brute Force)以“蠻力窮舉”的方式尋找走棋的答案,AlphaGo是一部具有神經(jīng)網(wǎng)絡(luò)大腦的學(xué)習(xí)機(jī)器,通過對(duì)不同棋局的學(xué)習(xí),學(xué)習(xí)如何走棋以及判斷局勢(shì)優(yōu)劣,形成自己對(duì)千變?nèi)f化棋局的應(yīng)對(duì)方法。神經(jīng)網(wǎng)絡(luò)這一具有學(xué)習(xí)能力的智能工具,改變的將不止是下棋策略,更重要的是它將首先改變創(chuàng)新方式和與之匹配的創(chuàng)新教育方式。
人工智能將不僅僅是一類計(jì)算機(jī)算法,它將會(huì)成為一種新的機(jī)器設(shè)計(jì)語言,讓大眾可以設(shè)計(jì)個(gè)性化的機(jī)器人和智能應(yīng)用。機(jī)器人將不再是少數(shù)高科技公司精心打磨的產(chǎn)物,而是大批開發(fā)者,甚至大眾可以充分參與設(shè)計(jì)的尋常之物。你身邊的機(jī)器人,也將不僅僅是一個(gè)只具有一定功能的裝置,一個(gè)所謂的服務(wù)型機(jī)器人,而是可以一直不斷地學(xué)習(xí)不斷進(jìn)步的機(jī)器人,學(xué)習(xí)你適應(yīng)你,學(xué)習(xí)環(huán)境適應(yīng)環(huán)境,自我運(yùn)轉(zhuǎn),主動(dòng)協(xié)作。
圖1 全新的開放創(chuàng)新模式,人工智能和平民化創(chuàng)新
包括谷歌、阿里在內(nèi)的各大科技公司正為我們準(zhǔn)備一系列的云端智能解決方案,通過對(duì)HTML5和Javascript接口的使用,我們就可以實(shí)現(xiàn)圖像識(shí)別、語音處理、數(shù)據(jù)挖掘等智能應(yīng)用。另外,英特爾在2016年推出了支持神經(jīng)網(wǎng)絡(luò)的Curie(圖2)可穿戴及物聯(lián)網(wǎng)開源硬件解決方案,“創(chuàng)客大爆炸”通過打造創(chuàng)新工具SmartNode/AI,將云端智能和終端智能結(jié)合,提供一套完整的創(chuàng)新工具,支持包括Intel Curie、Edison、Atom在內(nèi)的多種不同硬件平臺(tái),實(shí)現(xiàn)跨平臺(tái)的從云端到終端的智能硬件開發(fā)方式,云端智能和終端智能將形成一個(gè)完整的工具集合,這些努力為創(chuàng)新教育打開了一扇大門,而重新出發(fā)的創(chuàng)新教育也將幫助實(shí)現(xiàn)智能時(shí)代的“賦權(quán)于民”。
李洪剛 創(chuàng)客大爆炸聯(lián)合創(chuàng)始人、英特爾(中國)創(chuàng)客活動(dòng)的發(fā)起人之一
SmartNode是一款圖形化智能硬件開發(fā)工具,它采用類似思維導(dǎo)圖的視覺設(shè)計(jì)語言,讓沒有硬件和編程經(jīng)驗(yàn)的開發(fā)者可以迅速掌握,通過對(duì)各種模塊的拖拽、連接與設(shè)置,輕松設(shè)計(jì)出你自己的“圖紙”,實(shí)現(xiàn)各種智能應(yīng)用,支持無代碼編程,以及基于Javascript語言和C語言的模塊設(shè)計(jì),大大降低智能硬件的開發(fā)門檻,讓創(chuàng)造的過程更加簡單高效直觀。
SmartNode是開源的工具,不只面向硬件或軟件工程師,還面向廣大的創(chuàng)新人群,各年級(jí)的學(xué)生、設(shè)計(jì)師、藝術(shù)工作者,以及各行各業(yè)的有想法、求改變的人。SmartNode將智能硬件的開發(fā)與人工智能的開發(fā)結(jié)合起來,將各種傳感、機(jī)構(gòu)、攝像頭、麥克風(fēng)這些硬件設(shè)備,以及機(jī)器視覺、模式識(shí)別、語音處理、人工智能算法等,變成一個(gè)個(gè)圖形化的模塊。因此,開發(fā)者開始更關(guān)注如何利用這些硬件和算法來設(shè)計(jì)出自己的應(yīng)用,而不因弄懂和學(xué)會(huì)這些技術(shù)問題而止步。算法工作者、工程師們則能夠通過SmartNode制造出各種工具模塊,成為其他人的創(chuàng)新武器。
圖2 SmartNode智能硬件開發(fā)工具
智能硬件大發(fā)展的時(shí)代需要硬件和人工智能的運(yùn)用對(duì)普通開發(fā)者沒有任何障礙。硬件的可獲得性得益于開源硬件的發(fā)展,從最初的Arduino、樹莓派,到英特爾推出的Edison、Curie……一波又一波開源硬件豐富了開發(fā)者的武器庫,開源硬件也正朝著更強(qiáng)的處理能力、更精細(xì)的產(chǎn)品定位、無線連接、低功耗、小巧易用等趨勢(shì)上發(fā)展。例如,芯片巨頭英特爾2016年推出的可穿戴及物聯(lián)網(wǎng)芯片Curie(居里)就引領(lǐng)著這一趨勢(shì),一顆制服紐扣大小的電路板,可以用紐扣電池供電,搭載16MHz-32位的Quark處理器,內(nèi)置低功耗藍(lán)牙4.0和運(yùn)動(dòng)傳感器,可以對(duì)接更多傳感器的數(shù)字與模擬接口。
硬件平臺(tái)本身以及開發(fā)工具對(duì)人工智能的支持也已經(jīng)初露端倪。以Curie(居里)芯片為例,其內(nèi)部藏有一個(gè)支持128個(gè)神經(jīng)處理單元的處理器,可以用于你身邊問題的學(xué)習(xí)和分類,例如,你可以用Curie的神經(jīng)網(wǎng)絡(luò)來做手勢(shì)動(dòng)作的學(xué)習(xí)和識(shí)別。通常這樣的運(yùn)動(dòng)數(shù)據(jù)采集和分類是非常耗時(shí)耗力的,但一旦擁有神經(jīng)網(wǎng)絡(luò),動(dòng)作數(shù)據(jù)就可以自動(dòng)分類,借助Knowledge Builder這樣的工具,還可以將獲取的大量數(shù)據(jù),通過更強(qiáng)大的電腦或云計(jì)算來幫助你實(shí)現(xiàn)快速分類。未來這項(xiàng)技術(shù)將用于體育運(yùn)動(dòng)姿態(tài)的分析和矯正,甚至可以令普通人也能擁有專業(yè)運(yùn)動(dòng)員的技術(shù)裝備,得到專業(yè)教練員或運(yùn)動(dòng)醫(yī)生一樣的輔助和指導(dǎo)。游泳、拳擊、高爾夫、網(wǎng)球,這些運(yùn)動(dòng)的愛好者將因此受益,而這些愛好者本身也有可能成為這些應(yīng)用的積極開發(fā)者。
圖3 內(nèi)置神經(jīng)網(wǎng)絡(luò)信號(hào)處理的Intel Curie(居里)芯片
圖4 SmartNode開源網(wǎng)站www.smartnode.io
對(duì)于硬件和智能計(jì)算的開發(fā)和普及來說,開源社區(qū)和工具化扮演著強(qiáng)力助推器的角色,因?yàn)閷?duì)于普通開發(fā)者來說,易懂易用而又兼容智能的工具,以及開源社區(qū)的大量案例和開發(fā)者之間的經(jīng)驗(yàn)互助是克服技術(shù)實(shí)現(xiàn)障礙的法寶。將硬件和算法結(jié)合在一起,將設(shè)計(jì)“腦圖化”、“圖紙化”的SmartNode,以及其在線倉庫www.smartnode.io,就代表了這樣的工具和社區(qū)。支持Edison及更強(qiáng)處理器平臺(tái)的SmartNode/AI,內(nèi)置“神經(jīng)網(wǎng)絡(luò)”模塊;而針對(duì)Curie平臺(tái)的SmartNode/C,支持對(duì)Curie之上的神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)和使用。
SmartNode在線倉庫收集了從傳感器使用、計(jì)算視覺,到人工智能、物聯(lián)網(wǎng)應(yīng)用的大量案例,上面還不斷更新教你開設(shè)SmartNode工作坊的各種方法,從物料的準(zhǔn)備到具體操作的步驟,幫助更多人學(xué)習(xí)使用SmartNode。
“創(chuàng)客大爆炸”的門口有一棵圣誕樹:樹葉由彩色紙卷組成,底座帶輪子,樹干和樹枝具有伸縮功能,樹葉的表面裝有LED燈帶。其實(shí),這是一個(gè)會(huì)動(dòng)的“機(jī)器人圣誕樹”。2015年圣誕節(jié)之前,創(chuàng)客們?yōu)樽约簻?zhǔn)備了這樣一個(gè)禮物,而讓一個(gè)機(jī)器人底盤神奇變身的工具就是平板電腦上運(yùn)行的SmartNode。
圖5 圣誕樹機(jī)器人,通過SmartNode實(shí)現(xiàn)設(shè)計(jì)
未來的智能設(shè)備應(yīng)該如何開發(fā)呢?是每個(gè)人都學(xué)會(huì)程序設(shè)計(jì),然后夜以繼日地編寫代碼去開發(fā)自己的設(shè)備?還是訓(xùn)練機(jī)器,指導(dǎo)機(jī)器,使得它們能夠如我們預(yù)想一般工作?
前者將世界變成了一個(gè)開發(fā)公司,而后者將機(jī)器納入了我們的社會(huì),如果我們掀開未來的一角,后者才是未來更加可能的模樣。個(gè)性化定制的硬件設(shè)備,以及根據(jù)每個(gè)人的習(xí)慣運(yùn)行的獨(dú)一無二的軟件系統(tǒng)。
最近,我們?cè)O(shè)計(jì)了一個(gè)“神經(jīng)機(jī)器人”,來幫助大家理解什么是人人可用的人工智能開發(fā)方法,用訓(xùn)練而不是編程教會(huì)一個(gè)機(jī)器人如何避障。
看上去它和傳統(tǒng)避障小車很相似,實(shí)際上,的確是一模一樣的硬件。通過在Intel Edison系統(tǒng)上運(yùn)行的SmartNode/AI神經(jīng)網(wǎng)絡(luò)模塊,它能夠自己學(xué)習(xí)躲避障礙,也就是說,當(dāng)前方發(fā)現(xiàn)障礙物的時(shí)候,它是自己學(xué)會(huì)了如何“優(yōu)雅轉(zhuǎn)身”,防止碰撞的。
你不需要編寫代碼,不需要調(diào)試避障距離,也不需要預(yù)先設(shè)計(jì)躲避策略,通過“你教它”這樣的非常自然的學(xué)習(xí)方式,用戶按照希望的樣式操作神經(jīng)機(jī)器人十幾次,SmartNode神經(jīng)網(wǎng)絡(luò)收集數(shù)據(jù)進(jìn)行訓(xùn)練,然后神經(jīng)機(jī)器人就能夠自動(dòng)躲避障礙物了。
當(dāng)然,如果你一定想制作一只有自毀傾向的機(jī)器人,比如讓它看到障礙物就撞過去,也可以,只要改變訓(xùn)練方法就行了。這個(gè)過程,我們就稱之為“神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)”。
圖7就是神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)機(jī)器人的SmartNode“圖紙”,左上的4個(gè)模塊接收來自4個(gè)距離傳感器的數(shù)據(jù),作為“這是什么情況”的輸入信息送給神經(jīng)網(wǎng)絡(luò),左下的游戲手柄通過藍(lán)牙無線連接機(jī)器人。
在訓(xùn)練和學(xué)習(xí)階段,開發(fā)者通過藍(lán)牙手柄控制機(jī)器人的運(yùn)動(dòng),在離障礙物很近時(shí)避讓,并且把這個(gè)控制指令作為“教你怎么做”的參考輸出信息交給神經(jīng)網(wǎng)絡(luò)。然后,神經(jīng)網(wǎng)絡(luò)就開始不斷地學(xué)習(xí)一組組輸入/參考輸出/的信息,逐漸“領(lǐng)會(huì)”在什么狀況下該做出什么樣的動(dòng)作反應(yīng)。神經(jīng)網(wǎng)絡(luò)完成訓(xùn)練之后,開發(fā)者通過藍(lán)牙手柄切換機(jī)器人的運(yùn)行模式,從“訓(xùn)練”切換到“執(zhí)行”。神經(jīng)網(wǎng)絡(luò)開始接管對(duì)機(jī)器人的控制,接收來自4個(gè)距離傳感器的數(shù)據(jù),產(chǎn)生自己的控制指令,控制最右側(cè)的機(jī)器人運(yùn)動(dòng)單元,機(jī)器人開始根據(jù)你之前訓(xùn)練它的那樣,自己躲避障礙物。
有趣的是,你還可以通過不同的行為訓(xùn)練方案,把機(jī)器人訓(xùn)練成有不同行為方式的機(jī)器人,例如,遇到前方有障礙物,你的機(jī)器人可能會(huì)傾向隨機(jī)朝其他方向轉(zhuǎn)向,或者傾向于朝著特定方向轉(zhuǎn)向,也可能優(yōu)雅地原地轉(zhuǎn)個(gè)圈再離開。
盡管“神經(jīng)機(jī)器人”只是一個(gè)很簡單的例子,但是通過它,我們體驗(yàn)了未來智能設(shè)備的開發(fā)方式和人工智能給我們帶來的奇妙體驗(yàn)。
站在開源硬件和人工智能發(fā)展的風(fēng)口上,我們可以展望,在未來的幾年時(shí)間內(nèi),每個(gè)人都將有機(jī)會(huì)參與到智能應(yīng)用(而不是智能手機(jī)應(yīng)用)的開發(fā)中來,使用各種開放的創(chuàng)新工具,塑造千千萬萬有智能大腦的機(jī)器人和物聯(lián)網(wǎng)裝置,無需借助編寫一行行代碼就調(diào)動(dòng)各種人類智慧結(jié)晶的算法和邏輯,通過內(nèi)嵌的機(jī)器學(xué)習(xí)模塊讓機(jī)器自我學(xué)習(xí)、自我適應(yīng)、自我迭代,這便是滾滾而來的智能開源浪潮。
圖6 第一個(gè)通過SmartNode/AI實(shí)現(xiàn)的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)機(jī)器人
圖7 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)機(jī)器人的SmartNode“圖紙”