Zazzleのディスクリプションとタグ候補を出すのに使ってる自作のGPT+を、この間考察したBM25ベースで作り直した。
Zazzleから手動で集めたサジェストキーワードを分析させて、BM25スコアの加点を最大化する組み合わせを選ぶ。加点のみに的を絞り、検索されるかどうかわからないキーワードは完全に捨てる、だいぶ攻撃特化なやり方。
キーワード集めてて気付いたけど、Zazzleのサジェストの出し方は階層というよりは「輪っか」に近い。クリック回数で見ると3階層くらいまであるけど、共通のキーワードが何度も出てくる。特定のテーマに対するサジェストがぐるぐる円でつながってるような感じ。
ということは、円でつながってるキーワード全部をタグとして使った場合、「どのサジェストをクリックしても自分の商品がバイヤーに表示される」状況を意図的に作れるのでは?
それも考えると、今回の新SEOは理論武装としてはいい感じにできたと思うけど、まあどうなるかね。答え合わせができるのが3ヶ月後なんだよねえ。
Zazzleはインデックス→キャッシュ→学習の3層構造になってるっぽく、私の観察だとインデックスからキャッシュの更新までに1~2週間くらいかかってる。今日からタグを変えても、効果が見えてくるのは早くて1週間後だろうな。
目下気になるのは、Zazzleの外、GoogleとかPinterestでのサジェストを採用すべきかどうか。検索語であることは間違いないけど、でもZazzle内でサジェストとされてないキーワードたちを、どう扱うべきか。これは来月の課題にする。
以下はGPT+作るためにやったことのメモ。自分でやったことを恐ろしいほどすぐ忘れるから。
- GPT作のローカルツールにサジェストキーワードを手動登録(HTML+IndexedDB)
- 登録内容はニッチ、キーワード、GPTの学習用として商品タイプとデザインスタイルを追加。商品タイプごとのデザイン特徴を明示することで関連性の学習精度を上げる
- 私が登録した順番(=キーワードを見つけた順番)を簡易的なランクとして保存、正規化して重み付けスコアとして利用する
- 全データをJSONでエクスポートできるようにする
- GPTは大量データを保持できないので、セッション開始時にJSON読み込み&分析
- どの観点から類似性を評価するかは明示しないと分析が安定しないので、共通語による関連性とスコアでマッピングを行うプロンプトをGPT+に学習させておく
- すでにGPT+に仕込み済みのZazzleアルゴリズムに加え、BM25ベースのスコア算出に基づいてJSONリストからのみタグ候補を選ぶよう条件を追加
あなたもeBayやってたりします…?