AI・データサイエンスに関する最近の話題
第16回北陸CAE懇話会
2024/07/19
株式会社インサイト
三好昭生

Copyright (C) 2024, Insight, Inc.

1

目次
1. 生成系AIの時代CAEエンジニアは何を学ぶ?(3)2. 「深層学習2」の改訂 (2)3. 「ADVENTURE_on_Windowsを用いたサロゲートモデル作成」改訂(2)4. CAEにおけるLLMの可能性 (2)5. GitHub copilotの紹介(12)6.大規模言語モデルLLMの活用に関する社内検討(2)7.4次元変分法を使った2次元流体解析のデータ同化(1)8. インサイトの取り組み(2)Copyright (C) 2024, Insight, Inc.

2

0.スマホ教育アプリ• Google Play StoreやApple Storeで「CAE 固体」でヒット

Copyright (C) 2024, Insight, Inc.

3

1. 生成系AIの時代CAEエンジニアは何を学ぶ?(1)•生成系AIが急速に進歩しました•今更、何を勉強するの???
•素朴な疑問• 何でも生成AIが教えて呉れるじゃないか• もう、難しい事を学ばなくてもいいかも...
Copyright (C) 2024, Insight, Inc.

4

1. 生成系AIの時代CAEエンジニアは何を学ぶ?(2)• でも生成AIは、いつも本当を答えるとは限らない。
• 大抵本当だけど、少し嘘が混じる。
• Hallucinationと呼ぶらしい。

• 仕事ではツールとして使えない?
• それは残念。
• でも、正しい事だけ選り取れば良いのではないか?
Copyright (C) 2024, Insight, Inc.

5

1. 生成系AIの時代CAEエンジニアは何を学ぶ?(3)• どうやって正しい事だけ選り取るの?
• ドメイン(専門分野の)知識が必要• でも、100%の知識が必要なら、生成AIは不要だと思う• 100%の知識を持つのは誰にも無理な話である
Copyright (C) 2024, Insight, Inc.

6

1. 生成系AIの時代CAEエンジニアは何を学ぶ?(4)• 6、7割のドメイン知識と生成AIのくせに関する知識で何とかなるかも• 生成AIに関するくせってどう学ぶ?
• ノウハウ集は一つの解決策• 弊社データサイエンス勉強会「深層学習2」の教材改訂
Copyright (C) 2024, Insight, Inc.

7

2. 「深層学習2」の改訂 (1)• 深層学習2では、「学習の仕組み」を学ぶ• 学習の仕組みとは、重み係数とバイアスを更新して、予測値の誤差を減らす事である。
• そこで重み係数に関する微分が登場する。
• この教材では、微分に数値微分を用いている。
• 数値微分はとてつも無く計算が遅い。

• 「深層学習3」では、高速な逆伝播法を用いる。
• 逆伝播法は、込み入っていて、理解するのが、難しい。
Copyright (C) 2024, Insight, Inc.

8

2. 「深層学習2」の改訂 (2)•バグが有ったが、計算が遅過ぎてデバグが大変だった。
•生成AIに修正案を作らせた。
→解決した。
テキストも合わせて、改訂した。
Copyright (C) 2024, Insight, Inc.

9

3. 「ADVENTURE_on_Windowsを用いたサロゲートモデル作成」改訂(1)• 従来ADVENTUREのネイティブCADであるADVENTURE_Cadで形状を記述する事が多かったが、表面メッシュ生成機能が不安定であった。
• 新たに形状を指定するパスを追加した。
• FreeCADとGmshの連携でメッシュを作成する道筋を付けた。
• いずれもPythonで制御する。
Copyright (C) 2024, Insight, Inc.

10

3. 「ADVENTURE_on_Windowsを用いたサロゲー
トモデル作成」改訂(2)• FreeCADでは、形状をPythonプログラムで記述する。
• パラメトリックな形状生成が可能。

• 形状をSTEPでエクスポートする。

• Gmshでは、形状インポートとメッシュ生成を.geoファイルで制御する。
• Pythonで、.geoファイルを生成する。
• 複数材料のメッシュ生成も問題無い。

• 自動実行が可能である。

Copyright (C) 2024, Insight, Inc.

11

