Slide 1

Slide 1 text

アニーリングマシンを使った論理式学習モデルの開発 越智 優真 !⽊更津⼯業⾼等専⾨学校"|担当#$%&棚橋 耕太郎 未踏ターゲット事業成果報告会 2022/2/11

Slide 2

Slide 2 text

Abstract • 論理演算でデータを説明する機械学習モデルを開発 • 論理式の「正則化」を⾏う⽅法として、カルノー図を採⽤し、 集合被覆問題として定式化してアニーリングで解く⽅法を提案 • 結果: 決定⽊と⽐べて同じ表現⼒(=AUC)で説明可能性を向上させた

Slide 3

Slide 3 text

越智 優真 • ⽊更津⼯業⾼等専⾨学校 情報⼯学科 1年 • 機械学習コンペの参加が趣味 • アニーリングは触り始めてまだ1年経ってない • 初アニーリングは数独でした(2021/2/28) • 植物を愛でています(背景は松姫という名前のサボテン)

Slide 4

Slide 4 text

AIの課題点 | ブラックボックス化 どうしてこんな値を出したの? がわからない 説明可能性の⾼いAIモデルは社会に必要

Slide 5

Slide 5 text

説明可能なAIがHot(Explainable AI; XAI) Alejandro et al. (2020) Explainable Artificial Intelligence (XAI): Concepts, taxonomies, opportunities and challenges toward responsible AI XAI関係のキーワードを使う論⽂数 XAI関係のキーワード

Slide 6

Slide 6 text

⾒やすいのはどっち? ⽊構造 論理式, 論理回路 どちらも同じ表現をしています 気候条件からゴルフに適しているかどうかを予測 sklearn.tree.export_graphviz関数から⽣成 よくみるやつ

Slide 7

Slide 7 text

条件の数を⽐較 3 7 条件の数: 条件の数: 決定木のノード数が条件の数 論理式の項数が条件の数

Slide 8

Slide 8 text

決定⽊の冗⻑性の要因の⼀つ | OR表現が苦⼿ A True B True False 一つの特徴で分岐することが原因 OR表現があるだけで冗長な表現に繋がりやすい

Slide 9

Slide 9 text

条件が増える 説明が冗⻑になる 説明可能性の 低下 条件が少ない論理式表現で、 説明可能性の向上を図る

Slide 10

Slide 10 text

ALEX(論理式学習モデル)の開発 Annealing Logic expression learning Explainable model

Slide 11

Slide 11 text

論理式とは 否定 論理積 論理和 で構成される式 “ブール代数”の公式で、式変形が可能 否定 論理積 論理和

Slide 12

Slide 12 text

論理式の冗⻑性 • 論理式の表現は⼀意でない • 冗⻑になりがち • ⼀番シンプルな形にしたい A B C f(A, B, C) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 1 真理値表 全通りの⼊出⼒を 表形式に 論理式 入出力の関係を 式で表現

Slide 13

Slide 13 text

論理式を簡略化するには 式変形する方法 カルノー図を使った方法 AB CD 00 01 11 10 00 1 1 01 1 1 11 1 1 10 1 1 学校のレポートから添付 アニーリングが使えるかも 操作が⾮⾃明(職⼈芸) システマティックにできる プログラムによる操作は難しい

Slide 14

Slide 14 text

論理式から 真理値表を作成 A B C D L 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 0 0 1 1 1 0 A B C D L 1 0 0 0 0 1 0 0 1 0 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 0 AB CD 00 01 11 10 00 1 1 01 1 1 11 1 1 10 1 1 真理値表: 入出力の対応を表にしたもの 真理値表から カルノー図の表記に合わせて マッピング カルノー図を使って論理式を簡略化する

Slide 15

Slide 15 text

カルノー図に丸をつける • 2のべき乗 x 2のべき乗の矩形を囲う • 四隅は繋がっている ⼀つの矩形は⼀つの論理積に対応 最⼩の数の矩形で囲むことで、論理式を単純化 冗長 囲った矩形と変数同士の論理積が対応

Slide 16

Slide 16 text

カルノー図の論理式表現 Li bi 最⼩化する対象 カルノー図 矩形 囲むか否か 囲む矩形の数 論理式 変数の論理積 論理積を使うか否か b1 ~bn の和 矩形(囲めるとは限らないが、とりあえず全列挙) 1なら囲む, 0なら囲まない

Slide 17

Slide 17 text

類似事例 | (最⼩)集合被覆問題 集合を被覆する最小の部分集合の組を求める. NP困難である. U: 要素が1の部分 Vi : 囲む矩形 アニーリングマシンを使おう A. Lucas, Ising formulations of many NP problems ノード 囲む枠 に対応 集合被覆問題は、組み合わせ最適化問題であり アニーリングでも定式化が可能

