網絡隨想三則

Monday, February 25, 2008

〈一〉

跟朋友早前討論過一下在香港推廣 Web Standards 的困難,其一就是出來的成果並不會特別令老闆眼前一亮。你用 table 排版,滿是 presentational tags 的 HTML 所做出來的網頁,並不會因為用了 CSS 和語意「齊整」的 HTML 特別變得好看,看上去可能都是一模一樣。如果老闆只看到結果都是差不多,那為何要改用呢?

使用更好方法和架構,就像練好內功一樣,深藏不露。江湖郎中或許可以一招半式耍得似模似樣,但一到比真的就完全不行。比較醒的老闆,會看得出「成果」不是看表面這麼簡單,網頁的速度、所耗的流量、瀏覽器的支持度、介面的統一性、代碼的管理與維持、改變的影響等等,通通都應該納入考量。

內功練得好,自然能應對更多情況。

〈二〉

Web 2.0 這個字響起後,大家都在看 Web 3.0 ,想法多多,其中有人認為我們將需要更全面的語意網 (Semantic Web)。語意網之建立,在於我們能否將更多「意義」,化為機器可了解和運用的描述,將之利用分析。此為「形容資料的資料」,即後設資料。

然而,這些「意義」由那裏來?大都要靠人作輸入。或許我們可以叫機器嘗試在普通的文件作統計分析,抽出「意義」,但若 AI 未聰明到可以理解,所做的只是有限。

為網絡輸入「意義」,也好像在練功,不過除了為自己,也為了大家。問題是,當用家不能看到甚麼即時的好處,也不會特別神心地輸入。

〈三〉

網絡是資訊泛濫之地,在這裏流通的各種資訊,已大大超越我們所能處理的,因此我們不停地嘗試解決這個問題。其一方法就是加入「意義」,然後讓機器處理。

追源溯流,資訊由何而來?都是由人類而來?機器可不可能產生資訊?

機器產生資訊,可以是工廠式的,但背後以乎一定由人類操縱,資訊來源似乎也必與人類有關。例如,機器讀取股市價格,弄成圖表給大家參考,但股市則是人類活動,而設計圖表的也是人類。但若果要由機器自覺地產生資訊,又關係到 AI 的發展,夠不夠「聰明」。

這個問題,還可以進一步追溯到人類由何而來。早前到朋友寫到關於 智慧設計論 的文章,介紹其中論點,就是認為自然定理不能創造資訊 (Information)。當然,這已超越我所能討論的範圍了。

相關文章: Semantic Web: Where Are The Meaning-Enabled Authoring Tools?

人機合一

Wednesday, March 28, 2007

Flesh and Machines 《我們都是機器人:人機合一的大時代》 (Flesh and Machines: How Robots Will Change Us) 是由 MIT 人工智慧實驗室主任羅德尼‧布魯克斯 (Rodney A. Brooks) 所寫,以他本身的經驗,去講機器人的開發史,遇上的難題,現在的情況和未來的展望。我看的相關書籍不多,但比起 《會思考的機器》 一書,寫得更淺白易明,值得想認識的人一讀。

由書本的章節標題,我們可以大概看到書本的內容脈絡和作者的想法:與機共舞、探尋人工生物、行星大使、二○○一年到了、與機器共生、我在哪裡、我們很特殊、我們不特殊、它們和我們、我們就是它們。

書中提到在製造智能機器人時所遇到的困境。一些看似簡單的事情,背後的原理其實很複雜。他舉例說一般人會以為讓機器去偵測週遭環境避開阻礙,是圖像分析技術而已。但實際上由分析圖片差異,到建構立體模型,計算自己的動作等等,運算量很大,而且那種圖像分析技術並不簡單。因此,作者在製造機器人時已經了解這一點,所以反而「反撲歸真」組合不同的小型系統,這些系統並不會「理解」,只是單純地對某些條件做某些反應而已。雖然沒有一般人所認為的「智慧」在裏面,但這些機器人卻表現得比任何「智慧型」機器人便像生物,動作敏節又靈巧,反應夠快。

比較有趣的是作者描述了一個由這些機器組成的「生態系統」。例如,我們現在並沒有足夠的 AI 去做一個可以記憶路線的打掃機器人,但可以用幾個「無智慧」的機器人分工合作。其中一種體形細小,便於四處走動 (但不記憶路線,只偵測塵多的地方) 的機器人,它會將塵「黏」在身上,偵測到身上的塵滿時,就會走到光的地方放下塵袋,回去充電。另一個只會走簡單路線的吸塵機器,則會到光猛地方「巡邏」,吸走塵埃。這些機器人本身,並不需要「理解」他們在做甚麼,只是對外來的事物做出反應而已。他們彼此間會組成一個生態,正如我們身體的內臟一互相合作一樣。

有些人說 AI 是不可能達成的,但背後原因往往是對人的「特殊性」的一種情意結。自日心說、證實太陽系不是宇宙中心、進化論等等,人就越來越不「特殊」。作者對某幾個論點作出分析,例如有名的「中文室」比喻中缺乏對整體的考慮 (一個神經元不會思考),嘲諷矽基系統只是一大堆開關但又沒有確實論據說明如何不可能等等。

