arrow-up icon
このセミナーは終了いたしました。開催予定のセミナーはこちらをご覧ください。

量子コンピュータ時代のプログラミング体験セミナー(8/22)

ブラックボックス最適化による機械学習の特徴量選択・コスト削減・精度向上


0822quantum

株式会社Fixstars Amplifyでは、最適化クラウド「Fixstars Amplify」を活用した社会課題の解決と実業務への適用を進めています。

本セミナーでは、組合せ最適化問題の概要や、組合せ最適化問題を解くための専用マシンである量子アニーリング・イジングマシンをご紹介した後、多方面より注目を集めている量子アニーリング・イジングマシンを活用したブラックボックス最適化の概要を紹介します。その後、ブラックボックス最適化を活用した機械学習の特徴量選択に関するワークショップを行います。ワークショップでは、無料版のFixstars Amplifyと弊社が提供するサンプルコードを活用して、ご自身のPCより実際にブラックボックス最適化問題を解いていただきます。

量子アニーリング・イジングマシンの活用事例や活用方法をお知りになりたい方、ブラックボックス最適化にご興味がある方、機械学習の学習・推論コストの削減やモデル性能の向上にご興味がある方におすすめの内容となっています。

ぜひご参加ください。

セミナー概要

開催日時 2024年8月22日(木)14:00 〜 16:00
参加費用 無料
開催場所 オンライン(Zoom)
※お申し込みいただいた後、配信用のZoom URLをお送りいたします。
講演内容
  • はじめに
  • 会社および量子コンピューティングクラウド「Fixstars Amplify」のご紹介
  • ブラックボックス最適化の概要のご紹介
  • Fixstars Amplify を用いたブラックボックス最適化のワークショップ
    • 機械学習の特徴量選択・コスト削減・精度向上
  • その他の事例や今後の学習の進め方等のご紹介
  • Q&A

※ 途中に休憩をはさみます。
※ 当日は予告なく時間配分・内容等が変更になる可能性があります。
※ 途中入退室は可能です。

登壇者 源 勇気
株式会社 Fixstars Amplify
ディレクター

轟 貴久
株式会社 Fixstars Amplify
シニアディレクター
対象者
  • 量子アニーリング・イジングマシンの活用事例や活用方法をお知りになりたい方
  • ブラックボックス最適化にご興味がある方
  • 機械学習の学習・推論コストの削減やモデル性能の向上にご興味がある方
参加方法 お申し込みいただいた後、配信用のZoom URLをお送りいたします。
※ Zoomの表示名は、セミナーの申し込み時のお名前としてください。

セミナー資料

技術情報や実装方法等は最新のセミナー資料をご参照ください

その他のセミナー資料

2024.7.17
量子コンピュータ時代のプログラミング体験セミナー

Fixstars Amplifyで実装するシフト最適化(多目的最適化)

2024.6.21
量子コンピュータ時代のプログラミング体験セミナー

Fixstars Amplifyで実装する経路最適化

2024.5.30
自社にとって最適な生産計画の作り方セミナー

120分で理解する、生産計画自動生成ツールの活用方法!

2024.5.16
量子コンピュータ時代のプログラミング体験セミナー

ブラックボックス最適化を活用した材料探索

2024.4.24
自社にとって最適な生産計画の作り方セミナー

120分で理解する、生産計画自動生成ツールの活用方法!

2024.3.27
量子コンピュータ時代のプログラミング体験セミナー

Fixstars Amplifyで実装するシフト最適化

2024.2.7
量子コンピュータ時代のプログラミング体験セミナー

ブラックボックス最適化を活用した材料探索

2024.1.11
量子コンピュータ時代のプログラミングセミナー

Fixstars Amplifyで実装する生産計画最適化

2023.12.7
量子コンピュータ時代のプログラミングセミナー

Fixstars Amplifyで実装するシフト最適化

2023.11.9
量子コンピュータ時代のプログラミングセミナー

Fixstars Amplifyで実装する経路最適化

資料の内容

1.

量子コンピュータ時代のプログラミングセミナー

~ ブラックボックス最適化による機械学習の特徴量選択・コスト削減・精度向上 ~ 14:00 開始予定 マイク、カメラをOFFにしてしばらくお待ちください 事前準備がお済みでない方は、この時間にお済ませください (事前準備の詳細はセミナーのご案内メールをご参照ください) Zoomの表示名は、セミナー申し込み時の お名前としていただけますようご協力お願いいたします Copyright© Fixstars Group

2.

量子コンピュータ時代のプログラミングセミナー

~ブラックボックス最適化による機械学習の特徴量選択・コスト削減・精度向上~ Copyright© Fixstars Group

3.

本日の予定

