Posted in Mr. Thursday, 專欄, 電腦科學 on Mar 16th, 2008
Posted By Mr. Thursday
在〈由樹的前序、中序、後序走法來談資料結構〉文章裡面提到了演算法就像是做事情的方法,資料結構則是對應演算法可以運作的東西,譬如說刮鬍子有步驟一、步驟二、步驟三,但是要有刮鬍刀、插頭、以及鬍鬚,那些步驟才有運作的東西,甚至不同的刮鬍刀,也會讓同樣的步驟有不同的執行效率,或是連原來的步驟都要改變,譬如說不是電動刮鬍刀,原來步驟裡面插插頭的那一步,也就可以不用作了。演算法和資料結構之間的關係也是如此,譬如說排序的演算法,可以用不同的資料結構來實現,好的資料結構,可能某一種排序演算法最適合,對其他種排序演算法,可能反而讓速度變慢。
因此,演算法和資料結構,通常會一起考慮,而演算法每一步,也就是電腦可以實現的基本步驟所組成。譬如說兩個數字相加,或是把「樹」這個資料結構裡面的節點根據某種規則移動,都是電腦運算基本步驟所可以達成的。但是如果步驟是「改善排序的品質」的敘述,電腦可能就看不懂了,這時候就是程式設計師,把這些人看的懂的需求,轉換成電腦可以實現的步驟,也就是演算法和對應的資料結構,最後再用程式 (編程) (program),變成電腦真的可以執行的語言,達到最初想要執行的功能。那麼今天想要完成的功能是甚麼呢?「排序」,排序就是把原本雜亂無章的一堆東西,按照某種順序排好,譬如說圖書館裡面的書籍,按照書籍的編號有小到大排好,譬如說醫院的病歷,按照病歷號碼有小到大排好,譬如說一堆檔案,按照字母順序或是檔案時間順序有早到晚排好,這些都是排序的應用。那麼電腦要如何完成「排序」(sort) 這件工作呢?「二元樹」 (binary tree) 怎樣子應用在排序這項工作呢?
Read Full Post »
Posted in Mr. Thursday, Research, Web 2.0, 網路新聞, 電腦科學 on Mar 11th, 2008
Posted by Mr. Thursday
Read Write Web提到了一個問答系統 eeggi,使用者可以在上面用自然語言問句,來尋找答案,有興趣的讀者可以在這邊觀看約4分鐘的DEMO。eeggi可以區分同義字,並且根據問句的上下文來判斷回傳的答案,並且會把語意上真正相關的結果整理在一起回傳。文章中還提到了eeggi會依照發現的繼承關係,自動套用相關的屬性,譬如說Mary是一位女孩,那麼女孩相關的屬性就會自動列入搜尋範圍。不過這卻也讓我想到了算是人工智慧裡面一個知識表達還算有名的問題。
這個問題是甚麼呢?首先我們先提一下古老以前亞里斯多德提出了一種邏輯推論法,叫做三段式論證。三段式論證舉個例子如下:
1. 人都會死 (Men are mortal.)
2. 拿破崙是個人 (Napoleon is a man.)
3. 所以拿破崙會死 (Napoleon is mortal.)
不知道各位是否看出三段式論證的規則了呢?就是第一行先論述一整個類別的性質,地行行列出某個事物屬於這個類別,第三行就是結論,也就是這個事物具有第一行類別提到的性質,或是說這個事物繼承了這個性質。
不過後來研究人工智慧的學者,喜孜孜地想要應用到知識表達的邏輯系統裡面的時候,卻發現有個反例,舉例如下:
Read Full Post »
Posted in Google, Mr. Thursday, Video, 網路新聞 on Mar 8th, 2008
Posted By Mr. Thursday
Googlet 總裁 Eric Schmidt上週在 HIMSS 會議 (Healthcate Information and Management System Society) 發表演講,說明並且展示還未上線的 Google Health 系統。這個系統主要有四個特點:(1) 隱私權和安全性 – 個人健康資料需要隱私權的保護。(2) 平台 – 使用者可以在這個平台上面存取自己的健康資料,並且在這個平台使用其他相關的健康服務工具。(3) 資料可攜性 – 透過網路的存取方式,無論身處何處,無論哪一種作業系統,都可以透過網路存取自己的健康資料,有如ATM可以存取不同間銀行的帳戶一樣。(4) 使用者中心 – 提供更親切更容易使用的系統介面給使用者。下面是目前Google公佈的Screen Shot
除了隱私權問題之外,我個人還想到兩個地方,會是需要探討的問題。
Read Full Post »
Posted in Business, Mr. Thursday, Web 2.0, 專欄, 網路產業 on Mar 5th, 2008
Posted By Mr. Thursday
由於數位內容和軟體複製容易,讓數位內容和軟體產業無法像實體產品的產業一樣,直接向消費者收費,新的商業模式 (business model) 急待發明!然而在發明新的商業模式之前,讓我們先看看目前既有的數位內容和軟體產業的商業模式,也就是「廣告」。如果用之前分析這個問題的方式,把物品和金錢的交易,分別用藍色和黃色的箭頭表示,那麼廣告的商業模式,就可以用上面這一張圖來表示了。
Read Full Post »
Posted in Mr. Thursday, Web 2.0, 專欄, 網路產業, 電腦科學 on Feb 27th, 2008
Posted By Mr. Thursday
如果想要用另外一種語言在電腦上打字,我們通常要學習另外一種輸入法,即使是同一種語言也有不同的輸入法可以選擇。繁體中文常用的注音輸入法,只要會唸某個字,就可以把字打出來,不過出現同音字的時候需要選字,使用久了有可能會忘記一個字怎麼寫。倉頡輸入法是根據字的形狀拆解成不同字根,讓同字根的字減少,加快打字的速度,然而學習字根的過程需要比較多的練習。無蝦米輸入法也是字根,然而比倉頡容易聯想,學習比較快。
因此除了拼音文字以外,中文輸入法,不管是依照字型拆解,還是各種拼音輸入法 (漢語拼音、注音符號),對於一開始學習的人來說,練習是加快速度最好的方式。然而師父領進門,修行在個人。即使有專門輸入法教學班、教學軟體,「練習」仍舊是把輸入法學習好的關鍵。本篇試著構想一個提供輸入法練習環境的網站,以及這個網站在商業模式、教學上的優缺點分析。
Read Full Post »
Posted in Mr. Thursday, Research, Web 2.0, 網路新聞, 電腦科學 on Feb 26th, 2008
Posted By Mr. Thursday
去年在MIT Technology Review網站上面看到Powerlabs網站,不過後來才開始接受註冊。Powerlabs 會搜尋Wikipedia的內容,並且支援自然語言的搜尋,而非目前常用的關鍵字搜尋。使用者還可以透過回應 (feedback) 來改善搜尋的內容和過程。如果想要嚐鮮使用,可以先在這邊註冊。IE目前只支援IE7,另外還支援Firefox和Opera等瀏覽器。MIT Technology Review報導裡面提到這是PARC研究機構30年的研究成果,主要是在一個稱為Lexical Functional Grammer上面的技術,讓文法引擎可以從文字裡面捕捉出要表示出來的語意。
下面是Powerlabs自我介紹一分鐘的影片
參考資料
(MIT Technology Review) Building a Better Search Engine
(Wikipedia) Lexical Functional Grammer
Powerlabs
PARC
Read Full Post »
Posted in Mr. Thursday, Web 2.0, 專欄, 網路產業 on Feb 22nd, 2008
Posted By Mr. Thursday
在學習英文的時候,有不同的部分需要學習,有聽、說、讀、寫,有文法,有單字,有句子。有時候我們把單字背起來,但是使用上可能無法非常適切,因為我們使用英文的頻率,以及週遭的環境,沒有辦法讓我們全天候暴露在英語的學習環境下面。因此即使偶而有 long time no see (好久不見) 這種一一對應的英文句子,有時候我們常常用錯單字,或是寫出來的句子外國人很少有這種寫法 (people mountain people sea: 人山人海),即便文法上這個句子是對的。在追求國際化的過程中,英語是目前最普及的世界語言,因此本篇以英文句子網站為出發點,嚐試一些分析,並且探討更多可能性,譬如說多國語言的句子學習網站等等。
Read Full Post »
Posted in Business, Mr. Thursday, Web 2.0, 專欄 on Feb 14th, 2008
隨著科技的發展,一些交易方式開始感到困難,尤其是數位內容的交易,在燒錄器和網路的發展下,快要撐不下去了!為甚麼科技的進步,反而讓交易的文明,似乎要到退回去了呢?在探討新科技對交易的影響之前,讓我們先把傳統交易的方式抽象化,用箭頭來畫出交易雙方的流動情形,試著探討可能的交易的新方式。
Read Full Post »
Posted in Mr. Thursday, Research, 圖書, 專欄, 數學, 電腦科學 on Feb 8th, 2008
Posted By Mr. Thursday
在《探討拓樸和語意之間的關係》這篇文章裡面,稍微探討了語意的問題,以及拓樸對於語意問題可能的解決方法。然而在拓樸方面,只有約略和各位提到,拓樸就是對一個集合作運算,集合裡面的元素,不管怎樣子擴張壓縮變形,之間的關係都會維持著,這種運算就符合拓樸的條件。如果對於集合的基本想法和運算有些不記得,可以先參考另外一篇文章《集合: 從邏輯到1+1=2》。
因此,為了解決用電腦來處理語意資訊的這個問題,筆者打算用拓樸來嚐試解決,拓樸又是使用集合作為運算的基本單位,因此有了前面第一篇拓樸的簡介文章,以及第二篇有關集合的簡介文章。然而拓樸空間本身的定義,則是有一定程度的複雜性,接下來的一系列文章,我將努力把拓樸的觀念,在使用白話文、卻又不失去數學公式所定義的觀念下,向各位介紹「拓樸」(topology),然後介紹「流形」(manifolds),最後回到一開始設定的目標:「用流形 (manifolds) 來嚐試解決語意 (semantic) 問題」。
在這條漫長的道路裡面,今天我們先來看其中的一小段。今日的主角是「開集合」,英文是 open set。有了集合的基本概念,再加上「開集合」的概念,我們就可以開始了解「拓樸空間」的基本定義,在這條路上往前一步,同時也可以了解相關的概念:「歐氏空間」、「度量空間」、以及最廣義的「拓樸空間」。
Read Full Post »
Posted in Mr. Thursday, 大腦, 專欄, 神經生物 on Jan 24th, 2008
Posted By Mr. Thursday
學習非常地重要,學習讓我們可以從不會一件事情、不知道一件事情,變成學會一件事情、知道一件事情。如果我們從小是講中文,但是經過幾堂課的學習,我們可以學會英文;再經過幾堂課學習,我們可能學會日文;再經過幾堂課學習,我們可以學會更多語言。其他領域的知識,我們只要肯學習,都可以慢慢學會,即使有所謂的學習的黃金年齡,但是活到老學到老,就算是學的慢,也是比完全沒有學習來得好!今天要和各位分享的主題,就是學習的三個重要元素:習慣學習、敏感化學習、以及制約學習。
首先我們先來定義一下學習這個問題。學習可能有很多種定義,不過在這邊為了說明方便起見,我把學習定義成「刺激–反應」配對的問題,也就是說,圖裡面中間打問號的長方形,就是代表一個具有學習功能的人、動物、或是機器。這個有學習功能的物體,會在接收到某些「刺激」的時候,產生一些「反應」。隨著時間變化,中間這個物體,還可以把新的「刺激」對應到新的「反應」,譬如說看到英文字(刺激),可以唸出來並且了解字的意思(反應)。這種隨著時間來改變「刺激–反應」對應的能力,我就稱之為「學習」的能力!
Read Full Post »