$30 off During Our Annual Pro Sale. View Details »

230315_symposium

yuki
March 15, 2023
310

 230315_symposium

yuki

March 15, 2023
Tweet

Transcript

  1. 機械学習を用いた
    モータ設計の技術動向
    清水 悠生* 桂井 麻里衣**
    *立命館大学 / 株式会社MotorAI
    **同志社大学
    2023/03/15
    @令和5年電気学会全国大会
    S16 機械学習を活用した回転機設計技術の最前線
    -モータ設計・解析分野でAIは役に立つのか?-
    @YuYuMoYuYu
    発表資料はこちら

    View Slide

  2. 2
    目次
    ✓ 本シンポジウムを楽しむための機械学習の基礎
    ✓ 機械学習を用いたモータ設計の技術動向
    ✓ 大規模モデルがモータ分野に与える影響

    View Slide

  3. 3
    目次
    ✓ 本シンポジウムを楽しむための機械学習の基礎
    ✓ 機械学習を用いたモータ設計の技術動向
    ✓ 大規模モデルがモータ分野に与える影響

    View Slide

  4. 4
    機械学習は何をする?
    ✓ 機械学習の役割は入力と出力の関係を関数化すること
    形状
    速度
    トルク
    運転特性
    有限要素解析
    数値 𝑥 数値 𝑦
    𝑦 = 𝑓(𝑥)
    関数 𝑓 を近似!
    (参考) アイシア=ソリッド, ディープラーニングの世界
    https://www.youtube.com/watch?v=SyWwoMpP_P4

    View Slide

  5. 5
    何を”学習”している?
    ✓ 学習とはデータに適していそうな関数を見つけること
    (参考) アイシア=ソリッド, ディープラーニングの世界
    https://www.youtube.com/watch?v=RLlTmbyJORM
    電流
    トルク
    電流
    トルク
    関数化
    データ
    学習した関数
    学習のステップ
    ① 「どんな関数を使うか」を決める
    ⇒ T=aI で最も良いパラメータ a を見つけよう!
    ② 「良さ/悪さ」を決める
    ⇒ 最も2乗誤差が小さくなる a を見つけよう!
    ③ 探す(パラメータの最適化)
    ˆ
    T aI
    =

    View Slide

  6. 6
    学習の難しさと過学習
    ✓ 実際には「どんな関数が適切か」は不明な場合が多い
    ✓ 自由度の高い関数を使えば、「良い」関数は作れてしまう
    ⇒未知のデータに対しては「良くない」場合も(過学習)
    ✓ 学習した関数が未知データにも「良い」か評価する必要有
    ⇒学習データを訓練/テストデータに分割して使用
    1次関数で学習 5次関数で学習 15次関数で学習
    訓練データ以外の
    データに関しては
    予測精度が低下
    T aI b
    = + 5 4 ...
    T aI bI
    = + + 15 14 ...
    T aI bI
    = + + 100 99 ...
    T aI bI
    = + +
    I
    T
    I
    T
    I
    T
    I
    T
    100次関数で学習
    訓練データに
    対する誤差が0

    View Slide

  7. 7
    代表的な回帰モデル(非ニューラルネット)
    ✓ パラメータ数を抑えながら、多様な表現が可能な
    様々な回帰モデルが提案されてきた(下記は一例)
    手法 関数 良さ/悪さの定義 (E :誤差関数)
    最小二乗法
    線形結合の関数や
    カーネル法による関数
    リッジ回帰
    線形結合の関数や
    カーネル法による関数
    サポート
    ベクタ回帰
    線形結合の関数や
    カーネル法による関数
    ガウス
    過程回帰
    線形結合の関数や
    カーネル法による関数
    勾配ブース
    ティング
    (XGBoostなど)
    複数の回帰木の
    アンサンブル学習
    ˆ
    y y

    2 2
    ˆ
    E 
    = − +
    y y w
    ˆ
    y y

    予測
    正則化項
    2
    ˆ
    E = −
    y y
    訓練データ
    ˆ
    y y
    − ( ) 2
    ˆ
    E h 
    = − +
    y y w
    ε-不感誤差
    ( ) 1 1
    cov  
    − −
    = +
    y K I
    共分散行列
    ˆ
    y y
    − 2乗誤差や絶対誤差など
    2
    ˆ
    E = −
    y y

    View Slide

  8. 8
    多層パーセプトロン/人工ニューラルネットワーク(1/2)
    *MLP: Multilayer Perceptron/ANN: Artificial Neural Network
    ✓ パラメータ数を抑えながら、多様な表現が可能な関数
    (参考) アイシア=ソリッド, ディープラーニングの世界
    https://www.youtube.com/watch?v=Mw4j4yPsFtg
    ポイント①:深くすること⇒単純な関数の繰り返しで複雑な関数を表現
    ( )
    2
    2 1
    y f x
    x
    =
    = −
    ( )
    ( )
    ( )
    8
    128 ...
    y f f f x
    x
    =
    = +
    ( )
    ( )
    ( )2
    2
    4
    2 2 1 1
    8 ...
    y f f x
    x
    x
    =
    = − −
    = +
    x
    y
    x
    y
    x
    y
    x1
    x2
    x3
    y
    z1
    z2
    z3
    z4
    x z y
    f(x) g(z)
    Ex)
    単純な関数も
    繰り返すと複雑に!
    単純な関数を繰り返しているだけ
    ( )
    1 1 2 3
    , ,
    z f x x x
    =

    View Slide

  9. 9
    多層パーセプトロン/人工ニューラルネットワーク(2/2)
    *MLP: Multilayer Perceptron/ANN: Artificial Neural Network
    ✓ パラメータ数を抑えながら、多様な表現が可能な関数
    (参考) アイシア=ソリッド, ディープラーニングの世界
    https://www.youtube.com/watch?v=Mw4j4yPsFtg
    ポイント②:線形と非線形の融合⇒パラメータの数を抑える工夫
    x1
    x2
    x3
    y
    z1
    z2
    z3
    z4
    x z y
    f(x) g(z)
    単純な関数を繰り返しているだけ
    1次関数の合成:1次関数にしかならない
    2次関数の合成:パラメータ数爆発
    ⇒1次関数+単純な非線形関数を適用
    1次関数
    非線形関数
    (活性化関数)
    ( )
    ( )
    1 1 2 3
    1 1 2 2 3 3
    , ,
    z f x x x
    a x a x a x b

    =
    = + + +
    活性化関数の例
    ReLU
    (Rectified Linear Unit)
    x
     (x)
    ( )
    ( )
    ( )
    0 0
    0
    x
    x
    x x

     

    = 



    0

    View Slide

  10. 10
    畳み込みニューラルネットワーク
    *CNN: Convolutional Neural Network
    ✓ 画像は数値が並んでいるだけ、それ自体に意味を持たない
    ✓ 畳み込み層により画像の特徴量を抽出する
    + +
    =
    256
    256
    赤成分
    行列
    緑成分
    行列
    青成分
    行列
    パターン
    一致度を畳み込みで計算
    (各要素の積の和)
    画像 特徴マップ
    パターンとの一致度を抽出
    (黒いほど一致)

    View Slide

  11. 11
    その他のNNモデル(生成モデルなど)
    ✓ 本シンポジウムに登場する手法のみを抜粋
    ◆ オートエンコーダ(AE: Autoencoder)
    3層以上のニューラルネットで
    入力と出力が同じデータとなるよう
    教師なし学習をさせる手法
    ◆ 変分オートエンコーダ(VAE: Variational Autoencoder)
    入出力の再構成誤差の他に
    潜在変数が標準正規分布に従うよう
    学習させる手法
    ◆ 敵対的生成ネットワーク(GAN: Generative Adversarial Network)
    本物そっくりのデータを生成する生成器と
    データの真偽を識別する識別機が
    競争的に学習する生成モデル
    x x’
    Encoder Decoder
    x x’
    Encoder Decoder
    z
    潜在変数
    ( )
    ~ 0,
    z I
    N
    x
    x’
    Discriminator
    Generator
    z
    潜在変数
    0/1

    View Slide

  12. 12
    初学者向け; おすすめの回帰モデル(超偏見)
    ✓ 表形式データで、データ数が1万以下?
    ⇒初手:リッジ回帰 (線形), サポートベクタ回帰 (非線形/RBFカーネル)
    リッジ回帰: https://yuyumoyuyu.com/2021/01/03/regularizedleastsquares/
    サポートベクター回帰: https://yuyumoyuyu.com/2021/01/10/supportvectorregression/
    ✓ 表形式データで、データ数が1万以上?
    ⇒初手:XGBoost(最速)、次にMLP(Optunaでハイパラ最適化)
    XGBoost: https://yuyumoyuyu.com/2021/02/21/ensembledecisiontree/
    ✓ 画像データ?
    ⇒初手: ResNet-18(CNNの一種)
    *Pytorchの標準モデルが使いやすい
    *データ数が少なければ転移学習/ファインチューニング
    ※もちろんこれら以外にも適切な手法はたくさんあります

    View Slide

  13. 13
    目次
    ✓ 本シンポジウムを楽しむための機械学習の基礎
    ✓ 機械学習を用いたモータ設計の技術動向
    ✓ 大規模モデルがモータ分野に与える影響

    View Slide

  14. 14
    国際会議の動向
    COMPUMAG 2023
    Topic 15
    AI and machine
    learning technologies
    IEMDC 2023
    SS4
    Learning-based
    Electric Machine
    Design & Optimization
    ✓ 国際会議ではセッションが組まれるように

    View Slide

  15. 15
    0
    5
    10
    15
    2015 2016 2017 2018 2019 2020 2021 2022~
    発表論文数 (件)
    発表年
    論文投稿数
    ✓ 論文数は増加傾向にあるものの
    異常検知分野や制御分野に比べると数は少ない
    モータ設計分野の機械学習応用に関する論文発表件数(2022/08まで)

    View Slide

  16. 16
    研究の性質
    ✓ 最適化までを含めた論文がほとんど
    (論文としての新規性を見出しやすいため?)
    ⇒それ以外にも嬉しいことはたくさんある!
    形状最適化
    (72%)
    トポロジー最適化
    (28%)

    View Slide

  17. 17
    機械学習で関数化したら何が嬉しい?
    ✓ 高速な演算
    形状, 変数
    特性
    ✓ 補間ができる
    関数化のおかげで解を瞬時に計算(vs 解析)
    ・多くの形状候補を検討, 最適化できる
    ・設計変更もスムーズに対応できる
    ・設計者がパラメータを弄って遊べる
    (教育的効果)
    𝑦 = 𝑓(𝑥)
    ✓ 微分可能性(木系除く)
    だから
    データ
    機械学習
    離散的なデータから連続的な関数化
    ・最低限のデータから多くの情報を入手
    ・より詳細なパラメータ設計ができる
    だから
    微分可能な関数で関数化
    ・特性を向上する設計指針がわかる
    ・平坦さに着目すると
    形状にロバストな最適化ができる
    だから
    形状
    特性
    こっちを
    検討!
    形状
    特性 公差に
    ロバスト!

    View Slide

  18. 18
    対話的なモータ設計のイメージ
    寸法で表現
    画像で表現
    Shimizu+, IEEE Energy Convers., 2023
    Shimizu, IEEE Access, 2023
    相電流
    DC電圧
    形状変化(トルク向上)
    形状変化(低速効率向上)
    形状変化(高速効率向上)

    View Slide

  19. 19
    機械学習活用のプロセス
    訓練データセットの作成
    (有限要素解析/実機評価など)
    入力変数の定義 予測対象の設定
    機械学習によるモデリング
    モータ設計への応用
    (データ解析/最適化など)
    典型的なフロー(教師あり学習)
    最重要!!

    View Slide

  20. 20
    機械学習活用を始めるための重要な問い
    明日までに
    あなたが解きたい問題に
    関連するデータを
    1000組集めてください

    View Slide

  21. 21
    有限要素解析でデータを集める場合
    ✓ たくさんのデータを効率的に集める方法を考えると
    解きたい課題(入出力変数)がクリアに
    訓練データセットの作成
    (有限要素解析/実機評価など)
    入力変数の定義 予測対象の設定
    機械学習によるモデリング
    モータ設計への応用 効率 減磁
    脈動
    トルク
    入力条件
    出力特性
    解析
    電流
    回転速度
    温度
    磁性材料


    形状 条件

    View Slide

  22. 22
    TMEICの研究事例
    ✓ 設計者の仕様選択を支援するシステム
    ✓ 機械学習用のデータが元々整理されていたからこその成果
    (引用) https://www.tmeic.co.jp/news_event/pressrelease/2022/20220921.pdf

    View Slide

  23. 23
    目次
    ✓ 本シンポジウムを楽しむための機械学習の基礎
    ✓ 機械学習を用いたモータ設計の技術動向
    ✓ 大規模モデルがモータ分野に与える影響

    View Slide

  24. 24
    大規模モデルとオープンソースの流れ
    ✓ 特に2022年下半期以降、多くの大規模モデルが発表、公開
    ✓ 毎日のように新たなAIサービスが発表され続けている
    https://theresanaiforthat.com/timeline/

    View Slide

  25. 25
    Stable DiffusionとChatGPT
    ✓ Stable Diffusion (‘22/08/23)
    高精細な画像の生成・加工が可能
    オープンソースで公開されたため
    派生サービスが乱立するように
    ✓ ChatGPT (‘22/11/30)
    大規模言語モデルを使用して
    高度な対話(チャット)が可能に
    公開からわずか2か月で
    1億のユーザーに到達
    https://stability.ai/blog/stable-diffusion-public-release
    https://openai.com/blog/chatgpt

    View Slide

  26. 26
    大規模モデルによりモータ設計分野はどうなる?
    ① 全てのモータ設計者が
    最低限のデータ解析技術を身に着けて
    設計業務に活用する時代へ
    ② 大規模モデルを活用して
    高度なモータ設計を自動的に行う
    モータ設計AIの構築
    (⇒こっちは僕たちの仕事)

    View Slide

  27. 27
    プログラミングが容易に活用できる時代に

    View Slide

  28. 28
    プログラミングが容易に活用できる時代に
    機械学習自体を扱う障壁は更に低く
    ⇒だからこそ、データが非常に重要に!

    View Slide

  29. 29
    本発表のまとめと伝えたかったこと
    ✓ 機械学習の役割は“関数化”
    データを関数化(モデリング)することで様々な利点
    ✓ モータ設計分野でも少しずつAI技術が活用され始めている
    ✓ 専門領域のデータを収集しておくことが非常に重要
    ✓ 大規模モデルの台頭により
    プログラミングや機械学習分野への参入障壁は更に低く
    ✓ ⇒ 始めるなら今しかない!

    View Slide

  30. 30

    View Slide

  31. 31
    大規模モデルを活用しよう
    ✓ 本編に入りきらなかった事例たち

    View Slide

  32. 32
    ②ChatGPTを活用したロボット/ドローン制御
    ✓ 制御用の関数, APIをLLMが認識しやすいように設計
    ✓ 自然言語でLLMに指令、それを基にLLMが制御プログラムを設計
    https://www.microsoft.com/en-us/research/group/autonomous-systems-group-robotics/articles/chatgpt-for-robotics/

    View Slide

  33. 33
    ②Stable Diffusionを用いたfMRI信号⇒画像生成
    ✓ 被験者のfMRI信号から、被験者が見た画像を生成
    ✓ Stable Diffusionへ入力するMLPのみを学習
    (引用) https://www.biorxiv.org/content/10.1101/2022.11.18.517004v2.full.pdf

    View Slide

  34. 34
    ② GPT-4
    ✓ GPT-X(ChatGPTの中身)が画像まで扱えるように!精度も向上!
    https://cdn.openai.com/papers/gpt-4.pdf
    問題
    GPT-4の回答

    View Slide