第一部 第二部 第三部 • 本セミナーのゴール • 組合せ最適化の基本 • ブラックボックス最適化とは • 数の分割ハンズオン • FMQAの概要とフロー • 機械学習の特徴量選択ハンズオン • 会社紹介 • Fixstars Amplify の紹介 • 組合せ最適化事例 • ワークショップ事前準備 • • 問題の説明 • FM • FMQA まとめ 質問は随時 Zoom の Q&A へお願いします Copyright© Fixstars Group 3

4.

本セミナーのゴール

組合せ最適化に関する次の項目を実感していただく ➢ 身の回りに組合せ最適化問題は多い。一方で、複雑で非線形な物理・社会現象の場合、組合せ最適化 に必要な定式化が困難なものもある。 ➢ 機械学習と量子アニーリング・イジングマシンを活用するブラックボックス最適化により、複雑現象に対する最 適化を実施可能。 ➢ ブラックボックス最適化を Fixstars Amplify により実施できる。 質問は随時 Zoom の Q&A へお願いします Copyright© Fixstars Group 4

5.

会社紹介

Copyright© Fixstars Group

6.

フィックスターズグループの基本情報

会社名 株式会社フィックスターズ 本社所在地 東京都港区芝浦3-1-1 msb Tamachi 田町ステーションタワーN 28階 設立 2002年8月 資本金 5億5,446万円 社員数(連結) 292名(2023年9月現在) キオクシア株式会社 ルネサスエレクトロニクス株式会社 上場区分 東証プライム(証券コード:3687) 代表取締役社長 三木 主なお客様 トヨタグループ(トヨタ自動車株式会社・ 豊田通商株式会社・株式会社デンソー) みずほ証券株式会社 聡 キヤノン株式会社 グループ会社 2021/10/1 設立 Fixstars Solutions, Inc. (株) Fixstars Autonomous Technologies (株) Fixstars Amplify 完全子会社 米国での営業及び開発を担当 株式会社ネクスティ エレクトロニクスとのJV 自動運転向けソフトウェアを開発 完全子会社 最適化と量子コンピューティングのクラウド事業を運営 (株) Sider (株) Smart Opinion オスカーテクノロジー (株) 完全子会社 開発支援SaaS「Sider」を運営 連結子会社 乳がんAI画像診断支援事業を運営 連結子会社 ソフトウェア自動並列化サービスを提供 Copyright© Fixstars Group 6

7.

フィックスターズの量子技術への取り組み

次世代技術を先取りし 今ある課題の解決を目指す 2018年 NEDOのプロジェクトに採択 「イジングマシン共通ソフトウェア基盤の研究 開発」 2022年 5月: Fixstars Amplify がGurobi, IBM-Quantumをサポー ト 6月: 東洋経済主催シンポジウム「ビジネスを劇的に変える量子 コンピューティングの可能性」に登壇 7月: 累計実行回数1,000万回突破 2021年 2月: 量子アニーリングクラウドサービス「Fixstars Amplify」提供開始 10月: 株式会社 Fixstars Amplify 設立 2017年 日本で初めて D-Wave Systems社と提携 11月: Q-STAR 量子技術による新産業創出協議会に特別会員として加入 2019年 SIPの研究開発に参画 「光・量子を活用したSociety 5.0実現化技術:光 電子情報処理」 Copyright© Fixstars Group 7

8.

最適化と量子技術、Fixstars Amplify

Copyright© Fixstars Group

9.

最適化と量子技術、Fixstars Amplifyの対応領域

1. 量子コンピュータ 3. イジングマシン 量子ゲート方式 二値二次多項式模型 古典汎用コンピュータの上位互換。 量子力学の重ね合わせ状態を制御 する量子ゲートを操作し、特定の 問題を汎用的かつ高速に処理する。 二次の多変数多項式で表される目的 関数の 組合せ最適化問題 (QUBO) を扱う専用マシン。 QAOA に よ り 組 合 せ最 適 化 問題 (QUBO) を取り扱うことが可能。 1 3 2 量子コンピュータ IBM/Google/Rigetti/IonQ 量子 アニーリング イジングマシン 富士通/日立/東芝/Fixstars 変数は0,1または±1。統計物理学に おけるイジング模型 (磁性体の性質 を表す模型) に由来。様々な実装に より実現されている。 D-Wave/NEC 2. 量子アニーリング方式 量子焼きなまし法 イジングマシンの一種であり、量子焼きなまし法の原理に基 づいて動作する。量子イジング模型を物理的に搭載したプロ セッサで実現する。自然計算により低エネルギー状態が出力 される。組合せ最適化問題 (QUBO) を扱う専用マシン。 Copyright© Fixstars Group Amplify AE 9

10.

組合せ最適化

