~~~
model = models.Sequential()
model.add(layers.Dense(64, activation='relu',input_shape=(train_data.shape[1],)))
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(1))
~~~
網絡的**最后一層**只有一個單元,沒有激活,是一個**線性層**(網絡可以學會預測任意范圍內的值)。
這是**標量回歸**(標量回歸是預測單一連續值的回歸)的典型設置。
~~如果向最后一層添加sigmoid激活函數,網絡只能學會預測 0~1 范圍內的值~~
*****
~~~
model.compile(optimizer='rmsprop', loss='mse', metrics=['mae'])
~~~
**均方誤差**(MSE,mean squared error):預測值與目標值之差的平方
**平均絕對誤差**(MAE,mean absolute error):預測值與目標值之差的絕對值
*****
## **小結**
* 回歸問題使用的損失函數與分類問題不同。**回歸**常用的**損失函數**是**均方誤差**(**MSE**)。
* 同樣,回歸問題使用的**評估指標**也與分類問題不同。顯而易見,精度的概念不適用于回歸問題。常見的回歸指標是**平均絕對誤差**(**MAE**)。
* 如果輸入數據的**特征**具有**不同的取值范圍**,應該先進行**預處理**,對每個特征**單獨進行縮放**。
* 如果可用的數據很少,使用***K*折驗證**可以可靠地評估模型。
* 如果可用的**訓練數據很少**,最好使用**隱藏層較少**(通常只有一到兩個)的小型網絡,以**避免嚴重的過擬合**。
- 基礎
- 張量tensor
- 整數序列(列表)=>張量
- 張量運算
- 張量運算的幾何解釋
- 層:深度學習的基礎組件
- 模型:層構成的網絡
- 訓練循環 (training loop)
- 數據類型與層類型、keras
- Keras
- Keras 開發
- Keras使用本地數據
- fit、predict、evaluate
- K 折 交叉驗證
- 二分類問題-基于梯度的優化-訓練
- relu運算
- Dens
- 損失函數與優化器:配置學習過程的關鍵
- 損失-二分類問題
- 優化器
- 過擬合 (overfit)
- 改進
- 小結
- 多分類問題
- 回歸問題
- 章節小結
- 機械學習
- 訓練集、驗證集和測試集
- 三種經典的評估方法
- 模型評估
- 如何準備輸入數據和目標?
- 過擬合與欠擬合
- 減小網絡大小
- 添加權重正則化
- 添加 dropout 正則化
- 通用工作流程
- 計算機視覺
- 卷積神經網絡
- 卷積運算
- 卷積的工作原理
- 訓練一個卷積神經網絡
- 使用預訓練的卷積神經網絡
- VGG16
- VGG16詳細結構
- 為什么不微調整個卷積基?
- 卷積神經網絡的可視化
- 中間輸出(中間激活)
- 過濾器
- 熱力圖
- 文本和序列
- 處理文本數據
- n-gram
- one-hot 編碼 (one-hot encoding)
- 標記嵌入 (token embedding)
- 利用 Embedding 層學習詞嵌入
- 使用預訓練的詞嵌入
- 循環神經網絡
- 循環神經網絡的高級用法
- 溫度預測問題
- code
- 用卷積神經網絡處理序列
- GRU 層
- LSTM層
- 多輸入模型
- 回調函數
- ModelCheckpoint 與 EarlyStopping
- ReduceLROnPlateau
- 自定義回調函數
- TensorBoard_TensorFlow 的可視化框架
- 高級架構模式
- 殘差連接
- 批標準化
- 批再標準化
- 深度可分離卷積
- 超參數優化
- 模型集成
- LSTM
- DeepDream
- 神經風格遷移
- 變分自編碼器
- 生成式對抗網絡
- 術語表