Quick Links
- Portal for Collobration Notes 共筆統整入口 (hosted by hackfoldr and HackMD)
- Program Schedule 議程時間表
- PyCon TW 2016 Official Site 官網
How to update this note?
- Everyone can freely update this note. 任何人都能自由地更新內容。
- Please respect all the participants and follow our code of conduct during discussion. 討論、記錄時,請遵守大會的行為準則。
developer -> github -> jenkins -> S3 -> lambda deployer
Info: https://tw.pycon.org/2016/events/talk/56874546946375700/
Speaker: Ian Lewis
Twitter @IanMLewis
specific field of ML -> ANN -> deep ANN
ANN good at: classification problem
Tensor: n-dim arrary
DNN = a large matrix operations
You need distributed training
根本通靈
NN 就是個 black box, 過程做了什麼都不知道
一天搞懂深度學習
這個 notebook 找得到嗎
什麼東西notebook找的到?
目前正在講的 jupyter notebook
jupyter
你說的是這個檔案對嗎
對的
可能在他電腦裡? 不知道有沒有公布QQ
github 裡有一個 notebook 項目
ask him for sharing the note after talk?
從他的twitter來看,這是他第一次講這題目
jupyter 大多用在爬蟲
做data science的也大量再用jupyter喔~~~
話說~~ jupyter notebook就是ipython notebook
搜尋引擎
What is a data processing framework; what is a taskflow…
Implemented by Python generator, thus, asynchronous programming can be achieved.
論文: A Neural Algorithm of Artistic Style
這個部分只會感覺到線條
這個部分能夠認知方形、三角形、圓形等幾何圖形
這可以認知到更複雜的圖像
是這個演算法能成功很重要的一個環節
在例子當中,有兩個相同顏色的灰點,如果我們幫他們加上不同顏色的背景,那他們的顏色看起來就會不同。
如果有兩條平行的線,幫他加上同心圓,那看起來就會變得扭曲
如果有兩條一樣長的線,幫他們加上不同角度的兩側就會看起來不一樣長
"misconception"?? <– does he mean "false perception" or "illusion"??
not sure about the differences between them
"misconception" = "誤解"
Sigmoid, Rectified Linear Function (non-linear function)
sigmoid: 如果 input 趨近於零,那輸出就會是 0
Rectified Linear: 如果輸入小於 0,那輸出就會是零,如果大於零,則保持原輸出
input layer > hidden layer > output layer
responsible for visual signals
duplicate neuron with same weight in different position to sense the color, shape, …
Input layer > Convolutional layer > Pooling > ??? > Pooling > Output layer
在 Convolutional layer ,會辨識出線,在 Pooling … 等三層,可以辨識出方形、圓形等形狀
Very deep convolutional networks for large-scale image recognition
這個演算法在 ImageNet 2014 獲得冠軍的獎項
他有 19 + 5 個層
pre-trained parameter can be downloaded online
不用再自己訓練資料,訓練資料十分耗時
模仿人類藝術家畫畫
人類藝術家看到 101 -> 腦海生成畫面(不是真的 101,只是訊號,因為有錯覺,所以他不知道真實的樣子,只知道大概的樣子) -> 只能盡量把畫出來的和真實畫像的差異降低。
VGG 19 是一個商業化軟體,有很高的精確度去辨識出圖像來
第一層會記錄下 location,
Input Photo P、Input Canvas x 各自丟入VGG19再minimize兩者的差利用backpropogation修正canvas的RGB value
higher layer會讓圖的細節loss越多,因為neural network是模仿人類的visual path
你可以看到一次又一次的,畫出來的畫像和真實的照片越來越相近
"Style" is position-independent –> Gram Matrix
我們把有風格的圖畫餵給 VGG19,把他轉換成 Gram Matrix,產生出 Style Image
在第一層,我們只能看到有細碎的風格,隨著層數往後,我們能更清楚的看到風格的細節
Content vs Style
在創造結果時,我們不要原圖的細節,所以我們只取較後面的層,
在抽畫風的時候則要保留細節,可以把layer疊在一起
Initial State 對於最後的結果也有很重要的影響,
如果完全沒有對於產生的圖像有任何提示的話,那會和風格輸入的圖片很相近,如果有一些提示(大樓的陰影等),那就會和我們要的結果比較相近,如果把台北 101 的照片餵進去作為 Initial State 的話,那產生出來的就會是最精確的有畫作風格的圖片。
language model for generating poet