4. CAEにおけるLLMの可能性(1)• 生成系AIとLLM(Large Language Model)の急速な進歩• Chat-GPT、GPT-4o、Gemini 1.5、perplexity、Claude 3.5 Sonnet• 生成系AIとCAEの融合• 自然言語で応答して問題解決して呉れると嬉しい• 応答は自然言語• 但し、偏微分方程式、専門知識、データは提供する必要が有る• LLMは、定式化、コード生成、コード実行、各種後処理を提供• SciML(科学技術向け機械学習)のモデルをその場でカスタマイズして呉れる• 既存の解等との比較や検証をして呉れる• DNNのアーキテクチャの修正やハイパーパラメータ等の最適化を行って呉れる
Copyright (C) 2024, Insight, Inc.

12

4. CAEにおけるLLMの可能性 (2)• コードの生成支援はどうか?
• 1例としてGitHub Copilot(有償)[1]• 統合開発環境の中で、コード生成を支援して呉れる• VSCode• Visual Studio• JetBrains IDEs(PyCharm以外にも多数)• Vim/Neovim• Azure Data Studio• 複数の支援形態が有る• プッシュ式支援• インラインチャット• パネルチャット

Copyright (C) 2024, Insight, Inc.

13

より詳しい内容のセミナー• 7/23(火) 13:00-13:30＜参加無料＞「計算力学におけるLLMのトライアル紹介Ver. 4」• 8/2(金) 13:00-13:30＜参加無料＞「計算力学やプログラミングにおける生成AIチャットのプロンプトエン
ジニアリング Ver. 4」• 8/22(木)13:30-15:00(予定)＜有料150,000円(税込み) ＞「LLMカスタマイズ環境構築セミナー」(弊社データサイエンス勉強会全コンテンツをデータベースとして使います。)
Copyright (C) 2024, Insight, Inc.

14

5. GitHub copilotの紹介(1)• 複数の支援形態が有る• プッシュ式支援(Inline suggestions)• ユーザーがコードを書いているときに自動的に提案を行う機能。
• ユーザーがコードを入力すると、Copilotはそのコードに基づいて次の行や関数の提案を行う。

• インラインチャット(Inline chat)• Ctrl+Iで起動• 選択したコードはCopilotにとっての質問のコンテキストとなり、それに基づいて最適な回答を提供します• パネルのチャット(Chat View)• より詳細な情報や長い対話を求める場合に使用するインターフェースです。
• ユーザーは左側のパネルを開き、Copilotに対して質問や要求を行うことができます。このインターフェースは、より複雑な問題の解決や、長いコードスニペットの生成などに適しています
Copyright (C) 2024, Insight, Inc.

15

5. GitHub copilotの紹介(2)• プッシュ式支援• コメント自動生成• #をタイプすると、薄い字[各スキームの結果をプロット]が提案される。TABキーで承認。

Copyright (C) 2024, Insight, Inc.

16

5. GitHub copilotの紹介(3)• プッシュ式支援(続き)• 類似の文を多数作成する時、推定して文案を作って呉れる

Copyright (C) 2024, Insight, Inc.

17

5. GitHub copilotの紹介(4)• プッシュ式支援(続き) 以下の4行が存在する。
• ifブロックにelseを追加すると、elseの意
味をログプリントして呉れる# 訓練正答の場合の画像と予測結果を表示
if train_correct_indices:
draw_predit_and_image(train_correct_indices, y_train_pred_label,x_train, '訓練正答')
最終行の後に空行を作り、else:迄入力すると、
my_learner.logger.info('train_correct_indices isempty.')を提示して呉れる。
2行(ifブロック開始行)の行末にスペースを2個タイプすると、コメントを打ちたい意図を察知して呉れて# 空でない場合を補って呉れる。

Copyright (C) 2024, Insight, Inc.

18

5. GitHub copilotの紹介(5)• インラインチャット• json ファイルの中身は以下の通りである。それを考慮して、全フィールドを適切な変数に代入せよ「{"version": "1.21","distance": 4.0,
"yield_stress": 225,
"tensile_strength": 265,
"poisson_ratio": 0.3,
"youngs_modulus": 205800,}」"hardening_coeff": 20580,"adv_base_dir": "C:/tools/AdvOnWin0_43b","out_dir_base":"../examples/beam_10x50x200_2","my_angle": 90,"initial_n_steps": 20,"gm3d_name": "beam_10x50x200_2.gm3d","thickness": 10.0,"width": 50.0,"length": 200.0,"center_z_min": 100.0,"center_z_max": 150.0,"radius": 15.0,"n_parametric_cases": 1,"my_case_id": 101