人所剩下來的「特殊性」,其一是擁有情感一項。但反觀,我們對不同的生物都有不同的情感量度,例如我們會傾向認為螞蟻無情,但猩猩有情,為甚麼?是不是越似人就越有「感情」?作者在此作出質疑,為甚麼我們就不能說機器人,其實也有感情或情緒,雖然那只是人工的?

以上的機器雖有生物特徵,但缺乏變化。有「生命/智慧」的機器會出現嗎?作者介紹了機器發展以外的人工生命研究,即用簡單的程式模擬生態,讓他們在電腦裏自行發展,當中有好些有趣結果。然而,人工生命跟人工智慧仍相去甚遠,甚至是停滯不前。作者討論了幾個常見的推論:環境未夠複雜、電腦不夠快等等。但他認為這些推論都不足以說明 AI 當前的困局,當中應該有一種未知技術 (他稱之為「真髓」) 是突破的關鍵。雖然這像很多論者一樣,最後還是掃諸一個「未確定」要素,但他認為個要素並不是「擾亂型」的科技,也不會顛覆現在的科學或宇宙觀。不過他也說,那是沒有理據的個人估計而已。

他再進一步描述人身其實就是機器人的一種,是各種不同的功能組合,人其實不過「分子機器」。而在未來,人會與機器結合。以科幻名詞來說,即是「人機複合物」(Cyborg)。我們現在用鍵盤和滑鼠操控電腦,但未來就可能會通過人機介面來做。結合網絡,我們可以「隨心所欲」地操控遙距的機器。而且,在分子學的研究日益進展下,機器人也未必以一定是矽或機械,而是由有機原料組成。

對於想認識現今機器人科技發展的人,這本書是不錯的入門。當中說及一些機器/人類運作原理,也是十分有趣的。後半一些關乎人類機器的哲學討論,我們更可從作者「我們都是機器人」的觀點,看到未來機器人學的發展,還要走很遠很遠的路。

人工智能與語意網

Wednesday, July 12, 2006

Photobucket - Video and Image Hosting 剛剛看畢了 《會思考的機器》 一書,這是一本講人工智能 AI 實際發展的舊書,但最近再版,作者也添架了章節討論比較近期的 AI 趨勢。雖然書本的作者並非 AI 界的人,但她自己走訪不同的人,搜集不同的資料,從不同的角度去看 AI 那剛剛起步的歷史,當中包括對於智慧的理解、實際應用、合成心智的道德等等。

在我們開始發展 AI 時,也是對於人類智慧的一個探險旅程。什麼是理解?什麼是智慧?有什麼條件?等等許多問題,都是有待發掘和研究。如果我們沒有清楚明白「智能」所指的是什麼東西,在發展上可能有如瞎子摸象。有人說近年 AI 發展到了一個瓶頸位置,沒有什麼大突破,可能因為這個摸索期比預期的長的關係。

一個會思考的機器,並不是單單懂得運算和邏輯,當中還涉及大量的背景知識。以前,這許多知識都要靠人自己去輸入到機器裏去,用很專門的格式和方法存取資料。但現在網絡發達,機器人可以靠網絡取得資訊並加以運用,而這關係到 語意網 的發展。

現在的互聯網仍是以人為本的,成千上萬的網頁,文字、圖片、影象等等人類明白的方法呈現和記錄。但對於機器來說,要解讀分析這些文字、圖片、影象,以現有的 AI 技術來說,仍然很困難。所以,我們不能直接向搜尋器問問題,而是要靠用搜尋字眼作模糊的搜索相關資訊,因為機器並非「明白」網頁的內容,而是靠一些統計和評分,與搜尋字眼作計算,然後排列結果。

舊時的網頁,充斥著各種各樣用來描述外表的 Tag,如 font, b, br 等等,為的只是在瀏覽器上給人好看,但實際上對機器毫無意義,而且還會帶來解讀障礙。W3C 推的網頁標準,就是想將內容和表達分開來,以具有語意的 markup 來包著內容,以 CSS 控制外觀。

再進一步,「人類格式」的資料,必需加上足夠的敍述和形容,才可以令機器也可讀,所以有語意網的概念。語意網在我們的內容以上,再加上一層意義的敍述,讓機器也明白內容裏各種資料的架構和關係,從而可以處理這些資料。語意網使用 XML、RDF、OWL 等等為架構,為資料加上機器可讀的輔助。而且這種格式,不只是限制在網頁的應用之上,機器之間也可以使用這些格式來交換和理解資訊。

不過,語意網的發展仍在非常起始的階段,就網頁而言,單單是要由舊時的一個大 HTML 跳到 XHTML + CSS 已經十分困難,RDF、OWL 仍然有待支援,所以在「語意化」的路途上,又有很多不同的變化走了出來。近年冒起了的 Microformats 微格 ,使用 XHTML 為格式,又可以嵌入到現有的網頁上,實現人可讀,機器又可讀的目的。機器可以在網頁裏的微格抓到資料,明白當中意義。正因為微格小巧而精妙,又可溶入現有的網頁,所以漸漸受人關注,被稱為是 Lowercase Semantic Web。

