渋谷駅前で働くデータサイエンティストのブログ

元祖「六本木で働くデータサイエンティスト」です / 道玄坂→銀座→東京→六本木→渋谷駅前

R

h2o.deeplearningでクリスマスツリー(のようなもの)を描く

R Advent Calendar 2014 (ATND)のクリスマス・イヴ担当ということで、クリスマスツリーを描いてみます。 R Advent Calendar 2014 : ATND まずは去年もやったSVMで、ついでにちょっとだけホワイト・クリスマス感を出してみた感じで。クリスマスツリーのデータ…

Rによる最適化計画(1):とりあえずCRAN Task Viewを見て、{linprog}パッケージのsolveLP関数とoptim関数を触ってみる

時々最適化計画をやってくれみたいな依頼をもらうことがあるんですが、普通の線形計画法って普通にやると実はwinner-take-allみたいなことになって、結局ヒトが介在しなきゃダメみたいなことになるんですよね。なーんて愚痴りながらググってたらこんなPDFを…

Stanで統計モデリングを学ぶ(7): 時系列の「トレンド」を目視ではなくきちんと統計的に推定する

何かこのシリーズめちゃくちゃ久しぶりなんですが(汗)、ちょっと最近問題意識を抱いている話題があるのでそれに関連した形でStanでやってみようと思います。 それは時系列の「トレンド」の扱い。ビジネスの現場では、時系列を意識しなくても良い*1クロスセ…

パッケージユーザーのための機械学習(11):番外編 - AdaBoost

このシリーズ記事、教師なし学習をあらかたやったので*1もういいかなと思ってたんですが、ひょんなことから取り上げ忘れてたものがあったなぁと思い出したのでサクッとやってみようと思います。 忘れていたのはAdaBoost。普段はほとんど使わないブースティン…

Rでベイジアン動的線形モデルを学ぶ(4):季節要素のあるローカルレベル・モデル

色々と興味が発散していて違う話題ばかりしてますが、これもまだ全然終わってないので粛々と進めようと思います。ということで今回は季節調整のお話。Commandeur本の進行に合わせて、季節調整ありただしトレンドなしというモデルでいきます。もちろんテキス…

H2OのRパッケージ{h2o}でお手軽にDeep Learningを実践してみる(3):MNISTデータの分類結果を他の分類器と比較する

さて、折角Deep Learningなんて使うんだったらもうちょっと面白いデータでやってみようよ!ということで、多次元データの代表たるMNIST手書き文字データ*1を使って試してみようかと思います。 で、MNISTデータなんですが真面目に取ってこようとするとえらく…

H2OのRパッケージ{h2o}でお手軽にDeep Learningを実践してみる(2):学習データとパラメータを変えて試す

うっかりこのシリーズでJapan.Rで喋ることに決めてしまったせいで関係各方面からのプレッシャーを感じつつある今日この頃ですが。 Japan.R 2014 : ATND ともあれ一度乗ってしまった舟なので、このままだらだら{h2o}でDeep Learningというお題でちょっとシリ…

H2OのRパッケージ{h2o}でお手軽にDeep Learningを実践してみる(1):まずは決定境界を描く

我らが自称ゆるふわ*1ガチ勢代表@motivic_氏がこんな記事をupしてました。 Deep Learningの性能を見てみよう ~Iris編~ ということで、こんなに簡単にDeep LearningをR上で試せるんだったらついでに僕もやってみようと思ったのでした。ただし同じirisでやる…

Rで不均衡データをクラス分類する方法まとめ:SVM、ランダムフォレスト、ロジスティック回帰の場合

追記(2018年4月) 2017年4月にアップデート記事を出しておりますので、そちらもご覧ください。 以前の記事でSVM(しかもsvm{e1071}に限って)で不均衡データをクラス分類する方法について取り上げましたが、色々調べた結果その他のRの分類器でもやれるとい…

Rでベイジアン動的線形モデルを学ぶ(3):ローカル線形トレンドモデル