Copyright (C) 2024, Insight, Inc.

19

5. GitHub copilotの紹介(6)• インラインチャット• 要望した全てのフィールドに対応する変数を作り、JSONオブジェクトから代入をして呉れた。
• 非常に手間が省けた。
Copyright (C) 2024, Insight, Inc.

20

5. GitHub copilotの紹介(7)• パネルのチャット• 新規workspaceの作成• 求める機能も書く• フォルダは別途作成しておく事

Copyright (C) 2024, Insight, Inc.

21

5. GitHub copilotの紹介(8)•パネルのチャット• コード実行の代行は出来ない• 必要なライブラリ• numpy.linalg.eig• フォルダ構成も作って呉れる

Copyright (C) 2024, Insight, Inc.

22

5. GitHub copilotの紹介(9)•パネルのチャット• 作って呉れたファイルの中身を事前に確認出来る• Create Workspaceをクリック。

Copyright (C) 2024, Insight, Inc.

23

5. GitHub copilotの紹介(10)• パネルのチャット• 作って呉れたファイルの中身を事前に確認出来る• Create Workspaceをクリック。
• 存在しないフォルダは作れないようだ。事前に作っておく事。

Copyright (C) 2024, Insight, Inc.

24

5. GitHub copilotの紹介(11)•パネルのチャット•機能追加したい。

Copyright (C) 2024, Insight, Inc.

25

5. GitHub copilotの紹介(12)• パネルのチャット• 機能追加したい。

Copyright (C) 2024, Insight, Inc.

26

6.大規模言語モデルLLMの活用に関する社内検討(1)•CAE教育のためのLLMカスタマイズ•問題を解かせる→やってみた•模擬問題を作らせる→やってみた•自由な質問に答える→やってみたCopyright (C) 2024, Insight, Inc.

27

6.大規模言語モデルLLMの活用に関する社内検討(2)•自然言語の対話で一連の解析を実行するシステムのプロトタイプを構築中•乞う、ご期待

Copyright (C) 2024, Insight, Inc.

28

7.4次元変分法を使った2次元流体解析のデータ同化(1)•教科書の付属コードであるが、github[2]で一般公開されている。
•fortran90で書かれたものをcopilotの支援でjavaに書き換えた(一部未変換)。
•当然、手作業の直しは必要。
• 同じ結果が出るようになった。

•python3に変換したかったが、文法や慣例の差が大きいの直接の変換は断念した。
Copyright (C) 2024, Insight, Inc.

29

8. インサイトの取り組み (1)•LLMカスタマイズ環境構築セミナー• 日程：2024年8/22(木)午後予定• 内容：実践的なLLMカスタマイズ手法•既存製品へのAIチャットマニュアル機能の導入計画• 対象製品の例• Meshman_ParticleViewer
Copyright (C) 2024, Insight, Inc.

30

8. インサイトの取り組み(2)• 計算力学に関するプロンプトエンジニアリングをより蓄積し、体系化、書籍化する• LLMカスタマイズフレームワークを開発し、製品として提供する。
• LLMフレームワークを利用した製造業分野の用途開発の支援を受託• LLMを利用したアプリの開発• お問い合わせは、info@meshman.jp。
Copyright (C) 2024, Insight, Inc.

31

より詳しい内容のセミナー• 7/23(火) 13:00-13:30＜参加無料＞「計算力学におけるLLMのトライアル紹介Ver. 4」• 8/2(金) 13:00-13:30＜参加無料＞「計算力学やプログラミングにおける生成AIチャットのプロンプト
エンジニアリング Ver. 4」• 8/22(木)13:30-15:00(予定)＜有料150,000円(税込み) ＞「LLMカスタマイズ環境構築セミナー」(弊社データサイエンス勉強会全コンテンツをデータベースとして使います。)
Copyright (C) 2024, Insight, Inc.

32

引用文献
[1] https://github.com/features/copilot[2] https://github.com/DAE-Code/NS2D_4DVar

Copyright (C) 2024, Insight, Inc.

33