不論如何,語意網在人工智慧的層面來說,是一個很重要的工具。AI 不必設計複雜到完全像人腦一樣,也可以明白資料的架構、意義,並作出處理。使用共同認可的資料格式,機器與機器之間也可以彼此了解,各種系統可以合作,來做更多事情了。

相關連結:

P.S. 事實上,我或許該看英文版的,因為對於很多翻譯的名詞看不太慣,在討論一些比較複雜的理論時看得有點吃力 (雖然看這本書其實不需要有背景知識) 。有時間的話,會再看一次。

科幻中的非人類

Saturday, March 18, 2006

在科幻電影或小說裏,都經常出現一些「非人類」的物種,由我們親手創造到外星人都有。而在人類與這些非人類之間的矛盾,通常都會引發衝突和戰爭,正如現實世界一樣。彼此信念不同,也不肯讓步,其所引起的紛爭,就成為科幻片的其中一個恒常的主題。而這些非人類,又大概可以分為以下類別:

robots-andrew Robots – 機械人,通常都由金屬和機械所構成的外殼,裏面運行人工智能,有各式各樣的形態。在近年,除了工業用的機械外,各方也致力於研究人形的機械人,為了讓機械人可以兩腳行走,做普通人的動作而花費了不少心力。在《Animatrix – 2nd Renaissance》裏,機械人因為受人類的壓迫,最終進行反抗。

android-roy Android – 人造人,就如機械人一般,不過載於血肉之驅上。這些 Android 比起人類,通常會在某些功能上加以強化,如力氣比較大,或被訓練做某些專門工作,也就是量產化的人類勞工。在《Blade Runner》裏的 Replicant 就是 Android,不過在戲中他們有了自我意識而反抗。其 Philip K Dick 的原著書名,是《Do androids dream of electric sheeps?》。

cyborg-gits Cyborg – Cybernetic Organism,通常被譯作「生化人」,但其實指的是人與機械的混合體。半人半機械的構造,模糊了人和機械之間的界線。Cyborg 的原體可能是人類,也可能不是。人類為了增強功能,又或經歷意外,而要換上機器的身體零件義肢。例如《攻殼機動隊》裏的主角草薙素子,便是除了腦部外全身義體化的 cyborg。而為機器加上肉體,弄上人的模樣,是因為這些機器大多要與人類一同工作,所以盡量以近似人類的模樣出現。《Terminator》裏的的機械人,便是機械人 cyborg 的其中一個例子。

clone-snake Clone – 複製人,一個在科幻裏經常出現的題目,尤其在第一隻複製羊多利出生以後,討論也更熱列。複製人是人類的完全一對一複製,不像 Android 般沒有原型。複製人通常會被視為「後備人類」,在《The Island》裏便有一間很大的複製人工廠,為被複製者提供器官移植,甚至可以延長壽命,實現人類長久以來長生不老的美夢。複製人也可以帶來大量的工人,在《Star Wars》裏的 Clones 的原型全都來自一個出色的戰士,而複製技術就將這些「能力」在大量的倍增。另一方面,複製技術又會與基因改造合作,先製做出超級人類然後複製,正如《Metal Gear Solid》裏的 Genome Soldier 一般。

xmen Mutant – 異變種,本來是人類,但經過化學實驗,又或受到輻射,令到身體發生異變,在生物層構造上與常人不同,多了特殊能力。異變種的誕生,可以是人為的,就如《生化危機》裏研製出來的超強生化怪物,本就是為了軍用。也有些是自然而生的,如《X-men》系列,正值人類開始再進化的階段,而陸續有不少異變人出現,比起普通人類有更強的特殊能力。值得一提的是,在外國 Marvel 系列的英雄,有很多都是異變類,如蜘蛛俠、Hulk、Fantastic 4 等等。

ai-puppetmaster AI – 即 Artifical Inteligence,其實很多機械人都內附 AI,而此類別則講沒有形體的 AI,例如一些 Computer Mainframe、又或是《攻殼機動隊》裏的傀儡師。沒有物理形體,存在於巨大的網絡,他們可以來去自如,而且不停地累積經驗與智慧。而 AI 的自我醒覺,發覺與人類地位不平等,往往是科幻片裏機器人叛變的原因。

alien Alien – 與人類完全不同的生物,在科幻作品類,外星人有兩極:敵人或朋友。《ID4》講述外星人侵地球;《ET》則講人類小朋友和外星人的友誼。通常都會認為外星人比起地球有更高的智慧和科技,因為他們已掌握了太空技術,才可以與地球人見面。外星人的樣子設計,有的很像人類,有的則好像怪物,這些其實都是反映自我們的社會文化。

以上各物種,其實都是科技的產物。而只要有非我族類存在,就會重覆著我們長久以來種族、宗教、男女等等的爭鬥歷史,科幻故事也就永遠可以寫下去。

P.S. 感謝 Akros 的意見,加入了 Mutant 類別