琥珀色呑んだくれ備忘録

メモとか備忘録とか

Rで最長共通部分文字列を取り出す

やりたかったこと 与えられた文字列に共通する部分文字列を取り出したい。PTXQCというパッケージにLCSn()というツールが容易されている。 CRAN - Package PTXQC install.packages("PTXQC", dependencies = TRUE) PTXQC::LCSn(c("AAAAACBBBBB", "AAAAADBBBBB"…

Rで作成した図表を「パワポでくれ」と言われた時の対処法

2020年9月7日現在、GitHub版ではofficer関連の対応がされたようだ。 niszetさん(id:niszet)から、コメントで教えていただいた。 GitHub上のexportパッケージをインストールしてコードを一式流してみたのですが、現時点(2020/Sep/06)では一通りコードが動…

XGBoostExplainerが何をやっているか調べる(4.モデルから予測ルールを抽出する)

目的 関連シリーズ 準備:XGBモデルの学習と予測 学習したxgboostのルール抽出 xgb.model.dt.tree()によるパスの抽出 予測値の再分配 Cover (H)の再計算 勾配(G)とweightの再分配 各ルールのインパクトの集計(Tree Breakdown) 目的 今回は、xgboostExplain…

XGBoostExplainerが何をやっているか調べる(3.予測結果の再構成プロセスを眺める)

目的 関連シリーズ 準備 XGBモデルの学習と予測 予測ルールを抽出する 予測値を再構成する overview 対象の予測 初期化 対象のtreeの取り出し 対象のleafのとりだし 検算 目的 今回は、インスタンスの予測結果が再構成されるプロセスを、explainPredictions(…

XGBoostExplainerが何をやっているか調べる(2.可視化プロセスを眺める)

目的 関連シリーズ 予測結果の可視化プロセスをstep-by-stepで眺める 準備 XGBモデルの学習と予測 可視化の手続き overview 学習したxgboostのモデルから予測ルールを抽出する 指定したインスタンスの予測結果を予測ルールから分解再構成する 分解再構成した…

XGBoostExplainerが何をやっているか調べる(1.とりあえず使う)

目的 関連シリーズ 参考 とりあえず使ってみる インストール XGBモデルの学習と予測 個別の予測結果の可視化 STEP.1. 学習済みXGBモデルからルールセット(leafまでのパス)を列挙してテーブル化 STEP.2. Get multiple prediction breakdowns from a trained…

[感想]『自然科学研究のためのR入門』

全体 対象としない読者 COI 1章:RmarkdownとRstudioを使う 2,3,4章:統計モデリング、実験計画法と分散分析を使った分析とレポーティング 5章:機械学習(など)を使った分析のレポーティング AUCROCによるパフォーマンスの比較について 6章:集大成 結論:…

Windows 10 で GPU(CUDA)を利用するLightGBM のR-packageをセットアップする

基本的には公式サイトのガイドに従ってセットアップするだけ。だけなのだが、ちょこちょこ入れ忘れとか落とし穴があったりして、次から手間取らないように備忘録にしておく。 全体の準備 32bit 版のRをインストールしない わりと嵌まったポイント。LightGBM…

autoxgboost を使ってみる

前回のTokyoRで@hoxo-mさんがつぶやいていたautoxgboostを使ってみる。 xgboost の自動パラメータ調整は autoxgboost というのが便利そうだった。#tokyorhttps://t.co/LvwY9U2zyx— hoxo_m (@hoxo_m) 2018年7月15日 何? autoxgboostは、mlr と mlrMBOを使っ…

(修正あり)arulesの結果をdata.frameで探索する

R標準のデータフレーム+dplyr等で、探索的にルール抽出⇔眺めるのにパッケージを作った。本家のarulesだとちょっとやりにくいなあと思っている人むけ。 使いかた arules::inspect() の代わりに inspectDF() するだけ。 arules::DATAFRAME() でデータフレーム…

既存のGithubのレポジトリをRStudioでcloneする

RStudioの操作だけで完結したい人向け。タイトル通りのことしたくて戸惑ったので備忘録。(1) File > New Project... > Version Control > Git (2) 既存のレポジトリのアドレスをコピー (3) コピーしたアドレスを(1)に張り付け (4) clone完了 あとは、ローカ…

random forestを使った解釈性にもとづく推薦システム

[1706.06691] Interpretable Predictions of Tree-based Ensembles via Actionable Feature Tweakingという論文が提案されている。KDD2017でYahoo Researchの研究者によって発表されたもの、とのこと。Ensemble treesによって、あるサンプルがラベルAと予測…

Lassoの非ゼロ変数を代替する候補を可視化する

最近、モデルの解釈性(interpretability)について色々と研究が出ており、興味もあってぼんやりと追いかけている。“Finding Alternate Features in Lassos”という論文が提案されている: Satoshi Hara and Takanori Maehara (2016): "Finding Alternate Fea…

mxnetパッケージをUbuntuで使うためのセットアップ

Ubuntu14.04でRからmxnet使いたくなってセットアップ。ガイド見ながらやっていけば終わり...と思ったらinstall_depsでいくつか引っかかった。Windows/Macばりに甘やかされたい。次からコピペでやりたいので自分用にメモしておく。 http://mxnet.readthedocs.…

random forestの感度分析+

教科書を読むと、random forestでモデルを学習させて、ある良い予測精度のものが得られたら、まずは各変数の重要度をみて、つぎにpartial dependency partial dependence plot(PDP)を眺めなさい、と書いてある。ある変数の動きに注目して予測値がどう変化…

LassoとOracle Property

「Oracle Property」。巷にこれほどかっこいいフレーズはそうそうないと思うので紹介を試みる。さて、Lassoの罰則項はどういう作用を持っているか? L1 normの縮小推定を解説する図はいろんな教科書にも載っているのだが、自分は最初見たときに実感を持てな…

random forestを予測以外の目的で使う

数年ほど前には最強と言われて一世を風靡していたrandom forestだが、予測以外にも使い道が提案されている。Rのパッケージから紹介したい。 予測全体の把握と仮説ルールの抽出 決定木分析が便利な理由の一つは「どういうルールでその予測が成り立っているの…

“rigorous” lassoを試してみた

High-Dimensional Metrics in R CRAN - Package hdm やりたかったこと= oracle property保証のlassoで変数選択(n<p) 得たもの= 速い、一致性はそれっぽい。 やりたいこと= ほかのパッケージとの比較、証明部分読む。 以下、試したかった部分だけ: # ins…

foreach+%dopar%をネストしたい

R

並列化できる評価関数があり、その調節パラメータを並列にグリッドサーチしたい。単純に考えると親のソケットクラスタから子クラスタを生成すると良いのかな、と思うがもっといい方法ないものか。評価関数は例えば、randomForestのようなアンサンブル学習で…