数理最適化問題 量子アニーリング・イジングマシン ⚫ 連続最適化問題 Quadratic 二次形 Unconstrained 制約条件なし • 整数計画問題 (決定変数が整数) Binary 0-1整数 (二値) • 0-1整数計画問題 (決定変数が二値) Optimization 計画(最適化) • 決定変数が連続値(実数など) ⚫ 決定変数が離散値 (整数など) QUBO目的関数 (0-1整数二次計画問題) 𝒇 𝒒 = ෍ 𝑄𝑖𝑗 𝑞𝑖 𝑞𝑗 + ෍ 𝑄𝑖𝑖 𝑞𝑖 𝑖<𝑗 𝒇: 目的関数 𝒇 𝒒 を最小化するような 𝒒 を求める 𝑖 𝒒: 決定変数 𝑸: 係数 Copyright© Fixstars Group クラウドサービス:Fixstars Amplify 10

11.

組合せ最適化の具体例

• お遍路巡り最短経路問題 𝒒 • どの順序でお寺を巡ると最短経路でお遍路を達成できるか? • 以下のような決定変数行列 𝒒 (88x88) を定義 • お寺 𝒊 を 𝒋 番目に巡る場合、 𝑞𝑖,𝑗 = 1 • そうでない場合、𝑞𝑖,𝑗 = 0 • 定式化 • 𝒒 とお寺間の距離を用いて、巡回距離 𝒇 𝒒 を定式化 1 番目 2 番目 3 番目 … 88 番目 お寺 1 1 0 0 … 0 お寺 2 0 1 0 … 0 お寺 3 0 0 1 … 0 … … … … … … お寺 88 0 0 0 … 1 求解後の 𝒒 の例 • 求解 • 𝒇 𝒒 が最小となる 𝒒 の要素の組合せを求解 Copyright© Fixstars Group 11

12.

Fixstars Amplify とは

– いつでも 開発環境 と 実行環境 がセット すぐにプログラミングと実行が出来る – 誰でも ハードウェアや専門的な知識が不要 無料で開発がスタート可能 多くの解説、サンプルコード – 高速に 26万ビットクラスの大規模問題の 高速処理と高速実行が可能 – あらゆる 一般に公開されている全てのイジング マシンを利用可能 Copyright© Fixstars Group 12

13.

Fixstars Amplify の対応マシンの一例

日本電気株式会社 (NEC) 標準マシン は、 • ベンダ各社と個別マシン利用契約なし、 • 評価・検証用ベーシックプランなら無料、 で利用可能!←「いつでも」、「誰でも」 今後も幅広い対応マシンの追加が続々と行 われる予定です!←「あらゆる」 Copyright© Fixstars Group 13

14.

Fixstars Amplify の内容と特徴

• 開発環境:Amplify SDK • 実行環境:Amplify Annealing Engine (AE) Copyright© Fixstars Group

15.

開発環境:Fixstars Amplify SDK

Fixstars Amplify SDK ならアニーリングのプログラミングが圧倒的に短縮されます 開発環境インストール $ pip install amplify 最適化コード例 Copyright© Fixstars Group 15

16.

実行環境:Fixstars Amplify Annealing Engine (AE)

NVIDIA GPU V100/A100 で動作 • 独自の並列化シミュレーテッド アニーリングアルゴリズム WEB経由で計算機能を提供 • 社会実装・PoC・検証が加速 • Amplify SDK の実装を直ぐに実行可能 商用マシンでは最大規模・最高速レベル • 120,000 ビット(全結合) • 260,000 ビット超(疎結合) ※評価・検証用途では無償提供 Copyright© Fixstars Group 17

17.

オンラインデモ & チュートリアル

Copyright© Fixstars Group Amplify デモ 検索 https://amplify.fixstars.com/ja/demo 19 19

18.

様々な分野で利用が拡大しています

住友商事株式会社 登録社・組織数: 約 累計実行回数: 700 4,000万回超 Copyright© Fixstars Group 20

19.

Fixstars Amplify ユーザー様インタビュー

• 業務・研究開発利用 SE Amplify インタビュー 検索 amplify.fixstars.com/ja/customers/interview • 学術利用 SE Copyright© Fixstars Group 21

20.

Fixstars Amplify ご利用プラン

Copyright© Fixstars Group

21.

料金のご紹介

https://amplify.fixstars.com/ja/pricing 開発支援サービス(個別見積り) コンサル・システム開発等 数百万円~数千万円 月額利用料 百万円~ 定式化や実装を 手厚く 支援します! Copyright© Fixstars Group 24

22.

セミナー・トレーニングのご紹介

https://amplify.fixstars.com/ja/news/seminar お客様の実際の課題解決をご支援するために、無料セミナーや有償トレーニングを提供しています。 無料セミナー・ワークショップ ビジネス向け、エンジニア向けに分けて 開催しています! 企業向けプライベートトレーニング お客様が抱える実際の課題やデータを使った カスタムメイド のトレーニングです! Copyright© Fixstars Group 25

