Slide 1

Slide 1 text

GPT APIを使った広告テキスト生成コンペ @YANS2023に参加した話 NSK @naohachi89 1 Kaggle Tokyo Meetup 2023 LT資料

Slide 2

Slide 2 text

本日お話する内容について 2 ● YANS(自然言語処理若手の会)が主催する学会で開催されたコンペについて話します ○ 学会は8月末に開催 ● コンペの概要と自チームのソリューションをメインに話します ○ コンペの詳細や他チームのソリューションはこちらの公式ブログでも見ることが できます ● 読者として、ChatGPTやLLMを使ったことがある方を想定した内容になっています

Slide 3

Slide 3 text

コンペ概要 3 検索連動型広告における、検索クエリと遷移先ページ(LP)の内容に合致した広告文の生成 LPの説明文 検索クエリ 広告文(生成対象)

Slide 4

Slide 4 text

データセット 4 ● 開発用データ ○ 訓練データセット: 12395件(CAMERA train データより抜粋) ● 評価用データ ○ リーダーボードセット: 50件(CAMERA devデータより抜粋) ■ kaggleのPublic LBで使われるテストデータに相当 ○ 最終評価セット: 10件(CAMERA のtestデータから人手で選出) ■ kaggleのPrivate LBで使われるテストデータに相当 サイバーエージェント社が公開している広告文生成データセット(CAMERA)を利用 データの例。title_orgは訓練データにのみ付与されている。

Slide 5

Slide 5 text

コンペルール 5 ● 単一のColab Notebookをソリューションとして運営に提出 ○ 提出された Notebook を用いてテストセットに対する生成を運営が実施する ○ 利用できるアクセラレータは CPU のみ ● コンペ期間は4時間 ● 1チーム4人で、各参加者の経験に応じて運営がチームを編成 ● リーダーボードセット(50件) に対する処理時間が5分以内 ● チームあたりのAPI利用料の上限は3000円 ● 一般に無償公開されているデータセット・ツールは使用可 ● Web ページをスクレイピングしての利用は禁止 ● 最終出力までの過程で、必ず OpenAI API の出力を利用する

Slide 6

Slide 6 text

運営提供のベースラインについて 6 タスクの指示と訓練データから抽出した事例でプロンプトを構成したベースラインを運営が提供 検索連動型広告における魅力的な広告文を考えてください。 'query'で指定した単語やそれに関連するフレーズがなるべく含まれるように、 'content'(広告ページのコンテンツ)を要約する形で広告文を生成してください。 === query: 美白 content: 再生治療による、医師も認めたエイジングケア。年齢をかさねても美しくあ るための秘訣。銀座駅より徒歩2分。オンラインカウンセリング・肌診断が無料。 output: いつまでも若々しくいたいなら === (他2例記載) === query: 1年生準備ボックス content: 紙教材での学習を中心とした「チャレンジ1ねんせい」のご案内。2023年4 月に小学校へ入学する新1年生向け通信教育です。進研ゼミ小学講座は小学生一人ひと りをサポートする通信教育講座。小学生の家庭での学習を応援しています。【ベネッセ コーポレーション】 output: タスクの指示 訓練データから抽出した few shot examples 広告文を生成させる 事例のクエリ・説明文

Slide 7

Slide 7 text

評価方法(最終評価) 7 ● 人間が手動で評価を実施 ○ 各チームが生成した広告文がGoogle Formで表示され、評価指標に合致する 候補を評価者が2つ選択 ○ 評価セットは10件で、得票数の合計で順位を決定 ○ 評価基準は下表の通り ● 評価者はコンペ参加者、アプリ開発ハッカソン参加者、運営 評価指標 説明 訴求性 自分が検索者だったとして、その広告をクリックしたく なるか 忠実性 生成文と説明文の一致度合いに基づく尺度 事実性 キーワード(kw)を生成文に含められた割合

Slide 8

Slide 8 text

最終評価のイメージ 8

Slide 9

Slide 9 text

評価方法(Public LB) 9 ● validation setに対して自動計算できる3つの評価指標を計算し、それらの調和平均で評価 ● Kaggleではなく、独自のコンペサイト上でLBを表示 ● 最終的な評価とは指標・評価方法が異なり、Public LBの数字は最終評価に一切影響しない ○ 盛り上げ用に提供されていた 評価指標 説明 BLEU-4 生成文と参照文の一致度合いに基づく尺度 ROUGE-1 生成文と参照文の一致度合いに基づく尺度 Kwd キーワード(kw)を生成文に含められた割合

