TensorFlow 的额外功能,由 SIG-addons 维护。
import tensorflow as tf import tensorflow_addons as tfa train,test = tf.keras.datasets.mnist.load_data() x_train, y_train = train x_train = x_train[..., tf.newaxis] / 255.0 # TFA layers and activations model = tf.keras.Sequential([ tf.keras.layers.Conv2D(filters=10, kernel_size=(3,3), activation=tfa.activations.gelu), tfa.layers.GroupNormalization(groups=5, axis=3), tf.keras.layers.Flatten(), tf.keras.layers.Dense(10, activation='softmax') ]) # TFA optimizers, losses and metrics model.compile( optimizer=tfa.optimizers.RectifiedAdam(0.001), loss=tfa.losses.TripletSemiHardLoss(), metrics=[tfa.metrics.MultiLabelConfusionMatrix(num_classes=10)]) history = model.fit(x_train, y_train, epochs=10)
TensorFlow SIG Addons 是包含社区贡献的代码库,它符合既定的 API 模式,但实现了核心 TensorFlow 中不具备的新功能。
TensorFlow 本身支持大量的运算符、层、指标、损失函数和优化器等。然而,在像机器学习这样的快速发展的领域,有很多有趣的新开发技术无法集成到核心 TensorFlow 中(因为它们能否广泛应用尚不明确,或者主要由社区中的少数人群使用)。