20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有します

王林
リリース: 2023-04-20 19:07:18
転載
2239 人が閲覧しました

著者 | Cui Hao

査読者| Chonglou

要約

革新的なテクノロジー アップグレード、ChatGPT 4.0 のリリースは AI 全体に衝撃を与えました業界。現在、ChatGPT は、コンピュータが日常の自然言語の質問を認識して答えることができるだけでなく、業界データをモデル化することで、より正確なソリューションを提供することもできます。この記事では、ChatGPT のアーキテクチャ原則 とその開発見通し を深く理解するとともに、その使用方法についても紹介します。業界データをトレーニングするための ChatGPT の API。この新しく有望な分野を一緒に探索し、AI の新時代を築きましょう。

#ChatGPT 4.0 のリリース

ChatGPT 4.0 が正式にリリースされました。 ChatGPT のこのバージョンでは、飛躍的な革新が導入されており、以前の ChatGPT 3.5 と比較して、モデルのパフォーマンスと速度が大幅に向上していますChatGPT 4.0 がリリースされる前から、多くの人が ChatGPT に注目し、自然言語処理の分野におけるその重要性を認識していました。ただし、3.5 および以前の バージョンでは、ChatGPT のトレーニング データが主に一般的なドメインに集中しているため、ChatGPT の制限が依然として存在します。言語モデルが異なるため、特定の業界に関連したコンテンツを生成するのは困難です。しかし、ChatGPT 4.0 のリリースにより、独自の業界データをトレーニングするために ChatGPT 4.0 を使用する人が増え、さまざまな業界で広く使用されるようになりました。 これにより、ますます多くの人が ChatGPT に注目し、使用するようになりました。次に、アーキテクチャの原則、開発の見通し、業界データのトレーニングにおける ChatGPT の応用について紹介します。 ChatGPT の機能

ChatGPT## アーキテクチャ

# は、自然言語処理技術である深層学習ニューラル ネットワークに基づいており、その原理は、事前にトレーニングされた大規模な言語モデルを使用してテキストを生成することです。自然言語を理解して生成します。 ChatGPT のモデル原理は、教師なし言語モデリング技術を使用してトレーニングされ、次の単語の確率分布を予測して連続テキストを生成する Transformer ネットワークに基づいています。使用されるパラメータには、ネットワークの層の数、各層のニューロンの数、ドロップアウト確率、バッチ サイズなどが含まれます。学習の範囲には、一般的な言語モデルとドメイン固有の言語モデルが含まれます。ドメイン一般モデルはさまざまなテキストの生成に使用でき、ドメイン固有モデルは特定のタスクに合わせて微調整および最適化できます。 OpenAI は、GPT-3 のトレーニング データとして大量のテキスト データを使用します。具体的には、45 TB を超える英語テキスト データと、Web テキスト、電子書籍、百科事典、Wikipedia、フォーラム、ブログなどを含むその他の言語データが使用されました。また、Common Crawl、WebText、BooksCorpus などの非常に大規模なデータ セットも使用しました。これらのデータ セットには数兆の単語と数十億の異なる文が含まれており、モデルのトレーニングに非常に豊富な情報を提供します。

非常に多くのコンテンツを学習する必要があるため、使用されるコンピューティング能力もかなりのものになります。

ChatGPT は比較的高いコンピューティング能力を消費し、トレーニングに大量の GPU リソースを必要とします。 2020 年の OpenAI による技術レポートによると、GPT-3 はトレーニング中に約 175 億個のパラメータと 28,500 個の TPU v3 プロセッサを消費しました。

ChatGPT は専門分野でどのような応用が可能ですか?

#上記の紹介から# 、ChatGPT には強力な機能があり、必要な機能も# であることがわかりました。 # 膨大な計算とリソースの消費、トレーニング#this 大規模な言語モデル 高額なコストが必要です。 #しかし、このような高コストで作成された AIGC ツールは、## 存在します#制限##,##特定の専門分野についての知識がありません 参加してください。たとえば、医学や法律などの専門分野に関しては、ChatGPT は正確な回答を生成できません。これは、ChatGPT の学習データはインターネット上の一般的なコーパスから取得したものであり、特定分野の専門用語や知識が含まれていないためです。したがって、特定の専門分野で ChatGPT のパフォーマンスを向上させたい場合は、その分野の専門コーパスをトレーニングに使用する必要があります。Knowledge" ChatGPT を教えて、 を学習します。 しかし、ChatGPT は私たちを失望させませんでした。 ChatGPT を特定の業界に適用する場合、まずその業界の専門的なデータを抽出し、前処理を行う必要があります。具体的には、データのクリーニング、重複排除、セグメンテーション、ラベル付けなどの一連の処理を行う必要があります。その後、処理されたデータはフォーマットされ、ChatGPT モデルの入力要件を満たすデータ形式に変換されます。その後、ChatGPT の API インターフェイスを使用して、処理されたデータをトレーニング用のモデルに入力できます。トレーニングにかかる​​時間とコストは、データ量とコンピューティング能力によって異なります。トレーニングが完了したら、モデルを実際のシナリオに適用してユーザーの質問に答えることができます。

