Deploy on Friday

Written by@satopirka
A software engineer.

GitHubTwitter

LARSアルゴリズムでLasso解を求める

はじめに LARSを説明した記事のつづきです。 LARSアルゴリズムとLasso解 をLasso解とすると、非ゼロ要素 の符号と残差との相関 との符号は一致している必要がある。 しかし、LARSアルゴリズムは を必ず満たすとは言えない。 とする( 等については前回を参照)と は で更新されるので、 の符号が変わるのは のタイミングで、最初にそのような変化が起こるのは が よりも小さく…

LARS(Least Angle Regression)アルゴリズムの理論と実装

はじめに 以前Lassoを説明した記事の中で紹介しきれなかったEfronらによって提案されたLARS(Least Angle Regression)アルゴリズムを紹介します。LARSアルゴリズムで得られた解とLasso解は厳密には一致しませんが、ほぼ一致しており、さらにLARSアルゴリズムを少し修正するだけでLasso解を計算できます。 LARSアルゴリズム 導入 はじめに、 次元の 個のデ…

[論文メモ] Doubly Robust Joint Learning for Recommendation on Data Missing Not at Random

はじめに Explicit feedbackに基づく推薦システムにおいてバイアス除去を試みた論文を読んだので部分的にメモを紹介します。Explicit feedbackに基づく推薦システムのバイアス除去については前回の記事も参照してみてください。 タイトル:Doubly Robust Joint Learning for Recommendation on Data Missing Not at…

ガウス過程回帰メモ(2)

この記事はアドベントカレンダー ほぼ厚木の民 の11日目記事です。 昨年の同じ時期に書いて放置していたエントリの続き(といっても部分的な走り書きのメモ)を書きます。 前回のおさらい のパラメータ を求めたいが、次元が指数的に増える として期待値をとりパラメータを積分消去 ガウス過程回帰モデル N個の観測値 について の関係があり、この がガウス過程 に従うものとする。 このとき、…

[論文メモ] Recommendations as Treatments: Debiasing Learning and Evaluation

こんにちは、さとぴりかです。Explicit feedbackにおける推薦システムにおいてバイアス除去を試みた論文の一部追試をしたので部分的に紹介します。 タイトル:Recommendations as Treatments: Debiasing Learning and Evaluation 著者:Tobias Schnabel, Adith Swaminathan, Ashudeep Sin…

(Implicit) Matrix FactorizationをCythonで高速化する

こんにちは、さとぴりかです。CythonでMatrix Factorizationの実装を行ったときのメモです。 はじめに ユーザーがアイテムに対して何らかの評価を与えた行列を考えたときに、★1~5のように陽に評価値が与えられたものをExplicit Feedback、そうでないもので購入やクリックの有無(positive feedbackとnegative feedbackの2値)が与えられた…

Alternating Least Squares で行列分解

こんにちは、さとぴりかです。正月早々ですが、推薦関係のコードをGithubで読み漁っていたらSGDではなくAlternating Least Squares (ALS) = 交互最小二乗法で最適化しているものがあり、あまり実装したこともなかったので勉強し直してみました(すっごい今更感)。 Notation :ユーザー の潜在ベクトル :アイテム の潜在ベクトル :ユーザー による アイテム…

ExpoMFの紹介と実装

タイトル:Modeling User Exposure in Recommendation 著者: Dawen Liang, Laurent Charlin, James McInerney, David M. Blei 所属:Columbia University, McGill University 発表会議:WWW 2016 [link] はじめに こんにちは、さとぴりかです。2019年最…

SGNSの目的関数について

Negative Samplingについて忘れかけていたことを復習しました。 Skip-gram Skip-gramモデルは入力層、中間層、出力層の3層からなる単純なニューラルネットワークで、 単語(入力)から文脈(出力)を予測するモデルである。 隠れ層は次元のベクトルとなっており、が獲得している概念ベクトルはこれに相当する。 単語(入力)が与えられたときに、周辺の単語(出力)が出現する確率の総…

LDA with gibbs samplingをCythonで実装する

この記事は、自然言語処理 Advent Calendar 2019の21日目の記事です。 もともとはWord Embeddingsの学習について書こうと思っていましたが、ちょっと前にLDAをCythonで実装していたのでそちらについての(自然言語処理というよりはCythonの)知見を共有できればなと思っております。 はじめに 自然言語処理 Advent Calendar 2019の昨日の記事トピ…

© 2021 Minato Sato. All Rights Reserved