2016年9月29日 星期四

2016/9/30 machine learning


上禮拜為了交加簽單提早走,沒點到名,
一直以為這堂選上的課會被drop掉,頗崩潰

- - -

突然想起我今天這堂課好像沒簽到任何名字之類的...
是沒點名,還是我沒點到名?

----
ECM5901 最佳化理論與應用 Optimization Theory and Application
4BCD-EDB26  授課教師:劉俊宏
可以去旁聽
- - -

今天下課有問老師問題

問說那個λ對於conatrains的意義
結果馬上被身後一個大陸口音的同學打岔
要我回去自己查Lagrange multiplier
我查了維基百科
突然想起,這不是線性代數第一堂課老師有教過的函數逼近法嗎?
真糟糕,全都還給老師了

- - -

13:10-14:00
review last course
(1)decision theory
Find misclassification rate
<meth 1>當各種分類錯誤的嚴重性(權重)相同,使用最簡單的畫出函數找交點
<meth 2>最小化expected loss--minimize Baye's risk
    當分類錯誤嚴重性不同,例如:肺癌誤診不嚴重,應檢出而未檢出較嚴重
    使用loss matrix做加權

三種方法(歷史演進):
1. Discriminate function
2. Generative model
3. Discriminative model -> ch4 logistic regression

14:20-16:10
(2)Information Theorem
這一節講Entropy, 基本上就是定義成負亂度
所以data越可以預測,越整齊,與model變異越小,Entropy就越大
然後我們目的是要最大化Entropy

介紹了一種constrained optimitor
基本上就是Lagrange multiplier的一種實現形式
推導出最佳化的機率分布是高斯分布

接下來他把Entropy的概念應用在Kullback–Leibler divergence
簡單的說就是有一個理想的機率分布p(x)
我們用一個函數q(x)去近似它
KL divergence是實際的Entropy減去理想的Entropy,也就是理想與現實的差距

接下來要證明 KL(  p(x) ||  q(x) ) 恆大於等於0
這個證明暫且跳過

再來,這個q(x)要怎麼挑?
那就是使用統計裡的max. likelihood方法
q(x)裡一定有一些待定的參數,假設是θ
那麼我們就可以在q(x|θ) 裡固定x找最大機率的q(x|θ)
得到的θ就是估計的θ,就可以決定q
這個θ也可以用最小化KL(  p(x) ||  q(x|θ) )去估計得到
    




2016/09/30 計算方法設計


今天發CH6講義
交了HW2, 發回HW1
教了recursion tree和master method方法

這些方法之前都已經大概知道,
但講的計算細節很多,覺得挺煩的
我還是比較喜歡有系統性的東西
雖然魔鬼藏在細節裡啦


2016/09/29 正規語言