ChatGPT を使用して専門分野の知識をトレーニングしましょう。 実際、専門分野で知識ベースを確立することは難しくありません。 業界データ # を質疑応答形式

#,

## に変換することです。

# その後 自然言語処理 (NLP) テクノロジーを使用して質問と回答の形式をモデル化します 質問の質問に答えます。 OpenAI の GPT-3 API の使用 (GPT3 例)いくつかの例を提供するだけで、提供された質問に基づいて回答を生成できる質問と回答のモデルを作成できます。 GPT-3 API を使用して質問と回答モデルを作成する一般的な手順は次のとおりです。 :

20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有します


  1. データの収集: ここでは、フォーラム、Q&A、その他の業界関連情報をネットワーク経由でクロールできます。製品マニュアルやメンテナンスマニュアルなどの業界文書からヒントを得ることもできます。ここでは、具体的なデータ収集方法については説明しません。次の例では、それらはすべてテキストとして処理されます。つまり、いわゆる業界データが文字列に処理され、プログラムに与えられます。 質問と回答の形式に変換する: GPT は質問と回答のためのインテリジェントなツールであるため、知識を質問と回答の形式に変換して GPT に入力します。後で紹介するテキストを質問と回答に変換するツールを使用します。
  2. #GPT によるトレーニング: このステップでは、入力を GPT の Fine## に渡します。 #-
  3. チューニングではモデリング、つまりこの知識のモデルを生成します。 アプリケーション モデル: モデリングが完了したら、Ask に適用できます。モデルの内容に関する質問。
  4. プロセス全体を呼び出す必要があります OpenAI

# は、開発者プラン、実稼働プラン、カスタム プランなど、さまざまなタイプの API サブスクリプション プランを提供します。各プランは異なる機能と API アクセスを提供し、価格も異なります。 はこの記事の焦点では​​ないため、ここでは詳しく説明しません。 データセットの作成上記の手順から、2 段階の変換が行われますQ&A形式にすることは私たちにとって挑戦でした。

には # があると仮定します。

##人工知能の歴史に関する専門知識

# を GPT,## に教える必要があります#そして、この知識を、関連する質問に答える モデルに変換します。 次に、次の形式に変換する必要があります。:

  • #質問: 人工知能の歴史は何ですか?回答: 人工知能は、コンピューターが人間のように考え、行動できるようにする方法を研究することを目的としたコンピューター サイエンスの一分野として 1950 年代に誕生しました。
  • 質問: 現在最も先進的な人工知能テクノロジーは何ですか?回答: 現在利用可能な最も高度な人工知能テクノロジーの 1 つはディープ ラーニングです。これは、大量のデータでトレーニングし、そこから特徴やパターンを抽出できるニューラル ネットワーク ベースのアルゴリズムです。


##もちろん、単に質問と回答の形式にまとめるだけでは十分ではなく、以下に示すように GPT が理解できる形式にする必要があります。

##人工知能の歴史とは何ですか? \n\n人工知能は 1950 年代に誕生し、コンピューターが人間のように考え、行動できるようにする方法を研究することを目的としたコンピューター サイエンスの一分野です。 \n
  • 現在最も先進的な人工知能テクノロジーは何ですか? \n\n現在、最も先進的な人工知能テクノロジーの 1 つはディープ ラーニングです。これは、大量のデータでトレーニングし、そこから特徴やパターンを抽出できるニューラル ネットワークに基づくアルゴリズムです。 \n

実際には、質問 # の後に「\n\n」## が追加されます。 、回答 の後に「\n##」を追加しました###################。 質問と回答の形式を迅速に生成するモデル # が問題を解決します質問と回答形式の、新しい質問がまた出てきました。業界の知識を質問と回答形式に整理するにはどうすればよいでしょうか。