23.

ワークショップ

事前準備(事前メールの内容) Copyright© Fixstars Group

24.

ワークショップの事前準備 (1)

• 【事前メールに記載】ご自身のPC (ブラウザ上) で Python プログラミングを行います。Google Colaboratory を使 うので、事前にログイン出来ることを確認をお願いします(要 Google アカウント) Google Colab 検索 https://colab.research.google.com/ • 【事前メールに記載】 Fixstars Amplify ホームページより ユーザ登録の上、無料トークンの取得をお願いします (1分で終わります) Fixstars Amplify 検索 https://amplify.fixstars.com/ 質問は随時 Zoom の Q&A へお願いします Copyright© Fixstars Group 27

25.

ワークショップの事前準備 (2)

【事前メールに記載】 • 取得されたトークンを用いて、トークンチェック用サンプルコードが動くか確認をお願いします。 https://colab.research.google.com/drive/1bg2Ql3McJck_Sto8uvxtmPUMWtRFhf7a (※URLはZoomのチャット欄を参照) • サンプルコードは閲覧のみ可能な状態です。「ファイル」→「ドライブにコピーを保存」の上、ご自身のトークンを入力してく ださい。その後、Shift + Enterで実行下さい。 ! pip install amplify token = "AE/*****************************" # ご自身のトークンを入力 • ご自身のトークン番号は、Amplifyウェブページ → よりご確認いただけます。 • 実行後、以下の結果が出力されればOKです。 result: [q_0, q_1] = [1. 1.] (f = 0.0) Copyright© Fixstars Group 28

26.

ワークショップ

通常の組合せ最適化 (ブラックボックス最適化への導入) Copyright© Fixstars Group

27.

サンプルコード

サンプルコードを開き、「ファイル」→「ドライブにコピー」の上、トークンを入力し実行して下さい。 • 数の分割サンプルコード https://colab.research.google.com/drive/1bl6BGPwnpd3N0AveoDMGb8egprEdQMqU (※URLはZoomのチャット欄を参照) 質問は随時 Zoom の Q&A へお願いします Copyright© Fixstars Group 30

28.

数の分割問題(概要)

• 与えられた 𝑛 個の整数𝑎0 , ⋯ , 𝑎𝑛−1 を二つの集合に分ける。 集合内の数の和が、もう一方の集合内の数の和と等しくなるようできるか? • NP完全問題: とても難しい問題として知られている → 全通り試すしか方法は無い • 問題のバリエーション • 判定問題: 完全に等しく出来るか?または等しい組合せは何か? • 最適化問題: 完全に等しいか、または最も惜しい組合せは何か? Copyright© Fixstars Group 31

29.

数の分割問題(具体例と解法の方針)

具体例 {2,10,3,8,5,7,9,5,3,2} の10個の数の完璧な分割は見つけられるか? 答え • 存在する • {2,3,5,7,10} と {2,3,5,8,9} • どちらも和は 27 • 分割方法は 23 通り存在する (対称を除く) どうやって解くか? • ひとつの『数』がどちらの集合に分割されるか全通り試す → 210 = 1024通り Copyright© Fixstars Group • 効率のよい厳密な方法は知られていない・・・ (もし発見されたら大騒ぎ) 32

30.

33

数の分割問題(定式化) 最適化問題:数の分割において最も惜しい組合せは何か? • 目的関数 {集合1の和} – {集合2の和} の絶対値を最小化 • 決定変数 数 𝑎𝑖 がどちらの集合に属するかを 𝒔𝒊 で表す • 𝑎𝑖 = { 2,10, 3, 8, 5, 7, 9, 5, 3, 2} • 𝑠𝑖 = {-1, 1,-1, 1,-1,-1, 1, 1, 1, 1} 数理モデル • 目的関数 𝑁−1 𝑓 = ෍ 𝑠𝑖 𝑎𝑖 𝑠𝑖 ∈ −1, +1 𝑖=0 Copyright© Fixstars Group σ 𝑠𝑖 𝑎𝑖 は、自然と {『1』の集合の和} – {『-1』の集合の和} となる!

31.

数の分割問題(バイナリへの式変形)

• 0-1整数二次計画問題への変換 • Quadratic Unconstrained Binary Optimization (QUBO) 式 𝑁−1 𝑓 = ෍ 𝑠𝑖 𝑎𝑖 𝑠𝑖 ∈ −1, +1 𝑖=0 𝑁−1 → ෍ 𝑠𝑖 𝑎𝑖 σ 𝑠𝑖 𝑎𝑖 は、自然と {『1』の集合の和} – {『-1』の集合の和} となる! 2 𝑠𝑖 ∈ −1, +1 絶対値を二次式で表す 𝑖=0 𝑁−1 → ෍ 2𝑞𝑖 − 1 𝑎𝑖 2 𝑞𝑖 ∈ 0, +1 ±1をバイナリで表す 𝑖=0 Copyright© Fixstars Group 34

