畳み込みシーケンス埋め込みによるパーソナライズされたTop-Nシーケンシャル推奨



Personalized Top N Sequential Recommendation Via Convolutional Sequence Embedding



概要

トップnシーケンス推奨モデルでは、ユーザーが過去に操作した各製品をシーケンスと見なし、ユーザーが将来インタラクティブに動作する可能性のあるトップN製品のランキングを予測することを目的としています。この相互作用の順序は、シーケンスパターンが重要な役割を果たしていることを示しており、シーケンス内の最新のアイテムが次のアイテムにより大きな影響を与えていることを示しています。本論文では、提案されたコンボルショナルシーケンス埋め込み推奨モデル(caser)を提案した。その主なアイデアは、時間と空間の観点から「投影された」画像シーケンスを形成し、畳み込みフィルターを使用して、画像のローカル部分としてシーケンスパターンを学習することです。特徴。この方法は、一般的な設定とシーケンシャルパターンをキャプチャするための統一された実行可能なネットワーク構造を提供します。

前書き

すべてのユーザーの順序を考えると、目標は、将来のニーズを最大化するために、一般的な設定と順序パターンを包括的に考慮して、各ユーザーにアイテムのリストを推奨することです。従来のトップN推奨とは異なり、トップN注文推奨モデルは、ユーザーの行動を製品のコレクションとしてではなく、製品のシーケンスとして扱います。 Caserは、水平および垂直の畳み込みフィルターを使用して、ポイントレベル、ユニットレベル、およびスキップ動作の連続パターンをキャプチャします。 Caserは、ユーザーの一般的な好みとシーケンシャルパターンをモデル化し、統合されたフレームワークでいくつかの既存の最先端の方法を要約します。



モデル

このモデルは、畳み込みニューラルネットワーク(CNN)を使用してシーケンスの特徴を学習し、隠れ因子モデル(LFM)を使用してユーザーの特徴を学習します。 Caserネットワーク設計の目標は複数あります。つまり、ユーザーの一般的な好みと順序パターンを均一なレベルとポイントレベルでキャプチャし、スキップ動作をすべて監視されていないスペースでキャプチャすることです。図3に示すように、Caserは、埋め込みルックアップレイヤー、畳み込みレイヤー、および完全に接続されたレイヤーの3つのコンポーネントで構成されています。ケーサーは、埋め込み層、畳み込み層、完全接続層の3つの部分で構成されています。ユーザーuごとに、 図3の左側に示すように、ユーザーシーケンスSuからL個の連続するアイテムをすべて抽出し、次のT個のアイテムをターゲットとして取得します。これは、ユーザーシーケンス上でサイズL + Tのウィンドウをスライドさせることで実現されます。各ウィンドウは、トリプル(u、最初のL項、最後のT項)で表されるuのトレーニングインスタンスを生成します。
画像

埋め込みlayerCaser

潜在空間のシーケンス機能は、前のアイテムをニューラルネットワークに埋め込むことによってキャプチャされます。長さLのシーケンスを埋め込みにマップします。それらを一緒に積み重ねます。商品の埋め込みに加えて、ユーザーの特徴はLFMを使用して生成され、図では紫色でマークされています。 ### cNNテキスト分類[12]におけるCNNのアイデアから借用して、私たちの方法は、L×d行列Eを潜在空間の最初のL項の「画像」と見なし、シーケンスパターンを「画像」。この方法では、畳み込みフィルターを使用して連続パターンを検索できます。



画像

図4は、2つのジョイントレベルのシーケンシャルパターンをキャプチャする2つの「水平フィルター」を示​​しています。これらのフィルターは、h×d行列として表され、高さh = 2、全幅dに等しくなります。それらは、E行列の行をスライドすることによってシーケンスパターン情報を受け取ります。同様に、「垂直フィルター」は、E列を通過してスライドするLx1行列です。 画像認識とは異なり、すべてのアイテムの埋め込みQiはすべてのフィルターと同時に学習する必要があるため、「画像」Eは指定されません。

水平畳み込みネットワーク

このレベルでは、図3の2番目の部分の上部ネットワークにN個の水平フィルターがあります。たとえば、L = 4の場合、8個のフィルターがあり、各h = {1、2、3、4}はに対応します。 2つのフィルター。 Fkフィルターは上から下にスライドし、アイテムの横方向の寸法と相互作用します。以下は畳み込み式です。実際、Eのいくつかの線はフィルターと畳み込みを行い、次に畳み込み層に非線形活性化関数を追加します。 。
以下は、行列とフィルターの行iから行i-h +1へのアクションの結果です。



