ユニット 10 / 11

Python による化学工学: データ分析とモデリングの自動化

利益:

  • Python コードを印刷し、データ クリーニング、アカウントの自動化、人工知能によるモデリングのためにコードを 1 行ずつ理解して受け入れる能力
  • 未テストのコードは仮説であることを理解し、既知の結果で各コードを検証し、単体ケースとエッジ ケースをテストする能力
  • セキュリティ クリティカルなアカウント コードにはテストと認定エンジニアの検証の両方が必要であることを理解する能力。

現在、現代の化学工学のサイレントエンジンは Python (広く使用されており、習得が容易なプログラミング言語) です。センサー データのクリーニング、質量バランスの自動化、データへの動力学モデルのフィッティング、数百のシミュレーション結果の比較、グラフの作成など、これらすべてを手動で行うと何時間もかかりますが、数行の Python を使用すれば数秒で完了します。この単元では、Python コードの作成、説明、デバッグの補助として AI を使用する方法を学びます。しかし、生成されたすべてのコードをテストと検証なしで使用すべきではない理由を学びます。

化学エンジニアは通常、プロのソフトウェア開発者ではありません。ここで AI が大きな力を発揮します。エンジニアは「これを行うスクリプトが欲しい」と言ってAIの草稿を書きます。しかし、この原則は変わりません。AI が書くコードは、正しく見えるからといって正しくないのです。既知の結果でテストされるまでは仮説です。間違った単位、間違った指数、ずれた式などのサイレントミスは、工学計算において危険な結果を生み出す可能性があります。

化学工学における Python と AI: ステップバイステップ

1. 仕事を明確に定義します。入力 (CSV、配列、方程式) は何ですか。出力は何でなければなりませんか。単位は何ですか?あいまいなプロンプトは不正なコードを意味します。

2. コードのドラフトをリクエストします。 AI は適切なライブラリ (データ用の pandas、数値処理用の numpy、グラフ用の matplotlib、最適化/ソリューション用の scipy) を使用してスケッチを生成します。

3. ライブラリと前提条件を理解します。 AI に各行と前提 (単位、データ形式、受け入れ) を説明させます。理解できないコードを実行しないでください。

4. 既知の結果を使用してテストします。すでに答えがわかっている簡単な例でコードを実行します。残高コードは、手動で解読できる例で正しい結果を与える必要があります。

5. ユニットとエッジのステータス制御。ゼロ、負の値、非常に大きな値、データの欠落などのエッジケースではコードは何を行うのでしょうか?化学工学において、ユニットの故障は典型的な災害です。

6. 結果を物理学でテストします。コードは数値を生成しました。質量は保存されていますか?その値は現実的ですか?コードが機能するからといって、結果が正しいことは証明されません。

ヒント: AI にコードを要求するときは、「各変数の単位をコメント行に記述し、入力単位を明示的に指定してください」と伝えます。化学工学の間違いのかなりの部分は、単位の混同 (bar/Pa、kg/g、°C/K) から生じます。コードにユニットを埋め込むと、これらのエラーが可視化されます。

テストされていないコードは仮説です

AI はスムーズで機能するコードを生成します。しかし、「うまくいく」と「正しい」は別のものです。コードはエラーなしで動作し、数式内の符号エラー、配列内のオフセット (1 ずつずれた)、誤った単位変換など、誤った数値が生成される場合があります。つまり、黄金律は、正しい答えが独立してわかっているテスト ケースですべてのコードがテストされるということです。簡単な分析例、手計算、または参照データにより、コードの信頼性が証明されます。テストに合格しない限り、コードに基づいてエンジニアリング上の決定を下すべきではありません。

注意: 安全性、寸法設定、またはセキュリティの計算を実行するコードは、「機能する」というだけでは信頼できるとは見なされません。セキュリティ クリティカルなアカウント コードは既知の結果でテストする必要があり、結果は認定エンジニアによって個別に検証される必要があります。

ミニケース3個

ケース 1 — データ クリーニングの自動化。エンジニアは毎月、8 つのセンサーから 3 か月分のデータ (約 110 万行) を手動でクリーニングしていました。 AI で書かれたパンダ スクリプトにより、これが数分に短縮されました。エンジニアはまず、既知の小さなサンプル ファイルでコードをテストしました。 1 つの列が正しく解析されていないことに気づき、修正してデータ全体に適用しました。

ケース 2 — サイレントボリュームエラー。 YZ は圧力損失計算用のコードを作成しましたが、bar と式 Pa を仮定することで入力を混乱させました。コードはエラーなく機能しましたが、結果は 100,000 倍間違っていました。エンジニアは手動制御計算で次数の違いを捉えました。ユニットのコメントを追加した後、エラーが明確になり修正されました。

ケース 3 — テストが保存されました。あるチームは AI からマスバランス ソルバーのコードを取得しました。彼らはまず、手で溶解できる 2 成分のサンプルでそれをテストしました。コードがループバックを誤って閉じており、合計されませんでした。エラーは実際の複雑なモデルに適用される前に捕捉されました。テストを行わないと、エラーがすべての結果に広がります。

