ブックマーク / hoxo-m.hatenablog.com (16)

  • ロジスティック回帰の最尤推定量にはバイアスがある - ほくそ笑む

    ロジスティック回帰について調べている。 ロジスティック回帰モデルのパラメータの最尤推定量は、不偏推定量ではなく、バイアスがある。 例として、サンプルサイズ 、入力変数の数 のときを考える。 パラメータ 300個の真の値を、最初の 100個は 、次の 100個は 、残りの 100個は に設定して推定してみよう。 n <- 1500 p <- 300 # データの生成 set.seed(314) x <- rnorm(n * p, mean = 0, sd = sqrt(1/n)) X <- matrix(x, nrow = n, ncol = p) beta <- matrix(c(rep(10, p/3), rep(-10, p/3), rep(0, p/3))) logistic <- function(t) 1 / (1 + exp(-t)) prob <- logistic(X %*

    ロジスティック回帰の最尤推定量にはバイアスがある - ほくそ笑む
  • 2017年のベイズ統計入門書まとめ - ほくそ笑む

    2017年もベイズ関連のがたくさん出版されたのでまとめてみます。 下記の記事の続きのようなものですが、私はほとんど読めていません。。 ベイズ統計の入門書が出版ラッシュなのでまとめてみた - ほくそ笑む 冬休みのお供にどうぞ。 ビジネスマンがはじめて学ぶ ベイズ統計学 ―ExcelからRへステップアップ― 作者:朝野 煕彦出版社/メーカー: 朝倉書店発売日: 2017/02/20メディア: 単行(ソフトカバー) Pythonで体験するベイズ推論 PyMCによるMCMC入門 作者:キャメロン デビッドソン=ピロン出版社/メーカー: 森北出版発売日: 2017/04/06メディア: 単行(ソフトカバー) やさしいMCMC入門: 有限マルコフ連鎖とアルゴリズム 作者:Olle H¨aggstr¨om出版社/メーカー: 共立出版発売日: 2017/05/09メディア: 単行 ベイズ統計モデリ

    2017年のベイズ統計入門書まとめ - ほくそ笑む
  • Facebookの予測ツールProphetについて発表しました - ほくそ笑む

    Facebook が出した誰でも簡単に時系列予測ができるツール Prophet についていくつか発表しました。 Prophet入門【Python編】 Prophet入門【R編】 Prophet入門【理論編】 Prophetはビジネス時系列、すなわち人間の行動に左右される時系列データに対する自動予測ツールです。 ビジネスでは大量の時系列データに対する予測を作成する必要があります。 しかし、それを1人のデータ分析者が1つ1つ作っていくのでは手が足りません。 そこで、統計の知識を必要しない、誰にでも簡単に時系列予測を行うツールとして Prophet が作成されました。 Prophet はオープンソースで開発され、Python と R のライブラリが公開されています。 まずは今年5月に Python版についての発表を foundIT データ解析・機械学習セミナー にて行いました。 Python版の

    Facebookの予測ツールProphetについて発表しました - ほくそ笑む
  • A/Bテストと統計的検定の注意点(その1) - ほくそ笑む

    素晴らしい記事が上がっていたので言及したい。 仮説検証とサンプルサイズの基礎 - クックパッド開発者ブログ この記事では、A/Bテストにおいて、意味のある差が出たかどうかを統計的検定を用いて判断する方法を説明しています。 Web上にある多くのA/Bテストの記事と異なるのは、単に検定手法にデータを突っ込んでp値を出すのではなく、 意味のある差とは何かを事前に決定する サンプルサイズを事前に決定する という統計的検定のフレームワークに則ったまともな方法で判断を行っているという点です。 よく言われる統計的検定は無意味だなどという言論の多くは、このフレームワークを使っていないだけに過ぎず、不確実な事象に対する科学的な検証方法として、統計的検定のフレームワークの強力さはいまだ健在です。 さて、統計的検定のフレームワークについては上の記事および記事中で紹介されている参考文献にお任せするとして、ここでは

    A/Bテストと統計的検定の注意点(その1) - ほくそ笑む
  • R言語でWebアプリケーションを作るためのチュートリアルを翻訳しました - ほくそ笑む

    RStudio社が開発した Shiny パッケージは、R言語で簡単に Web アプリケーションを作るためのフレームワークを提供します。 Shiny この Shiny による Web アプリケーションの開発方法を学ぶには、公式のチュートリアルを読むのが一番です。 Shiny - Tutorial しかし、公式は英語なので、読むのがしんどいです。 そこで、チュートリアル全文を日語に翻訳しました。 訳文は Qiita で公開しています。このページは目次として活用していただければと思います。 Shiny チュートリアル目次 7 つのレッスンからなるこのチュートリアルは、R プログラマを Shiny 開発者へと導きます。 1 つのレッスンは 20 分ほどで終了し、各レッスンごとに新しい Shiny スキルを 1 つ学ぶことができます。 すべてのレッスンを終えたとき、あなたは Shiny アプリを構

    R言語でWebアプリケーションを作るためのチュートリアルを翻訳しました - ほくそ笑む
  • ベイズ統計の入門書が出版ラッシュなのでまとめてみた - ほくそ笑む

    【宣伝】2016/09/14 このページに来た方へ。あなたが求めているはこれです。 StanとRでベイズ統計モデリング (Wonderful R) 作者: 松浦健太郎,石田基広出版社/メーカー: 共立出版発売日: 2016/10/25メディア: 単行この商品を含むブログ (10件) を見るまずこれを予約してから下記を読むといいです。 【宣伝終】 最近、ベイズ統計の入門書がたくさん出版されているので、ここで一旦まとめてみようと思います。 1. 基礎からのベイズ統計学: ハミルトニアンモンテカルロ法による実践的入門 (2015/6/25) 基礎からのベイズ統計学: ハミルトニアンモンテカルロ法による実践的入門 作者: 豊田秀樹出版社/メーカー: 朝倉書店発売日: 2015/06/25メディア: 単行この商品を含むブログ (6件) を見る データ分析業界ではかなり有名な豊田秀樹先生のです

    ベイズ統計の入門書が出版ラッシュなのでまとめてみた - ほくそ笑む
  • 可視化で理解する「負の二項分布」 - ほくそ笑む

    みどりぼんでカウントデータの過分散対策のために使われると書かれている負の二項分布ですが、Wikipediaの説明を読んでもよく分かりません。 そこでおススメなのが、このスライドです。 負の二項分布について from Hiroshi Shimizu ようするに、負の二項分布は、 がガンマ分布に従うようなポアソン分布だと思えばだいたい OK みたいです。 今日はこれを可視化してみます。 負の二項分布(Negative Binomial Distribution) 負の二項分布はパラメータを 2つ持ちます。成功回数を表す と成功確率を表す です。 統計言語 R には負の二項分布に従う乱数を生成する関数 rnbinom() があり、これらのパラメータはそれぞれ引数 size と prob に対応しています。 したがって、, の負の二項分布は次のようにして描画できます。 negative_binom

    可視化で理解する「負の二項分布」 - ほくそ笑む
  • データ分析のプロを目指すエンジニア必読の書 - ほくそ笑む

    福島真太朗『データ分析プロセス』を読みました。 データ分析プロセス (シリーズ Useful R 2) 作者: 福島真太朗,金明哲出版社/メーカー: 共立出版発売日: 2015/06/25メディア: 単行この商品を含むブログ (2件) を見る 「データ分析」とひとことで言っても、色々な人たちが色々な考え方で「データ分析」をやっていると思います。 その一大勢力として挙げられるのが「Excelで集計だけしてる人たち」です。これは特にマーケター出身の人が多いのではないでしょうか。*1 一方、最近のデータ分析界隈に増加していると思われるのが「機械学習ツールにデータを入れるだけ」の人たちです。 特にエンジニア出身の方が、上司に「データ分析が流行ってるみたいだから今日からデータ分析やって」と言われて泣きながらやっているケースが多いのではないかと。 そういう人たちは、機械学習についてある程度理解してお

    データ分析のプロを目指すエンジニア必読の書 - ほくそ笑む
  • マイナーだけど最強の統計的検定 Brunner-Munzel 検定 - ほくそ笑む

    対応のない 2 群間の量的検定手法として、最も有名なのは Student の t 検定でしょうか。 以前、Student の t 検定についての記事を書きました。 小標問題と t検定 - ほくそ笑む しかし、Student の t 検定は、等分散性を仮定しているため、不等分散の状況にも対応できるように、Welch の t 検定を使うのがセオリーとなっています。 ただし、これら 2つの検定は分布の正規性を仮定しているため、正規性が仮定できない状況では、Mann-Whitney の U検定というものが広く使われています。 Mann-Whitney の U検定は、正規性を仮定しないノンパラメトリック検定として有名ですが、不等分散の状況でうまく検定できないという問題があることはあまり知られていません。 今日は、これらの問題をすべて解決した、正規性も等分散性も仮定しない最強の検定、Brunner-

    マイナーだけど最強の統計的検定 Brunner-Munzel 検定 - ほくそ笑む
  • 可視化で理解するマルコフ連鎖モンテカルロ法(MCMC) - ほくそ笑む

    先日行われた第9回「データ解析のための統計モデリング入門」読書会にて、 「可視化で理解するマルコフ連鎖モンテカルロ法」というタイトルで発表させて頂きました。 発表スライドは以下です。 可視化で理解するマルコフ連鎖モンテカルロ法 from hoxo_m この発表は、みどりぼんに登場する、マルコフ連鎖モンテカルロ法(MCMC)のアルゴリズムである「メトロポリス法」と「ギブス・サンプラー」について、可視化して理解しようというお話です。 「マルコフ連鎖モンテカルロ法」というのは、字面だけ見ると難しそうですが、この発表で理解すべきポイントは、次のスライド 1枚に凝縮されています。 このことを念頭に置いて、それぞれの手法を見ていきましょう。 まず、メトロポリス法ですが、これは、 前の状態の近くの点を次の遷移先候補として選ぶ(マルコフ連鎖) そのときの確率比 r < 1 ならば確率 r で棄却する。それ

    可視化で理解するマルコフ連鎖モンテカルロ法(MCMC) - ほくそ笑む
  • log 変換する?しない?AICでモデル比較するときの注意点 - ほくそ笑む

    データを分析にかける前に、出力変数を log 変換する、というのはよくあることだと思います。 次のデータを見て下さい。 このデータ、線形モデルに当てはめる前に log 変換したほうがよさそうだなーというのが見てとれます。 それもそのはず、このデータは次のように作っています。 N <- 100 x <- runif(N, min = 1, max = 2) y <- exp(x + rnorm(N, sd = 0.3)) data <- data.frame(x, y) それでは、log 変換しないバージョンと、するバージョンでモデルを作成して、AIC を比較してみましょう。 model <- lm(y ~ x, data) model.log <- lm(log(y) ~ x, data) aic <- AIC(model, model.log) print(aic) ## df AIC

    log 変換する?しない?AICでモデル比較するときの注意点 - ほくそ笑む
  • 統計的消去で擬似相関を見抜こう! - ほくそ笑む

    今日は初心者向け記事です。 はじめに ある範囲の年齢の小学生32人を無作為に選び、算数のテストを受けてもらい、さらにその身長を測定しました。 身長に対する算数の点数のグラフは次のようになりました。 なんと、身長の高い子供の方が、算数の点数が高いという結果になりました! 身長が算数の能力に関係しているなんて、すごい発見です! しかしながら、結論から言うと、この結果は間違っています。 なぜなら、抽出したのは「ある範囲の年齢の小学生」であり、年齢の高い子も低い子も含まれているからです。 年齢が高いほど算数能力は高くなり、年齢が高いほど身長も高くなることは容易に推測できます。 この関係を図で表すと次のようになります。 つまり、年齢と算数能力に相関があり、年齢と身長にも相関があるため、身長と算数能力にも見かけ上の相関が見えているのです。 このような相関を擬似相関と言います。 統計解析では、このような

    統計的消去で擬似相関を見抜こう! - ほくそ笑む
  • 統計言語 R の公式ヘルプでさらっと目を通しておくと良いトピックまとめ - ほくそ笑む

    『アート・オブ・Rプログラミング』の日語訳が出たので早速買いました。 細かい仕様の解説が多くちりばめられていて結構いい感じです。 プログラミング初心者向けではないですが、他の言語になじんでる人が R に入門したい場合には、他の入門書よりもこっちを読んだ方が手っ取り早いのではないかと思います。 例えば、下記のように、他言語との比較による解説が各所に見られます。 他のスクリプト言語の経験がある読者は、Python での None や Perl での undefined などの「存在しない」値を知っているかもしれません。実は、R にはこのような値が2つあります。NA と NULL です。 http://www.amazon.co.jp/gp/product/4873115795 さて、今日はこのの 1.7.4 節からの話題です。 統計言語 R には、公式ヘルプが付属しており、例えば平均値を計

    統計言語 R の公式ヘルプでさらっと目を通しておくと良いトピックまとめ - ほくそ笑む
  • 主座標分析について簡単に紹介するよ! - ほくそ笑む

    今日は主座標分析(Principal Coordinate Analysis; PCoA)の紹介を簡単にしたいと思います。 主座標分析は古典的多次元尺度構成法(Classical Multidimensional Scaling; CMDS)とも呼ばれる統計解析手法です。 この解析手法を使用する主な目的は、高次元のデータを2次元や3次元に落として視覚化したいという時に使います。 以前紹介した主成分分析と同じような感じですね。*1 主成分分析との違いを簡単に言うと、主成分分析はユークリッド距離をなるべく保ちながら低次元に落とす方法ですが、主座標分析はユークリッド距離だけでなく、他の距離や類似度*2が使えるという点にあります。 例えば、ユークリッド距離の代わりに相関係数を使えば、相関の高いもの同士が近い配置になるようなプロットを作ることが可能です。 データを用意する さっそくやってみたいのです

    主座標分析について簡単に紹介するよ! - ほくそ笑む
  • 主成分分析が簡単にできるサイトを作った - ほくそ笑む

    あけましておめでとうございます。 年もよろしくお願いいたします。 主成分分析 さて、昨年の終わりごろから、私は仕事で主成分分析を行っています。 主成分分析というのは、多次元のデータを情報量をなるべく落とさずに低次元に要約する手法のことです。 主成分分析は統計言語 R で簡単にできます。 例として iris データで実行してみましょう。 data(iris) data <- iris[1:4] prcomp.obj <- prcomp(data, scale=TRUE) # 主成分分析 pc1 <- prcomp.obj$x[,1] # 第一主成分得点 pc2 <- prcomp.obj$x[,2] # 第二主成分得点 label <- as.factor(iris[,5]) # 分類ラベル percent <- summary(prcomp.obj)$importance[3,2] *

    主成分分析が簡単にできるサイトを作った - ほくそ笑む
  • 統計を学びたい人へ贈る、統計解析に使えるデータセットまとめ - ほくそ笑む

    はじめに 統計解析の手法を学ぶのに、教科書を読むのは素晴らしい学習方法です。 しかし、教科書で理論的なことを学んだだけでは、統計手法を使いこなせるようにはなりません。 統計解析手法を身につけるには、実際のデータについて手法を適用し、パラメータを変えるなどの試行錯誤を行い、結果を考察するというような経験を積むことが大切です。 それでは実際のデータをどうやって手に入れましょうか? 実験や調査をして実際のデータを得るのは大変でお金もかかります。 幸運なことに、世の中には適度なサイズの自由に使えるデータがたくさん存在します。 例えば、統計言語 R には、100以上ものデータセットがデフォルトで付属しています。 ただし、不幸なことに、それらのほとんどは英語で説明が書かれています。 英語は、いつかは乗り越えなければならない壁ですが、最初のうちはちょっと避けて通りたいところです。 というわけで、今日は、

    統計を学びたい人へ贈る、統計解析に使えるデータセットまとめ - ほくそ笑む
  • 1