Skip to content. | Skip to navigation

Personal tools

Navigation

You are here: Home / Tutorial / Deep Learning

Deep Learning

Algorithm https://medium.com/@suvro.banerjee16/an-introduction-to-recurrent-neural-networks-72c97bf0912 https://medium.com/@jon.froiland/python-deep-learning-part-1-8c912cbf34f6 https://medium.com/@benjamin.d.johnson/what-makes-reasonml-so-great-c2c2fc215ccb https://medium.com/@smashingmag/getting-started-with-machine-learning-8de782b84c18 https://medium.com/@tristanganry/how-to-build-animated-charts-like-hans-rosling-doing-it-all-in-r-570efc6ba382 https://medium.com/@chris.moradi/building-prediction-apis-in-python-part-1-series-introduction-basic-example-fe89e12ffbd3

Sentiment Analysis with RNN intuitively understanding convolutions for deep learning How Instagram Feed Works fast.ai Course 如果你只有時間讀一篇簡介 Common Sense Baseline 文獻探討 CNN LeNet 5 Clustering Algorithms Needed to Know Kaggle: first step Andrew Ng Course Hierarchical Neural Story Generation: Gated Linear Units, Multi-head Attention, Convolutional Seq2Seq

Tensorflow

Running Tensorflow Models AutoGraph converts

Build Your Own AlphaZero AI FeatureEngineering Continuous Numeric Data Categorical Data Feature Transformation for Machine Learning Unsupervised Learning with Python Embed ML Models to Web Apps

How to Make a Simple Tensorflow Speech Recognizer Speech Keyword Detecting with Depthwise Separable Convolutions TensorFlow 101, by Brian Sletten 17:00 python demo

Keras

Udemy: Introduction to Deep Learning using Keras Convnets Keras notebook Scanned Digits Recognition using k-Nearest Neighbor (k-NN) quantile regression: dependent variable is bimodal or multimodal

  • Keras is a library in Python.
  • It is a library for building deep learning models. 
  • Keras runs on top of Theano and Tensor flow. 
  • Our focus is on building deep learning predictive models. 
  • Python is becoming the language of choice for applied predictive analytics. 
  • In machine learning a artificial neuron is an object modeled after a biological neuron. 
  • A group of artificial neurons is called a neural network. 
  • Rows are observations. 
  • Columns are features. 
  • That thing we are trying to predict is a target variable. 
  • The data we are going to use to build our model is called training data. 
  • A very simple neural network has inputs, a hidden layer and outputs. 
  • When we are working with machine learning models it's important to remember they speak numbers. 
  • A deep learning model is one with more than one hidden layer.

很多場合不需要機器學習 Fizz Buzz in Tensorflow

Intro for Designers Convolutional Neural Networks from Ground Up https://medium.com/@williamkoehrsen/a-conceptual-explanation-of-bayesian-model-based-hyperparameter-optimization-for-machine-learning-b8172278050f

Text Classification with Machine Learning Sequence-to-Sequence Model

How Backpropagation Works and Use Python to Build a Neural Network

Machine Learning the GitHub API with Meeshkan

YOLO Object Detection code

GAN, Generative Adversarial Networks, Adversarial Training

蔡宗翰 CRF: Conditional Random Fields; SRL-Model: Semantic; PAS: Predicate Argument Structure; Precision Rate vs Recall Rate vs F1-measure

Dictionary Encoding: N1=張士誠 P1=高郵
Time Encoding: T1=乙未 Q1=一千萬
Decoding階段 再替代回去
Active Learning: 判斷不好的詞再用人力檢查 補回字典
Normalize Variation Branch Entropy (nVBE) 自刻工具
CRF Model 調參數
分群演算法: K-Mean 找出類似的詞句

Python 機器學習/影像辨識

1.下載及安裝Python軟體

在Mac上安裝完的Python Launcher

在Windows上安裝

使用pip install 套件名稱

