12월 7일 Women in ML 심포지엄 참석 지금 등록

격자 기반 모델을 사용한 유연하고 제어되고 해석 가능한 ML

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_sizes=[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는 제한적이고 해석 가능한 격자 기반 모델을 구현하는 라이브러리입니다. 라이브러리를 사용하면 상식 또는 정책 기반 형태 제약 을 통해 학습 프로세스에 도메인 지식을 주입할 수 있습니다. 이것은 단조성, 볼록성 및 기능이 상호 작용하는 방식과 같은 제약 조건을 충족할 수 있는 Keras 레이어 모음을 사용하여 수행됩니다. 라이브러리는 또한 미리 만들어진 모델미리 준비된 추정기 를 쉽게 설정할 수 있도록 합니다.

TF Lattice를 사용하면 도메인 지식을 사용하여 교육 데이터 세트에서 다루지 않는 입력 공간 부분을 더 잘 추정할 수 있습니다. 이렇게 하면 제공 분포가 훈련 분포와 다를 때 예기치 않은 모델 동작을 방지하는 데 도움이 됩니다.