【傳送門】
Part 1 - 數理基礎篇
Part 2 - 電腦基礎篇上
Part 3 - 電腦基礎篇中
Part 4 - 電腦基礎篇下
Part 5 - 進階篇上
Part 7 - 進階篇下

Meow~ 我是清大菸酒貓

其實我原本要睡了
但是剛剛才寫完一支自認為寫得很漂亮的程式
害我現在精神超好
只好來發發文,看會不會比較想睡

那我就接著上次繼續講囉~

【3:12 更新】
新增了一些參考資料
───────────────────────────────────────────────────────
7. 人工智慧 Artificial Intelligence

相信大家其實多少從電影或小說中對人工智慧有些基礎認識
基本上人工智慧最終目標就是期望能夠在資訊世界中創造出類似人這樣的智慧體
說實在的,我覺得這已經接近神的境界了

就我所知,目前比較主流的研究方向
似乎是傾向於用程式來模擬大腦的神經網路
來看看是否能接近人類大腦的運作模式

最近有看到一個開源蟲計畫(Open Worm Project)
就是用程式來模擬線蟲的三百多個神經元
然後來達到模擬線蟲大腦的效果
結果看起來好像是成功了
有興趣的可以去看看:

不過目前人工智慧與想像中還相差甚遠
因此這條路上其實還有很多東西可以研究
算是蠻具有前瞻性的領域

〉需先修課程:程式設計、資料結構、演算法、線性代數


8. 影像處理 Multimedia Processing

其實我英文是打「多媒體處理」
因為這個領域除了影像之外,也包含聲音訊號的處理

這邊在做的研究,通常是看看能不能讓機器幫我們做一些人類視覺才做得到的事情
例如辨識一張照片裡面有沒有出現人臉
或者把掃描的文件轉成文字檔
更甚者包括用一張有貓咪的圖片,去圖片資料庫尋找其他有相似貓咪的圖片(以圖搜圖)

另一方面的研究,則是偏向於影響處理軟體的功能提升
例如偵測影片是否有晃動
如果有的話,把影片修正成平穩的狀態(穩定化)
亦或是在 Photoshop 中新增新的修圖功能等等

這些都是這個領域的範疇

附上一個影片讓你們參考一下什麼叫做穩定化 Stabilization

〉需先修課程:線性代數、微積分、機率、機器學習


9. 自然語言處理 Natrual Language Processing

自然語言其實指的就是人類說的語言,這是為了與程式語言區隔開來
而這個領域則主要在對人類語言做一些電腦相關的研究

最常見的就是機器翻譯
像是線上翻譯為什麼都翻不準呢?
為什麼中文跟英文難以用機器轉換?
都是這領域的專家在研究的問題

其他還有偏向機器學習與資料探勘的研究
像是判斷一篇文章中,作者的情緒是如何?
讓機器自動給一篇文章下結論
讓機器自動從詞庫中產生一篇通順的故事等等
(網路上可以找到很多廢文產生器,但是故事內容都沒什麼意義)

這也算是目前很紅的領域之一

〉需先修課程:程式設計、資料結構、演算法、線性代數、微積分、機率、機器學習


10. 人機互動 Computer-Human Interaction

人機互動顧名思義,就是人類與機器的互動

這範圍其實也蠻廣的
舉凡網頁、家用遊戲機(XBox Kinect)、手機...
只要是人與機器之間互動的媒介
都可能跟這個領域有關
因此可以想見他們的研究範圍也應該包山包海

因為我自己不是做這個領域的,所以詳情也不太了解
不過就我所知,主要就是在研究電腦的行為對人造成的影響
或者是人類對某些電腦行為的感覺
以對機器做一些改善
這可能會涉及一些心理學方面的東西

像是有些網站看起來就是比較舒服
有些網站的配色或樣式看起來就很讓人不爽
或是研究人類使用網站時
傾向於用什麼樣的順序看網站的內容等等
那我們就可以在那邊放廣告XD

甚至是近期熱門的虛擬實境
也都算是這裡研究的東西

因為這個領域還挺熱門的
詳情就等高手來解釋吧~

