Attend the Women in ML Symposium on December 7 Register now

TensorFlow 是用於機器學習的端對端開放原始碼平台

無論你是新手還是專家,TensorFlow 都能讓你輕鬆建立機器學習模型。如要開始使用,請參閱下列各節。

查看教學課程

教學課程會示範如何使用 TensorFlow,內容包含完整的端對端範例。

參閱指南

說明 TensorFlow 概念與元件的指南。

適合新手

建議可以先從容易使用的 Sequential API 著手。將各種構成要素湊在一起,就能建立模型。請執行下方的「Hello World」範例,然後前往 教學課程 取得更多詳情。

如想瞭解機器學習,請參考我們的 教育資源頁面 。從精選課程著手,精進自己在機器學習基礎領域的技能。

import tensorflow as tf
mnist = tf.keras.datasets.mnist

(x_train, y_train),(x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

model = tf.keras.models.Sequential([
  tf.keras.layers.Flatten(input_shape=(28, 28)),
  tf.keras.layers.Dense(128, activation='relu'),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10, activation='softmax')
])

model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

model.fit(x_train, y_train, epochs=5)
model.evaluate(x_test, y_test)

適合專家

Subclassing API 提供依據執行情況動態定義 (define-by-run) 的介面,可用於進階研究。先建立模型的類別,然後寫入必要的正向傳遞。輕鬆撰寫自訂層、啟動項目,以及訓練迴圈。請執行下方的「Hello World」範例,然後前往 教學課程 瞭解詳情。

class MyModel(tf.keras.Model):
  def __init__(self):
    super(MyModel, self).__init__()
    self.conv1 = Conv2D(32, 3, activation='relu')
    self.flatten = Flatten()
    self.d1 = Dense(128, activation='relu')
    self.d2 = Dense(10, activation='softmax')

  def call(self, x):
    x = self.conv1(x)
    x = self.flatten(x)
    x = self.d1(x)
    return self.d2(x)
model = MyModel()

with tf.GradientTape() as tape:
  logits = model(images)
  loss_value = loss(logits, labels)
grads = tape.gradient(loss_value, model.trainable_variables)
optimizer.apply_gradients(zip(grads, model.trainable_variables))

常見問題的解決方案

探索可協助你完成專案的逐步教學課程。

適合新手
你的第一個類神經網路

在這個 TensorFlow 完整計畫的快速總覽中,訓練類神經網路將衣物 (例如運動鞋和襯衫) 的圖片分類。

適合專家
生成對抗網路

使用 Keras Subclassing API 來訓練生成對抗網路,產生手寫數字的影像。

適合專家
Neural machine translation with attention

使用 Keras Subclassing API,訓練序列至序列的模型將西班牙文翻譯成英文。

最新消息與公告

Check out our blog for additional updates, and subscribe to our TensorFlow newsletter to get the latest announcements sent directly to your inbox.