Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

ML flessibile, controllato e interpretabile con modelli basati su reticoli

import numpy as np
import tensorflow as tf
import tensorflow_lattice as tfl

model = tf.keras.models.Sequential()
model.add(
    tfl.layers.ParallelCombination([
        # Monotonic piece-wise linear calibration with bounded output
        tfl.layers.PWLCalibration(
            monotonicity='increasing',
            input_keypoints=np.linspace(1., 5., num=20),
            output_min=0.0,
            output_max=1.0),
        # Diminishing returns
        tfl.layers.PWLCalibration(
            monotonicity='increasing',
            convexity='concave',
            input_keypoints=np.linspace(0., 200., num=20),
            output_min=0.0,
            output_max=2.0),
        # Partially monotonic categorical calibration: calib(0) <= calib(1)
        tfl.layers.CategoricalCalibration(
            num_buckets=4,
            output_min=0.0,
            output_max=1.0,
            monotonicities=[(0, 1)]),
    ]))
model.add(
    tfl.layers.Lattice(
        lattice_size=[2, 3, 2],
        monotonicities=['increasing', 'increasing', 'increasing'],
        # Trust: model is more responsive to input 0 if input 1 increases
        edgeworth_trusts=(0, 1, 'positive')))
model.compile(...)

TensorFlow Lattice è una libreria che implementa modelli basati su reticoli vincolati e interpretabili. La libreria consente di iniettare la conoscenza del dominio nel processo di apprendimento attraverso vincoli di forma basati sul buon senso o sulla politica. Questo viene fatto utilizzando una raccolta di livelli Keras in grado di soddisfare vincoli come la monotonia, la convessità e il modo in cui le caratteristiche interagiscono. La libreria fornisce anche modelli preconfigurati e stimatori predefiniti facili da configurare.

Con TF Lattice è possibile utilizzare la conoscenza del dominio per estrapolare meglio le parti dello spazio di input non coperte dal set di dati di addestramento. Ciò consente di evitare comportamenti imprevisti del modello quando la distribuzione della pubblicazione è diversa dalla distribuzione dell'addestramento.