相変わらずグダグダな上に挙句の果てに既にRでやっちゃった例をまとめたPDF bookまであると判明してモチベーションだだ下がりなんですが、備忘録も兼ねてめげずに続けます。もちろんテキストは相変わらずこちらの2冊。 状態空間時系列分析入門作者: J.J.F.コ…

不均衡データをSVMでクラス分類するにはどうすれば良いか

今年のKDD cupが絵に描いたような不均衡データ(正例と負例との数的比率が極端に偏っているデータ)で苦労させられたので、ちょっと調べたら色々と良い方法があるなぁと気が付きましたよということで備忘録的に紹介しておきます。 ちなみにググったら普通に@…

Rでベイジアン動的線形モデルを学ぶ(2.5):最尤法でパラメータ推定してみる

前回サクッとローカルレベル・モデルを推定してみたわけですが、そう言えばパラメータ推定は何もしなかったのでした。既に線形モデルも一般化線形モデルもこのブログで見てきている以上最小二乗法や最尤法やMCMCでパラメータ推定するというのは常識なわけで…

Rでベイジアン動的線形モデルを学ぶ(2):まずは状態空間のコンセプトと基本のローカルレベル・モデルから

前回からだいぶ間が空いた上に、要は{dlm}パッケージで遊ぼう!という大袈裟なタイトルの割に中身のないこのシリーズ記事ですが(笑)、取るものもとりあえずちょっと例題をやってみようと思います。参考文献はまずこちらのPetris本。 Rによるベイジアン動的…

Googleがリリースした「キャンペーンとKPIとの因果関係を推定する」Rパッケージ{CausalImpact}を試してみた

何気なくR-Bloggerのタイムラインを見ていたら、"CausalImpact: A new open-source package for estimating causal effects in time series | Google Open Source Blog"という記事がシェアされていたので見に行ってみたのでした。これはもう読んで字の如く「…

『手を動かしながら学ぶ ビジネスに活かすデータマイニング』(技術評論社)を書くに当たって気を付けたこと&補足など(追記あり)

追記(2015/03/14) 第7章の決定木のところで取り上げた{mvpart}パッケージのサポートが切れ、CRANから削除されてしまったためinstall.packages関数ではインストールできなくなっています。現在のインストール方法を最後に追記しました。 追記(2014/09/18) 実…

今月下旬に『手を動かしながら学ぶ ビジネスに活かすデータマイニング』(技術評論社)という本を出します

本日、出版元の技術評論社(gihyo)様の公式サイトでオープンになりました。 手を動かしながら学ぶ ビジネスに活かすデータマイニング:書籍案内|技術評論社 そして書影はまだ反映されていないようですが、Amazonでも予約受付が始まった模様です*1。 手を動か…

パッケージユーザーのための機械学習(10):Affinity Propagation

だいぶ前回から間が空いてしまいましたが、ついに10回目になったこのシリーズ記事。。。多分クラスタリングだとこれが最後になるんじゃないでしょうか。以前話題に出ていたAffinity Propagationをやってみようと思います。 なのですが。今回も文献資料は見つ…

Rでベイジアン動的線形モデルを学ぶ(1):なぜ「動的」モデルなのか

ちょっとStan一辺倒でやってるのも随分効率が悪いなぁと思い始めてきたところに、大仏のオッサンがこんなナイスな記事をupしていたのに今頃気付いたのでした(オッサン気付くの遅くてごめん)。 逐次モンテカルロ/(粒子|パーティクル|モンテカルロ)フィルタ…

Stanで統計モデリングを学ぶ(6): 階層ベイズモデルで季節調整を行う

前回の記事では盛大にトレンドつきモデルの式をトレンド累積値でモデリングしないという間抜けなことをしてしまい大変失礼しましたorz さて、階層ベイズモデルでは際限なく色々な要素を足していくことで、果てしなく複雑っぽいモデルを作ることができるわけ…

パッケージユーザーのための機械学習(9):混合ディリクレ過程

前回の記事からだいぶ経ってしまいましたが、皆様パッケージの使い心地はいかがでしょうか(汗)。ということで、今回はいよいよクラスタリングシリーズの大詰め、混合ディリクレ過程を取り上げます。 今回は僕も完全に理解しているわけではないので、ぶっち…