Slide 10

Slide 10 text

Public LBのイメージ 10

Slide 11

Slide 11 text

結果 11 全6チーム中2位でした😢 順位 得票数 チーム名 1 284 チームD - 四人寄ればROUGEの知恵 2 271 チームF - 復活のF 3 185 チームB - Input: ハッカソンの\"Team B\" のチーム名を考えてください Output: B-Force … … 5 96 参照文 厳密には、6チーム + 参照文(LPの説明文をそのまま表示したもの)を候補に投票を実施

Slide 12

Slide 12 text

ソリューション概要 12 ● 与えられた訓練データは使わず、ドメイン知識をプロンプトに記述 ○ 良い広告の要素を人間が分析し、良い広告を生成するためのポイントを記述 ○ 良い広告の例(few-shot examples)を、実際の広告を参考に手動作成して記述 ■ 評価指標に沿った広告の例をプロンプトに記述することで、出力の質を高くする ● モデルはgpt-4-0613を利用 ● 生成された広告文を人間が評価し、プロンプトを調整 良い広告の要素を人間が学習 (Human Learning) ドメイン知識に基づいて プロンプトを作成 生成された広告文を 人間が評価

Slide 13

Slide 13 text

データセットの品質の課題 13 ● 広告文(title_org)が訴求性に欠けるデータがある ● LPの説明文(lp_meta_description)と広告文の関連性がないデータがある 訓練データセットには以下の課題が見られたため、自前でfew-shot examplesを用意した 訴求性に欠ける 説明文と広告文の 関連性が低い

Slide 14

Slide 14 text

14 リスティング広告を出稿しようと考えています。 次のキーワードで検索してきたユーザーに対して、クリック先のLPの説明文に基づいてユーザーがクリックしたくなる広告文を生成してください。 リスティング広告のキーワード: {kw} クリック先のLPの説明文: {lp_meta_description} 制約条件: - 広告文は以下に記載した基準によって人手で評価されるため、 なるべく評価が高くなるような広告文を生成してください - 広告文は30文字以内で簡潔に生成してください。 - 箇条書きは使わないでください - LPの説明文にはキーワードと関連のない文章が含まれている場合があるため、 関連性の低い内容は広告文には含めないでください 評価指標: 訴求性: 自分が検索者だったとして、その広告をクリックしたくなるか。 忠実性: LPで説明されている商材内容と整合がとれているか 事実性: 常識・世界知識と整合が取れているか 良い広告文の例を以下に記載するので、生成の参考にしてください。 マンション検索サイトの例: キーワード: 目黒区 物件 良い広告文: 目黒区の掘出し戸建 - 8,000件以上の未公開物件 (実際には他3例を記載) 広告文: プロンプトの詳細 ドメイン知識に基づく制約条件・指示 評価指標の説明 実際のリスティング広告を参考に作成した few-shot examples

Slide 15

Slide 15 text

生成結果の例 15 kw 説明文 ベースライン 提案手法 薬キャリ 【薬キャリAGENT】 は薬剤師登録者数No.1の薬剤師 転職サイトです。正社員、パート、派遣など4万件以 上の薬剤師求人を取り扱っております。無料登録で全 国の非公開求人もご紹介いたします。簡単60秒登録は こちらから。 薬剤師の転職なら 薬キャリAGENT へ! 【薬キャリAGENT】全国の薬剤師求 人4万件以上!60秒で無料登録 温泉 宮城 宮城の温泉・露天風呂のある宿・ホテル情報が満載。 露天風呂、貸切風呂、露天風呂付客室、日帰り温泉を 楽しめる宿・ホテルを多数ご紹介。温泉のある宿・ホ テルのご予約なら、じゃらんnetをご利用ください。 宮城の温泉旅館・ ホテルのご予約は じゃらんnetで 宮城の温泉宿予約はじゃらんnet - 露天風呂・貸切風呂満載 立川 塾 小学 生 1月無料体験授業受付中!基礎学力&勉強習慣をつけ よう!つまずきやすい単元を集中的に扱い、学習習慣 のサポートをいたします。臨海セミナー小学部は公立 中学進学生に向けて、一人ひとりに合わせた丁寧な進 路指導に自信があります! 小学生の学習習慣 を育成! 立川の小学生向け塾!基礎力&学習 習慣を1月無料体験! 提案手法ではベースラインと比較して訴求性が高い広告文が生成されている

