黄昏より暗きもの、血の流れより赤きもの

読者です 読者をやめる 読者になる 読者になる

黄昏より暗きもの、血の流れより赤きもの

自分の好きな事を好きなように書いて行きます。

第54回R勉強会@東京 に行って来たよ♪ #tokyoR (@DMM.com 恵比寿ガーデンプレイス)

第54回R勉強会@東京に行ってきた。主催及び各参加者の皆さんのお陰もあり、面白い話を沢山聞く事ができて嬉しい。イベントで聞いた事の復習目的でこのブログを描いた。筆者の自分の得意なジャンル、補足的な説明を付け加えたものに★を付けてみた。是非参考にして欲しい。

初心者セッション 1(★)(@doradora09)

R の基本的な説明がメイン。例えばt検定などを行なう時にt.test関数を使う訳だが、そこでデータ列をどう入力していけばよいかなどを解説。関数の説明では標本分散から母分散を計算する関数を通し、関数の説明をしていた。

初心者セッション2(★)(@aad34210)

例えばn個のデータx_1x_2、......、x_nがある。SQLのSELECT文を使い、n個のデータの平均や標準偏差を計算できる。例えばAVG(レコード名)、STDDEV(レコード名)で標準偏差まで計算してくれる。

ところが四分位数や母平均の差の検定やカイ二乗検定をやると言ったら、「トレジャーデータで実践:A/B テスト(実践編その2)」のように検定統計量そのものをSQLのクエリに打ち込まなくてはならず面倒である。

ここでデータの個数nが小さい、とにかく検定などのp値を知りたい!と言うときに役に立つのがRとSQLを連動する手法だ。これが出来る事でSQLをR側から呼び出す事ができ、SQLのテーブルの値の四分位数を見る事が簡単になる。この発表では、RODBCを使い、RとSQLを連動するやりかたを解説していた。

2016年上半期版データマエショリスト入門(@y__mattu)

こちらはR言語のパッケージdplyrの説明。R言語の通常のパッケージよりも高速であるなどのリテンを説明していた。この他R言語のデータに関する操作、例えばSQLの表結合(inner join)に当たるコマンドの説明がメインだった。Rもここまでデータを結合する事ができるのか?と見ていて感激した。

応用セッション

Datascience for me(仮)(@dichika)

例えば前日テレビを見過ぎて、翌日目覚めが悪いと言った事がある。これには体調の変化が起因していることがあり、体調の変化をウェアラブル端末でモニターし、集計している様子を発表。ネットを見すぎないが健康の秘訣かもしれない。

17:10 – 17:40 @data_sciesotist Rで(当たらない)競馬予想をやってみた

ランダムフォレスト(決定木の一つ)と言う機械学習の方法で高知競馬”夜さ恋ナイター”の7レース中5レース予想。なんと実際の競馬の動画を流しつつ、予想を立てるというすごい構成。その結果金額の回収率は64%とのこと。

LT1(★):Splatoon界の壮絶な戦い&Japan.Rの宣伝(@gepuro)

Splatoonのイベントにて2チームに分かれて戦う際、画面から勝敗の画像データなどが集計されているWebサービスを使い、イベントの団体戦でどっちが勝ったかを予測する。勝敗の予測は二項検定により行ない、結果自分が予想が外れてしまったと言う話。

かなりの数の画面から手作業で集計したとのことだが、画像認識で勝敗に関するデータだけ抜き取れるようにしておくと、二項検定におけるサンプルを多く取る事が出来ると思った。作るのは大変だが、こうする事で中心極限定理が成立するような状況ならば(母比率と言うか実際の勝率p)の信頼区間誤差の範囲が狭くなり、よりよい予測につながるかも?

LT2:(@tetsuroito)

寿司の絵文字をRで表示できるようにした話。Twitterなどで寿司の絵文字を使う人にどのような人が多いか?を調査してみても面白いかと。

LT3:SeekR Search Trand Report(@Takekatsu Hiramura)

R言語専門検索エンジン「SeekR」における検索トレンドの話が中心。

LT4(★):よいモデルを選びたい “The Oracle Properties of Feature Selection using Lassos(@)

例えば温度xとビールの売れ行きyを二次元のxy平面上にプロットし、xyの関係について調べたい。このときn個の点をプロットした点列P_1(x_1,y_1),P_2(x_2,y_2)......,P_n(x_n,y_n)がある。この点列同士どのような規則性があるかを調べる時に、「よし、点列に最も近い関数y=f(x)に見立てよう」と言う流れとなる。

この見立て方にも様々ある。高校で習う物理の話題になるが、一次元の摩擦のない数直線上に質点Qがある。ここでQの微小時間dtにおける速度の変化(加速度)に対し、 \frac{dv}{dt} = f(t)のような微分方程式を立てるなどして、未来の時刻tにおける質点の変位を予想する事ができる。

一方で統計などの場合はn個の点列に対し、各点と直線を示す関数f(x)=ax+bとの距離の和T=\sum_{k=0}^n {|y_i-(ax_i+b)|}^2が最小となるようなa,bを決定する最小二乗法が使われる。これを応用した分析法に回帰分析(regression)と言う物があり、様々な事象同士にどれだけ相関があるのかを調べるのに使われる。

このように様々な場合で、過去の数量の情報から未来の数量を予想する際に良く話題に上がるのが、

  • 「どの関数(モデル)y=f(x)を使えばよいのか?」
  • y=f(x)の代わりにy=g(x)を使うことで、どれだけ精度が向上するか?」

と言った事柄だ。ところが通常の方法ではどうしても誤差が多く出る等の問題があり、その改良案の一つが以下に出て来るLassoと言う訳。上記で言う点列nが大きい場合における利点などについて説明していた。

LT5:Rによる単変量データプロット(@)

例えば8個のデータ[1,3,2,4,5,7,6,8]がある。さてヒストグラムの25%を表す点(第一四分位数)は2、中央値は4、第三四分位数は6、最大値は8となる。正規分布の図と箱ひげ図のデータをならべ、外れ値をどう処理するか?と言う事をトークしていた。

LT6:healthplanetパッケージで体組成データを手に入れて健康な体も手に入れる(@teramonagi)

HealthPlanetという健康管理器具のデータを、Rで使えるようにするプラグインの話。何と開発者のデータが読める関数?付きだから恐ろしい。

この他イベントまとめ