「統計モデリングとは何なのか」をいま一度整理してみる

もうタイトルを読んで字の如しなんですが、要は「統計モデリングってぶっちゃけ何なのよ?」という問題意識が最近非常に局所的ながら影響力の大きいところ*1から出てきておりまして。 で、僕もその議論にマターリ参加しながら「このもやもやしたものをどうや…

Stanで統計モデリングを学ぶ(5): とりあえず階層ベイズモデルを試してみる(応用編:トレンドのあるモデル) *追記2件あり

このシリーズ記事、全然真面目に事前分布の勉強をしていない人間がStanで無理やりフルベイズをやろうという無謀な代物でございますが、何だかんだで段々佳境に入ってまいりました。 ということで、今回は階層ベイズモデルをこんな感じでやってみましたという…

パッケージユーザーのための機械学習(8):混合モデルとEMアルゴリズム

教師なし学習シリーズもいよいよ佳境に入ってきましたねー、と言いつつ前回記事から既に2ヶ月半ぐらい経ってますが。。。ここからは主に混合モデルを取り上げていく予定です。今回もはじパタpp.165-174をベースにやっていきます。 はじめてのパターン認識作…

Stanで統計モデリングを学ぶ(4): とりあえず階層ベイズモデルを試してみる(基本編)

だいぶ間が空いちゃいましたね(汗)。これまでの記事で大体Stanで何ができるか分かったので、ぼちぼちStanらしいことをやってみようと思います。一応過去記事のリスト出しておきますので、良かったら復習も兼ねてお読みください。 Stanで統計モデリングを学…

2014年春版:ビジネスにおけるデータ分析のプロを目指すなら揃えておくべき12冊

さて、前回リストの記事から半年ぐらい経ちましたよーということで、それ以降に発刊された書籍などを吟味した上で更新したリストをお届けしたいと思います。といっても引き続き今回のリストにも入っているものが多いので変わり映えしないかもですが。。。 前…

アソシエーション分析+グラフ構造可視化 ({arules} + {arulesViz}) で教師あり学習の変数重要度を可視化する

グローバルTokyoRで何話そうかなー、と思っていたんですがそう言えば主賓がvisualizationの人なんだったっけなぁということで、可視化の話にでもしようかなと。ということで、僕の大好きなネタでもやろうかと思います。 それは、「とにかく{arules} + {aruls…

Stanで統計モデリングを学ぶ(3): ざっと「Stanで何ができるか」を眺めてみる

実は業務でもStan使い始めてるんですが、まだまだ単位根ありパネルデータの分析に回すなど低レベルなものが多く、無情報事前分布と階層事前分布を巧みに使いこなして華麗にサンプリング。。。なんて夢のまた夢という情けない状況です(泣)。 で、気が付いた…

前処理なしのトランザクションデータを{arules}パッケージで読み込む方法

実は僕は結構頻繁に{arules}パッケージを使うんですが*1、個人的には汎用性を考えて必ず素性ベクトルの形になるようにデータを前処理して読み込むようにしています。例えばこんな感じ。 ビール ソーセージ 牛肉 ... 1 0 1 ... 0 1 0 ... 1 1 1 ... ... ... .…

Conditional inference treesとそのランダムフォレストを{party}パッケージで試してみた

今まで気付かなかったんですが、@dichikaさんがこんな記事を書かれていたんですね。 ランダムフォレスト雑感 - BOD 実は僕はほとんどconditional inference treesのことを知らなかったのと、ここで紹介されている{party}パッケージが面白そうだったので、そ…

パッケージユーザーのための機械学習(7):K-meansクラスタリング

本シリーズ記事のカテゴリからPythonが消えて久しい今日この頃ですが、皆様いかがお過ごしでしょうか*1。とかいう前口上はどうでも良くて、とっとと今回のお題に入りましょう。今回はクラスタリングのド定番、K-means(k平均)クラスタリングです。 K-means…