今天上Chap2-2 Nondeterministic Finite Accepters (nfa)
最後花了一個小時做hw2-1的講解(Sol2-1


2016年9月26日 星期一

2016/09/21,23 計算方法設計



這門是清大大學部的。上學期沒加簽到,這學期則是課太重,很怕自己沒辦法好好應付。



  • 課綱:
I Foundations 
1. The role of Algorithms in Computing 
2. Getting Started 
3. Growth of Functions 
4. Divide-and-Conquer 

II Sorting and Order Statistics 
6. Heapsort 
7. Quicksort 
8. Sorting in Linear Time 
9. Medians and Order Statistics 

IV Advanced Design and Analysis Techniques 
15. Dynamic Programming 
16. Greedy Algorithms 
17. Amortized Analysis 

V Advanced Data Structures 
21. Data Structures for Disjoint Sets 


VI Graph Algorithms 
22. Elementary Graph Algorithms 
23. Minimum Spanning Trees 
24. Single-Source Shortest Paths 
25. All-Pairs Shortest Paths 
26. Maximum Flow 

VII Selected Topics 
31. Number-Theoretic Algorithms 
33. Computational Geometry 
34. NP-Completeness 
35. Approximation Algorithms 


Self-educated: Chapters 10~12, 18, 30, 32

大致上跟我以前查到的相同
Self-educated: Chapters 10~12, 18, 30, 32 有一些自己讀的部分



  • 教科書是Cormen的這本:


T. Cormen, C. E. Leiserson, and R. L. Rivest, Introduction to algorithms, 3rd edition, the MIT press, 2009.
已借中文版來啃



  • Grading:


作業: 20%

期中考:35%

期末考:45%

聽說不調分。作業幾乎每周都有。

-------------------------------

雖然老師教得好又是個冷面笑匠,這門課分數聽說不好拿,所以原本一直很猶豫要不要修。其實剛開始來清大隨班附讀,我有立下一個宏願(?)要每科拿A+ ,後來雖然沒有每科都做到,但大部分都有達成。


這門課在這學期沉重的loading下,其實沒有抱太大期望,但我希望至少有A-吧(80分)。

-------------------------------

以下是google到的作業解答參考網址:

http://clrs.skanev.com/











2016/09/23 機器學習




簡仁宗老師開的Machine Learning,是我這學期的重點課

這門課根據老師的說法,是將他以往教的"基礎機器學習"和"高等機器學習"合併成一堂,所以沒有意外應該會非常的重。另外,他下學期會開deep learning

看一下課綱:

1. Introduction
2. Probability Distributions
3. Linear Models for Regression
4. Linear Models for Classification
5. Kernel Methods
6. Sparse Kernel Methods
7. Mixture Models and EM
8. Approximate Inference 


,看起來都挺熟悉的。有看林軒田老師的視頻先預習,哈哈


Grading:
Midterm Exam (30%), Final Exam (40%), Homework (30%), Class Attendance (<30%)
感覺佛心來的,是怕當掉太多人嗎
說到Class Attendance, 這門課有5名助教。上課點一次,下課再點一次


教科書:
C. M. Bishop, Pattern Recognition and Machine Learning, Springer, 2006.
聽說是比較難的一本,我在網路上找到了全文電子檔


這門課修課人數超多的,簡直可以用爆炸來形容。當天在教室裡坐了近200人,其中可能有一半是要加簽的。幸好有選到這門課





2016/09/20,27 遍布式計算



  • 參考書目:

- Frank Adelstein, Sandeep K. S. Gupta, Golden G. Richard III and Loren Schwiebert, “Fundamentals of Mobile and Pervasive Computing,” McGraw-Hill, 2005, ISBN 0-07-141237-9
- Evaggelia Pitoura and George Samaras, “Data Management for Mobile Computing,” Springer, 1998, ISBN: 0-7923-8053-3
- Dimitrios Katsaros, Alexandros Nanopoulos and Yannis Manalopoulos, “Wireless Information Highways,” Idea Group Publishing, 2005, ISBN 1-59140-568-8


  • Grading:

Midterm: 35%
Paper presentation: 35%
Homework: 30%

這堂課坦白說, 一開始看完他的課綱, 並沒有產生任何想修的興趣:



Introduction to Mobile Computing Environments
Data Broadcast
Content Adaptation
Mobility Management
Location-Based Services
Spatial Query Processing in Mobile Environments
Introduction to Wireless Sensor Networks
Introduction to Web API
Research on Smart Phones

後來為什麼會修了呢?

其實跟它一開始的課程先教資料探勘的內容有關係。資料探勘我上學期修過了, 所以預期這門課會比較輕鬆。此外, 我很想寫code

第一堂課我沒去, 9/20是第二堂, 9/27第三堂, 基本上都是在複習association rule, classification和clustering。因為課程內容很熟悉, 讓我一直無法很專心地上課

接下來的一兩周, 可能會有一周是安排lab上機, 做一些Sci-kit learn和Orange套件的教學

Sci-kit learn上學期資料探勘和圖形識別也有用過了Orange剛剛看了一些視頻, 覺得挺方便的, 這種GUI的data mining套件感覺就很適合讓以前還在工作時的我教給同事使用




2016/09/22 正規語言


課程網頁: http://people.cs.nctu.edu.tw/~rjchen/FormalGrad-2016/


教科書:  An Introduction to FORMAL LANGUAGES and AUTOMATA
(5th edition) by Peter Linz

Grading:
Homeworks 15%
Midterm 40%
Final 45%


這是正規第一次上課立馬就複習完了在離散數學中所學到的Finite Automata

坦白說,這是本周我覺得最有趣的一堂課,當初離散在學的時候就已經覺得很有趣,像是益智遊戲一般很少背的,很多理解的當初離散小考這一chapter因記錯小考時間完全沒讀還考了滿分

這一科被稱做是「資工系的哲學」有其道理。很美

雖然未來似乎不是要做這塊,哈哈





105上week2






這學期修了交大的正規語言、遍佈式計算、機器學習,還有一堂清大大學部的演算法(計算方法設計)。

在coursera上看Neural Networks課程,當然還有Stanford的 Andrew Ng教授 這門相當有名的Machine Learning課

加了一個機器學習讀書會(主要看林軒田教授vedio)和一個英文讀書會。再加上嗷嗷待哺的論文,其實loading非常的重。


開始寫本網誌的目的,其實是受到我有在follow的一個blog的啟發。身為塵世中一個迷途的小書僮,總想留下一些學習歷程,給未來有需要的人和自己參考。