TensorFlow Lattice: 柔軟で制御可能、説明可能な機械学習

TensorFlow Lattice: 柔軟で制御可能、説明可能な機械学習

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式サイトにアクセスして許可を申請してください。

機械学習の専門家のほとんどは、実行時にモデルを評価するために使用されるトレーニング データとサンプルが大きく異なる状況に遭遇したことがあります。そのため、トレーニング データのモデルのみに依存する DNN やランダム フォレストなどの比較的柔軟な機械学習ソリューションは、トレーニング データセットと検証データセットでカバーされていない入力空間では予期しない、あるいは大幅に異なるパフォーマンスを示すことがよくあります。この問題は、重要なポリシーや公平性の制約に違反する可能性がある場合に特に深刻になります。

制約のないモデルは、少数のトレーニング例のみでカバーされる入力空間では予期しない動作をする可能性があります。図に示すように、ディープ ニューラル ネットワークと勾配ブースティング ツリーの予測結果は、テスト セットの実際の結果とは大きく異なります。

正規化は一般的にはより堅牢な推論結果をもたらしますが、標準的な正規化ツールでは、特に入力空間の次元が高い場合、モデルがすべての入力空間で適切に動作することを保証できません。予測可能な動作を持つシンプルで制御可能なモデルに切り替えると、モデルの精度が大幅に低下します。

TF Lattice を使用すると、意味的に意味のある一般的な制約やポリシー主導の形状制約などのいくつかのオプションを通じて、ドメイン知識を学習プロセスに注入しながら、柔軟なモデル (高精度) を使用することが可能になります。たとえば、モデルへの入力が特定の入力に対して単調に増加するように指定できます。この追加のドメイン知識により、モデルはトレーニング データを超えた知識を学習し、モデルの動作をユーザーが予測および制御できるようになります。

TensorFlow Lattice ライブラリ

TensorFlow Lattice は、制約付きで解釈可能なラスターベースのモデルをトレーニングするためのライブラリです。ラスターは、データ内の任意の入力と出力の関係を近似するために使用できる補間ルックアップ テーブルです。

上記の例は、2 つの入力フィーチャと 4 つのパラメータに基づくグリッド関数です。これらの 4 つのパラメータは、入力空間の 4 つの頂点におけるグリッド関数の関数値であり、その他の関数値は、これらのパラメータを通じて得られる補間値です。より柔軟な機能を得るために、より高次元のグリッドやより細かいグリッド パラメータを使用することもできます。このライブラリは、Keras レイヤー オブジェクト tfl.layers.Lattice を使用して上記のグリッドを実装します。 TensorFlow Grid は、入力機能をグリッド関数の許容入力範囲 (上記のグリッドの例では 0 ~ 1) に揃えて正規化するための区分線形関数 (tfl.layers.PWLCalibration Keras レイヤー) も提供します。

分類された特徴については、TensorFlow Grid は分類タイプのキャリブレーションを提供し、グリッドへの入力を容易にするために同様の出力境界を取得します。上記のキャリブレーターとグリッドを組み合わせると、キャリブレーションされたグリッド モデルが得られます。

TensorFlow Lattice レイヤーは、モデル トレーニング プロセスにドメイン知識を注入するために使用できる多くの種類の制約を提供します。

  • 単調性: モデル出力が入力に対して単調に増加または減少するように指定できます。この場合、距離に応じて単調に減少する、つまり距離が遠くなるほど、コーヒー ショップに対するユーザーの好みが低くなるというように、モデルを制約することができます。

  • 凸性と凹性: 関数の形状が凸か凹かを指定できます。単調性と組み合わせることで、凸性と凹性を制約し、関数が特定の機能に関して収穫逓減などの特性を示すように強制することができます。
  • 単峰性: 関数が単峰性であるか、谷が 1 つしかないかを指定できます。これにより、特定の機能に関して予想される最良の認識ポイントを持つ関数を取得できます。
  • ペアの肯定的な確認: この制約は、1 つの入力機能が意味的に別の機能の信頼性を高めることを示します。たとえば、レビュー数が多いレストランは、平均星評価も高くなる可能性が高くなります。ただし、レビュー数が多い場合、モデルは星評価に対してより敏感になります (たとえば、相対評価とレビュー数の間の傾きが大きくなります)。
  • ペアワイズ優位性: この制約は、モデルが、ある特徴が別の特徴よりも重要であると見なす必要があることを示します。この特性は、関数の傾きが主要な特徴上でより大きくなるようにすることで実現されます。