32.

数の分割問題(定式化の具体例)

問題 • 𝑎𝑖 ={2,10,3,8,5,7,9,5,3,2} の10個の数の完璧な分割は見つけられるか? 決定変数 • 𝑞𝑖 = 𝑞0 , 𝑞1 , 𝑞2 , 𝑞3 , 𝑞4 , 𝑞5 , 𝑞6 , 𝑞7 , 𝑞8 , 𝑞9 𝑞𝑖 ∈ 0,1 で集合0又は集合1、どちらに所属するかを 表す 目的関数 2 𝑁 𝑓 = ෍ 2𝑞𝑖 − 1 𝑎𝑖 𝑖=1 目的関数を展開 2 2𝑞0 − 1 + 10 2𝑞1 − 1 + 3 2𝑞2 − 1 + 8 2𝑞3 − 1 + 5 2𝑞4 − 1 𝑓= +7 2𝑞5 − 1 + 9 2𝑞6 − 1 + 5 2𝑞7 − 1 + 3 2𝑞8 − 1 + 2 2𝑞9 − 1 Copyright© Fixstars Group 2 35

33.

数の分割問題(プログラムコード)

• 問題の定義と決定変数生成器による決定変数の生成 a = [2, 10, 3, 8, 5, 7, 9, 5, 3, 2] q = amplify.VariableGenerator().array(“Binary”, len(a)) 2 1. 定式化 2. 実行 • 目的関数、𝑓 = σ𝑁𝑖=1 2𝑞𝑖 − 1 𝑎𝑖 、の定式化(①②③は同等) ① f = ((2 * q - 1) * a).sum() ** 2 ② f = 0 for i in range(len(a)): f += (2 * q[i] - 1) * a[i] f **= 2 ③ f = amplify.sum((2 * q - 1) * a) ** 2 色々な書き方が出来る result = amplify.solve(f, client) 得られた目的関数の値0 3. 結果 各集合の合計値27 q = [1, 1, 1, 0, 1, 1, 0, 0, 0, 0], f = 0.0, w = 27 Copyright© Fixstars Group 各数字に対して、集合0か、集合1か 36

34.

オンラインデモ & チュートリアル

Copyright© Fixstars Group Amplify デモ 検索 https://amplify.fixstars.com/ja/demo 37 37

35.

組合せ最適化と

ブラックボックス最適化 Copyright© Fixstars Group 38

36.

組合せ最適化とブラックボックス最適化

通常の組合せ最適化 ブラックボックス最適化 • 課題に対し、 2次定式化 (QUBO) を実施 • 課題が複雑で直接の定式化が不可能。 • 数の分割 例) 最も計測精度が高くなるセンサー群の配置は? 𝑓 = Σ 2𝑞𝑖 − 1 𝑎𝑖 2 ➔ 実験かシミュレーション(コスト大) • 生産計画最適化 𝑓 = ΣΣ Σ𝑎𝑖 𝑝𝑖 𝑞𝑚,𝑖,𝑡 + ΣΣ𝑏𝑖 𝑠𝑖 𝑞𝑚,𝑖,𝑡 𝑞𝑚,𝑖−1,𝑓 ⋯ • シミュレーションや実験の試行回数の削減 • TSP問題(お遍路巡り最短経路探索) 𝑓 = ΣΣΣ𝑑𝑖,𝑗 𝑞𝑛,𝑖 𝑞𝑛+1,𝑗 ⋯ ➔ シミュレーションや実験が楽になる • QUBO式に対し、直接アニーリングを行う (量子アニーリング・イジングマシン) • 逆問題に対するアプローチとしても適用化 例) ある計測値を実現する実験条件を見つける Copyright© Fixstars Group 39

37.

FMQAの紹介

Copyright© Fixstars Group

38.

ブラックボックス最適化

数理最適化 ブラックボックス最適化 目的関数値 𝒇 𝒙 のみ観測可能 • 目的関数の形状や勾配などは何も分からない。 機械学習 + 量子アニーリング/イジングマシン 目的関数の評価回数に限りがある • 入力集合 Ω が有限集合であっても全検索できない。 イメージ • 5種類の材料から、いくつかの材料を選択・合成し、最も電気抵抗の小さな物質を作る。 • 決定変数(材料の選択肢)𝒙 ・・・ 5桁の01ビットでどの材料を選択するかを記述 𝒙 = [1,0,0,0,0], [1,1,0,0,0], [1,0,1,0,0], ⋯ , [1,1,1,1,1] → 25 − 1 通 り • 目的関数 𝑓 𝒙 = 合成物質の電気抵抗(実験又は数値シミュレーション) Copyright© Fixstars Group 41

