INPUTしたらOUTPUT!

忘れっぽいんでメモっとく

第53回R勉強会@東京で発表してきた

前回に続き発表枠が空いたので突貫でスライド作って発表させて頂きました。初心者放置で申し訳ございません。。。
以下はメモ。


初心者セッション

ゆるふわ文字データ分析入門

  • 文字列の処理については@yamano357氏のTokyoR49_stringr_stringi // Speaker Deckも参考になる
  • Windows版Rでマルチバイト文字含むUTF8のファイルをhtmlwidgetで処理しようとするとうまくいかないの自分だけ?


Rでウイスキー分析

  • 突貫で作成したため説明が不足していました。申し訳ございません。。。
  • 主成分分析も一応はやったので結果はまた別途アップします。
  • 緯度・経度についても@uri_bo氏にご教示頂いたのでクラスタ毎に地図表示を試してみます。

  • @dichika御大からもご助言頂きました!


応用セッション

実務でもきっと役立つ統計的因果推論

  • スライドは非公開
  • 岩波データサイエンスにサンプルプログラムと擬似データが公開される予定

  • 今回扱う因果モデル

    • ルービンの因果モデル
    • R社のCMを見たら2週間後のアプリ使用時間 ・・・ y_1
    • R社のCMを見なかったら2週間後のアプリ使用時間 ・・・  y_0
  • 因果効果を定式化
    • 因果効果は y_1 - y_0
    • 集団で考えてみる
      •  ATE = E\left( Y_1 - Y_0 \right) = E\left( Y_1 \right) - E\left( Y_0 \right)
        • ATE : 平均処置効果(average treatment effect)
      •  \displaystyle \frac{1}{N}\sum_{i=1}^N \left(  Y_{i1} - Y_{i0} \right)
      •  Y_{i1},  Y_{i0}は同時に観測できない
  処置群 対照群
CMを見た場合の結果 処置群の観測値  Y_{i1} 欠測
CMを見なかった場合の結果 欠測 対照群の観測値  Y_{i0}
  • 無作為割り当て(randomized controlled trial: RCT)ができる場合は限られている
  • CMの問題ではまず不可能

  • 共変量と傾向スコア

    • 母集団の一人ひとり変わってくる値
    • 傾向スコア
      • 処置群へ割り当てられる確率
      • 傾向スコアを用いた解析手段
        1. ロジスティック回帰で傾向スコアを求める
          • 目的変数は「処置ダミー(割り当て変数)」説明変数は共変量
        2. 傾向スコアを使った調整
          • マッチング: 同じ傾向スコアの人を同じ人とみなして E\left(Y_1-Y_0 | Z=1\right)を計算
          • 層別解析 : 傾向スコアの大小で層を分けて分析
          • 共分散分析
          • IPW推定法
  • IPW推定法

    • Inverse Probability Weighing Estimator: IPWE
    • 周辺期待値のATEが計算できる
  • CMを見た人の方が起動時間が短くなった

    • サンプルセレクションバイアス
      • 属性によってスマホの使い方、テレビの見方が違う
        • テレビを見る時間は若者より高齢者の方が多い
        • スマホゲームは若者の方がする時間がない
  • 調整した結果

    • 母集団全員に広告を見せた場合
      • アプリ利用回数 +5回
      • アプリ利用時間 + 1500秒
    • 処置群
      • アプリ利用回数 +2.3回
      • アプリ利用時間 + 約400秒
  • サンプルセレクションバイアスに対する対処法

    • 共変量を求める
  • ルービンの因果モデルを適用してはいけない危険な例
  • 傾向スコアにロジスティックやプロビットを求めているが精度が高い手法を使うことはある?
    • 基本的にはロジスティックやプロビットだが精度が高い手法
  • モデルを使う使わないの判定は?
    • 星野本参照

欠測データの統計科学――医学と社会科学への応用 (調査観察データ解析の実際 第1巻)

欠測データの統計科学――医学と社会科学への応用 (調査観察データ解析の実際 第1巻)


ハドリーさん進捗どうですか

  • readr
    • read_csv()のcol_types = cols(...)便利そう
      • l : logical
      • i : integer
      • d : double
      • c : character
      • D : date
      • T : time
  • dplyr

    • glimpse()
      • str()で確認してたけどglimpse()でも良さそう
  • HadleyはSJISに冷たい?

    • 「Why are you usin SJIS
    • Hadleyは優しい
    • 後ほど対応された
  • geom_は何の略?


実験計画のベイズ分析

  • ベイズの定理が発見されたのは暴れん坊将軍の時代(1763年)
  • フィッシャがー「研究者のための統計的方法」を発表したのは1925年
  • 統計学の授業から仮説検定を外したら怒られたw
  • 豊田先生のラッパー関数群は5/20頃に朝倉書店からダウンロード可能になる見込み

  • 豊田先生著の基礎からのベイズ統計学入門 輪読会 #4 - connpassで6章を担当させて頂いた際に自分も仮説検定は分かりづらい、ベイズ推定は分かりやすい!と発表しました。



LT

mxnetで回帰

  • 回帰で使用するには隠れ層のユニット数を1にする必要がある


それを捨てるなんてとんでもない

  • 穴あけしたデータをmissForestでimputeした結果、穴あけ前のデータとどれくらいマッチしたのかが気になる


dplyrとは何だったのか

  • 全てをdplyrで処理しようとしない


R Markdownのちょいネタ集


Rでやってみた金融テキストマイニング

  • 適時開示情報のタイトルで重回帰分析
    • 株価への影響度が大きい単語を統計的に計算


RでLINE BOTを作ろう

  • from 御社 left join 弊社
    • x : お仕事を某社に依頼
    • ○ : 会社を辞めて某社にjoin


解約リストと分析と現場

  • 解約阻止あるある
    • 解約理由も知りたいからロジスティック回帰など説明しやすい手法で分析
      • 当たり前の理由しか出てこない
    • 解約確率が高いユーザーは水際すぎて既に手遅れ
  • 「この方法では上手くいかないことが分かりました」を受け入れられる文化は貴重だと思う


また春に会いましょう ベイズ推定で不合格者を求めたい

  • 潜在ランク分析モデル
    • 因子分析と混合分布モデルの中間
    • ハイパーパラメータによって結果が変わる
      • ベイズ推定でハイパーパラメータを推定
      • vb() : variational Bayesian method 、変分ベイズ



  • GW中に勉強会とかまじ死ねと思ってた自分が死ね
    • 連休中のせいか各地の著名人の発表が聞けて非常に有意義な会でした。ありがとうございました。
  • 会場、懇親会費用を提供して頂いたVOYAGEグループ様ありがとうございました。
  • あれ?そういえば次回は?