Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
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のデモはこのリンクで公開しています。