畳庵〜tatamiya practice〜

機械学習・統計モデリング練習帳。読書・source code読みの記録や,実装など。

statsmodelsによる状態空間モデリングを、KFASから「翻訳」して学ぶ(R経由で学ぶPythonの状態空間時系列モデリング#2)

はじめに この記事では、Pythonで状態空間時系列モデリングを行う方法を、Rによる実行例の「翻訳」を通して解説します。 題材として季節変動のある時系列データを用います。 状態空間時系列モデルでは、季節性やトレンドといった時系列背後の構造を反映させ…

R経由で学ぶPythonの状態空間時系列モデリング#1: 逐次推定法とカルマンフィルタ

はじめに 概要 この記事は、状態空間時系列モデリングを解説する全5本の記事の第2弾です。 前回の記事では、状態空間モデルの概要について紹介しました。 状態空間モデルでは、トレンドや季節性といった時系列の特徴をマルコフ過程に従う「状態」として仮定…

R経由で学ぶPythonの状態空間時系列モデリング#0: 状態空間モデルの概要

はじめに 内容 状態空間時系列モデルの概要 状態空間モデルとは何か? 典型的なモデルの紹介 今後の記事の執筆方針 本記事あわせて全5本で構想中 背景 状態空間モデルは時系列分析でよく用いられる手法の一つ Pythonユーザーにとっては情報が少なくややとっ…

NumPyでフーリエ変換を計算するためのメモ〜sin, cosで展開したときの係数をどう読み取るか〜

はじめに 内容 numpy.fft.fft/rfftの返り値は何を表しているか? numpy.fft.fft/rfftの出力値から、でFourier変換した表現に書き直すにはどうすればいいか? その際、データ数の偶奇で出てくる項・和の範囲が異なるのは何故か? 背景 Fourier変換は時系列デ…

Leap-frog法はなぜ誤差が蓄積しないのか?を視覚的に理解する〜Hamiltonian Monte Carlo法の補足の補足〜

久々の更新、お久しぶりです。 最近このようなベイズ統計モデリングの本を共著で書きました: PyMC3、Pyroで学ぶ統計モデリング発展作者:LiberalArts,yoichi_t,TatamiYA発売日: 2020/11/22メディア: Kindle版 自分の担当箇所は第二章のHamiltonian Monte Car…

User, Itemメタ情報を埋め込んだレコメンドアルゴリズムLightFM詳解

本記事では,LightFM(Kula, 2015)というレコメンドアルゴリズムについて,論文とGitHubの実装を読んで筆者が得た理解に基づき解説します。 arxiv.org github.com 前回,前々回と,行列分解ベースのレコメンド手法に関する話題で記事を書きました: tatamiya-…

画像に直接レコメンドアルゴリズムを適用してみる〜通常の特異値分解とレコメンドのMatrix Factorizationで行列分解比較〜

昨日の記事で,レコメンドアルゴリズムを視覚的に理解するということで,FunkのMatrix Factorizationによる出力値をヒートマップにして表し,入力したUser-Item行列との比較を行いました。 tatamiya-practice.hatenablog.com この中で, 出力レコメンド評価…

レコメンドの「模様」を描く〜Matrix Factorizationの因子数比較〜

※2020/03/08 本稿の記述には誤りがあります。 今回適用したアルゴリズムでは,正則化項は入れておらず,代わりにUser, Itemごとの平均的な評価を表すBias項が入っていました。 本日中に訂正します。 2020/03/08 13:20 修正しました。 にわかレコメンド屋さん…

scikit-learnはどのようにモデルがfit済みかを確認しているか?~check_is_fittedをおちょくる暇人~

以前投稿したDecisionTreeClassifierの記事で,モデルがfit済みかを確認するcheck_is_fitted関数について少し触れました。 tatamiya-practice.hatenablog.com この関数は,決定木に限らずscikit-learnのあらゆる実装で使われています。 そこ本記事では,chec…

そうだ,scikit-learnの決定木を写経しよう…!

はじめに ブログタイトルの通り,scikit-learnの決定木の実装を読みながら,フルスクラッチで写経していこうと思います。 とはいっても,決定木の実装,めちゃくちゃムズイです。 主な理由としては,アルゴリズムのコアとなる部分の大半がCythonで実装されて…