画像
したがって、最終的なFkフィルターの畳み込み結果は次のようになります。 画像h = 2の場合、生成されるckの形状は4-2 + 1 = 3 --3 * 1です。次に、最大プーリング操作をckに適用し、この特定のフィルターによって生成されたすべての値から最大値を抽出します。最大キャプチャフィルターは、最も顕著な特徴を抽出します。したがって、このレイヤーのn文字については、 出力値の形状はnです
画像

水平フィルターは、eを埋め込むことにより、連続する各h項と相互作用します。埋め込みとフィルターを学習することにより、エンコード対象アイテムの予測誤差の目的関数を最小限に抑えることができます(詳細についてはセクション3.4を参照してください)。高さの異なるスライディングバーにより、位置に関係なく信号を受信できます。したがって、水平フィルターは、複数のユニオンサイズを持つユニオンレベルのパターンをキャプチャするようにトレーニングできます。

####垂直畳み込みネットワーク

このレイヤーは図3の下部に示されていますが、n個のフィルターがあると仮定して、このレイヤーのシンボルとしてチルダを使用します。 画像
各フィルターFkは列と相互作用し、行列E上で左から右にd回スライドし、垂直c〜k畳み込み結果1 * dを生成します。
画像
内積の相互作用により、この結果がEとF〜kLの線の重みの加重和に等しいことを簡単に確認できます。
したがって、垂直フィルターを使用すると、Fossilの[6]加重和と同様に、前のLアイテムの埋め込みを集計して、前のLアイテムの潜在的な表現を集計する方法を学ぶことができます。
画像
画像
上記は垂直フィルターの出力です。

完全に接続されたレイヤー

2つの畳み込み層の出力を接続し、密接に接続されたニューラルネットワーク層を高レベルの要約機能にフィードします。

画像
画像接続層をd次元の隠れ層に投影する重み行列です。 z∈Rdは、畳み込みシーケンス埋め込みと呼ばれるもので、前の項のすべてのシーケンス機能が含まれています。
ユーザーの一般的な好みを把握するために、ユーザー埋め込みpuを埋め込み、2つのd次元ベクトルzとpuを接続して、それらを| I |に投影します。ノードの出力レイヤー(Iの値は、正のサンプルと負のサンプルの値の合計です)
画像
画像

ネットワークトレーニング

最尤推定値は次のとおりです。
画像前の動作シーケンスで観察された次のアイテムの確率を表します。次に、最尤推定法を使用して確率を累積し、尤度関数を作成します。 画像
画像
負の対数演算を実行することにより、ターゲット損失関数が得られます。これは、バイナリクロスエントロピー損失です。iは正のサンプル、jは負のサンプルです。
確率を最大化します。つまり、損失関数を最小化します。損失関数を最小化することにより、最適なパラメータが得られます。
ターゲットごとに3つのネガティブサンプルが見つかりました。ハイパーパラメータは、検証セットを介して調整されます。最適化アルゴリズムにはAdamを使用してください。バッチサイズは100です。過剰適合を防ぐために、L2ノルムがすべてのモデルパラメーターに適用され、完全に接続されたレイヤーで50%のドロップアウトが使用されます。

おすすめ

訓練されたニューラルネットワークを取得した後、各ユーザーに推奨事項を作成します。ユーザーの隠れ層状態をPUにし、最後のL個の式をネットワーク入力として作成します。出力層で最大のN値をお勧めします。ターゲットitemsTパラメーターはトレーニングで使用され、Nはトレーニング後の推奨パラメーターであることに注意してください。

既存モデルへの接続

実験

  • データセット:推奨される順序は、データセットにシーケンシャルパターンが含まれている場合にのみ意味があります。このようなデータセットを特定するために、シーケンス相関ルールマイニングを複数のパブリックデータセットに適用し、それらのシーケンス強度を計算します。
  • 分子は最小サポートしきい値(つまり(5)、信頼度は50%)を使用し、マルコフ次数Lは1から5です。分母はユーザーの総数です。 SIを使用して、データセット内のシーケンス信号の強度を推定します。
  • 各ユーザーシーケンスの操作の70%をトレーニングセットとして使用し、次の10%の操作を検証セットとして使用して、すべてのモデルに最適なハイパーパラメーター設定を検索します。各ユーザーシーケンスの残りの20%の操作は、モデルのパフォーマンスを評価するためのテストセットとして使用されます
  • 測定基準:


  • rel(N)= 1 R Rˆ平均精度(MAP)のN番目の項目がすべてのユーザーAPの平均である場合。