安裝套件
pip install 套件名稱
解除安裝套件
pip uninstall 套件名稱
檢視目前系統已經安裝的套件
pip list
1-1下載及安裝PyCharm

安裝完Python後,設定直譯器路徑

Pycharm可以使用Python和Jupyter notebook的檔案

1-2在Pycharm新增函式庫

選取直譯器,選取+

選取函式庫,再install Package

2.Python直譯器與計算機

Mac電腦/usr/local/bin
Windows電腦C:\python36
set path=%path%;C:\python36
這是設定utf-8-*-編碼
#-*- coding: utf-8 -*- 
#是註解符號
輸入python執行
$ python
變數資料型態

整數
浮點數
字串
運算式是由運算子與運算元組成
+加-減*乘/除是運算子,先乘除後加減的結合優先順序
運算元是變數,數字,字串和資料結構
=是分配符號,將右邊的值分配給左邊變數
3.資料結構

變數
運算式與運算子
串列
堆疊
佇列
數組tuple,集合set和字典

可以用數組tuple來儲存固定的元素,使用小括號()來建立一數組tuple
集合的元素放置沒有按照順序,可以使用{}大括號來建立一集合Set
集合加上索引就是字典{索引:值}

4.控制結構

布林運算式,布林值為True或False
在if敘述中,條件後的敘述只執行一次,而在while敘述中,則可執行一次以上。
While敘述的程序圖形中.選取結構和循序結構,都只執行程式敘述一次,如果我們要讓同一行程式重複執行好幾遍則要用迴圈敘述。
迴圈敘述可以重複執行某一段程式好幾遍,直到條件的不成立才跳出這個迴圈。
選取結構if
語法if:
if 條件運算式:
    程式敘述1
else:     
    程式敘述2
迴圈結構while,for
語法:
for  計數變數  in range(起始值,終始值):
程式敘述
邏輯運算子

邏輯運算子可以結合條件,以一個表達式判斷許多條件,而這些條件的結果不是真True就是假False。
and稱為”與邏輯運算子”,只有當所有條件都成立時才會回傳真True,否則回傳假False。
or稱為或邏輯運算子,只要運算式中一個條件成立就會回傳真True,只有當所有的條件都為假Fasle時,才會回傳假False。
not為相反邏輯運算子,真True的條件加上not相反邏輯運算子時,就會變成假False﹔當假False的條件加上not相反邏輯運算子時,就會變成真True。
一個選擇的if敘述

if 條件:
         敘述

巢狀的if敘述與多重選擇決策

在這個例子中有5個等級來做選擇,就叫做多重選擇。
語法:
if (條件1):
敘述1
elif (條件2):
敘述2
elif (條件3):
敘述3
elif (條件4):
敘述4
else (條件5):
敘述5
迴圈結構for

Python提供for敘述作為迴圈,除了迴圈主體敘述(statement),還有迴圈的條件結構。
迴圈結構while

在if敘述中,條件後的敘述只執行一次,而在while敘述中,則可執行一次以上。

5.函數
將多個複雜的程式區塊包在函數裡面,這樣在需要時,可以重複呼叫它.
遞迴函數是自己呼叫自己的函數,有最終值,開始回傳.
pass敘述沒做任何事
預設參數值
使用者自訂函數
區域變數的生存空間

函數的參數為區域變數.函數的參數生存空間只在函數的範圍內
在函數內定義的變數,其作用範圍在函數內


6.類別

成員屬性與成員方法

類別和實體變數

_init__(self,..)為建構函數,實體化物件時會呼叫它
self為自己這個物件
__init__(self)建構物件, __del__(self)解構物件


7.繼承

class 子類別(父類別1,父類別2,父類別3,..):       
      敘述1
      敘述2
當子類別繼承 (inheritance) 超過一個來源的時候,會以寫在最左邊的父類別優先繼承,多個父類別如果有相同名稱的屬性 (attribute) 與方法 (method) ,就會以最左邊的父類別優先。
多型:子類別和父類別有同名的getEngine()名稱