39.

ブラックボックス最適化アプローチ

数理最適化 ブラックボックス関数 𝑓 𝒙 に対して、以下サイクルを繰り返す (実験・シミュレーション) (フローはベイズ最適化に似ている、本質は異なる) ブラックボックス最適化 機械学習 + 量子アニーリング/イジングマシン ① 初期教師データを構築(𝑁0 回の目的関数の評価) ② 教師データからモデル関数 𝑔 𝒙 を構築 ෝ を推定 ③ モデル関数 𝑔 𝒙 が最小となる点 𝒙 ෝ, 𝑓 𝒙 ෝ ④ 目的関数 の評価結果 𝒙 ②~④を 𝑁 回繰り返す を教師データに追加 実験 ミュレーション 課題: 1. 𝑔 𝒙 の構築? Factorization Machine(機械学習モデル) 2. 𝑔 𝒙 最小化を実現するෝ 𝒙 の推定? Copyright© Fixstars Group 学習モデルをQUBOとしてAmplifyで求解 K. Kitai, et al., Phys. Rev. Res. (2020). T. Inoue, et al., Opt. Express (2022). 42

40.

ブラックボックス最適化アプローチ

数理最適化 ブラックボックス関数 𝑓 𝒙 に対して、以下サイクルを繰り返す (実験・シミュレーション) ブラックボックス最適化 機械学習 + 量子アニーリング/イジングマシン (フローはベイズ最適化に似ている、本質は異なる) ① 初期教師データを構築(𝑁0 回の目的関数の評価) ② 教師データからモデル関数 𝑔 𝒙 を構築 D 初期教師データ構築のための評価 (例:ランダム探索) ②~④を 𝑁 − 𝑁0 回繰り返す ෝ を推定 ③ モデル関数 𝑔 𝒙 が最小となる点 𝒙 ෝ, 𝑓 𝒙 ෝ ④ 目的関数 の評価結果 𝒙 最適化サイクル中 における評価 を教師データに追加 実験 ミュレーション 最適化サイクルと共に最適化点近傍の 「良質」データが徐々に蓄積 課題: 1. 𝑔 𝒙 の構築? Factorization Machine(機械学習モデル) 2. 𝑔 𝒙 最小化を実現するෝ 𝒙 の推定? Copyright© Fixstars Group 学習モデルをQUBOとしてAmplifyで求解 43

41.

獲得関数としての Factorization Machine (FM)

• モデル関数 𝑔(𝒙) に機械学習モデルの一種である Factorization Machine (FM) を用いると、次のよう に変数 𝒙 に対する2次式での記述ができる。 𝑛 𝑛 𝑔 𝒙 𝒘, � = 𝑤0 + 𝒘, 𝒙 + ෍ ෍ 𝒗𝑖 , 𝒗𝑗 𝑥𝑖 𝑥𝑗 𝑖=1 𝑗=𝑖+1 𝑛 𝑘 1 = 𝑤0 + ෍ 𝑤𝑖 𝑥𝑖 + ෍ 2 𝑖=1 𝑓=1 𝑛 ෍ 𝑣𝑖𝑓 𝑥𝑖 𝑖=1 2 𝑛 ➔ QUBO式 2 2 − ෍ 𝑣𝑖𝑓 𝑥𝑖 𝑖=1 • 𝑘 はハイパーパラメータ、 𝒘 及び 𝒗 は FM 学習後に取得される FM パラメータ。 • FM パラメータ数は 𝑘 に依存。𝑘 = 𝑛 のときは QUBO の相互作用項と同じ自由度がある一方、 𝑘 を小さくするこ とでパラメータ数を減らし過学習を抑制する効果 • このようなブラックボックス最適化手法を FMQA と呼ぶ場合がある。 Copyright© Fixstars Group K. Kitai, et al., Phys. Rev. Res. (2020). T. Inoue, et al., Opt. Express (2022). 44

42.

ブラックボックス最適化 活用例

材料分野に限らず、幅広い分野へ適用可能 Copyright© Fixstars Group

43.

ブラックボックス最適化 活用例

• デモ・チュートリアルページで公開の活用例及び非公開の活用例 Amplify デモ 検索 https://amplify.fixstars.com/ja/demo 機械学習への 応用 FMQA入門 物理・材料 プラント工学 流体工学 Copyright© Fixstars Group 交通制御 機械学習 47

44.

ブラックボックス最適化

1. 機械学習 (FM) ハンズオン 2. FMQA ハンズオン Copyright© Fixstars Group

45.

SVMによるMNIST画像認識モデル