TensorFlow lattice は、形状制約に加えて、各機能における関数の柔軟性と滑らかさを制御するための一連の正規化子を提供します。これらには、ラプラス正則化 (より平坦な関数)、ヘッセ行列正則化 (より線形なキャリブレーション関数)、しわ正則化 (より滑らかなキャリブレーション関数)、およびワープ正則化 (よりペアワイズ線形なグリッド関数) が含まれます。

事例: 訪問の並べ替え

この例は、エンドツーエンドの関数形状制約チュートリアルからのものであり、上記の制約をすぐに使用できる多くの推定器が含まれています。ユーザーがレストランの検索結果をクリックするかどうかを判断するというシナリオを想定します。これはクリックスルー率 (CTR) 予測タスクです。指定されている機能は次のとおりです。

  • 平均評価: 1から5までの値を持つ数値特性
  • コメント数: 0 から 200 までの値を持つ数値特性
  • ラダースコア: カテゴリ特性、値の範囲は「$」から「$$$$」、データは0から3で表され、欠損値は-1

モデルの動作を制限または無効化するための次のドメイン知識があります。

  • モデルの出力は平均スコアに対して単調に増加している
  • モデルの出力はレビュー数に応じて単調に増加していますが、限界利益は減少しています。
  • しかし、レビュー数が増えれば、モデルは平均評価が高くなると確信するはずです。
  • ユーザーは、「$」付きのレストランよりも「$$」付きのレストランを好む傾向があります。