〉需先修課程:因為範圍很廣,不太確定該先修什麼,也許先修心理學(?


11. 電腦圖學 Computer Graphics

電腦圖學研究的東西最近比較偏向於 3D 的呈現

現在很多遊戲的場景都是 3D 場景
人物可以在這場景中移動
場景中也有很多物品可以使用
不過大家有想過電腦上實際是畫出這些畫面的嗎?

其實背後的原理還挺數學的
不過這正是電腦圖學的專業
有興趣的人可以看看系上有沒有開圖學的課

而更進一步的研究
主要是偏向於如何讓 3D 場景看起來更為真實
像是模擬液體的流動、模擬布料被風吹的樣子...等等
這些都有可能會用在未來的遊戲或電影中
因此電腦圖學可以算是電腦遊戲的重要推手

這裏有去年圖學界最重量級的 Conference
SIGGRAPH 2014 的研究成果簡介影片:

看一看就可以大致知道圖學界都在做啥

〉需先修課程:普通物理、線性代數、微積分、程式設計、資料結構


12. 平行程式 Parallel Programming

現在市面上可以買到的 CPU 通常都是多核心的 CPU
而所謂多核心,指的就是它裡面同時具有多個處理器
能在一時間做多個工作

在這種 CPU 越來越普遍的情況下
工程師就開始思考讓一個程式在同一時間做多件事情
也就是讓程式平行處理工作

那這有什麼好處?
如果原本有 12 件工作要做,一次做一件就要做 12 次
但是一次若可以做 4 件,那就只要花費 3 次的時間就好

聽起來好像很容易?

其實這邊要考慮的問題還不少
因為通常這類型的程式都會有一些共用的資源
就像是通常一戶人家可能有四個人,不過廁所只有一間
那麼就算四個人可以分開工作,但是遇到同時要上廁所的情況
還是要等別人上完才能繼續做事

如果工作安排的方式不恰當
那麼可能就沒辦法得到多人同時做事的好處
平行程式就是在研究這類型的寫程式技術

〉需先修課程:程式設計、演算法、資料結構


13. 分散式系統 Distributed System

分散式系統指的就是讓多台電腦透過網路或者其他方式互相溝通來分工
這個領域其實有點類似平行程式的延伸
只是層級拉到了電腦與電腦溝通的等級

分散式系統通常用在很多我們看不到的地方
但其實是很重要的領域
舉個例子來說,Google 在全世界各地都有資料中心(Data Center)
以服務世界各地的人們

那各位是否想過,這些資料中心內部的電腦是怎麼運作的呢?
那麼資料中心跟資料中心之間又是如何溝通呢?
如果現在有個資料中心發生火災燒光光了,那我們的資料又該怎麼辦呢?

其實這些問題 Google 都有考慮到了
而這都是分散式系統的研究領域~

附上一張資料中心內部的照片:
Post images

〉需先修課程:程式語言、演算法、資料結構、離散數學

───────────────────────────────────────────────────────

那今天就先到此為止啦!
預計下次就會講完了~

清大菸酒貓

共 12 則回應

1
我是腦殘~喵~
0
資工幫推XD
0
好文幫推~~
已經刪除的內容就像 Dcard 一樣,錯過是無法再相見的!
0
圖學那個蠻有趣的ˊˇˋ" Shiny紅色豆豆龍XD
感覺這後面幾個領域都可以拿來當研所的Topic呢
======================
太上皇
0
人工智慧和虛擬實境啊~
小說跟電影都很常看到這方面的探討
挺期待成真的那天www
感覺會很有意思

-語璇
0
看起來就好專業阿~

想看網路部分的介紹啦!!XD
0
可以借我拿去回答朋友的問題嗎?我已經被別人問:「妳學的IT是在學什麼啊」問到不知道該怎麼回才好了XD


--
Hi, this is 香濃.
0
回答"解決問題的方法"
就好了

話說
ML為什麼是AI的先修阿
0
腦殘好

感謝推

感謝推推

已經刪除的內容就像 Dcard 一樣,錯過是無法再相見的!

其實這些領域都是研究所的 Topic 哦~

虛擬實境已不遠矣
Ommi (虛擬實境全方位跑步機)
Oculus Rift (虛擬實境頭戴顯示器)

網路部分?像是甚麼呢XD

請請~ 請轉載

其實我先修大概都是直覺抓一下而已XD
不過機器學習學過之後再來 AI 我覺得應該幫助很大

清大菸酒貓
0
B9 一般來說 AI在課堂上教的幾乎是通論
只要修過演算法略懂機率多半都聽得懂

通常是從啟發搜尋開始教
最後面會上到ML的邊邊
比方決策樹或隨機樹

會花很多時間在介紹比較基本的東西
比方"如何表達知識"---AI系統的資料結構
然而對ML來說沒有這些資料結構
你要怎麼紀錄學習呢?
所以我覺得AI應該是ML的先修
0
感謝你的提醒,老實說我沒有修過 AI 的課
只有修過 ML

因此參考你的意見之後
我覺得兩邊應該是分屬不同的領域
那麼我就把文章稍微修正一下吧~

清大菸酒貓
馬上回應搶第 13 樓...
回應...