8.異常或錯誤處理
使用raise關鍵字丟出例外
開啟,關閉及寫入檔案
檔案處理
fp=open(‘檔案名稱’,’檔案開啟模式’)

9.使用matplotlib畫圖
Matplotlib.pyplot是畫圖的命令集合函數.每一個pyplot函數可以建立或修改圖形

10.Python 資料結構與畫圖簡介 
•數組tuple和集合set
•Scipy科學函數庫
•numpy模組建立矩陣
•Pandas資料結構
•Matplotlib畫圖

11.數組tuple和集合set和Scipy科學函數庫
可以用數組tuple來儲存固定的元素,使用小括號()來建立一數組tuple
集合的元素放置沒有按照順序,可以使用{}大括號來建立一集合Set
Scipy模組提供科學運算及線性代數的運算模組

12.numpy模組建立矩陣
•numpy模組建立矩陣
•矩陣運算
•reshape()改變陣列的長寬
•np.zeros((10,3))產生10*3的矩陣

13.Pandas資料結構
使用pip install安裝pandas
Pandas讀取csv
讀取台灣加權股價指數csv檔,big5編碼
實作讀取台灣加權股價指數
Series序列資料
pandas的DataFrame
實作Pandas資料結構
資料選擇與篩選
lambda可調式參數

14.Matplotlib畫圖2
•Matplotlib畫圖
•plt.plot([1,2,3,4])預設是X軸
•# ‘r—'紅色虛線,'bs'藍色矩形,'g^'綠色三角形
•scatter()散點圖函數
•meshgrid()函數畫網格

15.分類與預測

資料採礦過程
分類與預測
決策樹 信用評等範例
監督式學習分類
天氣決策樹決定是否騎腳踏車
資訊熵Entropy

Information Gain資訊增益

ID3決策樹演算法

鳶尾花決策樹分類

隨機森林結合強學習

K-nearest最鄰近分類演算法KNN

16.Python 機器學習分群

分群分析
分群的應用
資料採礦對分群的需要
分群的依據
主要的分群方式
群聚演算法k-means
階層式分群
密度為基礎的分群方法
群聚演算法k-means

將資料庫的n個物件來建構K個群聚的分群
k-means:群聚的中心為基礎的分群
遞迴的尋找最小成本
設有k個群聚,0為第0次開始,每次加1,調整群聚中心
計算群聚成本最小化
階層式分群

階層式聚合式分群會從下面開始合併群聚,直到滿足停止條件為止.
計算所有樣本的距離矩陣
將每個樣本作為一個單一的集群
合併兩個最近的集群對
更新距離矩陣
重複上面步驟,直到群聚成兩個分群
密度為基礎的空間集群方法

DBSCAN演算法:
以密度為基礎的群聚,如果密度足夠,它就會被視為群聚的一部分,此時會考慮鄰居.如果它們也高密度,就將它們與第一個區域合併,否則決定了分群.
當這個程序掃描完所有區域後,就可確定所有群聚.
主要特徵:
發現任意形狀的群聚
可以處理雜訊
密度參數當作終止條件

17.基本機器學習演算法

線性迴歸
Logistic邏輯迴歸
單純貝氏分類器(Naive Bayes Classifiers)
其中P(A|B)是在B發生的情況下A發生的可能。

分群降維使用主成份分析PCA
主成分分析PCA是一種分析、簡化數據集的技術。PCA是使用矩陣投影方式將n維度樣本投影到m維度空間使用W轉換矩陣,其中m<

設定 Nvidia 顯示卡功率 180W,正常情況下最大值是 250W,溫度在 80度以下比較保險

sudo nvidia-smi -pm 1
sudo nvidia-smi -i 0 -pl 180

Practical Guide to Particle Swarm Optimization

Tensorflow + Deepdream