Slide 18

Slide 18 text

実装概要 前処理 論理式モデルを定式化 アニーリング計算 解を得る

Slide 19

Slide 19 text

前処理 : k番目の添字の組合せ : データの番号 : (n x d)の元データを表す2値行列 : Xの全ての積の組合せを含む2値特徴行列 Li は、論理積なので に対応します

Slide 20

Slide 20 text

ALEXの 定式化 ORbyOrderEnc: 普通の和から論理和を返す関数、次ページで詳細 ペナルティ(正則化) 誤差関数 d個ある特徴の全組み合わせに対して論理積をとったもの(2^d個になる) ※アニーリングではOR演算が難しいため、普通の和から論理和に変換

Slide 21

Slide 21 text

多bitのORを扱う Order Encodingを使った手法

Slide 22

Slide 22 text

Order Encodingの⽬的 値の和がα 1が⽴つビットがα個になる 1が⽴つビットが優先されて前に⾏く 二値変数 制約1 制約2 α個の二値変数(=1)を前から整列させる 前 後 OK NG b1 bn ※Order EncodingはDomain-wall encodingとも呼ばれる

Slide 23

Slide 23 text

OR演算への応⽤ | Order Encoding 値の和がα 二値変数 を知りたい 普通の和から論理和を求められる アニーリングで論理和を求める 普通の和αを使ってOrder Encoding 得られたb1 が論理和に対応 b1 bn から

Slide 24

Slide 24 text

例 | Order Encodingを⽤いたOR演算 制約を追加

Slide 25

Slide 25 text

より効率的な⽅法を開発(1-to-all Order Encoding) 1が⽴つビットがα個になる 1が⽴つビットが優先されて前に⾏く 制約1 制約2 v 値の和がα-1 二値変数 最初にb1 , 次にb2 , … ,bn が立つ 最初にb1 が立つだけ b1 bn b2

Slide 26

Slide 26 text

ALEX動かしてみる • Golf datasetのデモ • デモアプリの紹介

Slide 27

Slide 27 text

条件1. ⾵がないかつ晴れでない 条件2. くもりである 条件3. 湿度が低いかつ⾬でない 湿度⾼ 湿度低 湿度低 湿度低 天気 ⾵有 ⾵無 ⾵無 ⾵有 × × ◯ ◯ ◯ ◯ ◯ ◯ × ◯ ◯ × Golf Dataset | ゴルフに⾏くか⾏かないか カルノー図表現 論理式表現 最⼩の項で表現できている

Slide 28

Slide 28 text

Demo Appを公開 パラメータの調整 決定⽊との⽐較 ⽤意されたDataset https://share.streamlit.io/chizuchizu/logicexpressionstreamlit/main/src/app.py

Slide 29

Slide 29 text

AmplifyのTokenを入力

Slide 30

Slide 30 text

DatasetをgolfにしてからCalculationを押す

Slide 31

Slide 31 text

5 ~ 6秒待つと 実⾏結果が表⽰される

Slide 32

Slide 32 text

Decision Treeを選択すれば、 同データセットで⽐較可能

Slide 33

Slide 33 text

精度を保ちながら条件を減らしている Golf dataset 1.00 → 1.00 Mushroom 0.9887 → 0.9669 a1a(LIBSVM) 0.7156 → 0.7350 AUC

Slide 34

Slide 34 text

カルノー図でよかった 縦軸: AUC 横軸: 条件の数 条件の数が増えると精度も落ちる • 論理式の簡略化にカルノー図を採用 • アニーリングを使った定式化 これらに意味があった 正則化の重みを変えて 条件の数とAUCの関係を⽐較

Slide 35

Slide 35 text

より解釈性が優れるデータ表現が可能に

Slide 36

Slide 36 text

将来像 ALEX 論理式学習モデル 医療: 患者への説明責任 金融: 取引先からの信頼 ビジネス全般 要因分析として活用 お金や人が動くので説明が必要 アニーリングによって広がる 新しいデータマイニング手法の開発 新しい、論理式ベースの 機械学習モデル開発 応⽤分野 開発分野

Slide 37

Slide 37 text

おわりに • 論理演算でデータを説明する機械学習モデルを開発 • 論理式の「正則化」を⾏う⽅法として、カルノー図を採⽤し、 集合被覆問題として定式化してアニーリングで解く⽅法を提案 • 結果: 決定⽊と⽐べて同じ表現⼒(=AUC)で説明可能性を向上させた https://github.com/Chizuchizu/logic-expression-learning 開発したモデルはGitHubで公開しています。 https://share.streamlit.io/chizuchizu/logicexpressionstreamlit/main/src/app.py ALEXのデモはこのリンクで公開しています。