Monday, December 10, 2018

AI Seminar:LeNet

AI Seminar:LeNet

Gradient-based learning applied to document recognition

2018/12/10

報名網址:
https://www.facebook.com/groups/1930037950638003/permalink/1939482919693506/

-----

前言:

我在網路上寫了一些深度學習的導讀文章,但我認為台灣需要更多人來參與這件事,所以在 PyTorch Taiwan 之後,又成立了 AI Seminar Taiwan 來推動這件事。

從 LeNet 開始,會依序找一些經典的深度學習邀請大家參與。參加者可以在 Medium、GitHub 或 Blogger 寫一篇教學文貼到 AI Seminar Taiwan,然後將 FB 的連結加到自己的文章上方,則 FB 的貼文就會成為該教學文的討論區。目前有吳政龍跟林瑜浤兩位參與這個計畫,如同公路車輪車的概念,我們希望有更多人參加。

願意寫一篇 LeNet 教學文的朋友,請在上方 FB 報名處回應 +1 即可!

----- 


Fig. 1. LeNet [1].

-----

說明:

關於 LeNet [1] 這個主題,我前前後後寫了很多文章 [2]-[8],講的都是這個主題。我建議要入門深度學習的朋友,可以像我一樣,找一些適合的參考資料,像我一樣寫一篇文章。甚至用 Python 手刻 [6], [7],會比你用 PyTorch 或 TensorFlow 更有感覺。虛心的人有福了!因為深度學習是他們的。

-----

References

[1] LeNet
LeCun, Yann, et al. "Gradient-based learning applied to document recognition." Proceedings of the IEEE 86.11 (1998): 2278-2324.
http://yann.lecun.com/exdb/publis/pdf/lecun-01a.pdf

[2] 深入淺出 Deep Learning(二):LeNet & BP
http://hemingwang.blogspot.com/2018/02/deep-learninglenet-bp.html

[3] AI從頭學(九):Back Propagation
http://hemingwang.blogspot.com/2017/02/aiback-propagation.html

[4] AI從頭學(一二):LeNet
http://hemingwang.blogspot.com/2017/03/ailenet.html

[5] AI從頭學(一三):LeNet - F6
http://hemingwang.blogspot.com/2017/03/ailenet-f6.html

[6] LeNet實作團(目錄)
https://hemingwang.blogspot.com/2017/04/lenet.html

[7] 給高中生的第一堂 AI 課:LeNet / Python
http://hemingwang.blogspot.com/2018/09/ai_10.html

[8] 每天來一點 Deep Learning(目錄)
http://hemingwang.blogspot.com/2017/06/deep-learning_24.html

Wednesday, December 05, 2018

筆記本

筆記本

2018/11/15

AI從頭學(目錄)

AI從頭學(目錄)

2016/12/08

建議使用 iPad 閱讀!



給高中生的第一堂 AI 課:LeNet / Python

給高中生的第二堂 AI 課:AlexNet / PyTorch

給高中生的第三堂 AI 課:數學

PyTorch Taiwan(目錄)

-----

新-AI從頭學(一):文獻回顧

新-AI從頭學(二):Popular Deep Learning Software Tools

新-AI從頭學(三):Popular Deep Learning Hardware Tools

-----

簡單提示:

有時間可以從第一篇開始快速瀏覽一遍。

時間不夠的話,十二跟十三的「LeNet」可以先看,其次是九的「BP」。

然後是二六到三五的「CNN」,在看三三的「ResNet」之前,可以先回頭看一九的「LSTM」。

-----

AI從頭學(代序):The Road to Deep Learning 

AI從頭學(一):文獻回顧

AI從頭學(二):Popular Deep Learning Software Tools

AI從頭學(三):Popular Deep Learning Hardware Tools

AI從頭學(四):AD and LeNet

AI從頭學(五):AD and Python

AI從頭學(六):The Net

AI從頭學(七):AD and Python from Jason

AI從頭學(八):The Net from Mark

AI從頭學(九):Back Propagation

AI從頭學(一0):Automatic Differentiation

AI從頭學(一一):A Glance at Deep Learning

AI從頭學(一二):LeNet

AI從頭學(一三):LeNet - F6

AI從頭學(一四):Recommender

AI從頭學(一五):Deep Learning,How?

AI從頭學(一六):Deep Learning,What?

AI從頭學(一七):Shallow Learning 

AI從頭學(一八):Convolutional Neural Network

AI從頭學(一九):Recurrent Neural Network

AI從頭學(二0):Deep Learning,Hot 

AI從頭學(二一):A Glance at Deep Reinforcement Learning 

AI從頭學(二二):Azure Machine Learning - Clustering

AI從頭學(二三):CNN - Kernel Training

AI從頭學(二四):CNN - Kernel Visualizing

AI從頭學(二五):AlphaGo 

-----

一、CNN

AI從頭學(二六):AlexNet

AI從頭學(二七):ZFNet

AI從頭學(二八):Network in Network

AI從頭學(二九):GoogLeNet - 1/3

AI從頭學(三0):GoogLeNet - 2/3

AI從頭學(三一):GoogLeNet - 3/3

AI從頭學(三二):VGGNet

AI從頭學(三三):ResNet

AI從頭學(三四):DenseNet

AI從頭學(三五):DPN

-----

二、FCN

AI從頭學(三六):FCN

-----

三、SVM

◎ Kernel Function

◎ Dual Space / RKHS

◎ Lagrange Multipliers

◎ Support Vector Machine (SVM)

◎ Sequential Minimal Optimization (SMO)

-----

四、Object Detection

AI從頭學(三七):DPM

AI從頭學(三八):YOLO v1

◎ AI從頭學(三九):Faster R-CNN

◎ AI從頭學(四0):SSD

◎ AI從頭學(四一):YOLO v2

◎ AI從頭學(四二):FPN

◎ AI從頭學(四三):RetinaNet  

◎ AI從頭學(四四):YOLO v3
 
-----

五、Optimization

An overview of gradient descent optimization algorithms by Sebastian Ruder

◎ AI從頭學(四五):SGD 

◎ AI從頭學(四六):Momentum  

◎ AI從頭學(四七):NAG  

◎ AI從頭學(四八):AdaGrad  

◎ AI從頭學(四九):AdaDelta

◎ AI從頭學(五0):RMSProp

◎ AI從頭學(五一):Adam

◎ AI從頭學(五二):Nadam

◎ AI從頭學(五三):AMSGrad
   
-----

六、Normalization

◎ AI從頭學(五四):Batch Normalization

◎ AI從頭學(五五):Weight Normalization

◎ AI從頭學(五六):Layer Normalization

◎ AI從頭學(五七):Group Normalization

-----

七、Regularization

Regularization for deep learning by Ian Goodfellow et al.

AI從頭學():Weight Decay

-----

八、Activation Function

-----

九、Word2vec

一0、Seq2seq

一一、Neural Turing Machine

一二、One Shot

-----

AI從頭學():Highlight  

AI從頭學():Complete Works

-----

Appendix

A. 如何學好英文

B. 如何閱讀論文

-----

每天來一點 Deep Learning(目錄)

深入淺出 Deep Learning(目錄)

AI創業日記(目錄)  

-----

Big Data(目錄)

Cloud(目錄)

Python Spark ML(目錄) 

AI Seminar:MANN

AI Seminar:MANN

One-shot Learning with Memory-Augmented Neural Networks

2018/12/05

-----

References

[1] MANN

Santoro, Adam, et al. "One-shot learning with memory-augmented neural networks." arXiv preprint arXiv:1605.06065 (2016).
https://arxiv.org/pdf/1605.06065.pdf

One-shot Learning with Memory-Augmented Neural Networks
https://rylanschaeffer.github.io/content/research/one_shot_learning_with_memory_augmented_nn/main.html 

GitHub - vineetjain96_one-shot-mann  Tensorflow Implementation of One-Shot Learning with Memory Augmented Neural Network
https://github.com/vineetjain96/one-shot-mann



深度學習的新方向 One-shot learning - George's Research Website

http://tzuching1.weebly.com/blog/-one-shot-learning

深度:機器如何模仿人類的學習方式? _ 香港矽谷
https://www.hksilicon.com/articles/1170358

Memory-Augmented Neural Networks _ 陈先森的搬砖台
http://chenpeng.online/2018/03/09/Memory-Augmented-Neural-Networks/

爬山(七):十八尖山

爬山(七):十八尖山

2018/12/05

-----

 
-----

告示牌。

爬山(六):十八尖山

爬山(六):十八尖山

2018/12/04

-----

 
-----

消毒。

Monday, December 03, 2018

AI Seminar:Matching Networks

AI Seminar:Matching Networks

Matching networks for one shot learning

2018/11/26

-----



Fig. 1. Matching networks [1].

-----




-----



-----




-----



-----



-----






Fig. Formula 1 [1].

-----


Fig. Formula 2 ~ 5 [1].

-----


Fig. Formula 6 [1].

-----

