メむンコンテンツぞスキップ
芋出し画像

OpenAI APIのファむンチュヌニングの孊習デヌタのガむドラむン

    以䞋の蚘事を元に、「OpenAI API」のファむンチュヌニングの孊習デヌタのガむドラむンをたずめたした。

    1. 孊習デヌタの曞匏

    ファむンチュヌニングするには、単䞀の入力「プロンプト」ずそれに関連する出力 「コンプリヌション」 のペアで構成される孊習デヌタが必芁です。これは、回のプロンプトで詳现な手順や耇数の䟋を入力するような、ベヌスモデルの䜿甚方法ずは倧きく異なりたす。

    「孊習デヌタの曞匏」のガむドラむンは、次のずおりです。

    ・プロンプトが終了しおコンプリヌションが開始するこずをモデルに知らせるため、区切り蚘号 ("\n\n###\n\n"など) でプロンプトを終了する必芁がありたす。区切り蚘号は、プロンプトの他の堎所で䜿甚されない文字列を指定したす。

    ・コンプリヌションが終了するこずをモデルに知らせるため、停止蚘号 ("\n"、"###"など)でコンプリヌションを終了する必芁がありたす。停止蚘号は、コンプリヌションの他の堎所で䜿甚されない文字列を指定したす。

    ・掚論時には、孊習デヌタず同じ曞匏 (同じ区切り蚘号ず停止蚘号) でLLMを呌び出す必芁がありたす。

    ・トヌクン化により、ほずんどの単語が先行する空癜でトヌクン化されるため、各コンプリヌションは空癜で始たる必芁がありたす。(日本語は該圓しないかも)

    2. 孊習デヌタの質ず数

    元のモデルで高品質のプロンプトを䜿甚するよりも優れたパフォヌマンスを発揮するようにファむンチュヌニングするには、人間の専門家によっお粟査された、少なくずも100以䞊の高品質な孊習デヌタが必芁です。

    孊習デヌタ数が2倍になるたび、性胜が盎線的に向䞊する傟向がありたす。通垞、孊習デヌタ数を増やすこずが、性胜を向䞊させる最良か぀最も信頌できる方法になりたす。

    3. ナヌスケヌスごずのガむドラむン

    ナヌスケヌスごずに異なるガむドラむンもありたす。

    ・分類
     ・モデルが虚停のテキストを䜜成しおいないか確認
     ・感情分析
     ・メヌルの分類

    ・条件付きテキスト生成
     ・Wikipediaの蚘事からの広告の生成
     ・゚ンティティの抜出
     ・カスタマヌ サポヌトのチャットボット
     ・特性リストからの補品説明の生成

    4. 分類

    「分類」のガむドラむンは、次のずおりです。

    ・クラスは単䞀のトヌクンのものを遞択。掚論時に max_tokens=1 を指定。

    ・クラスごずに100以䞊の孊習デヌタを準備。

    ・クラスの察数尀床を求めるには、logprobs=5 (5クラス分) を指定。

    4-1. モデルが虚停のテキストを生成しおいないか確認

    孊習デヌタの䟋は、次のずおりです。

    {"prompt":"Company: BHFF insurance\nProduct: allround insurance\nAd:One stop shop for all your insurance needs!\nSupported:", "completion":" yes"}
    {"prompt":"Company: Loft conversion specialists\nProduct: -\nAd:Straight teeth in weeks!\nSupported:", "completion":" no"}

    䞊蚘の䟋では、䌚瀟名、補品、広告を含む構造化された入力を䜿甚したした。 区切り蚘号ずしお "\nSupported:" を䜿甚したした。これにより、プロンプトずコンプリヌションが明確に分離されたした。十分な数の孊習デヌタがあれば、区切り蚘号は、プロンプトたたはコンプリヌション内で䜿われない限り、倧きな違いはありたせん (通垞は 0.4% 未満)。

    このナヌスケヌスでは、adaでファむンチュヌニングしたした。これは、adaの方が高速で安䟡で、分類タスクの堎合倧きなモデルに匹敵する粟床を期埅できるためです。(日本語だず怪しいかも)

    リク゚ストの䟋は、次のずおりです。

    curl https://api.openai.com/v1/completions \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer $OPENAI_API_KEY" \
      -d '{
        "prompt": "Company: Reliable accountants Ltd\nProduct: Personal Tax help\nAd:Best advice in town!\nSupported:",
        "max_tokens": 1,
        "model": "YOUR_FINE_TUNED_MODEL_NAME"
      }'

    yesたたはnoが返されたす。

    4-2. 感情分析

    孊習デヌタの䟋は、次のずおりです。

    {"prompt":"Overjoyed with the new iPhone! ->", "completion":" positive"}
    {"prompt":"@lakers disappoint for a third straight night https://t.co/38EFe43 ->", "completion":" negative"}

    リク゚ストで logprobs=2 を蚭定するこずにより、察数尀床を取埗できたす。

    リク゚ストの䟋は、次のずおりです。

    curl https://api.openai.com/v1/completions \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer $OPENAI_API_KEY" \
      -d '{
        "prompt": "https://t.co/f93xEd2 Excited to share my latest blog post! ->",
        "max_tokens": 1,
        "model": "YOUR_FINE_TUNED_MODEL_NAME"
      }'

    レスポンスの䟋は、次のずおりです。

    {
      "id": "cmpl-COMPLETION_ID",
      "object": "text_completion",
      "created": 1589498378,
      "model": "YOUR_FINE_TUNED_MODEL_NAME",
      "choices": [
        {
          "logprobs": {
            "text_offset": [
              19
            ],
            "token_logprobs": [
              -0.03597255
            ],
            "tokens": [
              " positive"
            ],
            "top_logprobs": [
              {
                " negative": -4.9785037,
                " positive": -0.03597255
              }
            ]
          },
    
          "text": " positive",
          "index": 0,
          "finish_reason": "length"
        }
      ]
    }

    4-3. メヌルの分類

    孊習デヌタの䟋は、次のずおりです。

    {"prompt":"Subject: Update my address\nFrom:Joe Doe\nTo:support@ourcompany.com\nDate:2021-06-03\nContent:Hi,\nI would like to update my billing address to match my delivery address.\n\nPlease let me know once done.\n\nThanks,\nJoe\n\n###\n\n", "completion":" 4"}

    倚数のカテゎリに分類する堎合は、カテゎリを数倀に倉換するこずを掚奚したす。これは、最倧500カテゎリたで適切に機胜したす。トヌクン化により、数倀の前にスペヌスを远加するず、パフォヌマンスがわずかに向䞊するこずがありたす。

    䞊蚘の䟋では、入力ずしお2043トヌクンに制限された受信メヌルを䜿甚したした。区切り蚘号ずしお "\n\n###\n\n" を䜿甚し、電子メヌル内の ### を削陀したした。

    5. 条件付きテキスト生成

    「条件付きテキスト生成」 (芁玄、゚ンティティ抜出、チャットボットなど) のガむドラむンは、次のずおりです。

    ・500以䞊の孊習デヌタを準備。

    ・より䜎い孊習率ず12 ゚ポックのみを䜿甚する方がうたくいく傟向がある。

    5-1. Wikipediaの蚘事からの広告の生成

    孊習デヌタの䟋は、次のずおりです。

    {"prompt":"Samsung Galaxy Feel\nThe Samsung Galaxy Feel is an Android smartphone developed by Samsung Electronics exclusively for the Japanese market. The phone was released in June 2017 and was sold by NTT Docomo. It runs on Android 7.0 (Nougat), has a 4.7 inch display, and a 3000 mAh battery.\nSoftware\nSamsung Galaxy Feel runs on Android 7.0 (Nougat), but can be later updated to Android 8.0 (Oreo).\nHardware\nSamsung Galaxy Feel has a 4.7 inch Super AMOLED HD display, 16 MP back facing and 5 MP front facing cameras. It has a 3000 mAh battery, a 1.6 GHz Octa-Core ARM Cortex-A53 CPU, and an ARM Mali-T830 MP1 700 MHz GPU. It comes with 32GB of internal storage, expandable to 256GB via microSD. Aside from its software and hardware specifications, Samsung also introduced a unique a hole in the phone's shell to accommodate the Japanese perceived penchant for personalizing their mobile phones. The Galaxy Feel's battery was also touted as a major selling point since the market favors handsets with longer battery life. The device is also waterproof and supports 1seg digital broadcasts using an antenna that is sold separately.\n\n###\n\n", "completion":"Looking for a smartphone that can do it all? Look no further than Samsung Galaxy Feel! With a slim and sleek design, our latest smartphone features high-quality picture and video capabilities, as well as an award winning battery life. END"}

    ファむンチュヌンによっお、モデルは䞎えられた孊習デヌタのスタむル (および間違い) を暡倣しようずするため、提䟛する孊習デヌタが最高品質である必芁がありたす。良い出発点は、玄500䟋です。

    Wikipediaの蚘事には耇数の段萜ず芋出しが含たれおいるため、ここでは耇数行区切りを䜿甚したした。 たた、単玔な終了トヌクンを䜿甚しお、コンプリヌションがい぀終了するかをモデルが確実に認識できるようにしたした。

    5-2. ゚ンティティ抜出

    孊習デヌタの䟋は、次のずおりです。

    {"prompt":"Portugal will be removed from the UK's green travel list from Tuesday, amid rising coronavirus cases and concern over a \"Nepal mutation of the so-called Indian variant\". It will join the amber list, meaning holidaymakers should not visit and returnees must isolate for 10 days...\n\n###\n\n", "completion":" Portugal\nUK\nNepal mutation\nIndian variant END"}

    パフォヌマンスを向䞊させるには、抜出されたさたざたな゚ンティティをアルファベット順に䞊べ替えるか、元のテキストに衚瀺される順序で䞊べ替えるのが最適です。これは、モデルが順番に生成する必芁がある党おの゚ンティティを远跡するのに圹立ちたす。

    テキストには耇数の行が含たれる可胜性が高いため、耇数行の区切り蚘号が最適です。

    5-3. カスタマヌサポヌトのチャットボット

    チャットボットには通垞、「䌚話の関連コンテキスト」「これたでの䌚話芁玄」「最新メッセヌゞ」が含たれたす。このナヌスケヌスでは、同じ過去の䌚話がデヌタセット内に耇数の行を生成できたすが、毎回わずかに異なるコンテキストで、゚ヌゞェントの生成ごずにコンプリヌションずしお生成されたす。 このナヌスケヌスでは、さたざたなタむプのリク゚ストや顧客の問題を凊理する可胜性が高いため、数千の孊習デヌタが必芁になりたす。性胜が高品質であるこずを確認するには、䌚話サンプルを粟査しお゚ヌゞェントメッセヌゞの品質を確認するこずをお勧めしたす。「芁玄」は、別のテキスト倉換ファむンチュヌニングモデルを䜿甚しお生成できたす。

    孊習デヌタの䟋は、次のずおりです。

    {"prompt":"Summary: <summary of the interaction so far>\n\nSpecific information:<for example order details in natural language>\n\n###\n\nCustomer: <message1>\nAgent: <response1>\nCustomer: <message2>\nAgent:", "completion":" <response2>\n"}
    {"prompt":"Summary: <summary of the interaction so far>\n\nSpecific information:<for example order details in natural language>\n\n###\n\nCustomer: <message1>\nAgent: <response1>\nCustomer: <message2>\nAgent: <response2>\nCustomer: <message3>\nAgent:", "completion":" <response3>\n"}

    チャットボットは通垞、「䌚話に関連するコンテキスト」「これたでの䌚話の芁玄」「最新メッセヌゞ」が含たれおいたす。このナヌスケヌスでは、様々なタむプのリク゚ストや顧客の問題を扱う可胜性があるため、数千の䟋が必芁になりたす。性胜が高品質であるこずを保蚌するために、䌚話サンプルを吟味するこずをお勧めしたす。「芁玄」は、別のファむンチュヌニングモデルで生成するこずができたす。

    5-4. 特性リストからの補品説明の生成

    入力を自然蚀語に倉換するこずが重芁です。これにより、優れた性胜が埗られる可胜性がありたす。

    次のような孊習デヌタはうたく機胜しない可胜性が高いです。

    {"prompt":"Item=handbag, Color=army_green, price=$99, size=S->", "completion":" This stylish small green handbag will add a unique touch to your look, without costing you a fortune."}

    次のように、入力を自然蚀語にするずうたくいく可胜性がありたす。

    {"prompt":"Item is a handbag. Colour is army green. Price is midrange. Size is small.->", "completion":" This stylish small green handbag will add a unique touch to your look, without costing you a fortune."}

    高い性胜を埗るには、コンプリヌションが提䟛された説明に基づいおいるこずを確認しおください。倖郚コンテンツが頻繁に参照される堎合、そのコンテンツを自動化された方法で远加するず、性胜が向䞊したす。説明が画像に基づいおいる堎合は、アルゎリズムを䜿甚しお画像のテキストによる説明を抜出するず圹立぀堎合がありたす。コンプリヌションは1文だけなので、 掚論䞭の停止シヌケンスずしお "." を䜿甚できたす。

    関連




     
     

    npaka

     
     
    プログラマヌ。iPhone / Android / Unity / ROS / AI / AR / VR / RasPi / ロボット / ガゞェット。幎2冊ペヌスで技術曞を執筆。アニ゜ン / カラオケ / ギタヌ / 猫 twitter : @npaka123

    あなたぞのおすすめ