Copyright© Fixstars Group 49

46.

ブラックボックス最適化のデモプログラム ― 機械学習 (FM)

『マスク』を入力とし、『マスクに従って削減された特徴量に基づく SVM モデルの精度』を予測するFMモデル https://colab.research.google.com/drive/1WmXIWVAQ-2MasS7XU9EE4rXXDb1loqnm 問題設定 最適化サイクル マスクを 𝒙 とすると、ブラックボックス関数 𝑓(𝒙) は、 1. 教師データから獲得関数 𝑔(𝒙) を構築 (FM) 𝑓 𝒙 = 1. 学習データに基づき、(入力 𝒙 でマスクされない入 力特徴量のみを考慮して)SVM 学習 2. テストデータに基づき、(入力 𝒙 でマスクされない 入力特徴量のみを考慮して)学習済みSVMモデ ルをテスト 3. SVMモデルの評価結果(正答率の負値)を返却 Copyright© Fixstars Group ෝ を推定 (QA) 2. 獲得関数 𝑔(𝒙) が最小となる点 𝒙 ෝ, 𝑓(𝒙 ෝ) を教師データに追加 3. 評価結果 𝒙 ↑のサイクルにより、最適化点近傍におけるFMの予測 ෝ の推 精度が向上し、組合せ最適化により、より良い 𝒙 定が期待される 50

47.

FMデモプログラム 1/6(SVMクラスの実装)

• __init__ • 引数のマスク率に応じてクラスを初期化 • _num_features: 特徴量の総数 (28x28=784個) • _num_masked_features: マスクす る特徴量の数 • generate_random_mask • マスク率を満たすマスクをランダムに生 成する関数 • train_eval • 与えられたマスクに基づく特徴量で学習 を行い、得られたモデルを評価し、モデ ルの正答率を返却する関数。 Copyright© Fixstars Group 51

48.

FM デモプログラム 2/6(ブラックボックス関数の定義)

• make_blackbox_func: ブラックボックス関数を生 成する関数 • blackbox_func: MnistSvm.train_eval から返却される正答率を(-1)倍して返却 ➔つまり、ブラックボックス関数からの返却値は、 学習済みSVMモデルのテストデータに対する 正答率の負値 関数の利用例: • マスク率75%を考慮する場合のブラックボックス関数 • 特徴量588個をマスク、それ以外 (196個)を SVMで考慮 Copyright© Fixstars Group 52

49.

FM デモプログラム 3/6(FMの定義)

• FM モデルを PyTorch で定義する Copyright© Fixstars Group 53

50.

FM デモプログラム 4/6(FMの学習)

FM 学習は、通常の機械学習と同様に進める。教師 データを学習・検証データに分割し、ミニバッチ学習。 • x, y: 教師データ • model: FM モデル(TorchFM) • epochs: エポック(繰り返し)の数 • lr:(初期)学習率 • scheduler: 学習率スケジューラー 学習後、最も良いモデルに対し、次のような評価を実施 Copyright© Fixstars Group 54

51.

FM デモプログラム 5/6(教師データ作成)

教師データを乱数により生成 • mnist_svm:MnistSvmクラスインスタンス • n0:初期教師データのサンプル数 • blackbox:ブラックボックス関数(実験又は シミュレーション) 𝑓(𝒙) Copyright© Fixstars Group 55

52.

FM デモプログラム 6/6(メイン部分)

実際にサンプルプログラムを実行してみま しょう。デフォルトの条件から、 • FMのハイパーパラメータ (k) • エポック数 (epochs) を変更した場合、真値と予測値の相関係数 及びRMS誤差はどのように変化するでしょ うか? Copyright© Fixstars Group 56

53.

ブラックボックス最適化

1. 機械学習 (FM) ハンズオン 2. FMQA ハンズオン Copyright© Fixstars Group

54.

ブラックボックス最適化のデモプログラム

FMQAによる画像分類モデルのための最適特徴量選択 https://colab.research.google.com/drive/12vElYQoIgOJJhDucoUqAs8ktJzolnUK7 問題設定 最適化サイクル マスクを 𝒙 とすると、ブラックボックス関数 𝑓(𝒙) は、 1. 教師データから獲得関数 𝑔(𝒙) を構築 (FM) 𝑓 𝒙 = 1. 学習データに基づき、(入力 𝒙 でマスクされない入 力特徴量のみを考慮して)SVM 学習 2. テストデータに基づき、(入力 𝒙 でマスクされない 入力特徴量のみを考慮して)学習済みSVMモデ ルをテスト 3. SVMモデルの評価結果(正答率)を返却 Copyright© Fixstars Group ෝ を推定 (QA) 2. 獲得関数 𝑔(𝒙) が最小となる点 𝒙 ෝ, 𝑓(𝒙 ෝ) を教師データに追加 3. 評価結果 𝒙 ↑のサイクルにより、最適化点近傍におけるFMの予測 ෝ の推 精度が向上し、組合せ最適化により、より良い 𝒙 定が期待される 58