TensorFlow Lattice が提供する Keras レイヤーを使用して、キャリブレーションされたラスター モデルを作成できます。

  1. モデル = tf.keras.models.Sequential()モデル.add(
  2. tfl.layers.ParallelCombination([
  3. # 機能: 平均評価 tfl.layers.PWLCalibration(
  4. #区分線形関数入力キーポイント input_keypoints=np.linspace( 1 ., 5 ., num= 20 ),
  5. #この機能では出力は単調に増加します monotonicity= 'increasing'
  6. # このレイヤーは2つの頂点を持つ格子に入力されます output_min= 0.0
  7. 出力最大値 = 1.0 )、
  8. # 機能: レビュー数 tfl.layers.PWLCalibration(
  9. 入力キーポイント = np.linspace( 0 ., 200 ., num= 20 ),
  10. #この機能では出力は単調に増加します monotonicity= 'increasing'
  11. # レビュー数には収穫逓減の傾向がある。convexity= 'concave'
  12. # 正規化子はタプルとして定義されます ( 'name' , l1, l2) kernel_regularizer=( 'wrinkle' , 0.0 , 1.0 ),
  13. # このレイヤーは3つの頂点を持つ格子に入力されます output_min= 0.0
  14. 出力最大値 = 2.0 )、
  15. # 機能: ドル評価 tfl.layers.CategoricalCalibration(
  16. # 4 つの評価カテゴリ + 1 つの欠落カテゴリ num_buckets = 5
  17. デフォルト入力値=- 1
  18. # 部分的な単調性: calib( 0 ) <= calib( 1 ) monotonicities=[( 0 , 1 )],
  19. # このレイヤーは2つの頂点を持つ格子に入力されます output_min= 0.0
  20. 出力最大値 = 1.0 )、
  21. ]))モデルを追加します(
  22. tfl.layers.ラティス(
  23. # 2x3x2 グリッド格子 lattice_size=[ 2 , 3 , 2 ],
  24. # 出力はすべての入力に対して単調です monotonicities=[ 'increasing' , 'increasing' , 'increasing' ]
  25. # 信頼: 入力に対する応答性の向上0  入力1 が増加する場合edgeworth_trusts=( 0 , 1 , 'positive' )))model.compile(...)

上記のグリッドにより、トレーニングされたモデルは指定されたすべての制約を満たすようになり、追加の正規化によりモデルはより滑らかになります。

ツールキットによって提供されるすぐに使用できる推定器を使用して上記のモデルを構築することもできます。詳細については、上記の制約の役割と効果についても説明されている、シェイプ コントロールのエンドツーエンドの Colab チュートリアルをご覧ください。 TF Lattice Keras レイヤーを他の Keras レイヤーと組み合わせて使用​​することで、部分的に制約されたモデルや正規化されたモデルを作成できます。たとえば、グリッドまたは PWL キャリブレーション レイヤーは、他の埋め込みや Keras レイヤーを参照するディープ ニューラル ネットワークの最後のレイヤーとして使用できます。詳細については、Tensorflow Lattice の Web サイトをご覧ください。形状制約、統合推定器、カスタム推定器、Keras レイヤーなど、始めるのに役立つチュートリアルが多数あります。その間、TF 開発者会議のビデオを見て、詳細を確認してください。 (https://youtu.be/ABBnNjbjv2Q)

<<:  百度言語知識技術サミットが開催され、王海鋒氏がNLP技術の進化の道筋を明らかにした

>>:  中国の優秀な人工知能人材の70%が米国に奪われた

ブログ    
ブログ    
ブログ    

推薦する

機械学習によるよりスマートなユーティリティ管理

エネルギー、ガス、水道、廃棄物管理などの公共事業では、すでにインフラストラクチャを最適化し、需要と供...

画像ベースの AI プロジェクト用のデータセットを準備する 7 つのステップ

翻訳者 |陳俊レビュー | Chonglouご存知のとおり、データセットはおそらく機械学習プロジェク...

ズークス、従業員がテスラの企業秘密を盗んだことを認める

[[322566]]この記事はLeiphone.comから転載したものです。転載する場合は、Leip...

UiPath Carnivalは職場の自動化におけるイノベーションを探るために近日開催されます

ロボティック・プロセス・オートメーション(RPA)エンタープライズソフトウェア企業のUiPathは最...

LLaMA-v2-Chat と Alpaca: 異なる AI モデルはいつ使用すべきですか?

翻訳者 |李睿レビュー | Chonglou今日、大規模言語モデル (LLM) は、言語生成から画像...

AIがメディア業界を変革、フェニックスTVがAIデータトラックに参入

メディア専門家は、2023年の「失業」について多かれ少なかれ不安を抱いています。メディア専門家は、C...

...

ガートナー:世界のAIチップの収益は2023年に530億ドル、2027年には1194億ドルに達する

8月24日、市場調査会社ガートナーの最新予測によると、 AI向けハードウェアの世界販売収益は2023...

...

動物や人間には学習の臨界期があり、ディープニューラルネットワークにも臨界期がある。

[[409851]] 0 はじめにこの記事で議論されている問題は、ICLR 2019の記事「CRI...

ロボットと一緒に働くのはどんな感じでしょうか?

[[206343]]アメリカの企業では、多数のロボットを使って働くことが当たり前になっている。ここ...

人工知能は人間の文化を継承するが、人間の偏見も受け継いでいる

テクノロジーは既存の人間文化の延長です。テクノロジーは人類の知恵を広げた一方で、人々の偏見や差別も受...

スタンフォード大学の研究:スマートフォンの録画で人が酔っているかどうかを98%の精度で識別できる

11月9日、スタンフォード大学の最近の研究で、スマートフォンは音声パターンから人が酔っているかどうか...

...

人工知能技術の高みを突破するための知恵を集め、上海勝思AIフレームワーク&ビッグモデルイノベーションセンターが正式に発足

2023年6月16日、「共に立ち上がって無限のイノベーションを」をテーマにした人工知能フレームワーク...