模型的靈感來自 seq2seq with attention [#2], memory networks [#29] 和 pointer networks [#27]。本文最大的貢獻就是把 set2set [#26] 框架應用到 one-shot 學習中。
// Matching Networks for one-shot learning _ 陈先森的搬砖台

有人可能會疑惑為什麼要用LSTM,像LSTM、RNN這種模型都要記住一些東西,可是這些樣本的類別又不同,所以是想要記住什麼?我的理解是將各個類別的樣本作為序列輸入到LSTM中,是為了模型縱觀所有的樣本去自動選擇合適的特徵去度量,例如如果我們的目標是識別人臉,那麼就需要構建一個距離函數去強化合適的特徵(如髮色,臉型等);而如果我們的目標是識別姿勢,那麼就需要構建一個捕獲姿勢相似度的距離函數,這裡需要參考一下度量學習 (Metric Learning)。
// 论文笔记:Matching Networks for One Shot Learning - 知乎

one-shot learning:從一個單獨標記的模型學習。

 deep learning的一個特點是需要大量的數據。增加數據和正則化一定程度上緩解low data的overfitting,但並未徹底解決這個問題。另外,在大數據集上學習的速度比較緩慢,使用SGD的話需要很多步更新參數。在我們看來,是因為參數化的模型,訓練樣本需要通過緩慢學習。

與此相反,許多非參數的模型可以讓樣例非常快速的同化。一些方法,比如kNN,不需要訓練,而是需要定義一個metric。

將二者的優點結合,parametric model的泛化性,non-parametric model的速度快。我們模型的新穎地方在兩處:模型層次和訓練過程。我們提出了Matching Nets(MN)。然後再訓練過程上,基於簡單的機器學習原則:訓練和測試條件必須一致。因此為了快速學習,每一個類別只訓練很少的樣例,不斷選擇新的minibatch,。 。 。
// Matching Networks for One Shot Learning · Running Paper







總結
一個可微分的end2end的KNN網絡
重點在如何建模一個好的embedding函數(特徵提取函數)
f: , 基於set2set LSTM
g: , 基於bi-LSTM
// Matching Networks for one Shot Learning 阅读笔记 - feitianlzk的博客 - CSDN博客





給定一個query qtqt, 去固定的多個memory mimi中讀數據,獲得結果rtrt, 利用結果和查詢使用RNN得到新的查詢qt+1qt+1,多次迭代得到最終結果, 就得到了對整個set (memory block)的編碼
// Matching Networks for one Shot Learning 阅读笔记 --洋辣椒


-----

Paper

◎ 過去:

[#2] seq2seq attention
Bahdanau, Dzmitry, Kyunghyun Cho, and Yoshua Bengio. "Neural machine translation by jointly learning to align and translate." arXiv preprint arXiv:1409.0473 (2014).
https://arxiv.org/pdf/1409.0473.pdf

[#29] memory networks
J Weston, S Chopra, and A Bordes. Memory networks. ICLR, 2014.
https://arxiv.org/abs/1410.3916

Sukhbaatar, Sainbayar, Jason Weston, and Rob Fergus. "End-to-end memory networks." Advances in neural information processing systems. 2015.
https://papers.nips.cc/paper/5846-end-to-end-memory-networks.pdf

[#27] pointer networks
Vinyals, Oriol, Meire Fortunato, and Navdeep Jaitly. "Pointer networks." Advances in Neural Information Processing Systems. 2015.
http://papers.nips.cc/paper/5866-pointer-networks.pdf

[#26] set2set
Vinyals, Oriol, Samy Bengio, and Manjunath Kudlur. "Order matters: Sequence to sequence for sets." arXiv preprint arXiv:1511.06391 (2015).
https://arxiv.org/pdf/1511.06391.pdf

[#23] seq2seq
Sutskever, Ilya, Oriol Vinyals, and Quoc V. Le. "Sequence to sequence learning with neural networks." Advances in neural information processing systems. 2014.
http://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf
 
◎ 未來:

# low data drug discovery
Altae-Tran, Han, et al. "Low data drug discovery with one-shot learning." ACS central science 3.4 (2017): 283-293.
https://pdfs.semanticscholar.org/4e1f/35169edb0debd734e7e5834b5672ca7911e1.pdf

-----

References

[1] one shot
Vinyals, Oriol, et al. "Matching networks for one shot learning." Advances in Neural Information Processing Systems. 2016.
http://papers.nips.cc/paper/6385-matching-networks-for-one-shot-learning.pdf

Reviews  Matching Networks for One Shot Learning
https://media.nips.cc/nipsbooks/nipspapers/paper_files/nips29/reviews/1804.html

paper-notes_matching_networks.md at master · karpathy_paper-notes · GitHub
https://github.com/karpathy/paper-notes/blob/master/matching_networks.md

Matching networks for one shot learning _ the morning paper
https://blog.acolyer.org/2017/01/03/matching-networks-for-one-shot-learning/

Matching networks for one shot learning
https://www.slideshare.net/KazukiFujikawa/matching-networks-for-one-shot-learning-71257100

Memory Matching Networks for Genomic Sequence Classification · deepchrome.org_
https://qdata.github.io/deep4biomed-web//2017/06/12/Genome-MeMo/ 

Matching Networks for One Shot Learning
https://vitalab.github.io/deep-learning/2018/01/24/MatchingNet.html

GitHub - BoyuanJiang_matching-networks-pytorch  Matching Networks for one shot learning
https://github.com/BoyuanJiang/matching-networks-pytorch





Matching Networks for one-shot learning _ 陈先森的搬砖台
http://chenpeng.online/2018/03/10/Matching-Networks-for-one-shot-learning/ 

论文笔记:Matching Networks for One Shot Learning - 知乎
https://zhuanlan.zhihu.com/p/32101204

Matching Networks for One Shot Learning · Running Paper
https://chao1224.gitbooks.io/running-paper/content/arxiv/arxiv2016/matching_networks_for_one_shot_learning.html

Matching Networks for one Shot Learning 阅读笔记 - feitianlzk的博客 - CSDN博客
https://blog.csdn.net/feitianlzk/article/details/79455317

Matching Networks for one Shot Learning 阅读笔记 --洋辣椒
http://www.yanglajiao.com/article/feitianlzk/79455317



優拓 Paper Note ep.21  Few-Shot Learning (Part III) – YOCTOL
https://blog.yoctol.com/%E5%84%AA%E6%8B%93-paper-note-ep-19-few-shot-learning-c13e5a1a4af6




navisphere.net » Blog Archive » Matching Networks for One Shot Learning
http://www.navisphere.net/6014/matching-networks-for-one-shot-learning/

AI隨筆(七):NLP 與中醫

AI隨筆(七):NLP 與中醫

2018/02/03

前言:


一、NLP
二、Word2vec
三、RNN / Sequence-to-Sequence Model
四、Neural Turing Machine
五、One Shot Deep Learning

-----

一、NLP

NLP 簡介

一文道盡 NLP。本文回顧了 NLP 在深度學習領域上的發展,雖然沒有提到 seq2seq,但從 word2vec 的 CBOW 與 skip-gram、attention、到較新的 NLG 都有簡單介紹,是瞭解 NLP 各領域很棒的入門文章。
// NLP深度学习:近期趋势的总体概述 - 知乎

「综上所述,因此,尽管在基准数据集上表现良好,但在理解新的、从未见过的自然语言文本时,现代NLP技术在语言理解和推理方面还远不及人类。」 以上的意思是:在資料集上即使表現不錯,實際上還是沒有很好。
// NAACL研讨会深思:NLP泛化模型背后的虚假和脆弱



中醫同義詞

「词嵌入是一种基于分布假设(出现 在类似语境中具有相似含义的词)的分布向量,它的作用是把一个维 数为所有词的数量的高维空间嵌入 到一个维数低得多的连续向量空间 中。通常情况下,词嵌入会在任务上进行预训练,用浅层神经网络基于上下文预测单词。」
// NLP深度学习:近期趋势的总体概述 - 知乎

這一篇之前寄過一次,今天重新閱讀後,發現要做同義詞,可以用 word2vec。 簡單說,當大型語料庫進行 word2vec 後,類似意義的字,在向量空間上,距離會很接近。 以目前的醫案整理,跑一下 word2vec 的套件後,同義詞研究就算啟動了。

既然要實作 word2vec,那可以準備 gpu 了!

兩年前有聽過阿里雲的 gpu 相對其他業者便宜很多。另外聽說最近二手礦卡也跌價很多。

請大家自行搜尋 同義詞 word2vec 資料一堆,超多。還有很多現成的工具包。


-----

這邊簡單回應一下之前 one shot NTM 的提問。

附件有三大類的論文與此有關。

One shot 類裡面的 matching networks 用到兩類論文,NTM 這類衍伸出 memory networks 與 pointer networks, 概念上主要是有一個外部的記憶網路。seq2seq 這類衍伸出 neural machine translation 與 set2set, 概念上主要是 attention 機制。在 NMT 這篇裡有較詳細的介紹。

而 matching networks 導出 drug 那篇。


-----

Note.

一些大陸號稱做中醫智能處方的公司,包括上海大家中醫,上海金燈檯,北京中醫智庫,南京大經中醫,上海道生,烏鎮國醫雲腦,北京弘道智慧中醫,上海諾道,微醫懸乎台,漢雲益生。若有時間,可以調研一下他們的招聘信息,看看他們的技術路線。

-----

References

[1] Deep Learning Papers Reading Roadmap
https://github.com/songrotek/Deep-Learning-Papers-Reading-Roadmap/blob/master/README.md

一、NLP

[2] Neural Probabilistic Language Model

Bengio, Yoshua, et al. "A neural probabilistic language model." Journal of machine learning research 3.Feb (2003): 1137-1155.
http://www.jmlr.org/papers/volume3/bengio03a/bengio03a.pdf

-----

二、word2vec

[3] Word2vec
Le, Quoc, and Tomas Mikolov. "Distributed representations of sentences and documents." International Conference on Machine Learning. 2014.
http://proceedings.mlr.press/v32/le14.pdf

[4] Hierarchical Softmax and Negative Sampling
Mikolov, Tomas, et al. "Efficient estimation of word representations in vector space." arXiv preprint arXiv:1301.3781 (2013).
https://arxiv.org/pdf/1301.3781.pdf

[5] Medical Synonym
Wang, Chang, Liangliang Cao, and Bowen Zhou. "Medical synonym extraction with concept space models." arXiv preprint arXiv:1506.00528 (2015).
https://www.ijcai.org/Proceedings/15/Papers/144.pdf

-----

三、RNN / Sequence-to-Sequence Model

[6] Generating Sequences
Graves, Alex. "Generating sequences with recurrent neural networks." arXiv preprint arXiv:1308.0850 (2013).
https://arxiv.org/pdf/1308.0850.pdf

[7] RNN Encoder-Decoder
Cho, Kyunghyun, et al. "Learning phrase representations using RNN encoder-decoder for statistical machine translation." arXiv preprint arXiv:1406.1078 (2014).
https://arxiv.org/pdf/1406.1078.pdf

[8] Seq2seq
Sutskever, Ilya, Oriol Vinyals, and Quoc V. Le. "Sequence to sequence learning with neural networks." Advances in neural information processing systems. 2014.
http://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf 

[9] Attention
Bahdanau, Dzmitry, Kyunghyun Cho, and Yoshua Bengio. "Neural machine translation by jointly learning to align and translate." arXiv preprint arXiv:1409.0473 (2014).
https://arxiv.org/pdf/1409.0473.pdf

[10] Effective Attention
Luong, Minh-Thang, Hieu Pham, and Christopher D. Manning. "Effective approaches to attention-based neural machine translation." arXiv preprint arXiv:1508.04025 (2015).
https://arxiv.org/pdf/1508.04025.pdf 

[11] Seq2seq on Chatbot
Vinyals, Oriol, and Quoc Le. "A neural conversational model." arXiv preprint arXiv:1506.05869 (2015).
https://arxiv.org/pdf/1506.05869.pdf

[12] Set2set
Vinyals, Oriol, Samy Bengio, and Manjunath Kudlur. "Order matters: Sequence to sequence for sets." arXiv preprint arXiv:1511.06391 (2015).
https://arxiv.org/pdf/1511.06391.pdf

[13] Covolutional Seq2seq
Gehring, Jonas, et al. "Convolutional sequence to sequence learning." arXiv preprint arXiv:1705.03122 (2017).
https://arxiv.org/pdf/1705.03122.pdf

[14] Key-Value Memory Networks
Miller, Alexander, et al. "Key-value memory networks for directly reading documents." arXiv preprint arXiv:1606.03126 (2016).
https://arxiv.org/pdf/1606.03126.pdf 

[15] Self Attention
Vaswani, Ashish, et al. "Attention is all you need." Advances in Neural Information Processing Systems. 2017.
https://papers.nips.cc/paper/7181-attention-is-all-you-need.pdf

[16] ATrank
Zhou, Chang, et al. "ATRank: An Attention-Based User Behavior Modeling Framework for Recommendation." arXiv preprint arXiv:1711.06632 (2017).
https://arxiv.org/pdf/1711.06632.pdf

[17] Universal Transformers
Dehghani, Mostafa, et al. "Universal transformers." arXiv preprint arXiv:1807.03819 (2018).
https://arxiv.org/pdf/1807.03819.pdf

[18] Visual Attention
Xu, Kelvin, et al. "Show, attend and tell: Neural image caption generation with visual attention." International conference on machine learning. 2015.
http://proceedings.mlr.press/v37/xuc15.pdf

[19] Generating TCM Prescription
Li, Wei, Zheng Yang, and Xu Sun. "Exploration on Generating Traditional Chinese Medicine Prescription from Symptoms with an End-to-End method." arXiv preprint arXiv:1801.09030 (2018).
https://arxiv.org/pdf/1801.09030.pdf

-----

四、Neural Turing Machine

[20] NTM
Graves, Alex, Greg Wayne, and Ivo Danihelka. "Neural turing machines." arXiv preprint arXiv:1410.5401 (2014).
https://arxiv.org/pdf/1410.5401.pdf

[21] RL NTM
Zaremba, Wojciech, and Ilya Sutskever. "Reinforcement learning neural turing machines-revised." arXiv preprint arXiv:1505.00521 (2015).
https://arxiv.org/pdf/1505.00521.pdf

[22] Memory Networks
J Weston, S Chopra, and A Bordes. Memory networks. ICLR, 2014.
https://arxiv.org/abs/1410.3916

[23] End-to-end Memory Networks
Sukhbaatar, Sainbayar, Jason Weston, and Rob Fergus. "End-to-end memory networks." Advances in neural information processing systems. 2015.
https://papers.nips.cc/paper/5846-end-to-end-memory-networks.pdf

[24] Pointer Networks
Vinyals, Oriol, Meire Fortunato, and Navdeep Jaitly. "Pointer networks." Advances in Neural Information Processing Systems. 2015.
http://papers.nips.cc/paper/5866-pointer-networks.pdf

[25] Hybrid Computing
Graves, Alex, et al. "Hybrid computing using a neural network with dynamic external memory." Nature 538.7626 (2016): 471.
https://campus.swarma.org/public/ueditor/php/upload/file/20170609/1497019302822809.pdf

[26] Implementing NTM
Collier, Mark, and Joeran Beel. "Implementing Neural Turing Machines." International Conference on Artificial Neural Networks. Springer, Cham, 2018.
https://arxiv.org/pdf/1807.08518.pdf

-----

五、One Shot Deep Learning

[27] Human-level Concept Learning
Lake, Brenden M., Ruslan Salakhutdinov, and Joshua B. Tenenbaum. "Human-level concept learning through probabilistic program induction." Science 350.6266 (2015): 1332-1338.
http://www.jiqizhixin.com/wp-content/uploads/2015/12/Human-level-concept-learning-through-probabilistic-program-induction.pdf 

[28] Siamese Neural Networks
Koch, Gregory, Richard Zemel, and Ruslan Salakhutdinov. "Siamese neural networks for one-shot image recognition." ICML Deep Learning Workshop. Vol. 2. 2015.
v1 http://www.cs.toronto.edu/~rsalakhu/papers/oneshot1.pdf
v2 http://www.cs.utoronto.ca/~gkoch/files/msc-thesis.pdf

[29] MANN
Santoro, Adam, et al. "One-shot learning with memory-augmented neural networks." arXiv preprint arXiv:1605.06065 (2016).
https://arxiv.org/pdf/1605.06065.pdf

[30] Matching Networks
Vinyals, Oriol, et al. "Matching networks for one shot learning." Advances in Neural Information Processing Systems. 2016.
http://papers.nips.cc/paper/6385-matching-networks-for-one-shot-learning.pdf

[31] Low Shot
Hariharan, Bharath, and Ross B. Girshick. "Low-Shot Visual Recognition by Shrinking and Hallucinating Features." ICCV. 2017.
http://openaccess.thecvf.com/content_ICCV_2017/papers/Hariharan_Low-Shot_Visual_Recognition_ICCV_2017_paper.pdf

[32] Low Data Drug Discovery
Altae-Tran, Han, et al. "Low data drug discovery with one-shot learning." ACS central science 3.4 (2017): 283-293.
https://pdfs.semanticscholar.org/4e1f/35169edb0debd734e7e5834b5672ca7911e1.pdf

-----

[33] AI從頭學(目錄)
https://hemingwang.blogspot.com/2016/12/ai_20.html

一、NLP

[34] 自然語言處理 (NLP):斷開中文的鎖鍊!
http://research.sinica.edu.tw/nlp-natural-language-processing-chinese-knowledge-information/

[35] 人工智能與自然語言處理概述:AI三大階段、NLP關鍵應用領域 _ 香港矽谷
https://www.hksilicon.com/articles/1331021
 
[36] 從ACL 2017 看到四個在自然語言處理(NLP)的趨勢 – Youngmi huang – Medium
https://medium.com/@cyeninesky3/%E5%BE%9Eacl-2017-%E7%9C%8B%E5%88%B0%E5%9B%9B%E5%80%8B%E5%9C%A8%E8%87%AA%E7%84%B6%E8%AA%9E%E8%A8%80%E8%99%95%E7%90%86-nlp-%E7%9A%84%E8%B6%A8%E5%8B%A2-3163c6a91c50

[37] 孔晓泉:自然语言处理应用和前沿技术回顾 _ 分享总结 _ 雷锋网
https://www.leiphone.com/news/201805/m4QP4rGNEY0APWJD.html

[38] 如何用深度学习做自然语言处理?这里有份最佳实践清单 _ 机器之心
https://www.jiqizhixin.com/articles/2017-07-26-5

[39] NLP深度学习:近期趋势的总体概述 - 知乎
https://zhuanlan.zhihu.com/p/45294726

[40] NAACL研讨会深思:NLP泛化模型背后的虚假和脆弱
https://mp.weixin.qq.com/s?__biz=MzI3ODkxODU3Mg==&mid=2247487139&idx=1&sn=e48f72cd6a7229c688e090b478ed86c1&chksm=eb4eea60dc3963764f48e6536ff3eab33a8b3c999f252c17e4238c4827d4f3c51ced358e119a&token=669154493&lang=zh_CN#rd

-----

二、Word2vec

[41] 自然語言處理入門- Word2vec小實作 – PyLadies Taiwan – Medium
https://medium.com/pyladies-taiwan/%E8%87%AA%E7%84%B6%E8%AA%9E%E8%A8%80%E8%99%95%E7%90%86%E5%85%A5%E9%96%80-word2vec%E5%B0%8F%E5%AF%A6%E4%BD%9C-f8832d9677c8

[42] 使用中文wiki语料库训练word2vec - zhyongwei的博客 - CSDN博客
https://blog.csdn.net/zhyongwei/article/details/79597894

[43] Synonyms,一个开源的中文近义词工具包 _ 机器之心
https://www.jiqizhixin.com/articles/2018-01-14-3

[44] GitHub - huyingxi_Synonyms  中文近义词工具包
https://github.com/huyingxi/Synonyms

[45] 阿里云使用笔记(一):从零开始配置阿里云GPU服务器训练深度学习模型 - Lo_Bamboo的博客 - CSDN博客
https://blog.csdn.net/Lo_Bamboo/article/details/78601328

[46] 中文近義詞的偵測與判別
http://aclweb.org/anthology/O16-1030 

[47] 命名實體識別運用於產品同義詞擴增
http://aclweb.org/anthology/O16-1025
  
-----

三、RNN / Sequence-to-Sequence Model

# seq2seq、attention
[48] Seq2seq pay Attention to Self Attention  Part 1(中文版)
https://medium.com/@bgg/seq2seq-pay-attention-to-self-attention-part-1-%E4%B8%AD%E6%96%87%E7%89%88-2714bbd92727

# self attention
[49] Attention Is All You Need:基於注意力機制的機器翻譯模型 – Youngmi huang – Medium
https://medium.com/@cyeninesky3/attention-is-all-you-need-%E5%9F%BA%E6%96%BC%E6%B3%A8%E6%84%8F%E5%8A%9B%E6%A9%9F%E5%88%B6%E7%9A%84%E6%A9%9F%E5%99%A8%E7%BF%BB%E8%AD%AF%E6%A8%A1%E5%9E%8B-dcc12d251449 

# self attention 
[50] Seq2seq pay Attention to Self Attention  Part 2(中文版)
https://medium.com/@bgg/seq2seq-pay-attention-to-self-attention-part-2-%E4%B8%AD%E6%96%87%E7%89%88-ef2ddf8597a4

[51] 谷歌Transformer模型再进化,「图灵完备」版已上线 - 博客园新闻手机版
https://news.cnblogs.com/m/n/604906

[52] 国内学者新研究:中医AI登场,自动开出药方_36氪
https://36kr.com/p/5120778.html

[53] GitHub - lancopku_tcm_prescription_generation
https://github.com/lancopku/tcm_prescription_generation

-----

四、Neural Turing Machine

[54] 類神經網路 -- Neural Turing Machine « MARK CHANG'S BLOG
http://cpmarkchang.logdown.com/posts/279710-neural-network-neural-turing-machine

-----

五、One Shot Deep Learning

[55] 深度學習的新方向 One-shot learning - George's Research Website
http://tzuching1.weebly.com/blog/-one-shot-learning

[56] Matching Networks for one-shot learning _ 陈先森的搬砖台
http://chenpeng.online/2018/03/10/Matching-Networks-for-one-shot-learning/

AI Seminar:Kaggle RNN

AI Seminar:Kaggle RNN

2017/12/19

施工中...

前言:

-----

Summary:

本篇討論的文章 [1] 最早是在 GPU Taiwan Facebook 看到。其中使用 GRU 而非 LSTM 引起我的好奇,因為 GRU 雖然號稱是 LSTM 的改進 [2],但近年看到的論文其實還是以 LSTM 居多。於是轉貼到 台灣「人工智慧」社團 尋求討論 [3]。由討論中得知,這兩者的差異其實不大 [3]-[5]。

無論如何,討論中出現了 seq2seq 與  attention,屬於常見但我卻沒有進一步研究的主題。因此我先查了 attention [6]-[8], [10],再補上 seq2seq [6], [9], [10],以便閱讀 [1]。

[11] 是有關 RNN 較詳細的翻譯文章。

-----



Fig. 1. Encoder and Decoder [1].

-----

Outline

一、動機
二、LSTM and GRU
三、seq2seq
四、attention

-----

一、動機

「最近在 Kaggle 上有一場關於網絡流量預測的比賽落下帷幕,比賽的目標是預測 14 萬多篇維基百科的未來網絡流量。 來自莫斯科的 Arthur Suilin 在這場比賽中奪冠, 他在 github 上分享了自己的模型。」[1]

這篇文章引起我的注意,點進去瀏覽後發現他的 RNN 用的是 GRU。之前我研究過 LSTM 與 GRU [2],但實際上我看到較新的論文,使用 LSTM 還是佔多數(幾乎全部,除了這一篇)。於是我到台灣「人工智慧」社團去請教同好。

請教一個問題:GRU 可說是 LSTM 的改進(演化)。然而近年的論文用到的 RNN 還是以 LSTM 居多。這篇又使用了 GRU(參考圖1),讓我有點好奇 [3]?

-----

二、LSTM and GRU

有關 LSTM 與 GRU 效能上的差異,由下列討論可得知差異並不大。當然,結構上,GRU 是簡單一點。

郭宗賢:Marcel 兄,GRU 比LSTM 晚, 是進化版 ,, 不過主要是參數減少的進化, (LSTM 有點 redundant ) 。。之前有一篇論文比較過,LSTM vs GRU 的準確度差不多。在 cs224n,2位教授針對誰比較好也有課堂上 1分鐘舌戰,(Manning vs Richard) 年輕的 Richard Socher 說 參數比較少, 準確率差不多,當然比較好。。。Manning 說: 我完全無法同意。。。。( 2位都是彬彬有禮的君子。。 )以上, 個人淺見。[3]

Marcel Wang:「We confirmed that the LSTM seems to be a better default choice for language modeling than the GRU.」[4]

郭宗賢: 我記得 google 有一篇 language translation 也有這樣的結論,,,(經過不可思議的 GPU hours 的訓練..)。這裡有一篇, 比較各式 LSTM 變形的 performance (figure 3)。[5]

-----

三、seq2seq

「目前解決對話問題的方法是基於檢索式的和基於生成式的兩種。生成式方法大多使用的是 seq2seq 的模型框架,即將對話的上下文看作兩個序列,通過對上文序列進行編碼,再解碼出下文。藉助於 GAN 和 VAE 等生成式模型的研究,有學者將其應用於對話系統,也取得了很好的效果。 」[6]

-----


Fig. 2. seq2seq [6].

-----

「要注意的是,seq2seq 模型中的解碼器在訓練和預測階段不太一樣。在訓練階段,我們同時使用對話的上下文,decoder 每個時刻的輸入都是我們給定的下文,利用每個時刻的輸出與給定下文的不同來計算損失(loss),再用反向傳播的方法對模型進行訓練。」[6]

上面這段話,基本上是沒有問題的。參考圖2,左邊是 encoder,右邊是 decoder,訓練階段可以用 CNN 的概念類推。CNN 的輸入是圖片,輸出是 tag。RNN 的輸入是對話的上文,輸出是對話的下文。

「但在預測階段,我們希望給出上文讓模型來生成下文,所以 decoder 每個時刻的輸入都是它自身上個時刻的輸出(除了第一個開始標識符)。」[6]

這段話則不容易看懂。???

-----

四、attention

郭宗賢:btw,看了一下文章, Arthur 是用 GRU + Attention, (常用在NLP...) 還用了 Time series autocorrelation 模型當作 feature ...佩服啊!!! [1]

Marcel Wang:「這裏十分推薦關於 Attention Mechanism 的兩大經典論文,即 Bahdanau Attention 和Luong Attention」 [6]-[8]。

-----


Fig. 3.  Bahdanau Attention [6].

-----


-----

結論:



-----

References

[1] Kaggle比賽冠軍經驗分享:如何用 RNN 預測維基百科網絡流量 - 掃文資訊
https://hk.saowen.com/a/f1c61f563ab09ee6bcd2715997fe9183b0b1f3dac8ea4060dc3e99bfdc5ff28c

◎ LSTM and GRU

[2] AI從頭學(一九):Recurrent Neural Network
http://hemingwang.blogspot.tw/2017/03/airecurrent-neural-network.html

[3] 請教一個問題:
https://www.facebook.com/groups/Taiwan.AI.Group/permalink/1944977135824718/

[4] Irie, Kazuki, et al. LSTM, GRU, highway and a bit of attention: an empirical overview for language modeling in speech recognition. RWTH Aachen University Aachen Germany, 2016.
https://www-i6.informatik.rwth-aachen.de/publications/download/1006/Irie--2016.pdf

[5] Greff, Klaus, et al. "LSTM: A search space odyssey." IEEE transactions on neural networks and learning systems (2017).
https://arxiv.org/pdf/1503.04069.pdf?utm_content=buffereddc5&utm_medium=social&utm_source=plus.google.com&utm_campaign=buffer

◎ attention

[6] Neural Response Generation——关于回复生成工作的一些总结
https://zhuanlan.zhihu.com/p/30533380

[7] Bahdanau, Dzmitry, Kyunghyun Cho, and Yoshua Bengio. "Neural machine translation by jointly learning to align and translate." arXiv preprint arXiv:1409.0473 (2014).
https://arxiv.org/pdf/1409.0473.pdf

[8] Luong, Minh-Thang, Hieu Pham, and Christopher D. Manning. "Effective approaches to attention-based neural machine translation." arXiv preprint arXiv:1508.04025 (2015).
https://arxiv.org/pdf/1508.04025.pdf

◎ seq2seq

[9] seq2seq学习笔记 - CSDN博客
http://blog.csdn.net/Jerr__y/article/details/53749693

[10] 完全图解RNN、RNN变体、Seq2Seq、Attention机制
https://zhuanlan.zhihu.com/p/28054589 

[11] RNN 循环神经网络系列
https://github.com/xitu/gold-miner/blob/master/TODO/recurrent-neural-networks-rnn-part-1-basic-rnn-char-rnn.md

AI Seminar:Siamese Neural Networks

AI Seminar:Siamese Neural Networks

Siamese neural networks for one-shot image recognition

2018/12/03

-----

References

[1]
Koch, Gregory, Richard Zemel, and Ruslan Salakhutdinov. "Siamese neural networks for one-shot image recognition." ICML Deep Learning Workshop. Vol. 2. 2015. 
http://www.cs.toronto.edu/~rsalakhu/papers/oneshot1.pdf
http://www.cs.utoronto.ca/~gkoch/files/msc-thesis.pdf 

One Shot Learning and Siamese Networks in Keras – Neural Tinkering
https://sorenbouma.github.io/blog/oneshot/ 

Siamese Neural Network for One-shot Image recognition-Paper Analysis
https://medium.com/@subham.tiwari186/siamese-neural-network-for-one-shot-image-recognition-paper-analysis-44cf7f0c66cb

爬山(五):清交後山

爬山(五):清交後山

2018/12/02

-----


-----

清大相思湖。

爬山(四):清交後山

爬山(四):清交後山

2018/12/01

-----


-----

清大壘球場。

爬山(三):十八尖山

爬山(三):十八尖山

2018/11/29

-----


 -----

前門。

AI Seminar:Word2vec

AI Seminar:Word2vec

Distributed representations of sentences and documents

2018/11/26

-----

References

[1] Neural Probabilistic Language Model

Bengio, Yoshua, et al. "A neural probabilistic language model." Journal of machine learning research 3.Feb (2003): 1137-1155.
http://www.jmlr.org/papers/volume3/bengio03a/bengio03a.pdf

[2] Word2vec
Le, Quoc, and Tomas Mikolov. "Distributed representations of sentences and documents." International Conference on Machine Learning. 2014.
http://proceedings.mlr.press/v32/le14.pdf

[3] Hierarchical Softmax and Negative Sampling
Mikolov, Tomas, et al. "Efficient estimation of word representations in vector space." arXiv preprint arXiv:1301.3781 (2013).
https://arxiv.org/pdf/1301.3781.pdf

[4] Linguistic Regularity
Mikolov, Tomas, Wen-tau Yih, and Geoffrey Zweig. "Linguistic regularities in continuous space word representations." Proceedings of the 2013 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. 2013.
http://www.aclweb.org/anthology/N13-1090

[5]  Word2vec Explained
Goldberg, Yoav, and Omer Levy. "word2vec Explained: deriving Mikolov et al.'s negative-sampling word-embedding method." arXiv preprint arXiv:1402.3722 (2014).
https://arxiv.org/pdf/1402.3722.pdf

[6] Word2vec Parameters
Rong, Xin. "word2vec parameter learning explained." arXiv preprint arXiv:1411.2738 (2014).
https://arxiv.org/pdf/1411.2738.pdf

[7] GloVe
Pennington, Jeffrey, Richard Socher, and Christopher Manning. "Glove: Global vectors for word representation." Proceedings of the 2014 conference on empirical methods in natural language processing (EMNLP). 2014.
http://www.aclweb.org/anthology/D14-1162

[8]
来斯惟. "基于神经网络的词和文档语义向量表示方法研究." (2016).
https://arxiv.org/ftp/arxiv/papers/1611/1611.05962.pdf

-----

Word2vec - Wikipedia
https://en.wikipedia.org/wiki/Word2vec

The amazing power of word vectors | the morning paper
https://blog.acolyer.org/2016/04/21/the-amazing-power-of-word-vectors/
 
Intuitive Understanding of Word Embeddings: Count Vectors to Word2Vec
https://www.analyticsvidhya.com/blog/2017/06/word-embeddings-count-word2veec/

Introduction to Word Embedding and Word2Vec – Towards Data Science
https://towardsdatascience.com/introduction-to-word-embedding-and-word2vec-652d0c2060fa
 
Deep Learning Weekly | Demystifying Word2Vec
https://www.deeplearningweekly.com/blog/demystifying-word2vec

Deep Learning, NLP, and Representations - colah's blog
http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/

-----

Word2Vec Tutorial - The Skip-Gram Model · Chris McCormick
http://mccormickml.com/2016/04/19/word2vec-tutorial-the-skip-gram-model/

Learn TensorFlow, the Word2Vec model, and the TSNE algorithm using rock bands
https://medium.freecodecamp.org/learn-tensorflow-the-word2vec-model-and-the-tsne-algorithm-using-rock-bands-97c99b5dcb3a

Vector Representations of Words  |  TensorFlow
https://www.tensorflow.org/tutorials/word2vec

Learn Word2Vec by implementing it in tensorflow – Towards Data Science
https://towardsdatascience.com/learn-word2vec-by-implementing-it-in-tensorflow-45641adaf2ac

Word2Vec word embedding tutorial in Python and TensorFlow - Adventures in Machine Learning
http://adventuresinmachinelearning.com/word2vec-tutorial-tensorflow/

Implementing word2vec in PyTorch (skip-gram model) – Towards Data Science
https://towardsdatascience.com/implementing-word2vec-in-pytorch-skip-gram-model-e6bae040d2fb

Word2Vec in Deeplearning4j _ Deeplearning4j
https://deeplearning4j.org/docs/latest/deeplearning4j-nlp-word2vec

gensim: models.word2vec – Deep learning with word2vec
https://radimrehurek.com/gensim/models/word2vec.html

Approximating the Softmax for Learning Word Embeddings
http://ruder.io/word-embeddings-softmax/

-----

Applying word2vec to Recommenders and Advertising · Chris McCormick
http://mccormickml.com/2018/06/15/applying-word2vec-to-recommenders-and-advertising/

Stop Using word2vec | Stitch Fix Technology – Multithreaded
https://multithreaded.stitchfix.com/blog/2017/10/18/stop-using-word2vec/

-----

Word2vec - 維基百科,自由的百科全書
https://zh.wikipedia.org/zh-tw/Word2vec

科技大擂台 詞向量介紹
https://fgc.stpi.narl.org.tw/activity/videoDetail/4b1141305ddf5522015de5479f4701b1

自然語言處理入門- Word2vec小實作 – PyLadies Taiwan – Medium
https://medium.com/pyladies-taiwan/%E8%87%AA%E7%84%B6%E8%AA%9E%E8%A8%80%E8%99%95%E7%90%86%E5%85%A5%E9%96%80-word2vec%E5%B0%8F%E5%AF%A6%E4%BD%9C-f8832d9677c8

Vector Space of Semantics - Mark Chang's Blog
https://ckmarkoh.github.io/blog/2016/07/10/nlp-vector-space-semantics/

Word2vec (Part 1   Overview) - Mark Chang's Blog
https://ckmarkoh.github.io/blog/2016/07/12/neural-network-word2vec-part-1-overview/

Word2vec (Part 2   Backward Propagation) - Mark Chang's Blog
https://ckmarkoh.github.io/blog/2016/07/12/-word2vec-neural-networks-part-2-backward-propagation/

Word2vec (Part 3   Implementation) - Mark Chang's Blog
https://ckmarkoh.github.io/blog/2016/08/29/neural-network-word2vec-part-3-implementation/

奇異值分解 (SVD) | 線代啟示錄
https://ccjou.wordpress.com/2009/09/01/奇異值分解-svd/

word2vec 中的数学原理详解(一)目录和前言 - peghoty - CSDN博客
https://blog.csdn.net/itplus/article/details/37969519

[NLP] 秒懂词向量Word2vec的本质 - 知乎
https://zhuanlan.zhihu.com/p/26306795

AI Seminar:Seq2seq

AI Seminar:Seq2seq

Sequence to sequence learning with neural networks

2018/11/27

-----


Fig. 1. seq2seq [1].

-----

RNN
word2vec
seq2seq
attention
self-attention

-----

word2vec

「2013年,Mikolav 等人提出 CBOW 和 skip-gram 模型,這是 Word2Vec 模型中的兩個主要類別。其中,CBOW 模型是一種構建詞嵌入的神經方法,它的目標是基於給定上下文和給定窗口大小,預測目標單詞(input word)的條件概率。同樣的,skip-gram 模型也是一種構建詞嵌入的神經方法,但不同的是,它的目標是在給定中心目標單詞的情況下,預測上下文。」
// NLP深度学习:近期趋势的总体概述 - 知乎

-----

「輸入一句英文,輸出一句法文,就寫好了一個翻譯系統。
輸入一個問題,輸出一句回覆,就架好一個聊天機器人。
輸入一篇文章,輸出一份總結,就構成一個摘要系統。
輸入幾個關鍵字,輸出一首短詩,就成就了一名詩人。」
// 從零開始的 Sequence to Sequence _ 雷德麥的藏書閣

Sequence to Sequence 是由 Encoder 與 Decoder 兩個 RNN 構成,它的運作原理其實與人類的思維很相似,當我們看到一段話時,會先將這句話理解吸收,再根據我們理解的內容說出回覆,Sequence to Sequence 就是在模擬這個過程。
// 從零開始的 Sequence to Sequence _ 雷德麥的藏書閣

而Seq2seq靈活的架構,也讓這個模型被廣泛地應用到各種不同的任務上:例如ChatBot、Google Inbox的Auto-Reply。只要你有一個配對好的文本集(問與答、信件與回覆、圖片與描述),就可以把資料餵進模型裡訓練產生一個seq2seq系統。
// 教電腦寫作:AI球評——Seq2seq模型應用筆記(PyTorch + Python3) – Yi-Hsiang Kao – Medium

要知道,在以往的很多模型中,我們一般都說輸入特徵矩陣,每個樣本對應矩陣中的某一行,就是說,無論是第一個樣本還是最後一個樣本,他們都有一樣的特徵維度。但是對於翻譯這種例子,難道我們要讓每一句話都有一樣的字數嗎,那樣的話估計五言律詩和七言絕句又能大火一把了,哈哈。但是這不科學呀,所以就有了 seq2seq 這種結構。
// seq2seq学习笔记 - 大学之道,在明明德 - CSDN博客

現在我們具備RNN/LSTM的知識,可以發現Seq2seq中,Decoder的公式和RNN根本就是同一個模子出來的,差別在於Decoder多了一個C — 圖(6),這個C是指context vector/thought vector。context vector 可以想成是一個含有所有輸入句訊息的向量,也就是Encoder當中,最後一個hidden state。簡單來說,Encoder將輸入句壓縮成固定長度的context vector,context vector即可完整表達輸入句,再透過Decoder 將context vector內的訊息產生輸出句,如圖7。
//

為什麼要用 attention model? The attention model 用來幫助解決機器翻譯在句子過長時效果不佳的問題。 這種新的架構替輸入句的每個文字都創造一個context vector,而非僅僅替輸入句創造一個從最終的hidden state得來的context vector,舉例來說,如果一個輸入句有N個文字,就會產生N個context vector,好處是,每個context vector能夠被更有效的解碼。
//


-----

References

[1] seq2seq
Sutskever, Ilya, Oriol Vinyals, and Quoc V. Le. "Sequence to sequence learning with neural networks." Advances in neural information processing systems. 2014.
http://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf

[2] Speech
Chiu, Chung-Cheng, et al. "State-of-the-art speech recognition with sequence-to-sequence models." 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2018.
https://arxiv.org/pdf/1712.01769.pdf

[3] NLP
Young, Tom, et al. "Recent trends in deep learning based natural language processing." ieee Computational intelligenCe magazine 13.3 (2018): 55-75.
https://arxiv.org/pdf/1708.02709.pdf

[4] NLP深度学习:近期趋势的总体概述 - 知乎
https://zhuanlan.zhihu.com/p/45294726

-----

# RNN (LSTM)

[5] Understanding LSTM Networks -- colah's blog
http://colah.github.io/posts/2015-08-Understanding-LSTMs/

[6] 深入淺出 Deep Learning(三):RNN (LSTM)
http://hemingwang.blogspot.com/2018/02/airnnlstmin-120-mins.html

[7] AI從頭學(一九):Recurrent Neural Network
http://hemingwang.blogspot.com/2017/03/airecurrent-neural-network.html

[8] The Unreasonable Effectiveness of Recurrent Neural Networks
http://karpathy.github.io/2015/05/21/rnn-effectiveness/

[9] The fall of RNN _ LSTM – Towards Data Science
https://towardsdatascience.com/the-fall-of-rnn-lstm-2d1594c74ce0

[10] Seq2seq pay Attention to Self Attention  Part 1(中文版)
https://medium.com/@bgg/seq2seq-pay-attention-to-self-attention-part-1-%E4%B8%AD%E6%96%87%E7%89%88-2714bbd92727

[11] Seq2seq pay Attention to Self Attention  Part 2(中文版)
https://medium.com/@bgg/seq2seq-pay-attention-to-self-attention-part-2-%E4%B8%AD%E6%96%87%E7%89%88-ef2ddf8597a4

[12] Attention Is All You Need:基於注意力機制的機器翻譯模型 – Youngmi huang – Medium
https://medium.com/@cyeninesky3/attention-is-all-you-need-%E5%9F%BA%E6%96%BC%E6%B3%A8%E6%84%8F%E5%8A%9B%E6%A9%9F%E5%88%B6%E7%9A%84%E6%A9%9F%E5%99%A8%E7%BF%BB%E8%AD%AF%E6%A8%A1%E5%9E%8B-dcc12d251449

-----

# 機器學習模型圖書館

[13] 24 Recurrent neural network - Dream Maker
https://yuehhua.github.io/2018/10/25/24-recurrent-neural-network-1/

[14] 25 Recurrent model 之死 - Dream Maker
https://yuehhua.github.io/2018/10/25/25-death-of-recurrent-model/

[15] 26 seq2seq model - Dream Maker
https://yuehhua.github.io/2018/10/26/26-sequence-to-sequence-model/

[16] 27 Attention model - Dream Maker 
https://yuehhua.github.io/2018/10/27/27-attention-model/ 

[17] 28 Transformer - Dream Maker
https://yuehhua.github.io/2018/10/28/28-transformer/

[18] 29 Autoregressive generative model - Dream Maker
https://yuehhua.github.io/2018/10/29/29-autoregressive-generative-model/

-----
 
[19] 從零開始的 Sequence to Sequence _ 雷德麥的藏書閣
http://zake7749.github.io/2017/09/28/Sequence-to-Sequence-tutorial/

[20] 教電腦寫作:AI球評——Seq2seq模型應用筆記(PyTorch + Python3) – Yi-Hsiang Kao – Medium
https://medium.com/@gau820827/%E6%95%99%E9%9B%BB%E8%85%A6%E5%AF%AB%E4%BD%9C-ai%E7%90%83%E8%A9%95-seq2seq%E6%A8%A1%E5%9E%8B%E6%87%89%E7%94%A8%E7%AD%86%E8%A8%98-pytorch-python3-31e853573dd0 

[21] Pytorch Seq2Seq 篇
https://fgc.stpi.narl.org.tw/activity/videoDetail/4b1141305df38a7c015e194f22f8015b

[22] seq2seq学习笔记 - 大学之道,在明明德 - CSDN博客
https://blog.csdn.net/Jerr__y/article/details/53749693

-----

[23] Seq2Seq – Long – Medium
https://medium.com/@Aj.Cheng/seq2seq-18a0730d1d77

[24] Seq2Seq model in TensorFlow – Towards Data Science
https://towardsdatascience.com/seq2seq-model-in-tensorflow-ec0c557e560f 

[25] A ten-minute introduction to sequence-to-sequence learning in Keras
https://blog.keras.io/a-ten-minute-introduction-to-sequence-to-sequence-learning-in-keras.html

[26] Translation with a Sequence to Sequence Network and Attention — PyTorch Tutorials 1.0.0.dev20181002 documentation
https://pytorch.org/tutorials/intermediate/seq2seq_translation_tutorial.html 

[27] Write a Sequence to Sequence (seq2seq) Model — Chainer 5.0.0 documentation
https://docs.chainer.org/en/stable/examples/seq2seq.html

AI Seminar:Attention

AI Seminar:Attention

Neural machine translation by jointly learning to align and translate

2018/11/26

-----

[1] seq2seq attention

Bahdanau, Dzmitry, Kyunghyun Cho, and Yoshua Bengio. "Neural machine translation by jointly learning to align and translate." arXiv preprint arXiv:1409.0473 (2014).
https://arxiv.org/pdf/1409.0473.pdf

AI Seminar:Self Attention

AI Seminar:Self Attention

Attention is all you need

2018/11/26


-----

References

[1] Self Attention
Vaswani, Ashish, et al. "Attention is all you need." Advances in Neural Information Processing Systems. 2017.
https://papers.nips.cc/paper/7181-attention-is-all-you-need.pdf

Attention is all you need _ 陈先森的搬砖台
http://chenpeng.online/2018/05/26/Attention-is-all-you-need/ 

論文解説 Attention Is All You Need (Transformer) - ディープラーニングブログ
http://deeplearning.hatenablog.com/entry/transformer

AI Seminar Member

AI Seminar Member

2018/11/26

台北

周君諦 https://www.facebook.com/judy.zhou.16

李維道 https://www.facebook.com/tui.si.1

劉兆鵬 https://www.facebook.com/gaupon.liu
AlexNet (LeNet)

林瑜浤 https://www.facebook.com/ohne.lin

李炫逸 https://www.facebook.com/shoc1204

林典群 https://www.facebook.com/lintienchun
LeNet (AlexNet)

新北


桃園


新竹

AI Seminar Taiwan

AI Seminar Taiwan

2018/11/23

本文張貼處:
https://www.facebook.com/groups/1930037950638003/permalink/1930101583964973/

-----

說明:

以經典深度學習論文研討為主。

報名後可以被加入聊天室。選舉社長一人、副社長二人後,聊天室內要有十個人以上願意輪流報告論文才會找地點舉辦實體的討論會,希望參加者能踴躍加入報告論文的行列。

目前以台灣、香港、新加坡等地為主。其餘地點,可在「其他」先填上居住城市,等人數一定(兩人以上)後, 再於社團內成立報名處。

「其他」
https://www.facebook.com/groups/1930037950638003/permalink/1930096320632166/

-----

底下有建議時間、地點,但還是以社團內的公告時間、地點為主。

原則上第一小時規劃為經典論文,第二小時規劃為進階主題,第三小時為自由討論!

-----



-----

台灣以外其他地區:

香港
https://www.facebook.com/groups/1930037950638003/permalink/1930067387301726/

新加坡
https://www.facebook.com/groups/1930037950638003/permalink/1930067603968371/

-----

台灣:

基隆(每週三晚間七點到十點)
https://www.facebook.com/groups/1930037950638003/permalink/1930039673971164/

台北(每週四晚間七點到十點)
https://www.facebook.com/groups/1930037950638003/permalink/1930040000637798/

新北(每週五晚間七點到十點)
https://www.facebook.com/groups/1930037950638003/permalink/1930040197304445/

桃園(每週三晚間七點到十點)
https://www.facebook.com/groups/1930037950638003/permalink/1930040387304426/

新竹(每週六下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930041120637686/

苗栗(每週五晚間七點到十點)
https://www.facebook.com/groups/1930037950638003/permalink/1930043417304123/

台中(每週日下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930044283970703/

彰化(每週五晚間七點到十點)
https://www.facebook.com/groups/1930037950638003/permalink/1930046787303786/

南投(每週六下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930047607303704/

雲林(每週六下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930048120636986/

嘉義(每週日下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930050140636784/

台南(每週六下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930050903970041/

高雄(每週日下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930051113970020/

屏東(每週六下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930051467303318/

宜蘭(每週六下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930052183969913/

花蓮(每週日下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930052393969892/

台東(每週六下午兩點到五點)
https://www.facebook.com/groups/1930037950638003/permalink/1930052630636535/

澎湖
https://www.facebook.com/groups/1930037950638003/permalink/1930067033968428/
 
-----

References

[1] AI從頭學(目錄)
http://hemingwang.blogspot.com/2016/12/ai_20.html

Saturday, December 01, 2018

AI隨筆(六):ADAS

AI隨筆(六):ADAS

Advanced Driver Assistance Systems

2018/02/03

前言:

本篇是年初時,跟某 ADAS 的 design house 討論之後的簡單筆記。

Summary:

關於先進駕駛輔助系統 Advanced Driver Assistance Systems(ADAS),其主要組成有三:1. 影像辨識技術、2. ADAS 晶片,與 3. 高精度地圖 [1]。

以影像辨識技術而言,近年來,深度學習的 R-CNN 系列已有很大的突破 [2]。主要的 ADAS 晶片供應商則有:高通/NXP、英特爾、瑞薩、英飛凌、德州儀器、NVIDIA、ADI、富士通、東芝、Xilinx [3]-[8]。另外,如果升級到自駕車等級,則導航地圖的精密度也要提升到厘米級才能保障乘坐者的安全 [9], [10]。目前學術界在 ADAS 上,則尚未看到整合深度學習的跡象 [11]-[14]。而在自駕車 [15] 正式進入社會之前,有部分深度學習功能的 ADAS,也許是個可行的過渡方案。

-----



Fig. 1. 大衛‧歐伯曼認為,他們在先進輔助駕駛系統技術耕耘已久,有助於進軍自動駕駛市場 [1]。

-----

Outline

一、影像辨識技術
二、ADAS 晶片
三、高精度地圖
四、ADAS 論文

-----

一、影像辨識技術

R-CNN 加上 RNN 可以處理影片裡的物件辨識 [2]。有助於 ADAS 從先進駕駛輔助系統進一步升級到自駕車的應用。




Fig. 2. 深度學習: Caffe 之經典模型詳解與實戰 [2]。

-----

二、ADAS 晶片

主要的 ADAS 晶片供應商有:高通/NXP、英特爾、瑞薩、英飛凌、德州儀器、NVIDIA、ADI、富士通、東芝、Xilinx [3]。

「從晶片設計來說,現在 ADAS 處理器晶片的主要挑戰在如下幾個方面:

1. 車規級的標準,最好過 ISO 26262,達到 ASIL-B 甚至 ASIL-D 級別;

2. 高計算量以及高帶寬,特別是多傳感器融合的晶片,需要更高的晶片頻率,以及異構設計,以達到快速的數據處理速度,同時傳輸的吞吐率上也有較高要求;

3. 隨著人工智慧在 ADAS 上的應用,針對晶片的設計會考慮增加硬體的深度學習設計,如何在軟硬體上做取捨,以及人工智慧計算模型與原有軟硬體架構以及整個系統設計上做匹配,目前來看還在早期探索階段。」[3]

上面第三項,是這一波深度學熱潮的重點。除了 NVIDIA 的 GPU,Google 的 TPU 之外,是否有 IC 設計廠商能在此領域搶佔一席之地,讓我們拭目以待。

-----


Fig. 3. TPU [8].

-----

「對於自動駕駛領域來說,深度學習晶片則是與傳統晶片不同。因為深度學習是一類特定應用,深度學習特別是 CNN 圖像識別的通用型晶片或許是可能的。」[5]

「TPU 是一個推理晶片,它並非是要取代 GPU,可以確定的是,TPU 與 CPU 一起使用對訓練分析更加有益。但對於 CPU 製造商而言,如何研發出像 ASIC 一樣兼顧性能和能效的晶片是現在以及未來要做的。」[7]

-----

三、高精度地圖

「傳統地圖只需要做到米級精度即可實現 GPS 導航,但要想保證無人車行駛安全需要達到厘米級精度才可以。高精度地圖能滿足這個要求,能很好地彌補傳感器在測量和感知上先天存在的缺陷,為自動駕駛提供即時定位和構建正確的地圖。」[9]



Fig. 4. HDLM(HD Live Map) [10].

-----

四、ADAS 論文 

快速掃過幾篇最新的 ADAS 論文,學術界的速度看起來比業界是慢多了,目前尚未看到有整合深度學習的研究 [11]-[14]。

----- 

結論:

在自駕車 [15] 如火如荼發展的現在,很難說這個應用何時會落地。但整合 object detection (譬如 YOLO 系列)功能的 ADAS,是立即可行的應用。不過演算法如何塞進記憶體與運算力都很有限的嵌入式系統,是一大課題。硬體部分,捨棄 GPU 而自行開發平行運算的硬體單元,是一個利基路線,但難度也極高就是。

-----

References

[1] 幫英特爾佈局自動駕駛,4700億價值的背後,以色列公司Mobileye:多元商業模式成就了我們|數位時代
https://www.bnext.com.tw/article/45966/israel-company-mobileye-said-multiple-business-model-made-them-success

[2] AI從頭學(一八):Convolutional Neural Network
http://hemingwang.blogspot.tw/2017/03/aiconvolutional-neural-network_23.html
 
[3] 一文了解主要ADAS处理器芯片厂商 _ 厚势_搜狐科技_搜狐网
http://www.sohu.com/a/208847028_465591

[4] 一文了解主要ADAS處理器晶片廠商 _ 厚勢 - 壹讀
https://read01.com/J0xdnzD.html#.WmlElvIlk8A

[5] 从算法到芯片,再到ADAS芯片 _ 厚势_搜狐科技_搜狐网
http://www.sohu.com/a/190721377_465591

[6] 從算法到晶片,再到ADAS晶片 _ 厚勢 - 壹讀
https://read01.com/zh-tw/kELnxNm.html#.WmlEXPIlk8A
 
[7] Google 硬體工程師揭密,TPU 為何會比 CPU、GPU 快 30 倍 _ TechNews 科技新報
http://technews.tw/2017/04/07/first-in-depth-look-at-googles-tpu-architecture/

[8] A first detailed look at Google's TPU
http://www.visualisetheworld.com/index.php/b/a-first-detailed-look-at

[9] 自动驾驶之高精度地图技术的发展动向 _ 厚势_网易订阅
http://mp.163.com/v2/article/detail/D7B5V4Q90511BV1J.html

[10] The future is HERE  BMW, Audi and Mercedes introduce real-time digital maps
http://www.bmwblog.com/2015/12/07/the-future-is-here-bmw-audi-and-mercedes-introduce-real-time-digital-maps/

[11] Ziebinski, Adam, et al. "Review of advanced driver assistance systems (ADAS)." AIP Conference Proceedings. Vol. 1906. No. 1. AIP Publishing, 2017.
http://aip.scitation.org/doi/pdf/10.1063/1.5012394

[12] Biondi, Francesco, et al. "Advanced driver assistance systems: Using multimodal redundant warnings to enhance road safety." Applied ergonomics 58 (2017): 238-244.

[13] Elgharbawy, M., et al. "A real-time multisensor fusion verification framework for advanced driver assistance systems." Transportation Research Part F: Traffic Psychology and Behaviour (2017).

[14] Janjatovic, Joakim, et al. "Algorithm optimization framework for Advanced Driver Assistance Systems." Consumer Electronics (ICCE), 2017 IEEE International Conference on. IEEE, 2017.

[15] 一起來用十分鐘略懂自駕車吧!GoGoGo! _ TechBridge 技術共筆部落格
https://blog.techbridge.cc/2017/06/21/Lets-know-a-little-bit-of-Self-Driving-Car/

AI隨筆(五):台灣醫療科技展

AI隨筆(五):台灣醫療科技展

2018/01/03

前言:

2017台灣醫療科技展時間是 12/7 ~ 12/10,地點是台北市南港展覽館 [1]。我跟未來的研發副總約在 12/9 星期六下午三點碰面,午餐後我就來到會場參觀 [2]。我的興趣在 AI,所以特別留意相關訊息。很快地,一個月快過去了,2018 的科技展也開始籌備了 [3]。記錄一些感想供未到場的朋友們參考!

-----

Summary:

總的來說,有少部分的醫療 AI 應用,其中以跟 htc / DeepQ 合作的 萬芳 / 馬偕 / 三總 腳步較快。另外,秀傳跟華碩合作的聊天機器人 Zenbo 也令人眼睛一亮 [4]。其他多半還是停留在傳統醫療展的框架中。

至於是否有些 醫院 / 醫療器材廠商,鴨子划水,不欲在展場大出鋒頭,這就不是我所能知道的了,就我一些當醫生的同屆同學,多半對 AI 的反應還蠻冷淡的。這不意外,因為以往神聖的、專業的、被醫生掌握的醫療知識,即將透過 AI 下放到一般人手裡了,身為研究醫學的非醫生族群,我樂見其成,但我的醫生同學們恐怕就不這麼認為了!:)

-----

Outline

一、秀傳
二、萬芳
三、馬偕
四、三總

-----

參觀展覽純屬意外。我跟某公司的 CTO 約了週末面談,時間在週六下午,地點是南港醫療展。午餐後我就來到場地參觀。之後我們聊了兩個多小時,由於在 IoT、Cloud、Big Data、AI、與音樂生理學上,我們有不少重疊與互補的技術,所以相談甚歡。細節就不提了,本文的主旨是我看到的醫療 AI。


Fig. 1. 南港展覽館。

-----

一、秀傳

進到會場,先被吸引的是彰化秀傳醫療體系的聊天機器人,他們跟華碩合作的 Zenbo [4]。會場介紹的「小布」屬於實體的聊天機器人,可以提供一些醫療資訊。為撰寫本文,我特地又查了一下小布的基本資料,價位在台幣兩萬到三萬間。家庭用的話,還提供一般娛樂功能。

直白來說,就是有互動介面、可移動的、導入 AI 的:

PC。

機器人應該是大廠、兵家必爭之地。但是開模、伺服這些都不是一般創業者玩得起的。小布的規格目前還無法讓人驚艷,所以還是回到另一個「小步」好了。(提示:日本女歌手!:)

關於機器人,我的看法是:日本做機器人有可能會是世界第一 [5]!



Fig. 2. Zenbo [4].

-----

二、萬芳

我在萬芳的攤位跟介紹人員聊了很久。

大體上,這是一個可以提供你醫學問答,並且告訴你掛號該掛哪一科、哪一位醫師的 chatbot。核心的 AI 是 htc / DeepQ [6]。由於最早教我 AI 的高手在 htc 工作,後來我又看到他老闆之前贊助李飛飛教授 ImageNet [7],這下不得了,實在厲害。所以我對 DeepQ 一直很注意!

打聽到:萬芳、馬偕、三總,跟 DeepQ 合作。


Fig. 3a. 萬芳醫院。

-----

三、馬偕

馬偕北淡分院跟 DeepQ 也有合作關係,聽到的進度只有利用 AI 幫忙掛號,並未提供轉診諮詢。簡單說,只用到「一點點」AI。

另外,DeepQ 的攤位附屬於馬偕的攤位,只佔一小塊。我到 DeepQ 詢問,現場的小姐叫我直接查 FB。所以我就不知道 DeepQ 參展的目的為何了!


Fig. 3b. 馬偕北淡。

-----

四、三總

三總的攤位很大,不過裡面完全沒有提到 DeepQ,所以我看看就離開了!

-----

結論:

台灣的醫療體系在 AI 的腳步不快,但也有少數較積極的,個人認為勝出的機會很大。但由於取樣蠻有限的,此觀點參考即可!

-----

備註:

【Keynote講者介紹】張智威 (Edward Y. Chang)
演講時間:2017年11月9日 (四) 13:30-14:30  

Edward Chang 是這一波人工智慧復興的先驅者之一,早在2006任職Google研究院時,他的團隊就開始併行機器學習的算法,並且全部開源。他的研發方向在2006到2012年間並不被重視。2010年他的一篇 data driven deep learning 的論文被 ACM 會議給拒,他團隊2011年的兩個相關專利申請,被 Google 放在一邊。 為了證明 data driven deep learning 理念正確,他在2010 年贊助 Stanford Prof. Fei-Fei Li 教授 ImageNet 計畫26 萬美元完成標記。當2012年AlexNet 證明 scale of data 的重要之後,Google 才趕緊提出Edward的兩個專利申請,分別在2016和2017年批准。在這個專題演講中,Edward將敘述為什麼他當初堅持 data driven 的方向和AI 仍然面臨的挑戰 [7]。

-----

References

[1] 2017台灣醫療科技展
https://expo.taiwan-healthcare.org/visit/news_detail.php?REFDOCID=0oxym8s3rnhl8ns5

[2] 廠商位置圖 _ 2017台灣醫療科技展
https://expo.taiwan-healthcare.org/visit/news_detail.php?REFDOCID=0oxym9cqkj281z8o

[3] 台灣醫療科技展
https://expo.taiwan-healthcare.org/

[4] 華碩Zenbo正式登陸,取名「小布」機器人,明年再攻美、日|數位時代
https://www.bnext.com.tw/article/47026/asus-robot-zenbo-enter-china-market 

[5] 人工智慧浪潮與日本AI產業化規劃重點 - STPI Research Portal
https://portal.stpi.narl.org.tw/index/article/10357

[6] HTC 健康醫療事業部 DeepQ
https://deepq.com/ 

[7] 【Keynote講者介紹】張智威 (Edward Y. Chang)
https://www.facebook.com/twaiconf/posts/179941515892826