ドックスからコードの生成には、LLMsを使用します
『LLMsを使用して、ドックスからコードの生成を行います』
医師のメモからコードを生成することは、医療用語の深い理解とその情報を医療請求と給付に使用される特定のコードに翻訳する能力を必要とする複雑なタスクです。エンコードされた世界の知識を持つ大規模言語モデル(LLM)は、このタスクをより効率的かつ正確にするための大きなポテンシャルを持っています。
機械学習からLLMへの進化
過去10年間で機械学習の分野は大きく変化しました。以前は、機械学習を使用して医師のメモからコードを生成することは、遅くて困難で正確性に欠けるプロセスでした。関連データの収集と前処理、手動での特徴の作成、適切なモデルの選択、ハイパーパラメータの調整によるモデルのチューニング、およびモデルの展開のインフラストラクチャの作成が必要でした。これらのタスクは手間がかかり費用もかかりましたが、結果としては最適な性能を持つモデルではありませんでした。
図1:従来の機械学習プロセス
しかし、ディープラーニングの登場により、プロセスはより簡単で正確になりました。ディープネットワークは埋め込みを通じて知識をエンコードすることができました。ディープモデルの問題は、トレーニングに必要な膨大な量のデータに依存していたことでした。
- 「2023年に大型言語モデル(LLM)から始めましょう」
- (Samsung no AI to chippu gijutsu no mirai e no senken no myōyaku)
- コンピュータービジョンによる車両損傷検出の構築方法
現在、GPTなどの大規模言語モデルの進化により、医療セクターなどでの言語関連のタスクは大幅に簡素化されています。これらのモデルはO(100B)のパラメータを持ち、医療、ソフトウェアプログラミング、書籍、ブログ、科学論文、ソーシャルメディアなどのさまざまなドメインとソースから豊富な知識をエンコードします。大量のデータから学習し、データから言語の豊かな表現を学び、新しいタスクにも一般化することが可能です。さまざまな簡単なタスクに対しては、モデルはゼロまたは少数の学習で使用でき、より複雑なタスクに対しては、これらのモデルは少量のデータで微調整できます。
LLMとプロンプトエンジニアリング
機械学習の分野では、人間と同様に学習できるアルゴリズムの開発が目指されています。これらのアルゴリズムは、指示や例が与えられたときにシンプルなタスクを理解することができるべきです。Large Language Modelsの文脈では、これらの指示や例は「プロンプト」と呼ばれます。
ゼロショット学習
プロンプトは、ユーザーからの直接的な要求である場合があります:
- テキストを要約してください
- テキストを言い換えてください
- なぜ空は青いのですか?
- 文字列が回文かどうかを確認するコードを書いてください
これらのモデルは、追加の例が必要なくこれらの質問に答えることができます。これをゼロショット学習と呼びます。
フューショット学習とチェーンオブソートプロンプト
一部のタスクでは、より詳細な指示が必要であり、人間が受け取るようなものです。このタイプのプロンプトの例は以下の通りです:
ここでのタスクは、入出力ペアからパターンを把握し、その出力が「no」と予測することです。パターンは各単語の最後の文字を返すことです。
以下は、ChatGPTからの出力で、間違った答えを出しているものです:
モデルにより詳細な説明を与えると、正しい答えが生成されました。プロンプトに与えられたこれらの説明により、必要な回答が得られます。これをチェーンオブソートプロンプトと呼びます。
このプロンプトの作成、設計、微調整のプロセスをプロンプトエンジニアリングと呼びます。プロンプトエンジニアリングの目標は、言語モデルに特定の方法で入力を提供し、意図した意味に関連し、一貫性のある高品質な出力を生成することです。これには、質問への回答の生成、ストーリーの執筆、詩の作成、テキストの翻訳など、特定のユースケースのニーズに合う高品質な出力を生成できる効果的かつ明確なプロンプトの作成が含まれます。プロンプトエンジニアリングのプロセスは、さまざまなプロンプトで言語モデルのパフォーマンスをテストおよび評価し、出力を改善するために必要な調整を行うことも含まれます。
医師のメモからコードを生成するコンテキストでは、プロンプトエンジニアリングには略語の対処、疾患、症状、および薬物処方の違いと微妙さを理解することが含まれます。
開発手順
医師のメモから医療コードを生成するための大規模言語モデル(LLM)を利用するプロセスには、以下の手順が含まれます:
- データの取得:データを取得し、初期実験のために手動で前処理を行います。
- 評価基準の確立:システムのパフォーマンスを評価するための評価基準を決定します。予測された応答の適合性と再現性、応答時間の遅延などが挙げられます。
- LLMの選択:さまざまなLLMとそのAPIを探索します。可能な選択肢:GPT、BARD。
- ワークスペースのセットアップ:プロンプトエンジニアリングのためのワークスペースを準備します。
- プロンプトエンジニアリング:チェーン・オブ・ソートのプロンプト実験を通じて、最適なプロンプトのセットを見つけるために実験します。
- ベンチマークの確立:パフォーマンスのベンチマークを確立し、現行のプロセスや市場のソリューションと比較します。
- データセットの生成:LLMの推論を通じてデータセットを生成します。
- 蒸留:教師モデルの蒸留により学生モデルをトレーニングします。
- パフォーマンスのベンチマーク:学生モデルのパフォーマンスをベンチマークにして、強みと弱点を特定します。
- サービングインフラストラクチャの設定:既存システムとの統合に必要なアダプターやソフトウェアシステムを含む、学生モデルのためのサービングインフラストラクチャをセットアップします。
図2:高レベルのトレーニングとインフラパイプライン
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles