医療職からデータサイエンティストへ

統計学、機械学習に関する記事をまとめています。

Pythonによるデータ前処理手法の網羅的まとめ

データ解析をする上で、もっとも重要な工程であるデータの前処理、今回はそんな前処理をPythonで行うための様々な方法をまとめました。もし、こんな処理も追加してほしいというご要望があれば、お気軽にコメントください(^^) Rユーザの方にはこちらを www.me…

Rでtweetをテキストマイニング:ワードクラウドと共起ネットワーク

テキストマイニング は文字列を対象したデータマイニング手法で、単語の出現頻度、出現タイミングなどを集計する簡単なものから、機械学習を用いてクラス分類する高度なものまで様々な解析手法があります。 今回はそんなテキストマイニング の中でも、単語の…

facebookの時系列解析パッケージ{prophet}を使って、ブログアクセス数を予測する。

prophetはfacebookが無料で提供している時系列解析パッケージです。RでもPythonでも使うことができます。本家様サイトによると Prophet is a procedure for forecasting time series data based on an additive model where non-linear trends are fit with …

k-meansとk-means++を視覚的に理解する~Pythonにてスクラッチから~

k-means(k平均法)は教師なし学習の中でもとても有名なアルゴリズムの一つです。例えば、顧客のデータから顧客を購買傾向によってグループ分けしたり、商品の特性からいくつかのグループに分けたりと使用法は様々です。 そんなk-measですが、実は中学生でも知…

R vs Python:統計するならどっちいいの?

データ解析をする上で、Rを使うべきかPythonを使うべきか、この議論は多くの人が色々な意見を持っています。最近はPythonユーザーが増えていますが、Rをメインで使う人が少なからずいるのもまた事実です。 今回は統計解析をするならどっち?という観点からR…

PythonとRで学ぶ一番シンプルなディープラーニング

ディープラーニングは言わずもがな、機械学習の世界では名実ともにエースと呼んでいいほど有名なアルゴリズムです。人間の脳を模倣していると聞くと、なんだかSFの世界を想像しますが、実は案外簡単なアルゴリズムで成り立っています。 今回は、そんなディー…

初歩からの機械学習:ロジスティック回帰~PythonとRでスクラッチから~

前回は機械学習において最も基本的なアルゴリズムである最急降下法を使って、重回帰モデルを作成しました。 www.medi-08-data-06.work 今回は、最急降下法とロジスティック回帰モデルを使って機械学習の醍醐味である分類問題を扱っていきたいを思います。 前…

初歩からの機械学習:最急降下法による重回帰モデル~PythonとRでスクラッチから~

機械学習の教師あり学習の中でも、重回帰モデルはとても有名です。統計学でも有名なこのモデルですが、機械学習では、最急降下法というもっとも基本的かつ、重要なアルゴリズムを使ってパラメーターを求めることができます。 今回は、最急降下法を使って重回…

初歩からの機械学習〜ベイズ識別規則と混同行列〜

ベイズとは条件付き確率を表すのにとても有用な概念で、統計学だけでなく機械学習にも応用されています。特にクラス分類では、ある変数の情報が入ってきたときに、それがあるクラスに属する確率としてベイズの考えが利用され、迷惑メールフィルターの基礎的…

ビジネスで統計を使うことになったら読むべき統計本のすすめ

最近のビックデータ流行により、データサイエンスを専門としない人でも、統計リテラシーが必要とされるようになりました。しかし、いざビジネスで統計を使うために学ぼうと思っても、小難しい理論が書かれたハードルの高い参考書や、逆に抽象的すぎて実務で…

RとPythonによる主成分分析〜忙しい人のための完全食を探す〜

主成分分析は、データの変数が多い時に、出来るだけ情報を減らさずに、次元を圧縮するテクニックとして用いられます。マーケティングにおいても、何かの商品に対する評価項目が複数ある場合に、それを少数の評価項目に圧縮し、総合力のような観点で評価する…

生存解析のすヽめ:カプランマイヤー法とコックス比例ハザードモデル

生存解析は医療の現場で用いられている手法で、ある薬を飲む群と飲まない群で死亡率が異なるのかなどといっアウトカムが生きるor死ぬなどの二値で、アウトカム発生までの時間の流れも考慮しなければならない場合に使用されます。 つまり、ビジネスの世界では…

集団全体への介入効果を推定するStandardizationとIPWの実力〜RとPythonにて〜

前回は因果推論の王道テクニックである傾向スコアを使った回帰分析とマッチングについて紹介しました。今回も傾向スコアを使った解析手法の一つであるIPWと、傾向スコアは使いませんが理論的には同じになるStandardzationの紹介をしていきます。 www.medi-08…

状態空間モデルを最短で学ぶためのおすすめ参考書

状態空間モデルは、非線形な時系列データを含む幅広いタイプの時系列データを、統一的に扱えるとても便利な解析手法です。 しかし、いざ学び始めると状態やシステム、カルマンフィルター、MCMC....などと言った初学者にはとっつきにくい用語が並び、実務応用…

因果推論の王道テクニック”傾向スコア”を丁寧に考えてみる~RとPythonにて~