?

多くの場合、インターネットから大量のドメイン知識をクロールしたり、大量のドメイン文書を見つけたりしますが、どのような場合でも、文書を入力するのが最も便利です。 . .ただし、正規表現や手動の方法を使用して大量のテキストを質問と回答の形式に処理するのは明らかに非現実的です。 したがって、というメソッドを導入する必要があります。

自動要約テクノロジーは、記事から重要な情報を抽出し、短い要約を生成できます。

自動要約には、抽出的自動要約と生成的自動要約の 2 種類があります。抽出型自動要約は原文から最も代表的な文を抽出して要約を生成するのに対し、生成的自動要約はモデル学習により原文から重要な情報を抽出し、その情報に基づいて要約を生成します。

実際には、

自動要約は、入力されたテキストから質問と回答のモードを生成することです。 #問題が明確になったら、次のステップはツールをインストールすることです。 NLTK Natural Language Toolkitの略で、主に自然言語処理の分野で使われるPythonライブラリです。これには、テキストの前処理、品詞タグ付け、固有表現認識、構文分析、感情分析など、自然言語を処理するためのさまざまなツールとライブラリが含まれています。

#テキストを NLTK に渡すだけで、NLTK がデータの前処理操作を実行します。テキスト。ストップワードの削除、単語の分割、品詞のタグ付けなどが含まれます。前処理後、NLTK のテキスト要約生成モジュールを使用して要約を生成できます。単語頻度に基づくもの、TF-IDF に基づくものなど、さまざまなアルゴリズムを選択できます。概要を生成する際、質問テンプレートを組み合わせて質問と回答の概要を生成することができ、生成された概要がより読みやすく理解しやすくなります。同時に、要約の微調整も可能で、文章が一貫していない、回答が不正確であるなどを調整することができます。

#次のコードを見てください。#:# #######################

トランスフォーマーから AutoTokenizer、AutoModelForSeq2SeqLM、パイプラインをインポート

#nltk をインポート


テキストを入力してください

#text = """Natural Language Toolkit (NLTK) は、次のような人間の言語データ処理の問題を解決するために使用される Python ライブラリのセットです。

##分詞

#品詞タグ付け

構文解析

##感情分析

セマンティック分析

##音声認識

テキスト生成など

""

# 概要の生成

文 = nltk.sent_tokenize(text)

##summary = " ".join(sentences[:2]) # 最初の 2 つの文を要約として取得します

print("概要:", 概要)

## ##################################

# 生成された概要を使用して、Fine-t#早速、モデルを入手してください

##tokenizer = AutoTokenizer.from_pretrained("t5-base ")

##model = AutoModelForSeq2SeqLM.from_pretrained ("t5-base ")

text = "要約: "概要 # 入力形式の構築

##inputs = tokenizer(text、return_tensors="pt"、padding=True)


トレーニング モデル

#model_name = "最初のモデル"

model.save_pretrained(model_name)


## テスト モデル

#qa = パイプライン("質問応答", モデル=モデル名, トークナイザー=モデル名)

context = "NLTK は何に使用されますか?" # 回答すべき質問

##answer = qa(questinotallow=context, cnotallow= text["input_ids"])

print("質問:", context)

print("答え: ", 答え["答え"])

#

出力結果は次のとおりです。

##要約: Natural Language Toolkit (NLTK) は、次のような人間の言語データ処理の問題を解決するために使用される Python ライブラリのセットです。 - 単語のセグメンテーション -品詞のタグ付け

#質問 : NLTK何に使用されますか?

答え:自然言語処理ツールキット # #############################

上記のコードは、nltk.sent_tokenize メソッドを使用して入力テキストの概要を抽出します。つまり、質問と回答をフォーマットします。次に、F# # を呼び出します。 ine-tuning の AutoModelForSeq2SeqLM.from_pretrained メソッドはそれをモデル化し、次に「first-model」という名前のモデルを変更して保存します。最後に、トレーニングされたモデルを呼び出して結果をテストします。