Slide 16

Slide 16 text

試したがワークしなかったこと: GPTによる自動評価 16 ● クエリ、参照文、生成されたテキストをプロンプトに含めて、各評価軸の自動評価を実施 ○ Public LBのスコアと手動評価の結果にはほぼ相関がないが、手動評価は時間がかかる ■ -> 人間の代わりにGPTをアノテーターとして採用し、評価にかける時間を短縮 ● 結果としては、自動評価はワークしなかった ■ 評価値のバリエーションが少なく、同じような値が出力されがちだった 生成された広 告文 訴求 性_ スコ ア 忠実 性_ スコ ア 事実 性_ スコ ア スコアの平均 訴求性_評価理由 忠実性_評価理由 事実性_評価理由 "新1年生必 見!紙教材で 学習サポート" 80 90 80 83.3 キーワードに関連した 内容が広告文に含まれ ており、新1年生向けの 学習サポートを提供し ていることが分かる。 LPの説明文と広告文の内 容が一致しており、紙教材 での学習を中心とした「チャ レンジ1ねんせい」の通信教 育を提供していることが分 かる。 広告文には具体的な 数字や情報はないが、 紙教材で学習サポート を提供していることは 事実である。 "8GBメモリー スティックの安 全性解説 - データ保護の ためのIT対策" 80 90 80 83.3 広告文が検索キーワー ドに関連しており、 8GB メモリースティックの安 全性解説という内容が 興味を引く LPの説明文と広告文の内 容が一致しており、バック アップ用にUSBメモリを多 用しているお客様がいると いう状況が説明されている USBメモリの特徴やセ キュリティリスクについ ての説明があり、一般 的な知識と整合してい る

Slide 17

Slide 17 text

まとめ 17 ● ドメイン知識および質の高いfew shot examplesをプロンプトに埋め込むことで、訴求性の 高い広告文をGPTで生成することができた ○ LLMの進化が目覚ましい一方で、依然として質の高いデータを保有することは重要 ● 広告文生成タスクにおける自動評価は難しい ○ 自動評価の指標は参考にならない ■ 実用に耐えるLLMのベンチマークデータセットの構築は現在ホットトピックと なっているが、その重要性を改めて実感するコンペだった ○ GPTによる自動評価もワークせず ■ 今回はコンペ期間が短かったため、プロンプト等の改善余地はある

Slide 18

Slide 18 text

宣伝: 12月に技術書を出版します 18 ● Human-in-the-Loop機械学習に関する翻訳書 籍を12/25に出版します ○ 原著は2021年に出版 ○ 原著の著者はAppleのリサーチャー ○ 過去にはAmazon Mechanical Turkの開発 等にも関与 ● 書籍内では質の高いデータを効率よく作成する ためのトピックについて紹介しています ○ 能動学習 ○ アノテーターのマネジメント ○ アノテーション品質の評価 ○ アノテーションインターフェース ○ etc ● ご興味ある方はぜひご一読下さい🙏

Slide 19

Slide 19 text

appendix: 1位ソリューション概要 19 ● モデルはgpt-3.5-turboを利用 ● few-shot examplesは訓練データからランダムに3つ選択 ○ 多様性を担保するために類似度ベースではなくランダムに選択 ○ 検索キーワードと説明文の関連性が低いデータは選択対象から除外 ● クエリ、説明文からセールスポイントを抽出 ○ e.g.駅近ホテルをお探しなら楽天トラベルへ!楽天Pが貯まって...-> 楽天P貯まる、駅近 訓練データ フィルタリング されたデータ few-shot examples テストデータ プロンプト セールスポイント 関連度に基づく フィルタリング ランダム サンプリング クエリ、参照文入力 クエリ、参照文入力 セールス ポイント 入力 セールス ポイントを抽出

Slide 20

Slide 20 text

appendix: 面白かったソリューション 20 自作の川柳データセットで gpt-3.5-turboを fine-tuning し、広告文を川柳形式で出力(審査員特別賞)