世の中の事象における真の因果関係は神のみぞが知り、それに抗うために多くの因果推論テクニックが作られてきました。その中でも傾向スコアというのは、ランダム化検証ができない事象でも、データをゴニョゴニョすることで、理論上ランダム化に等しいことが…

ベイズで考える状態空間モデル

古典的な時系列解析のモデルでは、時系列データが定常過程に従うことを前提としていました。しかし、世の中の多くの事象は定常過程に従うことはあまりなく、よりうまく現実を反映させることができるモデルが必要になります。 それが状態空間モデルです。状態…

因果推論の基本テクニック、回帰分析は何を意味するのか

因果推論のもっとも基本的なテクニックである回帰分析はよく知られていますが、モデルで仮定している前提や、変数の入れ方によって、結果の解釈が大きく違います。今回は、回帰分析の種類やモデルが意味することを書いてみたいと思います。 何気なく使われる…

タバコを吸うほど健康になる?必ず確認すべきデータのバイアス

事象の因果関係を見抜くためには、無作為介入が理想的ですが、世の中の多くはすでに存在するデータから因果関係が推論されます。 そんな既に観察されたデータ(観察データ)は、集計してみると関連性が見えてくることがありますが、短絡的に結果を解釈すると…

因果推論の基本事項〜広告をみたから商品を買ったのか?それとも....〜

ビジネスの世界で、ある事象に関する原因と結果の因果関係を推論することはとても重要な要素です。最近では機械学習手法に多くの注目が集まっており、予測さえできればそれで良いと思うかもしれません。 しかし! 原因と結果の関係性を正しく推定し仮説を導…

時系列解析の基礎をさっくりorがっつり学びたい人へオススメする書籍5冊+α

時系列データとは、ある一時点ではなく、時間軸に沿ってデータが収集され、変数の並び方にも意味があるデータのことを指します。 時系列データ解析の手法を知っていると解析の幅が大きく広がることは間違い無いでスガ、書籍の中には難解なものも多く、最初の…

じっくり学ぶ時系列解析~見せかけにだまされない編~

時系列モデルを作るときは、データが定常過程に従っていることを前提とするモデルが多いです。しかし、現実には定常過程に従うデータはあまり多くありません。そんな非定常過程のデータを何となく多変量モデルで解析すると一見ものすごく当てはまりの良いモ…

じっくり学ぶ時系列解析~多変量時系列解析VAR編~

一変量時系列の代表格であるARIMAモデルは、過去の自分が現在へ影響していることを前提としていました。しかし、時系列データではその他の変数から影響を受けることは往々にしてあります。 例えば、あるお店の売り上げは、そのお店の過去の売り上げだけでな…

じっくり学ぶ時系列解析~ARIMAの予測と季節調整SARIMA編~

前回は時系列解析の流れ、そしてARIMAモデルをデータから同定する方法について書きました。 www.medi-08-data-06.work 今回は、ARIMAモデルの予測について、そして単純なARIMAモデルでは説明できない周期性を、季節調整を使ってモデリングする方法について書…

じっくり学ぶ時系列解析~基礎編~

前回は時系列解析の考え方や基本用語についてまとめました。今回はもう一歩進んで、実践に近づいた内容にしていきます。 www.medi-08-data-06.work 今回扱う範囲は、時系列データの前処理方法、AR、MA、ARMA、ARIMAです。それではいきましょう。 時系列解析…

じっくり学ぶ時系列解析~準備編~

時系列データとは、ある一時点ではなく、時間軸に沿ってデータが収集され、変数の並び方にも意味があるデータのことを指します。商品の売り上げを月ごとに集積したデータや、企業の株価データ、気温データ、電車の乗客数などが時系列データの例としてあげら…

さて、そろそろ正規表現を始めようか

R

正規表現の存在を知り、いつかは使えるようになりたいと思ったあの日から早2年、そろそろ正規表現を使えるようになります。 ということで、今回は正規表現をレベルごとにスッテプバイステップでまとめていきます。 正規表現とは? Step1:何でも良い一文字. …

データの読み込みは{readr}にお任せを

Rでデータファイルを読み込むとき、{base}パッケージにはread.XXXという関数が備わっています。 私もcsvファイルを読み込むときは、ずっとread.csvを使用していましたが、{readr}を使うともっと高速に、そして処理のしやすい形でデータを読みこむことができ…

AICとは?その正体に迫る

複数のモデル候補があった場合、AIC(赤池情報量基準)を使ってモデル選択をすることがあります。しかし、このAICをなんとなく使ってしまっている人、そのモデル本当に目的としたモデルですか? 今回は、AICについてその直感的な理解とAICの意味を追っていき…

R使いのための文字列処理stringrの使い方

Rで文字列処理をすることって地味によくありますよね。 そんな突如として必要性が湧いてくる文字列処理、Rには文字列を扱うパッケージがいくつかありますが、その中でも抜群に使いやすいのが{stringr}の特徴です。 文字列処理を統一的な方法で行えるため、直…

一般化線形モデル・階層ベイズ・マルチレベル分析を実践的に学びたい人へのオススメ書籍5選

最近ではt検定、分散分析、線形回帰分析などを一般化線形モデルという 一つの概念で捉えられるようになってきました。 一般化線形モデルのメリットは現実の仮定を反映させながら自由な統計解析ができ、非線形データや複雑な階層性のあるデータなどにも柔軟に…