上記は単に通過するだけではありませんNLTK 質問と回答の概要を生成するには、F## も使用する必要があります。 #ine- tuning 関数。 Fine-tuning は、事前トレーニングされたモデルに基づいており、少量のラベル付きデータを通じてモデルを微調整します。特定のタスクに適応します#。 実際には、# は、元のモデルを使用してデータをインストールし、モデルを形成することです。もちろん、内部の設定を調整することもできます。モデルの結果 (隠れ層の設定やパラメータなど)ここでは、その最も単純な関数 #, を使用します。 Fine-tuning について詳しくは、以下の画像をご覧ください。

注意してください。 :AutoModelForSeq2SeqLM クラスは、事前トレーニング済みモデル「t5-base」から 20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有します

TOKenizer とモデルを読み込みます。 AutoTokenizer は、適切な # を自動的に選択してロードできる、Hugging Face Transformers ライブラリのクラスです。

##Tオケナイザー。 T オケナイザーの機能は、入力テキストを、後続のモデル入力のためにモデルが理解できる形式にエンコードすることです。

AutoModelForSeq2SeqLM は、事前トレーニングされたモデルに基づいて適切なシーケンスを自動的に選択してシーケンス モデルにロードする、Hugging Face Transformers ライブラリのクラスでもあります。ここでは、T5 アーキテクチャに基づくシーケンスツーシーケンス モデルが、要約や翻訳などのタスクに使用されます。事前トレーニングされたモデルを読み込んだ後、このモデルを F 微調整またはタスク関連の出力の生成に使用できます。

微調整と顔のハグにはどのような関係がありますか?

Fine-##チューニングとハギング#を含む、上記のモデリング コードについて説明しました。 ##「顔」に関する部分はわかりにくいかもしれません。理解を助けるための例を次に示します。

あなたは料理をしたいと思っていますが、材料(業界知識)はすでにあるのに、作り方がわからない。そこで あなたはシェフの友人 にアドバイスを求め、自分が持っている材料 (業界の知識) とどのような料理を作りたいかを伝えます。料理人 (解決済みの質問)、あなたの友人 は、彼の経験と知識に基づいて ## を教えてくれます (一般的な質問)モデル) #いくつかの提案を提供してください、このプロセスはFineです-チューニング (業界の知識をトレーニング用の一般的なモデルに組み込む) あなたの 友人の経験と知識 事前トレーニングされたモデル、業界の知識と解決すべき問題を入力し、事前トレーニングされたモデルを使用する必要があります。 モデル もちろん、調味料の内容や調理の火力など、細かく調整することができ、業界の課題解決を目的としています。 。 そして、Hugging Face はレシピの倉庫です (コード内の「t5-base」はRecipe) には、魚風味の細切り豚肉、クンパオチキン、茹でた豚肉のスライスなど、多くの定義されたレシピ (モデル) が含まれています。これらの既製のレシピを使用して、提供された材料と調理する必要がある料理に基づいてレシピを作成できます。これらのレシピを調整してトレーニングするだけで、

shape が独自のレシピになります。これからは、, 独自のレシピを使って料理をすることができます (業界の問題を解決できます)。 自分に合ったモデルを選択するにはどうすればよいですか? Hugging Face のモデル ライブラリで必要なモデルを検索できます。下図のように、ハグフェイスの公式サイトで「モデル」をクリックするとモデルの分類が表示され、検索ボックスを使用してモデル名を検索することもできます。

20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有します

#以下の図に示すように、各モデル ページには、モデルの説明、使用例、事前トレーニング重みのダウンロード リンク、その他の関連情報が表示されます。 。

20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有します

20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有します

##概要

ここでは、収集、変換、トレーニング、全員への利用に至るまでの業界知識のプロセス全体を説明します。以下の図に示すように:

    ##データの収集: Web クローラーとナレッジ ドキュメントを介して業界の知識を抽出し、文字列などのテキストを生成します。
  • 質問と回答の形式に変換: NLTK の概要機能は、質問と回答の概要を生成します。それを GPT に入力してトレーニングします。
  • #GPT によるトレーニング: ハグの使用
  • モデルには既製のモデルと NLTK 入力の質問と回答の要約が使用されますトレーニング。 モデルを適用する: トレーニングされたモデルを保存した後、質問して業界の情報を得ることができます。専門的な答え。
  • #著者紹介

##Cui Hao は、51CTO コミュニティ編集者、シニア アーキテクトであり、ソフトウェア開発とアーキテクチャで 18 年の経験があり、分散アーキテクチャで 10 年の経験があります。 20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有します

以上が20 年の IT ベテランが ChatGPT を使用してドメイン知識を作成する方法を共有しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:51cto.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!