ブックマーク / tjo.hatenablog.com (23)

  • Stanで統計モデリングを学ぶ(1): まずはStanの使い方のおさらいから - 渋谷駅前で働くデータサイエンティストのブログ

    (※Stan v2.4.0以降でインストール方法に若干変更があります!詳しくはこの記事の中ほどをご覧ください) さて、年初の抱負でも語ったように今年はStanを頑張って会得していこうと思います。理由は簡単で、ありったけの要素を詰め込んでMCMCサンプラーでガンガン推定していくような階層ベイズモデリングに自分の興味としても惹かれる上に、実務でも必要になりそうな見通し*1だからです。 Stan: Project Home Page 既に以前の記事でも簡単に触れてますが、StanはC++ベースのコンパイラで高速化させたMCMCサンプラーです。文法も簡単でなおかつ高速なので、BUGSでは時間がかかり過ぎて辛かった計算でも比較的サクサク回せます。 このシリーズを通して参考にするのは、@berobero11さんのブログです。 Small Data Scientist Memorandum 当にもう、

    Stanで統計モデリングを学ぶ(1): まずはStanの使い方のおさらいから - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2014/01/28
  • パッケージユーザーのための機械学習(3):サポートベクターマシン(SVM) - 渋谷駅前で働くデータサイエンティストのブログ

    (※はてなフォトライフの不具合で正しくない順番で画像が表示されている可能性があります) PythonでSMO-SVM書き下すという宿題がまだ終わってないくせにこれ書いていいのか物凄く迷うんですが(笑)、R Advent Calendar 2013の12月6日分第6回の担当に当たっているのでついでに書いちゃいます。 なのですが。実はその12月6日は米ネバダ州・タホ湖畔で開催中のNIPS 2013に参加中*1でupできるかどうか分からない*2ので、タイムスタンプ変えて予めupさせてもらいました。ルール破っちゃってごめんなさい。。。 ということで、今回の参考文献はこちら。未だに評は分かれるみたいですが、僕が推すのはいわゆるSVM赤こと『サポートベクターマシン入門』です。 サポートベクターマシン入門 作者: ネロクリスティアニーニ,ジョンショー‐テイラー,Nello Cristianini,Jo

    パッケージユーザーのための機械学習(3):サポートベクターマシン(SVM) - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/12/06
  • MCMCの計算にStanを使ってみた(超基礎・導入編) - 渋谷駅前で働くデータサイエンティストのブログ

    肝心のMCMCの勉強はどこ行ったゴルァとか怒られるとアレなんですが、先にツールの使い方覚えてしまおうと思ってStanで簡単な練習をやってみました。ちなみに参考にした資料はこちら。 Stanチュートリアルの資料を作成しました。 - Analyze IT. StanTutorial 割とよく一緒に飲んでるid:EulerDijkstra氏のブログがとにかく役に立ちました。ありがとさんです!!! あと、MCMCやるのはこれが初めてという人は最低限久保先生の緑ぐらいは読んでおいて損はないと思います。ただしStanではなくWinBUGSを{R2WinBUGS}で回す系ですが。 データ解析のための統計モデリング入門――一般化線形モデル・階層ベイズモデル・MCMC (確率と情報の科学) 作者: 久保拓弥出版社/メーカー: 岩波書店発売日: 2012/05/19メディア: 単行購入: 16人 クリック

    MCMCの計算にStanを使ってみた(超基礎・導入編) - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/11/08
  • 今さら人に聞けない「重回帰分析の各手法の使い分け」 - 渋谷駅前で働くデータサイエンティストのブログ

    (※※※続編記事書きました→「使い分け」ではなく「妥当かどうか」が大事:重回帰分析&一般化線形モデル選択まわりの再まとめ) 今ちょうどadtech tokyo 2013の会期中で、職場からも近い&会社から行ってこいという指示が出たということで僕も色々セッションを聞いたり企業ブースのお話を聞いたりしてる*1ところです。 ところで、いくつかのセッションの中でキーワードとして「重回帰分析」という言葉が出てきてました。ま、それ自体はこのブログでもRによるデータ分析絡みで頻出だし、ぶっちゃけありふれた手法と言って良いでしょう。やりようによっては普通にExcelでもできますし、それだけ人口に膾炙していると言って良いのかもですね。 ただし。意外にも内部のパラメータというか細かい手法の分岐というか、それこそ普通の線形モデルvs.一般化線形モデル(バリエーション多数)があることを無視して漫然と重回帰分析をや

    今さら人に聞けない「重回帰分析の各手法の使い分け」 - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/09/19
  • ディスプレイ広告のクリック数改善のためのデザイン最適化に、ポアソン分布 / 負の二項分布によるGLMを使ってみる - 渋谷駅前で働くデータサイエンティストのブログ

    これはディスプレイ広告に限った話ではないと思うんですが、あるPC / スマホ上の何かしらのクリエイティブに対するクリック数がそのデザインの良し悪しによって左右されるということは、web業界ではよく知られているかと思います。 そういう場合「どんなデザインがクリック数を増やすのに有効か?」というのは、厳密にはきちんと条件統制をかけて実験計画法に基づいてデザインしたA/Bテストなどで調べるべきなんでしょうが、そこまで綿密にやっている余裕のない現場も結構多いはず。 そこで、今回は既に計測済みの各広告のクリック数(CTRでしか得られていないようであれば実クリック数に直すものと想定する)データが得られているものと仮定して、それを各広告のデザイン要素を表すインデックス(二値orカテゴリカルデータ)のデータと組み合わせて、「どんなデザインをすればクリック数が増えるか?」を推定するというケースを想定してRで

    ディスプレイ広告のクリック数改善のためのデザイン最適化に、ポアソン分布 / 負の二項分布によるGLMを使ってみる - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/09/11
  • Rで機械学習するならチューニングもグリッドサーチ関数orオプションでお手軽に - 渋谷駅前で働くデータサイエンティストのブログ

    ちょっと調べてみたらタイトルの件について言及してる記事があまり多くなかったので、ざっくり書いてみます。なお、この記事はid:shakezoさんの 実務でRandomForestを使ったときに聞かれたこと へのオマージュです。というか、実は僕もこの記事を読んでから「多分Rなら専用の関数なんかもあるだろうし簡単にできるはず」と思って以前よりも積極的にやるようになったのでした(笑)。 総論:何で機械学習するのにチューニングが必要なの? どんな機械学習でも、何かしらのチューニングパラメータを持っています。例えばソフトマージンSVMならマージンパラメータCがありますし、非線形ガウシアンカーネルSVMならさらにカーネルパラメータのσとかが入ります。SMO(逐次最大最適化)アルゴリズムを利用するのであれば、さらにさらにtoleranceとかも入ってきます。 しかも、ちょっといじってみればすぐ分かると思う

    Rで機械学習するならチューニングもグリッドサーチ関数orオプションでお手軽に - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/09/03
  • 何も考えずに線形回帰すると怖いので、計量時系列分析でダメ押ししてみる - 渋谷駅前で働くデータサイエンティストのブログ

    何気なく読んでいて、途中で「?」と思った記事がありました。 ITエンジニアのためのデータサイエンティスト養成講座(5):「ビールと紙おむつ」のような相関関係を探る分析手法にはどんなものがある?――データ分析方法についての検討 (1/5) 何をやっているのかなー、と思って読み進めていったら一つ引っ掛かるところが。まず、この特集で扱っているのは「気温」と「電力消費(の日次最大値)」という時系列データなんですよね。なのに、4ページ目で普通に線形単回帰してます。 時系列をプロットしたのを眺めれば、どう見たって互いに相関しているのは丸分かりなのでどう計算しても構わないなんていうのは一目瞭然なんですが、それでも手法の説明のところで「時系列分析(ARMA / ARIMA)」とか言っているので、もうちょっと色々その辺を踏まえた何かがあっても良いのかなと思ったのでした。ということで、いつもながらRで見てみよ

    何も考えずに線形回帰すると怖いので、計量時系列分析でダメ押ししてみる - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/08/29
  • Rで計量時系列分析:状態変化を伴うモデル(閾値モデル、平滑推移モデル、マルコフ転換モデル) - 渋谷駅前で働くデータサイエンティストのブログ

    前回の記事までは多変量時系列モデルとしてのVARモデルを扱ってきました。今回は一旦このシリーズの最終回ということで、元の単変量時系列モデルに戻って「状態変化を伴うモデル」を扱ってみようと思います。 ということでもはや毎回恒例になってますが、使用テキストはいつもの沖です。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー) 作者: 沖竜義出版社/メーカー: 朝倉書店発売日: 2010/02/01メディア: 単行購入: 4人 クリック: 101回この商品を含むブログ (6件) を見る ただし今回の最後に出てくるマルコフ転換モデルは沖の説明では不足と思われるので、Hamiltonもあった方が良いです。 Time Series Analysis 作者: James D. Hamilton出版社/メーカー: Princeton Univ Pr発売日: 1994/01/11メ

    Rで計量時系列分析:状態変化を伴うモデル(閾値モデル、平滑推移モデル、マルコフ転換モデル) - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/08/23
  • 『データサイエンティスト養成読本』はゼロからデータサイエンティストを目指す人なら絶対に読むべき一冊 - 渋谷駅前で働くデータサイエンティストのブログ

    執筆陣12人中8人が直接の知人友人というこの新刊書でございますが。 データサイエンティスト養成読 [ビッグデータ時代のビジネスを支えるデータ分析力が身につく! ] (Software Design plus) 作者: 佐藤洋行,原田博植,下田倫大,大成弘子,奥野晃裕,中川帝人,橋武彦,里洋平,和田計也,早川敦士,倉橋一成出版社/メーカー: 技術評論社発売日: 2013/08/08メディア: 大型この商品を含むブログ (4件) を見る もちろん僕も発刊が決まってAmazonに予約ページができた時点でポチりまして、読んでみたところあまりにも内容が素晴らしかったので早速現職場の図書コーナーに持ち込んだ次第です(笑)。ということで、僭越ながら書評など書かせて頂こうかと思います。 ざっくり内容紹介 正直言って、ものすごーーーく網羅的で非常によく出来ています。1ページ目から順に読んでいっても初学

    『データサイエンティスト養成読本』はゼロからデータサイエンティストを目指す人なら絶対に読むべき一冊 - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/08/21
  • 単純な集計とデータサイエンスによる分析とで結果が食い違うかもしれない3ケース - 渋谷駅前で働くデータサイエンティストのブログ

    一般に、データ分析の大半はそれほど高度なテクニックの類を必要としないものです。僕も常日頃から口に出して言うことが多いんですが、「統計学だの機械学習だのの出番なんてそもそも少なくて当たり前」。工数もかかるし、できればやらない方が良いです。ぶっちゃけ単純な四則演算で十分なケースの方が多数派でしょう。 なので、普段はDB上でSQL(というかHiveなど)でサクッと四則演算だけで集計処理を済ませてしまって、その結果だけを表示するようにしておいた方が圧倒的に楽で手っ取り早いはず。多くのBIツールもそういう考えのもとで作られていると思います。 ところがどっこい。世の中には、単純な四則演算での集計結果と、データサイエンスを駆使した分析結果とで、い違ってしまうケースが何故かあることが知られています。どちらかと言うとレアケースだとは思いますが、その矛盾をおざなりにするととんでもないことになることも多々あり

    単純な集計とデータサイエンスによる分析とで結果が食い違うかもしれない3ケース - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/08/07
  • Rで計量時系列分析:VARモデルから個々の時系列データ間の因果関係を推定する - 渋谷駅前で働くデータサイエンティストのブログ

    前回の記事ではVARモデルの基礎までを取り上げました。ということで、今回はVARモデルに基づいて異なる時系列同士の因果関係を推定する3つの手法について取り上げてみようと思います。 ということで毎回毎回しつこいですが、使用テキストはいつもの沖です。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー) 作者:竜義, 沖朝倉書店Amazon 以下タイトルにのっとってRで各モデルの挙動を見ながらやっていきます。 必要なRパッケージ&サンプルデータ {vars}をインストールして展開して下さい。なお、Granger因果のグラフ構造表現及び偏Granger因果は、実はそもそもRでは実装されていません。ここだけMatlabの話題になりますので、悪しからずご了承を。。。 それから今回のサンプルデータですが、また{vars}同梱のCanadaでは芸がないので違うデータを使うことにします。沖

    Rで計量時系列分析:VARモデルから個々の時系列データ間の因果関係を推定する - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/07/31
  • Rで計量時系列分析:VARモデルの基礎(多変量時系列モデル) - 渋谷駅前で働くデータサイエンティストのブログ

    前回の記事では単変量の時系列までを扱いました。今回は多変量(ベクトル)時系列を記述するVARモデルとその周辺のポイントを取り上げます。 ということでしつこいですが、使用テキストはいつもの沖です。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー) 作者: 沖竜義出版社/メーカー: 朝倉書店発売日: 2010/02/01メディア: 単行購入: 4人 クリック: 101回この商品を含むブログ (6件) を見る 以下タイトルにのっとってRで各モデルの挙動を見ながらやっていきます。 必要なRパッケージ {vars}をインストールして展開して下さい。{forecast}や{tseries}などは今回は特に使いません。 多変量における自己相関、定常性など 単変量時系列過程の際にさんざん自己相関やら定常性やらうるさく言っておいて、まさか多変量にした時にガン無視ってわけにもいきませんの

    Rで計量時系列分析:VARモデルの基礎(多変量時系列モデル) - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/07/26
  • ネタとして秀逸どころか実際に大いに使える『データサイエンティスト レベル表』(記事紹介) - 渋谷駅前で働くデータサイエンティストのブログ

    はてなIDコールから突然Twitterにリプが飛んできたので、何かと思ったら以下の@shakezo_さんの記事で言及されていたのでした。 データサイエンティスト レベル表 - shakezoの日記 これがですねぇ、もうこれ以上ないくらい大変面白かった!ので是非とも紹介させていただきたく。ポイントとしては面白いだけでなく、実際にデータサイエンティストのレベル分けとしても大いに使えるところだと思ってます。 正直言って、どのレベル設定も非常~~~によく出来てます。僕の理解でかいつまんでまとめてみると、 レベル0:まだデータ分析してない レベル1:Excelなどでデータ分析の真似事を始めたばかり レベル2:RやSPSSで機械学習・統計学・データマイニングっぽいことが出来る レベル3:原理を知る必要が出てきてPRMLに手を出し始める レベル4:PRMLは大体読みこなせて、KDDとかICMLとかの論文

    ネタとして秀逸どころか実際に大いに使える『データサイエンティスト レベル表』(記事紹介) - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/07/16
    レベル2.9ぐらい
  • Rで計量時系列分析:AR, MA, ARMA, ARIMAモデル, 予測 - 渋谷駅前で働くデータサイエンティストのブログ

    前回の記事では計量時系列分析とは何ぞや?みたいなところをやりましたので、今回はいろはのイともいえるARIMAまわりから始めていこうと思います。 ということで改めて、使用テキストはいつものこちらです。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー) 作者: 沖竜義出版社/メーカー: 朝倉書店発売日: 2010/02/01メディア: 単行購入: 4人 クリック: 101回この商品を含むブログ (6件) を見る 以下タイトルにのっとってRで各モデルの挙動を見ながらやっていきます。 必要なRパッケージ {forecast}をインストールして展開して下さい。Rそのものの初心者向け説明はここでは全面的に割愛するので、適宜何かしらの初心者向け説明をご参照あれ。 今回のモデルで目指すもの 前回の記事では、要は「自己相関が大事よー」という話を何度もしました。ということは、時系列モデリング

    Rで計量時系列分析:AR, MA, ARMA, ARIMAモデル, 予測 - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/07/13
  • 「数式が苦手でも統計やりたいのでRで試す」は現実問題としてはアリだと思う - 渋谷駅前で働くデータサイエンティストのブログ

    むしろ数式が苦手だけど統計を勉強したいという人はRをやるといいかもしれない - Line 1: Error: Invalid Blog('by Esehara' ) ものすごくブコメを集めてるので、読んでみました。で、結論から言うと「四の五の言う人はいるかもしれないけどデータ分析の世界への入り口としてはアリ」だと思った次第です。 ということを書くと、どこからともなく「ハァ?ちゃんとした原理も何も知らずにツールだけ使って分かった気になっても意味ないよ?」みたいなツッコミが飛んできそうな気がしますが。。。有体に書くと、確かにアカデミックの世界ではそうだと思います*1。けれども、ビジネスの現場ではこれも一つのチョイスだと言ってよいと思うのです。以下にその理由を挙げていきます。 「目の前の問題に統計学がどんな結果を返して見せてくれるのか」が分かることは、理解する上で最も手っ取り早い 世の中の人の多

    「数式が苦手でも統計やりたいのでRで試す」は現実問題としてはアリだと思う - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/07/09
    アリアリ。私もそうだから...
  • Rで計量時系列分析:はじめに覚えておきたいこと - 渋谷駅前で働くデータサイエンティストのブログ

    機械学習は全然専門ではない僕が知ったかぶりをするのも何なので*1、もっともっと以前からそこそこやっている*2計量時系列分析の話でもしてお茶を濁してみることにします(笑)。 もうしつこ過ぎて自分でも嫌になってきたんですが(笑)、このシリーズでベースにするテキストは以下の2冊。沖テキストとHamiltonテキストです*3。他にも良いテキストはあるんじゃないかと思いますが、ここではこの2冊をベースにしていきます。なお、ほとんど沖テキストからの抜粋なのでお持ちの方はそちらを読んでもらった方が圧倒的に早いです、悪しからず。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー) 作者: 沖竜義出版社/メーカー: 朝倉書店発売日: 2010/02/01メディア: 単行購入: 4人 クリック: 101回この商品を含むブログ (6件) を見る Time Series Analysis 作者

    Rで計量時系列分析:はじめに覚えておきたいこと - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/07/06
  • サイバーエージェントを退職しました - 渋谷駅前で働くデータサイエンティストのブログ

    私事ですが、日をもって株式会社サイバーエージェント退職しました。 正式には6月30日が退職日なのですが、日が最終出社日*1なのでサイバーの同僚の皆さんと(同僚として)お会いするのはこれで最後です。 思えば、アカデミックなキャリアから民間企業キャリアに転じようと決心し、昨年の6月1日にサイバーに入社して以来、当に色々なことがありました。 そもそも実はその正式な入社日以前から、12新卒エンジニアたちに混じってJava研修を受けさせてもらったり、その12新卒の彼らから物凄いカルチャーショックを受けたり(笑)*2、よくよく考えたらアカデミアでは一番の若手だったのにサイバーでは最年長レベルだと気付いて萎えたり*3、正式入社の直後にビッグサプライズがあったり*4、右も左もわからないうちに渋谷ラボ(当時)の室長を任されたり*5、突然外国人が半数以上の技術委員会の委員を引き受けることになったり*6

    サイバーエージェントを退職しました - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/06/26
  • マルコフ状態転換モデルのRパッケージ{MSwM}の使い方(異常値検出・ステータス変化検出などに有用) - 渋谷駅前で働くデータサイエンティストのブログ

    CRANパッケージ{MSwM}の大体の使い方が分かったので簡単に共有します。 なお、しつこいようですがマルコフ状態転換モデルについてはこのブログではすっかりお馴染みの以下のテキストをご参照のこと*1。僕もまだ勉強中です。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー) 作者: 沖竜義出版社/メーカー: 朝倉書店発売日: 2010/02/01メディア: 単行購入: 4人 クリック: 101回この商品を含むブログ (4件) を見る Time Series Analysis 作者: James D. Hamilton出版社/メーカー: Princeton Univ Pr発売日: 1994/01/11メディア: ハードカバー購入: 1人 クリック: 5回この商品を含むブログ (7件) を見る なお、沖テキストでは簡単な説明のみに留められているので、Hamiltonテキストの方

    マルコフ状態転換モデルのRパッケージ{MSwM}の使い方(異常値検出・ステータス変化検出などに有用) - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/06/21
  • 意外と見極めにくい「CVR向上に最も貢献する行動パターン」 - 渋谷駅前で働くデータサイエンティストのブログ

    割とどこの現場でもやっている分析として「CVR向上に最も貢献する行動パターン」の同定・抽出というのがあると思うんですが、これって簡単なようで意外と難しいポイントがゴロゴロしてるんですよね。 例えばユーザー行動ログDBからソシャゲのイベントA, B, C...をやったかやらないかをフラグとしたテーブルを抽出し、CVのラベルとして「1週間以内に課金したorしない」*1みたいなのを与えて、 UserID Event A Event B Event C Event D ... CV 1001 1 0 1 1 ... Yes 1002 1 1 1 0 ... Yes ... ... ... ... ... ... ... 10X4 0 1 0 0 ... No 10X5 0 0 0 1 ... No ... ... ... ... ... ... ... というような生データ*2を得ているものとここ

    意外と見極めにくい「CVR向上に最も貢献する行動パターン」 - 渋谷駅前で働くデータサイエンティストのブログ
    deta
    deta 2013/06/20
  • Webデータ分析&データサイエンスで役立つ統計学・機械学習系の分析手法10選 - 銀座で働くデータサイエンティストのブログ

    追記 2016年3月に以下の記事によってこの内容はupdateされています。今後はそちらをお読み下さい。 主に自分向けのまとめという意味合いが強いんですが(笑)、僕が実際に2013年6月現在webデータ分析&データサイエンスの実務でツール・ライブラリ・パッケージを利用しているものに限って、統計学・機械学習系の分析手法を10個挙げて紹介してみようと思います。 追記 回帰分析(特に線形重回帰分析) 独立性の検定(カイ二乗検定・フィッシャーの正確確率検定) 主成分分析(PCA) / 因子分析 クラスタリング 決定木 / 回帰木 サポートベクターマシン(SVM) ロジスティック回帰 ランダムフォレスト アソシエーション分析(バスケット分析・相関ルール抽出) 計量時系列分析 おわりに おまけ1:「素性ベクトル+分類ラベル」なるデータ前処理 おまけ2:グラフ理論*10 {igraph}パッケージでグラ

    Webデータ分析&データサイエンスで役立つ統計学・機械学習系の分析手法10選 - 銀座で働くデータサイエンティストのブログ
    deta
    deta 2013/06/11