コピー可能な 4 つのテンプレート

1) データ分析コードのドラフト:

あなたの役割: 化学工学の Python ヘルパー。タスク: [説明]。入力: [CSV/配列、列、単位]。出力: [何を、どのユニットに].pandas/numpy を使用します。コードでは: (1) 各変数の単位を解釈し、(2) 入力の仮定を最初に記述し、(3) エッジ ケース (欠損データ、ゼロ) を処理します。既知の例を使用してコードをテストします。マジックナンバーを使用せず、定数を明示的に定義してください。

2) コードの説明と検証:

次の Python コードを 1 行ずつ説明します。何をするのか、どのような仮定を行うのか、どのような単位を期待するのかを説明します。考えられるエラー点 (単位の混乱、インデックスのシフト、ゼロによる除算、オーバーフロー) を強調表示します。このコードを検証するために使用できる簡単な既知のテスト ケースを提案してください。コード: [貼り付け]

3) 結果がわかっているテストを設定する:

この関数を検証するためのテスト セットを作成します。答えが分析的または手動でわかっている少なくとも 3 つの単純なケースです。各テストについて、期待される結果とその結果を期待する理由を説明します。テストせずに実際のデータにコードを適用することはありません。機能: [貼り付け]

4) デバッグ:

このコードは、次のエラーまたは間違った結果を返します: [エラー メッセージまたは予想される出力と実際の出力]。考えられる原因を確率の高い順に列挙し、それぞれをテストする方法を教えてください。 「直しました」と直接言わないでください。まずは根本原因を一緒に検証してみましょう。単位と順序の確認もお勧めします。コードとデータ: [貼り付け]

弱いプロンプト / 強いプロンプト

弱いプロンプト:

圧力損失の計算コードを書いてください。

入力形式、単位、計算式、条件が明確ではありません。 AI はその前提を隠し、ユニットを混乱させる可能性があります。

強力なプロンプト:

あなたの役割: 化学工学の Python ヘルパー。タスク: 円形パイプ内の摩擦による圧力降下。入力:流量[m3/s]、直径[m]、長さ[m]、密度[kg/m3]、粘度[Pa・s]。出力: 圧力損失 [Pa]。Darcy-Weisbach を使用します。摩擦係数の流れレジーム (Re) を確認します。各ユニット、状態の仮定 (全負荷、安定した流量) についてコメントします。層状の例で手動計算に対してコードをテストします。

違いは明らかです。入力ユニット、メソッド、出力ユニット、およびテストの意図により、コードの信頼性が高まります。

Python使用時の役割分担

ビジネス

AIの役割

男の決断

コードを書く

ドラフトを作成する

職務内容、単位

ライブラリの選択

提案

適合性の確認

説明

一行一行

理解して受け入れる

テスト

テストセットの推奨事項

既知の結果による検証

デバッグ

仮説、方向性

根本原因の確認

結論

番号の生成

物理学を使ったテスト

よくある間違い

  • コードをテストせずに使用する。機能するコードは正しいコードではありません。既知の結果でテストされない限り、信頼することはできません。
  • 単位を未定のままにします。単位の混乱は、化学工学において最も一般的で危険な間違いです。
  • 理解せずに操作している。 AI によって書かれたコードを 1 行ずつ理解することなく、結果を信頼しないでください。
  • エッジ状態をバイパスします。ゼロ、負、欠損データは、コードを誤った結論に導く可能性があります。
  • セキュリティ計算はコードのみに基づいて行われます。セキュリティ クリティカルなコードには、テストと独立した権威ある検証が必要です。

要約すれば

Python を使用した化学工学における AI。これは、データ クレンジング、会計自動化、モデリング、グラフィックスに関するデバッグ ガイダンスの作成、説明、提供を行う強力なアシスタントです。しかし、AI のコードが信頼できるのは、見た目が正しいからではなく、既知の結果でテストされているからです。単位を明示的に指定し、コードを理解し、エッジケースをテストし、結果を物理学で検証することが重要です。安全性が重要な計算には、認定エンジニアの検証も必要です。

アプリケーションタスク

計算を選択します (パイプの圧力降下や 2 成分の質量バランスなど)。 「データ分析・アカウントコードドラフト」テンプレートでAIからコードを取得し、単位を明記します。次に、「既知の結果でテストをセットアップする」パターンを使用して、手動でデコード可能な例でコードを検証します。結果が一致しない場合は、「デバッグ」パターンで根本原因を見つけます。

チェックリスト

  • [ ] 入出力の単位と方法を明記しました。
  • [ ] コードを 1 行ずつ理解して、その前提を確認しました。
  • [ ] 既知の手動で解読可能な例でコードをテストしました。
  • [ ] エッジケース (ゼロ、負、欠損データ) をテストしました。
  • [ ] 結果を物理学 (質量保存、秩序) で検証しました。セキュリティアカウントも公式に確認してもらいました。