まずは、アリババヘルスの事業背景と現状分析をご紹介します。
例えば、Dangdang では下図のように、解釈可能なレコメンドが表示されます。 com の「閲覧した製品に基づく推奨」(推奨の理由をユーザーに伝える)、タオバオの「1000 のホーム コントロール コレクション」と「2000 のデジタル エキスパートが購入を追加」はすべて説明可能な推奨であり、ユーザー情報を提供することで推奨製品の理由を説明します。 。
左側の図の説明可能な推奨事項には、比較的単純な実装アイデアが含まれています。推奨事項には主にリコールとソート 2 つの主要なモジュールがあり、リコールにはマルチチャンネルのリコールが含まれることが多く、ユーザーの行動のリコールも一般的なリコール方法です。ソートモジュールを通過した製品を判定することができ、ユーザー行動想起プールからの製品であれば、推奨製品の後に対応する推奨コメントを追加することができます。しかし、この方法は精度が低いことが多く、ユーザーにあまり有効な情報を提供できません。
これと比較して、右側の例では、対応する説明テキストにより、製品カテゴリ情報などのより多くの情報をユーザーに提供できますが、この方法では、多くの場合、機能からテキストに至るまで、より多くの手動介入が必要になります。出力リンクは手動で処理されます。
Ali Health に関しては、業界の特殊性により、他のシナリオよりも多くの制限がある可能性があります。関連法規では、「3品1機器」(医薬品、健康食品、特定医療用配合食品、医療機器)の広告に「売れ筋、ランキング、推奨」などの文字情報を掲載することはできないと規定している。したがって、アリババヘルスは、上記の規制を遵守することを前提として、アリババヘルスの事業に基づいた製品を推奨する必要があります。
Ali Health には現在、Ali Health 自営店舗と Ali Health の 2 種類の店舗があります。業界の店舗。その中で、自営店舗には主に大型薬局、海外店舗、医薬品旗艦店が含まれますが、アリの健康産業店舗には主に旗艦店とさまざまなカテゴリーの個人店が含まれます。
#製品に関しては、Alibaba Health は主に、従来型商品、OTC 商品、処方薬という 3 つの主要カテゴリの製品をカバーしています。通常商品は医薬品ではない商品と定義されており、通常商品のおすすめには、カテゴリの売上トップ、n 人以上が収集/購入しているなど、より多くの情報が表示されます。 OTC 薬や処方薬などの医薬品の推奨事項は、対応する規制の対象となり、推奨事項は、機能的適応、投薬サイクル、禁忌、その他の情報など、ユーザーの懸念事項とより統合される必要があります。
医薬品の推奨テキストに使用できる上記の情報は、主に次の主要な情報源から得られます:
後半では主に 製品の特徴を紹介します を抽出してエンコードする方法。
1. 製品の特徴の抽出以下は、火翔正斉水を例として、製品の特徴を抽出する方法を示します。主要な特徴を抽出するための上記のデータ ソースからの特徴:
OCR 技術は、製品 詳細画像から、製品の機能、主なセールスポイント、コアセールスポイントなど、より包括的な製品情報を抽出できます。 ユーザー別、特定の機能 感情スコアを使用して、商品の対応するキーワードの重み付けおよび重み付けを減らすことができます。たとえば、「熱中症を防ぐ」Huoxiang Zhengqi Water の場合、対応するラベルは、ユーザー コメントの「熱中症を防ぐ」という感情スコアに基づいて重み付けできます。 上記の複数のデータ ソースを通じて、情報からキーワードを抽出し、キーワード ライブラリを構築できます。抽出されたキーワードには重複と同義語が多数あるため、標準シソーラスを生成するには、同義語をマージして手動検証と組み合わせる必要があります。最後に、単一の製品とタグのリストの関係を形成でき、これをその後のコーディングやモデルでの使用に使用できます。 #2. 特徴のエンコード (1) 共通のブラウジング製品ペア: 一定期間 (30 分) 内に次々とクリックしたユーザーは、共同閲覧データとして定義されます。 共通購入は、同じメイン注文として定義できます。広義のサブオーダーとは、共同で購入する商品のペアと考えることができますが、実際のユーザーの注文習慣を考慮して、同一ユーザーが一定期間(10分)以内に注文した商品データを定義します。 (3) 閲覧後に購入した製品ペア: 同じユーザーが A をクリックした後に製品 B を購入し、A と B は相互に排他的です。データを閲覧して購入します。
特徴エンコード モデルは依然として word2vec のアイデアに基づいています。主に、類似したもの間の埋め込みが可能であることを期待しています。商品/タグが近くなります。したがって、単語埋め込みにおけるポジティブサンプルは、閲覧後に購入した上記の商品ペアとして定義され、ネガティブサンプルは、共同閲覧した商品ペアと共同購入した商品ペアの和集合から閲覧後に購入した商品ペアのデータを差し引いたものとなります。 #次に、特徴をエンコードする方法について説明します。特徴エンコードは主に単語埋め込み用の word2vec メソッドに基づいています。
実際の購入履歴データは、次の 3 つのカテゴリに分類できます。
(1) 機能は製品の特性のみを使用するため、コールド問題を完全に解決できます。起動時の問題: 新しく発売された製品の場合でも、タイトル、製品の詳細、その他の情報から対応するタグを取得できます。
(2) ポジティブサンプルとネガティブサンプルの定義は、さまざまな推奨シナリオで使用できます。ポジティブサンプルが共同購入した製品のペアとして定義されている場合、トレーニングされた製品の埋め込みを「コロケーション購入推奨」で使用できます。 " シナリオ。3. 説明可能な推奨モデル
一般的な XGBoost などの解釈可能モデルが組み込まれています。ただし、XGBoost はエンドツーエンドのモデルですが、その機能の重要性はデータセット全体に基づいており、パーソナライズされた推奨事項を満たしていません。 「何千もの人々と何千もの顔」が必要です。
モデル非依存の解釈可能性とは、主に論理シミュレーション モデルを再構築し、単一のケースを分析して予測値が実際の値と異なる理由を判断できる SHAP などのモデルを説明することを指します。ただし、SHAP は複雑で時間がかかり、パフォーマンス変更後のオンライン パフォーマンス要件を満たすことができません。
したがって、各サンプルの特徴重要度を出力できるエンドツーエンドのモデルを構築する必要があります。
混合ガウス分布は複数のガウス分布を組み合わせたもので、特定の分布の結果値と各サンプル結果が特定の分布に属する確率を出力できます。 。したがって、分類された特徴を異なる分布を持つデータとして理解し、対応する特徴の予測結果と実際の結果における予測の重要性をモデル化するための類推を行うことができます。
次の図は全体的なモデル構造図です。左の図は選択されたモデルであり、機能の重要度を表示するために使用できます。 . 右の図は、特徴量に対応する予測モデルです。
具体的には、予測モデルは対応する機能予測/クリックの確率を予測するために使用され、選択モデルはどの機能分布がより重要であり、どの機能分布がより重要であるかを説明するために使用されます。説明として使用 性的なテキストの表示。
次の図は、予測モデルの結果を示しています. 予測モデルは主に DeepFM のアイデアを利用しており、ディープ モデルとクロスモデル。ディープ モデルは主にフィーチャの深い表現を学習するために使用され、クロス モデルはクロスフィーチャを学習するために使用されます。
ディープ モデルでは、まず機能が事前にグループ化されます (合計 N 個のグループがあると仮定します)。たとえば、価格、カテゴリ、その他の関連する機能が価格にマージされます。 、カテゴリ カテゴリ (図のフィールド フィールド)、特徴のセットごとに個別のモデル トレーニングを実行し、この特徴のセットに基づいてモデルの結果を取得します。
モデルを事前にマージおよびグループ化すると、次の 2 つの利点があります。
(1) N 個のモデルの独立したトレーニングを通じて、入力特徴量を増減することでモデルの複雑さを変更できます。これはオンラインのパフォーマンスに影響します。
(2) フィーチャを結合およびグループ化すると、フィーチャの規模が大幅に減少するため、フィーチャ ドメインを手動でテキストに変換することがより便利になります。
アテンション層は理論的には特徴の重要性を分析するために使用できることは言及しておく価値がありますが、このモデルにアテンションを導入しない主な理由は次のとおりです。
(1) アテンションが使用済みレイヤーを前に置きすぎると、特徴を深く表現した結果を反映できません;
(2) 注目レイヤーを後ろに置きすぎると、特徴を深く表現した結果を反映することができません元に戻ってコア機能を見つけます。
予測モデルについて:
クロスレイヤーは FM モデルに従いませんが、CNN を使用して DeepFM の FM 構造を置き換えます。 FM モデルは、特徴量のペアワイズ クロス結果を学習し、計算中の次元爆発を避けるために数式を通じて直接ペアワイズ クロス結果を計算しますが、特徴量の重要性を追跡することが不可能になるため、クロス モデルに CNN が導入されています。元の構造を置き換えます: N 特徴が交差するように特徴が乗算され、その後、CNN の対応する操作が実行されます。これにより、入力後のプーリングや連結などの操作を経て、特徴量を遡ることができます。
上記の利点に加えて、この方法には別の利点もあります。現在のバージョンでは 1 つの機能を 1 つの説明テキストに変換するだけですが、依然として、複数の機能のインタラクションの変換を達成することが期待されています。未来。たとえば、ユーザーが 100 元の低価格製品を購入することに慣れているが、元の価格が 50,000 元の製品が 500 元に割引されてその製品を購入した場合、モデルはそのユーザーを高品位であると定義する可能性があります。 -浪費ユーザー。ただし、実際には、ユーザーはハイエンドブランドと高い割引という二重の要因によって注文する可能性があるため、組み合わせロジックを考慮する必要があります。 CNN-FM モデルの場合、特徴マップを直接使用して、後の段階で特徴の組み合わせを出力できます。
選択モデルは MLP と sparseMax で構成されます。選択モデルの活性化関数は、より一般的なソフトマックスではなくスパースマックスであることに言及する価値があります。画像の右側には、sparsemax の関数定義と、softmax と sparsemax の関数比較表が表示されます。
右下の図からわかるように、ソフトマックスは依然として重要度の低い出力ノードに小さな値を割り当てます。このシナリオでは、特徴の次元が爆発的に増加します。機能間の出力は区別できません。 SparseMax は出力を離散化し、最終的にはより重要な特徴のみを出力できます。
オンライン効果データは主に大手薬局のホームページにある露出-クリックデータから取得していますが、過学習を避けるために他のシーンの露出-クリックデータも導入しており、データ比率は4:1です。
オフライン シナリオでは、このモデルの AUC は 0.74 です。
オンライン シーンにはすでに CTR モデルがあるため、新しいバージョンのアルゴリズムは単にそのモデルを置き換えるだけではないことを考慮してください。説明テキストは変数を制御しないため、この実験では AB テストを直接使用しませんでした。代わりに、オンライン CTR モデルと新しいバージョンのアルゴリズムの予測値が特定のしきい値より高い場合にのみ、推奨理由のテキストが表示されます。オンライン化後、新しいアルゴリズムの PCTR は 9.13% 増加し、UCTR は 3.4% 増加しました。
#A1: 同義語がマージされると、モデルはテキスト標準を学習し、基本的な語彙ライブラリを提供するために使用されます。しかし実際には、手動による検証の方が大きな割合を占めます。健康/医薬品のビジネス シナリオでは、アルゴリズムの精度に対する要件がより高いため、個々の単語の逸脱により、実際の意味に大きな逸脱が生じる可能性があります。全体として、手動による検証の割合はアルゴリズムによる検証の割合よりも大きくなります。
#A2: はい。説明可能な推奨事項を実行できるモデルは他にもたくさんあります。共有者は一般に GMM に精通しているため、上記のモデルが選択されました。
#Q3: 選択モデルと予測モデルはどのように連携されていますか?A3: N セットの特徴グループがあると仮定すると、予測モデルと選択モデルの両方が 1*N 次元のベクトルを生成し、最終的に予測モデルと選択モデルを比較し、乗算(複数)して連携させます。 #Q4: 解釈可能なテキストを生成するにはどうすればよいですか?
#4: 現在、テキスト生成に適した機械学習モデルはなく、主に手動による方法が使用されています。ユーザーが価格を重視する場合、過去のデータを分析し、コストパフォーマンスの高い製品を推奨するでしょう。しかし今のところ、それは主に手作業です。将来的にはテキスト生成に適したモデルが登場することが期待されていますが、ビジネス シナリオの特殊性を考慮すると、モデルによって生成されたテキストは依然として手動で検証する必要があります。 Q5: モデルのフィルタリング ロジックは何ですか?
#Q6: 語彙の注釈に属性タイプはありますか?
#A7: はい、現在の実際の使用状況はスロットを埋めることです。 Q7: 解釈可能なテキストでは、スロット充填のアイデアを使用できますか?つまり、異なるテンプレートを用意し、言葉の重みに応じて異なるテンプレートを選択するということでしょうか。
以上がアリババの説明可能な推奨アルゴリズムの適用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。