と。

Github: https://github.com/8-u8

pipelineライブラリKedroを使ってみた話

「パイプラインって何?」

仕事でも機械学習の案件がちょっと増えてきたというのと、
kaggleもベースラインくらいは自動的にsubmitできるところまで持っていきたいって思ったので、
pipelineを作ろうと言うことになりました。

ただ、私はエンジニアリング畑ではないので、ゼロから作れる自信がありません。
困ったなー困ったなーと思っていたところに、こんなQiitaを見かけました。

qiita.com

なるほど、いろいろあるんだな、となりました。
この中から今回はKedroを導入しとりあえず触ってみたのでレポします。

【2020年2月9日追記】

この記事を書いたら下のQiitaを書いたMinamiさんがこんなことをおっしゃいまして

「そんな褒め過ぎですよ」とか返そうとか思ったら、
KedroのProduct ManagerのYetundeさんがこんなことをおっしゃいました。

「リソースガイドとしてKedroのFAQに載せるよ」って書いてる……!!!???!?!?!!?

私は技術力がなく、この記事も個人的なメモ扱いだったのですが、
開発に携わっている人たちにこうして受け入れてもらえているのは素直に光栄に思います。

私も私で、kedroはいろいろトライアンドエラーしようと思っています。
ということで以下にもREADMEとして記事を転載しておきます。 多分フォルダが増えたりREADMEが加筆修正されたりすると思います。

github.com

続きを読む

統計数理研究所のリーディングDAT養成コースを修了しました

強い刺激を受けました

11月から東京都立川市にある統計数理研究所で、統計思考院のリーディングDAT(Data Analytics Talents)養成コースを受講し、
無事修了しました。

続きを読む

Data Science Bowl 2019で思い切りShake downしました

なんかすごい悔しい

のでここに残すことにします。
最初はdiscussionにするかとも思いましたが、
トップ層のSolutionをみて日和ったのでここに残します。

結果はアレなんですが、個人的にはいろいろ学ぶところが多かったので、
そういうのも含めてまとめていきます。

コンペそのものの概要は雑な紹介になるのであしからず……

続きを読む

一般線形モデルから一般化線形混合モデルにたどり着くまで

この記事こそが!

R Advent Calendar 22日目の記事です!

このノリがわからない人は前の記事を読んでください。

この前の記事が知る人ぞ知るRおじさんのAtsusyさんなのでこの記事では上がったハードルをくぐっていきます。
皆さん読んできました?省略できちゃうんですよ……これでRとPythonでのギャップが埋まり、世界はデータドリブンに動きますね……

しかも明日はSendaiRの運営をされてる茶畑さん
あさってはがspoanaの運営をされてるtsuyuponさんの投稿です。

誰?

みなさんご存知きぬいとさんです。 私は学生時代からRを使ってかれこれ8年になりますが、その人生の大半を線形回帰モデルに費やしてきました。
例えば学部時代にはDobsonの一般化線形モデル入門を読んだり
ベイズモデリングに入門したり、 Stanの可能性に触れたりと、統計モデルの理論を学び、Rで実装し、でてきた数字を眺めるのが私の生きがいなので、今日こそこの話をします。させろ。

ブログでの実装について

ここでソースコードもアレしています。好きに使え。
基本的に疑似データか、Rのオープンなデータでやります。
パッケージはtidyverselme4以外はデフォルトです。

github.com

何を書くのか?

この記事では主に以下のことを頑張って書きます。

  • 一般線形モデルの理論
    • Rのlm()関数での実装でできること、結果の解釈。
    • lm()関数でできないこと
  • 一般化線形モデルの理論と実装
    • Rのglm()関数での実装でできること
  • 一般化線形混合モデル
    • 一般化線形混合モデルでできること
    • lme4による実装
    • それってベイズじゃない?

何を書かないのか?

残念なことに以下のことは書いていません。

  • 非線形回帰モデル
  • 正則化回帰モデル
  • 一般化加法的モデル(GAM)
  • 一般化線形混合モデルにおけるパラメータ推定方法

上記のうち正則化回帰モデルについて関連する話は木曜日に書いたので好きに読んでください。

また、今回は「予測精度」ではなく「アンバイアスなパラメータ推定」という目的に特化しています。
もともと統計モデリングの拡張がこの課題への対応として進んできた背景が大きいので。
正直予測っていうのはあまり好きじゃないんですよね。やはり人類は統計データを使って事象の「構造」を旨く捉えようという叡智に挑むべき。やろう。

続きを読む

Lasso回帰で選択される変数が実行するたびに変わる話

この記事も!

R Advent Calendar 22日目の記事ではありません!

記事は書いてます!読後メモも書いてます!でもしょうがない。問題にぶち当たったので。

どんな問題?

Rのglmnet::cv.glmnet()関数で実行するL1正則化回帰(Lasso)において、
set.seed()でシード値を固めても、選択される変数にばらつきが生じる

原因は?

Rではset.seed()の効力は同時実行に限られる。
つまりset.seed()glmnet::cv.glmnet()が同時に実行されるような実装をしないと、
変数選択の結果がぶれます……かなしい……

結果は?

githubにあげました♨

github.com

続きを読む