55.

FMQA デモプログラム 1/3 (アニーリング部分)

ෝ を推定する関数 学習済みFMモデルに基づき 𝒙 • 決定変数配列の作成 • 学習済みFMモデルからパラメータ(重み・バイアス)を取得 • パラメータに基づき目的関数のサロゲートモデル 𝑔(𝒙) を作成 • サロゲートモデルを制約条件(後述)と合わせて amplify.Modelを作成 • 単に、objective + constraint(x) でも良い • amplify.solve によりアニーリングを実行 ෝ を返却 • このサイクルにおける 𝒙 Copyright© Fixstars Group 59

56.

FMQA デモプログラム 2/3 (制約条件の設定)

• get_constraint(q) 最適マスクを決定する決定変数 𝒙 に基づく以下の制約 条件を返却する関数 制約条件 • σ𝑛0 𝑥𝑖 = mnist_svm.num_masked_features Copyright© Fixstars Group 60

57.

FMQA デモプログラム 3/3(メイン部分)

1. train() による FM モデルの学習 2. anneal() によるアニーリング • FM モデル値を最小化するような入力値(マスク)を探索 3. 得られた入力値(マスク)が既存の場合の処理 4. 得られた入力値(マスク)によるブラックボックス関数の評価 • マスク適用後の学習データを使ってSVMモデル学習 • マスク適用後のテストデータを使ってSVMモデル評価 • 正答率の負値を返却 5. 新しい入出力ペアをデータセットに追加 Copyright© Fixstars Group 61

58.

デモプログラムの実行

• 全特徴量 (784個) を考慮した場合のモデル評価 • accuracy_score=0.905 • FMQA の基本条件 • 初期データ個数:10個 • FMQAの最適化サイクル数:20回 • 特徴量:784個→196個(75%減) • 実行時間 • およそ5分 Copyright© Fixstars Group (上)最終的に得られたマスクをいくつかの手書 62 き画像に重ねた例と(下)最適化の履歴

59.

FMQA デモプログラムの実務での活用方法

基本的に、blackbox() を変更する。必要に応じて、 現在の教師データの出力などを追加。 • 例①:blackbox() 内で特徴量選択ではなく、枝刈りやデ ータ選択、ハイパラチューニング等を実施し、学習済みモデルの 評価結果が最適になる様に手法を調整 • 例②:blackbox() 内でシミュレーションを呼び出し、後処 理、その戻り値を最小化するように最適化。 • 例 ③ : blackbox() 内 で 実 験 を 行 う 。 つ ま り 、 1 回 の ෝ を対象に実験し、結果を教 FMQA で推定された探索候補 𝒙 師データに追加、次のFMQA 試行を行う。 • ℎ 𝒙 を最大にするような入力 𝒙 を推定する場合は、1/ℎ 𝒙 や −ℎ 𝒙 などを目的関数 𝑓 𝒙 とする。 Copyright© Fixstars Group 63

60.

今後について

ぜひ、デモ・チュートリアルにあるサンプルコードにも挑戦してみてください! 一般的な組合せ最適化問題 目的関数のみで 定式化 制約条件のみで 定式化 ブラックボックス最適化問題 目的関数 + 制約条件 概要 材料探索 翼型最適化 信号機制御 困った時はドキュメンテーションを! https://amplify.fixstars.com/docs/amplify/v1/index.html Copyright© Fixstars Group 64

61.

今後のセミナーの予定

今後も定期的に無料セミナーを開催します! 2024/8/22 「ブラックボックス最適化 (機械学習)」 2024/9/25 「ブラックボックス最適化 (材料探索)」 2024/10/15 「シフト最適化」 ・はじめに ・会社紹介 ・Fixstars Amplifyの紹介 ・ブラックボックス最適化のワークシ ョップ ・Wrap Up ・事例のご紹介 ・今後の進め方 ・Q&A ・はじめに ・会社紹介 ・Fixstars Amplifyの紹介 ・ブラックボックス最適化のワークシ ョップ ・Wrap Up ・事例のご紹介 ・今後の進め方 ・Q&A ・はじめに ・会社紹介 ・Fixstars Amplifyのご紹介 ・経路最適化のワークショップ ・Wrap Up ・事例のご紹介 ・今後の進め方 ・Q&A (AnnealingEngine) ご質問・ご不明点がありましたら、お問い合わせフォームでご連絡下さい https://amplify.fixstars.com/ja/contact Copyright© Fixstars Group 65

62.

Q&A

Copyright© Fixstars Group 66