LoginSignup
1600
1048

【データ分析の必読10冊+差をつける10冊+100冊超】データサイエンス、データ分析、機械学習関連の本

Last updated at Posted at 2016-08-23

Update版2023年版データ分析の100冊を書きましたよ!

必読10冊を更新。データサイエンス、データ分析、機械学習周りでおすすめ図書10選のような記事は良く見ますが、網羅的な紹介記事はあまり見かけないので自分が欲しいと思い書きました。私よりたくさん読んでいる方は多々いらっしゃると思いますが、記事を書いてくださいな。

本記事の対象と想定

  • Qiitaはプログラマやコンピューター系技術者のための記事と思ってます。ので研究者は対象にしていません。
  • 理論より手を動かす
    • 理論をないがしろにしてはいけない。ただ、数式を恐れて何もしなくなってしまうより、まず手を動かしてコードを書いてデータを扱うことにより理解が進むことがある
    • 理論ガチ無視で人工知能万歳!と無着苦茶だけど声がでかいだけでOKみたいな人を駆逐したい
  • ので、手を動かした後に理論もフォロー
    • 機械学習系って、研究成果が簡単なライブラリやAPIで誰でも試せるようになって距離が近くなっているので訳わかんなくなってるけど、研究成果を実際の問題に適用するのが大事
    • だからさ数式に恐れずまずトライしようよ
  • 紹介書籍が多くなりすぎたので読む順番の参考マップデータ分析関連(データサイエンス、データ分析、機械学習)書籍マップを作成しました。

ってな感じです。

スパムの恐れありと一旦公開を閉ざされましたが、事務局に相談したところ誤解が解け解除されました。このような紹介記事は少なく、初心者向けでこれだけまとまっているものないと自負しております。ただ、アソシエイトに対し文章が少なめなので要注意との指摘も受けておりその点は今後も注意してまいります。

反論があれば遠慮なく Qiitaコメントか、 https://twitter.com/aokikenichi にお願い致します。

ざっくりとした難易度

  • 初級:前提知識ほぼなし。数式不要。プログラミング不要。
  • 中級:初級を前提知識とする。理論の本の場合は微積・線形代数程度の数学の知識があれば理解に役立つ。ツールを扱う本の場合はRかPythonを書くと理解に役立つ。
  • 上級:中級を前提知識とする。微積・線形代数程度の数学の知識が十分ないと理解は難しい。中級程度の本でRかPythonを書いた経験を前提とする。

データ分析をするための最低限の10冊

###まず試してみる(R向け)

  • 初級・中級 『Rによるデータサイエンス データ解析の基礎から最新手法まで 第2版』 金明哲著
    • Rを用いるなら定番の本だと思う。代表的な統計・機械学習手法を実行可能。
      数式抜きで解説している本だと結局分からないが理論的は本は難しい。ので、手を動かして実際に分析してみるのがよいと思います。
    • この本では理論はほぼ解説していないので、まず習うより慣れろって感じです。
    • 最近類書がたくさん出ていますが私が知るかぎりでは手法の網羅度では本書がよいと思います。
    • 本書の詳しい解説を書きました。SE, PG系の方がデータ分析、機械学習をやる必要が出た時にまず手にとるべき一冊
    • 機械学習系のパッケージを統合したcaretを用いて本書のコードを実行した記事を書きました 『Rによるデータサイエンス』をcaretで再現する
    • Pythonも類書たくさん出ているけど、好評のまま2版が出た
      • 『[第2版]Python 機械学習プログラミング 達人データサイエンティストによる理論と実践 (impress top gear)』あたりでしょうか?
  • 初級・中級『RとStanではじめる ベイズ統計モデリングによるデータ分析入門
    • 前著が機械学習よりとするとこちらは統計モデリングかつベイズ統計の本。
    • 理論の解説もあり、初学にはかなり難しいと思いますが、本書もコード例が豊富なのでこれもやはり習うより慣れろだと思います。
    • 統計モデリングだと後述の『データ解析のための統計モデリング入門』(いわゆる「みどり本」)が定番とされてきましたが、みどり本はWinBUGSなので、習うより慣れろ派としては、現在主流のStanを扱い、作図も含めたコード例が豊富なこちらのほうが導入にはよいと思います。
    • これもPythonについて類書たくさんありますので、Python派の方はそれらを、、、

###まず試してみる(Python向け)

###データ分析の全体像を俯瞰して

  • 分析者のためのデータ解釈学入門 データの本質をとらえる技術
    • 「私が5年も回り道して学んでいたのは何だったのか!」
    • ただ、最初にこれだけを読んでも理解が深まるかは分からない。前述の本等で自分で手を動かしていろいろ苦労して疑問が山のように出てから本書を(まー並行してでもいいか)読むと理解が深まると思う。
    • 帯にもありますが「データの取得・分析・解釈・活用の各段階で知っておくべき技術」が分かる。まぁまぁのベテランでも誤解しやすいところも分かる。必読の本。

###理論の概要と数学基礎を並行で固める

  • 中級 『統計学のための数学入門30講 (科学のことばとしての数学)』永田靖著
    • とは言うものの数学が必須だよね。大学で学んだから代替だいたいは分かるのだけど統計との関連が今ひとつ、、、ってな方に適しています。統計学でどのように使われているかを念頭に置いた、微分積分、線形代数の紹介。1冊で紹介しているので各内容の説明は薄め。
    • 一通り勉強した後の確認や、過去に勉強したが錆び付いている人の再起動、今学んでいることを統計学と結び付けたい人向け。
    • 講談社機械学習プロフェッショナルシリーズ『深層学習』の読み解きをした時に、数学でわからないところはほぼ本書に出ていました。
    • ただ、薄い本書に微分積分と線形代数を押し込めているので、初学者には厳しいと思います。微分積分と線形代数の入門書は鬼のようにたくさん出ているので、大学での微分積分、線形代数なんてまるでわからんって方は本書の前に、マセマなど大学1年生用の簡単な本から。
  • 中級『これなら分かる最適化数学―基礎原理から計算手法まで』金谷健一著​
    • 機械学習でも用いられる最適化に必要な(もののみの)微分積分、線形代数の解説。好著中の好著と思いますが、紹介されることが少ないので、これで差が付きます!
    • 機械学習・深層学習のための数学、と題した本が出ていますが内容は微分積分と線形代数の普通のテキストをかいつまんで式の羅列のみって残念な本が多い。機械学習は結局は、モデルを作る→正解との誤差を最小化する≒最適化!、なのでここに特化した本書が一番核心をついて分かりやすいと思います。
    • コンセプトは上記書「統計学の~」に似ているが本書は、より目的の最適化に特化しており、例題を解いていくと定着するようになっている。
  • 中級・上級『統計学入門 (基礎統計学)』東京大学出版会(いわゆる「赤本」)
    • 本書が理論理解入門の定番とされてますが、やや難しいです。ただ、分からない概念が出てきたときに本書に戻ると解説されていることが多いです。
    • ググれば分かりますし、統計学入門なら別の本がたくさんありますが、「これが共通言語」という意味では手元に置いておいたほうがよいと思います。
  • 中級・上級『はじめてのパターン認識』平井有三著(いわゆる「はじパタ本」)
    • 本書が理論入門の定番とされている、と思う。深層学習については言及がないが、機械学習で用いられる手法についてほぼ網羅されている。後掲PRMLを勧める方が多いが、研究者でもない限りいきなり読んでも挫折すると思うのでまずは本書からが良いと思う。
    • 本書と前述の『Rによるデータサイエンス』を行ったり来たりしながら、ではないでしょうか、数好きに弱い人が慣れていくには。
  • 深層学習 (機械学習プロフェッショナルシリーズ)』講談社機械学習プロフェッショナルシリーズ(いわゆる「深層学習青本」) 第二版が1/19に出るらしいです要注目

実技を学ぶ

  • 前処理大全

    • 今まではデータ分析、機械学習のいわゆる「面白いところ」の理屈についての本でしたが、実業務ではデータの汚さと格闘することになります。
    • データ分析の8割は前処理、などと言われる割にはまとまった解説書がなかった。本邦初だろう。必読。
    • 「前処理○○」という類書がありますが、本当に前処理について網羅的に丁寧に記述しているのは本書。
    • データの集計・結合・分割・生成などの整形の大全。1つの課題に対し、SQL、Python、Rの3言語でどう対処するかのコード例、また言語による得手不得手の明示。
    • ググればたいてい見つかるものだけど、思い込みで局所解に陥っていたら効率の悪いコードにハマっているかも。一度正解を眺めておくだけでも深みにハマることを避けられると思う。
  • Kaggleで勝つデータ分析の技術

    • 爆売れしているらしい。そら売れるだろう。キャッチーな「Kaggleで勝つ」に加えて内容がいいもの。
    • Kaggle名人(Masterなど)がドヤ顔せず丁寧に手の内を明かしてくれている。
    • データの前処理、アルゴリズム選定、パラメータ設定等あるいみすべて。
    • Kaggleで勝つための小細工もあるが、Kaggleなんてする気ねぇという気質の分析者にも実務で得るところ多いはず。
    • いやーこんなのが日本語で数千円で読めるなんてすごい時代になったなー昔なんて洋書か大部な数式だらけの本しかなかったんだぜ。

その他10冊以外は後述だけど迷い道くねくね

  • 数学の学び方補足
    • 「わかる○○」的な本で微積・線形代数を一通り→「統計学のための数学入門30講」で復習。
    • プログラミングのための線形代数
      • 微積は「傾き」を出して誤差を減らしていくってことでまだイメージがしやすいけど、線形代数がどうデータ分析に役立つかわかりにくい。線形代数って何?について散歩程度に読むと得るところ多い。
    • プログラミングのための確率統計
      • 分布、検定、ってなんでたくさんありいつどのようにつかうのか。同時確率、周辺確率とはなんなのか。これも散歩程度に読むと得るところが多い。
    • 統計学のための数学入門30講』『これなら分かる最適化数学』に関する詳しい詳解の記事を書きました データサイエンス、データ分析、機械学習に必要な数学
  • その他用途に応じて1冊
    • 統計モデリング、MCMCなら
      • データ解析のための統計モデリング入門――一般化線形モデル・階層ベイズモデル・MCMC (確率と情報の科学)
        • データの構造をしっかり見極める統計モデリングとなんか答え出ればOK的な機械学習の違いってあまり議論されず、統計=機械学習的な人が多いけど、統計側でデータをしっかり見極めたいというなら基本中の基礎中の入門!だったけど『RとStanではじめる ベイズ統計モデリングによるデータ分析入門』も出たし好みなのかな。
    • 時系列分析なら
      • 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー)
    • 因果分析
      • 「原因と結果」の経済学―――データから真実を見抜く思考法
        • 研究者同士ならともかく、ビジネス用途でデータ分析を行う場合、クライアントは相関と因果関係をごっちゃにしている場合がほとんど。その説明のためにしっかり理解しておこう。
    • 自然言語処理なら
      • 自然言語処理 (放送大学教材)
    • あるいは技術の広がりを知っておくなら
      • 岩波データサイエンスシリーズVol.1-Vol.6

差をつけるための10冊

あまり目をつけられてない分野、簡単だと誤解されスルーされがち、だけれども破壊力満点の10冊

  • データ視覚化のデザイン

    • データビジュアライゼーション(データ可視化)の入門書です。
    • 著者はTableauのコンサルティングがご専門のようですが広くデータ分析での可視化にもそのまま適用できる本かと思います。
    • やってはいけないことのうち、詰め込むな削れ、は痛いところを突かれたと思う方も多いのではないでしょうか。
  • Pythonではじめる教師なし学習

    • 教師あり学習が主で、教師なし学習は添え物的に扱われがちですが、実際のビジネスにおいてはデータがないことがかなりある。
    • 次元削減、異常検出、クラスタリングから深層学習を用いた手法、時系列クラスタリングまで、教師なし学習の代表的な手法をコード付きで丁寧に解説している。
  • 欠測データ処理:Rによる単一代入法と多重代入法(統計学One Point)

    • やむなく必読の10冊からこちらに移しましたが、欠測値の扱いはこれからどんどん高まるはず。
    • 機械学習アルゴリズムによっては欠測値は特に処理しないでそのまま扱えることも多いけど、そうでない場合もある。そんなとき欠測値は厄介なのでみんな適当に処理しがち。
    • 結構しっかりした統計の本でも「欠測値があるデータは除くこと」、「平均で埋める」などとしていることが多いが、
      • むやみにデータを除くと分散などが歪む
      • 適切な値で埋めないと分散が小さくなる
      • 正しく埋める方法がある
    • ことをRコードを示しながら丁寧に解説している。日本の統計の杜撰さが話題になってますが意図して、せずに関わらずビジネスのデータは欠損が多い。今後非常に重要になってくるはずです。今のうちに学ぼう。
  • 政策評価のための因果関係の見つけ方

    • そうなんですよ因果関係なのです。
    • データ分析の入門で「相関と因果は違う」と習うのですがその後因果関係については手薄。ただ、ビジネスにおいて「完璧な予測モデルが出来ました!来月の売上が20%下がります!」と報告したらアホかと呆れられるでしょう。なぜ下がるのか、どの説明変数が聞いているのか、そしてそこに因果関係があるのか。
    • 因果関係が重視される日がもう目の前まで来ているのです。
    • ノーベル賞受賞のエステル・デュフロの著作であり、ランダム化比較試験のバイブルとされているらしい。
    • 因果関係を厳密に検討する「ランダム化比較試験」から簡便だが間違えやすい「前後比較」までの長所短所がわかりやすく解説されている。特にpp.130-131の「実験的方法・準実験的方法の整理」の評、「実験的方法・準実験的方法の選択基準」のチャートは必見でしょう。
  • ゲーム理論・入門 新版--人間社会の理解のために

    • データ分析と違うじゃん!って感じですが今流行りのSHAPの原理たるシャープレイ値はゲーム理論の概念です。シャープレイ値についても本書ではわかりやすく解説しています。
    • 本書はゲーム理論について日本の代表的な研究者である岡田氏の著作であり、研究を志すならばバイブルとなっている『ゲーム理論 新版』の弟分的位置づけで初学者にも分かりやすいです。
    • 経済学と機械学習の融合もちらほら耳にするようになってきました(研究ではがち進んでいるらしい)が経済学側の融合のインターフェースとなるのはゲーム理論になるかと思っています。
  • ディジタル画像処理[改訂第二版]

    • 本書すげぇ。「画像処理エンジニア検定エキスパート対応」という資格用テキストらしいのだが、この手の本にありがちな、大家の名前+弟子が走り書きで内容がない、ではなく、ディジタル画像についてありとあらゆる(と素人の私は思った)内容が掲載されている。カメラレンズの構造やRGB、画像変換や行列、機械学習まで。画像データは一切扱わない、という人ならともかく、そうでない人ならば読んでおくと差がつくでしょう。
  • 『点過程の時系列解析』

    • 地味。いわゆる時系列解析に似てそうで全然似ていない考え方が必要となる。データ分析本の推奨でまず出てこない。だけどですよ、出版社の本書紹介から引用すると
      • 点過程の時系列とは,データがある着目するイベントの発生時刻の集合として特徴付けられるようなタイプの時系列である。実世界の様々な現象が点過程として表現することができ,例えば自然現象としては,地震,神経細胞のスパイク発火,遺伝子発現などが考えられる。さらに近年,人間の社会行動に関する様々な大規模データが蓄積され,それが利用可能になってきたことを背景として,金融取引,保険事故,人々のコミュニケーション,SNS上でのユーザーの活動等のデータを解析するために,点過程が用いられることが増えており,点過程の応用範囲は急速に拡大している。
    • そう、金融取引やSNSデータなど今後引き合いがめっちゃ増えるのに誰も注目しておらず和書類書もほとんどない。これは狙い目です。
  • 『見て試してわかる機械学習アルゴリズムの仕組み 機械学習図鑑』

    • 「このくらいわかってるよ」という方もいらっしゃると思いますが、LSA, NMF, LDA, LLEとかちゃんと説明できますか。
    • 『データ分析のための数理モデル入門』、『分析者のためのデータ解釈学入門』なども出たので図解でわかりやすい唯一の本、という価値は薄れたかもしれないですけど、基本概念を図解でどう示したらいいか、という観点なら本書が一番かと。提案書やレポートでアルゴリズムなどを顧客に説明しなけらばならない時など参考になると思います。
  • 『日本統計学会公式認定 統計検定準1級対応 統計学実践ワークブック』

    • 統計検定のテキストは要点の羅列で、教える気あんのかゴラァって感じだったのが、本気出したらやればできるじゃんって感じ。統計検定1級よりも広い範囲ではないかと言われる統計検定準1級向けのテキストかつ問題集なのですが、東大出版会統計学入門赤本より広い範囲(一部機械学習的な分野も含む)で、データ分析するための基礎として「こういうところを知ってなきゃだめだよ」という目安としては非常に良いのではないか。
    • 広範囲を1冊にしているため各項目の解説は要点のみとはなりますが、以前のテキストの羅列とは異なり、丁寧であり、章末問題で理解を確かめられます。いきなり本書をテキストとして学ぶのは無茶ですが、いろいろテキストで学んだ後に総整理や、漏れている項目の補強などに役立つと思います。
    • 必ずしも必須ではないですがこれだけ知っておくと強みになりますね。
  • XAI(説明可能なAI)--そのとき人工知能はどう考えたのか?

    • AIの説明性について、ネット記事もお客様とのやりとりの中でも話題に挙がることが増えた。
    • 大極的説明、局所説明などの考え方の整理から、LIME, SHAP, Permutation Importance, Partial Dependence Plot, Tree Surrogate, CAM/Grad-CAM, Integrated Gradientsなどの具体的なアルゴリズムの説明、実装例及びそれぞれの得手不得手などが詳しい。8月に出る類書までは和書で唯一であり、かつ丁寧分かりやすい。
    • Kaggleなどのコンペでスコア上位を目指すのではなく、実務で機械学習を用い内容の説明が求められるならば必須ではないか。

データサイエンス・機械学習のための​数学

微分積分、線形代数

集合、位相

データ分析に限らず工学系の数学入門となると、微分積分、線形代数、確率統計なのだがそこからもう一段上に行く、あるいは各分野をもっと深めるとなると「沼」にはまる。集合、位相だ。現代数学の礎となっているのだが理解がしづらく入門書からはほとんど省かれている。そしてガチな世界に入るならその沼を通る必要がある。数学の基礎を固めるため工業用ダイヤモンドの如くガチガチで光り輝いているのだが、初心者が通ろうとすると沼となる。連続や含む含まれないなど当たり前すぎることを難しい概念で言い直す、3次元空間でのイメージがしにくい(できない)、具体的な数や図形で捉えられない抽象の豪雨。なんでこんなことを学ばなければならないのだろう。!!!

  • 数学ガール ポアンカレ予想
    • ポアンカレ予想の理解に必要な準備の中で、距離の世界と位相の世界の橋渡し≒位相をなぜ考えるのか、の説明があり、一番わかり易いと思う
  • 「集合と位相」をなぜ学ぶのか
    • 最初から読まなくてもよいと思う。以降で紹介する本のなかで、〇〇集合、位相〇〇などの沼にはまりかけたら本書を読むといいと思う。完全解決するわけではないが、ちゃんと意味があってそういった概念が導入されていることは分かる。私も泥んこになりながら格闘中なので大きなことは言えないが、統計学がセクシーな学問とするのであれば、集合・位相をマスターすることが、下記の分かれ目と思っている。
      • 一発屋のグラビアアイドルで終わるのか、女性にも一目置かれる素敵な女優になれるのか
      • 一発屋のアイドル歌手で終わるのか、男性にも一目置かれる素敵な俳優になれるのか
      • 人工知能に使われるデータ処理屋で終わるのか、人工知能にも一目置かれる素敵な課題設定者になれるのか

数学余談

  • 物理数学の直観的方法―理工系で学ぶ数学「難所突破」の特効薬〈普及版〉 (ブルーバックス)
    • 物理数学の入門書というか既存の教科書に困った人への手助けの本。発売当時村上春樹の『ノルウェイの森』を抜いたことがあるという伝説の本。物理数学の本だが、テイラー展開、行列と固有値、位相空間、情報理論とエントロピーなどの章、節があり、そのあたりを悩んでいる方には参考になると思います。
  • 一般には「線形代数」だけどガチな本だと「線型代数」と表記している事が多い。ガチに憧れて「線型」と私は表記していましたが、紹介している本との表記ゆれがめだつので直しました。

統計学

  • 初級『とある弁当屋の統計技師(データサイエンティスト) ―データ分析のはじめかた―』石田基広著

    • 表紙が私は苦手なのですが、分かりやすい入門書を多数執筆している著者で、本書も分かりやすいです。
  • 初級『その数学が戦略を決める (文春文庫)』文春文庫

    • 数学がビジネスや社会の問題にどう適用されているか、のような話し。大部分は重回帰の話し。
  • 初級・中級『統計学が最強の学問である』、『統計学が最強の学問である[実践編]---データ分析のための思想と方法』西内啓著

    • ビジネスにその手法がなぜ必要なのかが分かります。
  • 初級『推測統計 はじめの一歩―部分から全体像をいかに求めるか? (ブルーバックス)

    • 品切れ?絶版?なのが残念。でもブルーバックスに統計学入門の類書がたくさんあるからそれでよいと思う。
  • 中級『プログラミングのための確率統計』堀玄、平岡和幸著

    • 確率・統計の「意味」が分かる。題名の「プログラミング」はほぼ関係ない。簡単にだが「カルマンフィルタ」なども紹介されている。
      確率は面積だ!
  • 中級『バイオサイエンスの統計学

    • 隠れた名著。バイオサイエンスと題されているが他の分野でも十二分に役に立つ。相関係数、p値などそれぞれが散布図だとどういうイメージなのか。また、他群検定などは類書にあまり載ってない既述が多数ある。数理的な本でイメージが取れないならば本書で散布図をざっとみるだけでかなり理解が進むと思う。
  • 中級『統計思考の世界

    • 前述の『プログラミングのための確率統計』と同じく、確率統計の「気持ち」を解説してくれる本。
    • 『プログラミングのための確率統計』が細かなテーマを掘り下げるのに対し、本書は俯瞰を重視している。
  • 自然科学の統計学(基本統計学)

    • 東京大学出版会の統計学3部作として有名です。本書は、自然科学系の実験データに関して取り扱っている。
    • 最小二乗法、最尤法、適合度検定、検定力と標本サイズ、質的データ、ベイズ推定、確率過程、乱数の性質など非常に重要な概念を扱っているが盛りだくさんすぎて消化しづらいかも。一読後手元に置き、必要に応じ再読という使い方になると思います。
  • 人文・社会科学の統計学 (基礎統計学)

    • 東京大学出版会の統計学3部作として有名です。本書は、アンケートなどの社会調査、経済(時系列)データ、心理テストなどのデータ分析を扱っている。基本的な内容を網羅的に扱っていると思う。ビジネス系のデータ分析で、アンケート調査や経済時系列データを扱うのであれば入門としてよいのかも知れない。
    • ただ、残念ながら内容が古い。「GNP」はすぐGDPと分かるからいいとして、「IBMカードの文字数制限」など???な内容があり、基準などが変わる経済指標で知らないうちに間違った古い知識を身に着けてしまう怖さがある。
    • ただ、経済指標や時系列分析の本をいろいろ読んだ後に本書を読むと、あー本書にまとめて書いてあるじゃんか、となったので、初期にざーっと読むのは価値があると思う。
  • 辞書的『統計クイックリファレンス 第2版』オライリー・ジャパン

    • 辞書としてだが、一読後あまり使ったことなく、、、
  • 新版 統計学のセンス ―デザインする視点・データを見る目― (医学統計学シリーズ1)

    • 医学統計学シリーズですが、医学以外でもデータ分析をする人は必読と絶賛される方もいらっしゃいます。ただ私はそれほどとは思いませんでした。
    • ノンパラメトリックの検定の記述についてhttps://twitter.com/h_okumura/status/1067353061310455808こんな指摘もあり、また例示も(医学統計学シリーズなので当然ながら)医学を知らないと理解しづらいものが多く、少なくともデータ分析をする人に向け強く勧めるほどの本ではないと思います。
    • もちろん、気づきづらいところ、間違えやすいところに丁寧な解説があるので、読む価値はあると思いますが、ある程度実力をつけた方が補強として参考に読む程度かなと思います。
  • サンプルサイズの決め方

    • 機械学習ではなくて統計的検定時に必要なサンプルサイズについての理論書。データ分析の実務に忙しいときにそれほど頻度が高くない統計的検定についてしっかり学ぶ時間はないかもしれないが、サンプルサイズは常に問われる。一度ざっと読んで頭の片隅に入れておき、必要になったときに取り出せるように準備するものかなと思う。
  • 推奨

    • 初級の本は何かお好きなものを。
  • 多重共線性について難しいので専門書の記述をまとめた

統計学余談

多変量解析

統計モデリング

時系列分析・状態空間モデル

時系列分析

時系列分析は「統計モデリングの一種」でよいのだろうか。時系列データは独特の特徴があるので、時系列分析が不要な方はスルーでよいと思います。

​​

状態空間モデル

因果推論

ベイズ統計

異常検知

  • 入門 機械学習による異常検知―Rによる実践ガイド
    • 異常検知の第一人者である井出先生の定番本。類書が少なく、異常検知が必要ならばまず手に取る1冊。「Rによる実践ガイド」と副題があり、Rによるコード例もあるが、基本は理論の解説。ただ厳密な定義定理スタイルではなく概念の説明が主。
    • 井出先生のサポートページの内容紹介が詳しくて参考になる。

スパース推定

データサイエンス

前処理・データクレンジング

  • 既述

機械学習

  • 初級『実践Data Scienceシリーズ PythonではじめるKaggleスタートブック

    • 前述『Kaggleで勝つデータ分析の技術』の弟分的位置づけ。代表的なコンペティションであるKaggleに勝つというよりもまず始めてみましょうという導入本。
    • 類似の本に『データサイエンスの森 Kaggleの歩き方』がありますが、Kaggle自体の紹介が主で分析入門の記載は少なく、本書を読めばこちらの本は不要かと。
  • Approaching (Almost) Any Machine Learning Problem

    • 洋書なのだが大部分はPythonコード例。『Kaggleで勝つデータ分析の技術』とほぼ同レベルで、本書はコード例メイン。英語が苦手ならば(私とか)『Kaggleで勝つデータ分析の技術』を読んだ後に読めばだいたい理解できる。Kaggleに特化というよりも実際のデータ分析に役立つTips集といった感じ。
    • 和訳が出る『Kaggle Grandmasterに学ぶ 機械学習 実践アプローチ
  • 初中級『機械学習のための特徴量エンジニアリング ―その原理とPythonによる実践

    • 機械学習モデルにそのままデータを投入すればよいわけではなく特徴量のうまい調理方法がありそれは特徴量エンジニアリングと呼ばれる
    • 既述の『前処理大全』『Kaggleで勝つデータ分析の技術』にも一部言及があるが本書は特徴量エンジニアリングに特化した本。
    • 数値データの対数化等の加工、自然言語処理でのBoW、カテゴリデータの扱い、次元削減、k-means、深層学習での画像特徴量の抽出など基本だが重要な概念をコード例付きで詳しく解説している。
  • 初級・中級『入門 機械学習』オライリー・ジャパン

    • Rによるコード例付き。通常の機械学習の一歩手前ぐらい。説明は詳しいが分野が偏っているので、合致すれば良いのだろうが次の「Rによるデータサイエンス」を実施すれば本書は不要。
  • 初級・中級『データマイニング入門』豊田秀樹編著

    • 「Rによるデータサイエンス」にない、ベイジアンネットワーク、潜在意味解析がある。
  • 初級・中級『集合知プログラミング』オライリー・ジャパン

    • Pythonで実行しながら学ぶ。SNSデータの活用などが主。
  • 上級『パターン認識と機械学習 上』『パターン認識と機械学習 下』C.M.ビショップ

  • 推奨

    • 『データサイエンティスト養成読本』で俯瞰的に眺め、『Rによるデータサイエンス』で一通り手法を試したあと、『はじめてのパターン認識』で理論をさーっと見渡す
      • 分からなければ『これなら分かる最適化数学』などで鍛える
      • 分かれば講談社機械学習プロフェッショナルシリーズなどで必要な分野を学ぶ

MLOps

シリーズ

​​​​

深層学習

  • イラストで学ぶ ディープラーニング (KS情報科学専門書)』山下隆義著

    • 導入には良いが結局数式を追わないと分からない。Pythonのコード例あり(未実施)。
  • ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

    • ディープラーニングよりもその基礎のニューラルネットワークの解説が中心。数式の本が難しく、フレームワークでなぞるだけでは物足りない方が、原理をしっかり理解したい場合の導入としてちょうどよい本と思う。前記「イラストで」よりも本書のほうが分かりやすい。
  • 機械学習スタートアップシリーズ これならわかる深層学習入門 (KS情報科学専門書)

      • 「これならわかる」「理論を初めて学ぶ人はもちろん、今度こそ理解したい人のために」とのことで、上記『深層学習』より優しいかと思いきや、むしろ難しいのではないかと思われるガチ数学(ごめんなんさい本当にガチの人から見たら優しいのかもしれない)。
      • 本書は『深層学習』の入門版というよりも、最近の動向(深層強化学習ほか)も追加した更新版と捉えたらよいのかもしれない。
      • ということで、読みながら難しいところメモする、機械学習スタートアップシリーズ『これならわかる深層学習入門』の学習、を書き出しています。
      • 第1章 はじめに
      • 第2章 機械学習と深層学習
      • 第3章 ニューラルネット
      • 第4章 勾配効果法による学習
      • 第5章 深層学習の正則化
      • 第6章 誤差逆伝搬法
      • 第7章 自己符号化器
      • 第8章 畳み込みニューラルネット
      • 第9章 再起型ニューラルネット
      • 第10章 ボルツマンマシン
      • 第11章 深層強化学習
      • 付録A 確率の基礎
      • 付録B 変分法
  • 実践GAN ~敵対的生成ネットワークによる深層学習~

    • 深層学習はUpdateが早くて特に注目技術ほど研究者の競争が熾烈なのか早い。驚きを持って迎えられたGANも早すぎてついていけなったのだが、本書によりGANの基礎から約一年前までですが研究の進展も分かる。数式は控えめなので理論を精緻に理解するとまでは行きませんが(引用文献を読めばいい)、コード例が豊富で分かりやすいです。
    • 出版社のページにかなり詳細なページ見本もあります(見開き15箇所で計30ページ分も)
  • 深層学習

    • Goodfellow本とでも呼べばいいのだろうか。刊行して日が経つと最新の内容をフォローできないという宿命を追っているが、研究の中心者であるGoodfellowによる本で網羅的・本格的に記載してある本なので、深層学習を行うのであれば一読をしたほうがよいのではないだろうか。
    • 私は一読では理解できなかったが、恐らく研究者、深層学習を主とする技術者ならきちんと理解すべき本、それ以外のデータ分析技術者ならば手元に置き辞書的に使う本と思う。

深層学習のフレームワーク

研究者なら0から深層学習を実装する必要があるかもしれませんが、それを使う技術者&ユーザーはフレームワークを用いることになると思います。フレームワークはたくさんあります。ちょっと古いですが深層学習フレームワークヒッチハイクガイドVer2.0参照。

  • 以前紹介していた古いTensorFlow, Chainer本は削除、新たに模索中です。

PyTorch

  • 『PyTorch実践入門』
    • 最近出たばかりで私もまだ読み中ですが、非常に評判が良いようです。
    • PyTorchのみでなく深層学習自体にも図解でわかりやすい説明があります。後半は肺がんLunaデータを用いての画像解析とのことで、自然言語処理のためにPyTorchをという方にはちょっとズレるかもしれませんが、画像解析のためにPyTorchという方ならば手にとって良いと思います。

強化学習

テキストマイニング、自然言語処理

首都大学東京小町研推奨の本

  • 首都大学東京 自然言語処理研究室(小町研)のページが非常に参考となる。(サイトURL更新しました)
  • 自然言語処理 (放送大学教材)
    • 三訂版が2023年に出ました(青木注、私は初版を読みました。小町研の紹介では2019年の改定版推奨にとどまっていますが、三訂版を見ましたところテイストは変わらず深層学習系の研究について追記されているようです。
    • 「自然言語処理」では何を対象としどういった技術があるのかを一覧できる本。自然言語処理系の本を読んでいる時に出てくる単語、概念がほぼ網羅されている。
  • 言語処理のための機械学習入門
    • 自然言語処理に用いる機械学習の入門。難易度としては前掲の『はじめてのパターン認識』程度。本書も2010年刊行なため深層学習についての記述はないが基礎的なところから丁寧に解説されており、例示も自然言語処理に沿っているので、自然言語処理が必須ならば『はじめてのパターン認識』よりも本書が良いと思う。RやPythonでのコード例があればもっと良かったがなー

上記以外

  • テキストマイニングとテキストアナリティクス

    • テキストマイニングに似た言葉としてテキストアナリティクスがある。『テキストアナリティクスの基礎と実践』によると

      定型化されていないテキストは、単語や文節などの単位に分割し、それらの出現頻度や共起関係(同時出現)などを集計し、データ解析やデータマイニングの手法で定量的に解析することができる。その分野を計量テキスト分析テキストアナリティクス、またはテキストアナリシスと呼ぶが、情報処理やビジネスの分野ではテキストマイニングと呼ばれている。

    • と内容に違いはなく呼び方の違いのみと思われる。ただ本シリーズの内容からすると概ね
      • テキストアナリティクス:単語の頻度や共起関係等に重きをおく比較的少ない文書量の分析
      • テキストマイニング:深層学習による、大規模の文書量の学習モデル生成と文書分類や翻訳や要約などの実施
    • というように重きの置き方が異なると思う。そしてテキストアナリティクスを学ぶのであれば岩波書店テキストアナリティクスシリーズが新しく、丁寧な解説のシリーズと思います。
  • 岩波テキストアナリティクスシリーズ

    • 第1巻『テキストアナリティクスの基礎と実践
      • テキストアナリティクスの概要説明の巻。
      • 形態素解析、基本統計量、可視化(ワードクラウド等)、共起関係、トピック分析等
      • 巻末に分析ツールの「MTMineR」の解説がある。
    • 第2巻『テキストマイニングの基礎技術と応用
        • 深層学習を用いるのではなく、word2vec等によるベクトル化からあくまでも頻度等による分析。
        • 顧客の声・SNS、特許文献の分析事例等。
      • 第3巻(未刊)『テキストアナリティクスのための言語解析技術』
      • 第4巻『テキストデータマネジメント
        • 主にGoogle BigQueryを用いた文書の管理と前処理方法
      • 第5巻(未刊)『ソーシャルメディアマイニング』
      • 第6巻『金融・経済分析のためのテキストマイニング
        • テキストマイニングの金融分野への適用事例。
        • 金融テキストの取り扱い(関係・単語抽出、トピック分析)、テキスト分析による金融価格推定、因果関係の抽出等。
      • 第7巻『文学と言語コーパスのマイニング
        • 文字通り文学に適用した事例集。
        • 源氏物語の作者推定(全部紫式部じゃないらしい)
        • リルケ『マルテの手記』の分析
        • 著者識別、代筆推定
        • 芥川龍之介、宇野浩二の文体変化
        • 夏目漱石を模倣した作品の分析
        • 方言分類 
  • Rによるテキストマイニング入門

    • Rの基礎説明、RMecabによる分かち書き(文章から単語に切り分ける)、ウェブからのテキスト収集、テキスト分類、Twitterタイムラインの分析など。話題のトピックモデルについても数ページながら言及あり。
    • word2vecなど深層学習絡みはないのが残念だがテキストマイニングの基礎的なことは一通り試せる。
  • Rによるテキストマイニング ―tidytextを活用したデータ分析と可視化の基礎

    • テキストマイニング系ってあっちゃこっちゃの関数やライブラリをつなぎ合わせた感があり、途中であるいはコードをあとで見直すと「俺何やってんだっけ」と見失いがちなのだが、tidytextという考え方で処理をスマートに記述するもの。自然言語処理もPythonが主流になりがちだけどRで実施するのであれば本書程度は慣れておくべきと思う。
  • 統計学OnePoint テキストアナリティクス

    • 『Rによるテキストマイニング入門』は分かち書きから基礎的な処理、『Rによるテキストマイニング ―tidytextを活用したデータ分析と可視化の基礎』はテキストのきれいな処理の仕方、『統計学OnePoint テキストアナリティクス』はもう少し突っ込んで多変量解析や機械学習などでテキストをどう分析するか、という違いか。ただ3著書とも流行り?の深層学習による分析などは行っていないので、まずは基礎的なところを押さえるという感じか。
  • 機械学習・深層学習による自然言語処理入門 ~scikit-learnとTensorFlowを使った実践プログラミング~ (Compass Data Science)

    • 形態素解析から、word2vec、アテンション、BERTなど注目技術について図解、コード例で非常にわかりやすく解説している。
    • Pythonで自然言語処理するならばまず最初の1冊として良いのではないか。
  • 犯罪捜査のためのテキストマイニング

    • 本書は少し趣が異なる。脅迫状や犯行声明文などから犯人を割り出すという分野の本だが、実務で関係する人はきっと少ないでしょう。どちらかというと犯罪捜査ということではなくて、計量的文体分析の入門として読みました。
      • 深層学習でテキストマイニングというほど文書が少ないことが実務上は多いので、少ない文章でも特徴を見出す手法はないか、という興味で読みました。
      • 犯罪捜査の心理学の専門家の財津氏が計量的文体分析の専門家の金明哲先生から学んで書いているので、手法の整理等が明快です。
  • ウェブデータの機械学習(機械学習プロフェッショナルシリーズ

    • ここまでとは異なり、理論の解説の本。
    • クローリングなどがメインかとスルーシていたのですが、自然言語処理を自習したくなったら参考になりそうなサイトなど このブログ記事を見て、「NLP関連として評判分析と表現学習 (word2vec) について扱っています.個人的に何かと後輩にお勧めすることが多い本です.」という記述を発見。自然言語処理と言っても、翻訳、要約、生成、などいろいろありますが、評判分析にちょうど興味を持ったところだったので即買い。
    • バースト検出、評判分析、表現学習、グラフデータ、順序学習とてんこ盛りなので1つのトピック自体は物足りないですが、日本語で読める資料としては貴重な内容です。
    • 『ウェブの自然言語処理』等としたほうがもっと売れるのではないかと思う。

データサイエンス言語

​R

Pyth​​on

データ可視化

noteに「データ可視化の本10冊」を書きました。

最適化

例えば機械学習を用いて、

  • 来月の売上は10%減となります!
  • この作業工程では製品の不良率が20%です!

と正確に予測できても嬉しくない。どのように営業を掛けたら売上が最大化するのか、どのように原材料・工程を変えたら不良率が最小になるのか、という最適化がビジネスでは必要ですね。機械学習がある適度出来るようになってきたこともあり今まで以上に最適化が求められていると思う。


業界・業務別

マーケティング

ビジネス向けのデータ分析としてマーケティング関連も多いと思う。マーケティングの本はQiitaにはそぐわないかと思うのでnote.comにまとめたデータ分析が仕事の人がマーケティングに手を出す

  • Rによる実践的マーケティングリサーチと分析

    • マーケティング分析について網羅的に紹介しているのが非常によい。デジタルマーケティングの浮ついた本を読むよりもこれをきっちりやるほうがよほど役に立つと思うがどうだろう。Python流行りだけれどこういうモデルモデルしたものはRの蓄積が嬉しい。盛りだくさん。
      • 第1章 Rの概要
      • 第2章 R言語入門
      • 第3章 データの特徴を捉える
      • 第4章 連続変数間の関係
      • 第5章 グループの比較:テーブルとグラフ化
      • 第6章 グループの比較:統計的検定
      • 第7章 結果に対する要因を特定する
      • 第8章 データの複雑さを低減する
      • 第9章 線形モデルの発展的トピックス
      • 第10章 確認的因子分析と構造方程式モデル
      • 第11章 セグメンテーション:クラスタリングと分類
      • 第12章 マーケットバスケット分析とアソシエーションルール
      • 第13章 選択モデル
      • 第14章 行動シーケンス
    • 時系列分析をやりだすとそれはまた大部の本になってしまうのでないのは仕方ないにしても、顧客生涯価値やらRFMなどの顧客セグメンテーションについては今後の勉強のきっかけとなるような少しでよいので触れてほしかった。
    • あと、初学者の負担にならないようにとTidyverseを用いない従来の書き方になっているが、見たこともない関数が出てきて、Tidyの方が良いのではないかと思う。
  • AIアルゴリズムマーケティング 自動化のための機械学習/経済モデル、ベス トプラクティス、アーキテクチャ

    • 「Rによる」よりは理論とか考え方に重点をおいた本。章立てを見ても網羅性は高い。「Rによる」もこちらもどちらも読んで初めてスタートラインと思う。
      • 1章 イントロダクション―アルゴリズムマーケティングとその背景
      • 2章 予測的モデリングの各手法を確認する
      • 3章 プロモーションと広告―ターゲティング、レスポンスモデリング、傾向モデリング
      • 4章 検索―マッチング、ランキング、信号ミキシング、セマンティック解析
      • 5章 レコメンデーション―内容ベースフィルタリング、協調フィルタリング、コンテキスト化
      • 6章 価格設定と品揃え―価格設定と最適化の原理、需要モデル、品揃えの最適化

WEB

需要予測

金融

  • ディープラーニング入門 ―Pythonではじめる金融データ解析―
    • 2018とやや古くはなってしまったが、金融データ分析の本。金融業の方向けの機械学習の入門書的な位置づけと思われ一般的な開会学習の解説が半分くらいある。
    • 顧客データからのマーケティング、財務データからの倒産予測、取引データから不動産価格を予測、ニュースから自然言語処理で株価を予測の分析例があり、金融が初めての分析者が感覚を掴む取っ掛かりとして良さそう。
  • 金融・経済分析のためのテキストマイニング
    • 岩波「テキストアナリティクス」シリーズの金融・経済パート
    • 一般的なテキストアナリティクスの解説(深層学習での分析の解説は少なめ)と、著者独自の?「因果チェーン」の解説。正直これだけでは金融・経済の自然言語処理としては物足りないが、自然言語処理の知識をある程度身につけた方が金融・経済のテキストに望む時の味付け程度にはなるのでは。
  • Pythonによるファイナンス 第2版 ―データ駆動型アプローチに向けて
    • ファイナンスに関するPythonでの取り扱い辞典、的な本。前半半分程度はPython自体の解説。
    • 後半からアルゴリズム取引、デリバティブ、ファイナンスシミュレーション、ポートフォリオ、等のコード例と詳しい解説。
    • 金融の細かな分析は経験がないのでそこは理解できなかったのですが、可視化例が豊富でまずどう表現するかが大変参考になると思われます。

物流

  • 物流アルゴで世が変わる
    • 機械学習ではなく最適化問題の応用として物流は今後非常に大きなテーマになると思われる。古い本か数理最適の本の一事例としては関連の記載があったが、物流の最適化について主に最適化の観点から記載した本は少なかったのではないか。物流の最適化に携わるとなったらまず手に取りたい本。
    • 拠点配置、配車、倉庫内の最適化(ピッキング、製品・棚の配置)の課題と現状の最適化手法の概要がある。
    • 概論のみだが、アルゴリズムの詳細については近々『物流最適化モデルと解法アルゴリズム』という本を準備中とのこと。

不動産

  • 不動産テック
    • アカデミア、不動産会社様、設計会社様が共著となっており、不動産テックを俯瞰的に一望できる本。というかほぼ初の本であり、不動産データ分析に携わるとなったらまず最初に手に取る本でしょう。
    • 事例が豊富。傾向スコアを用いた実証分析、GISを用いた空間分析、間取りの画像認識、オープンデータを用いた空き家分析、不動産金融市場等。

##医療
医療系の本は医療系ライフサイエンスのデータ分析の背景知識と機械学習の本に移動しました。


番外

経済学

時系列データで経済・金融データを扱い需要予測周りも少し扱ったので関連書を、としていたがビジネス用途だと深層学習より統計モデルのほうが適していると考えている。

  • データが必ずしも多くないので深層学習が適さない
  • 予測値が出るだけではなく、どの説明変数をいじるとどう結果が異なるか(売上という予測値を増やすためにはどの説明変数をいじればいいのか)
  • 因果関係を示す

統計モデルの学習は抽象的になりがちでつらいが計量経済学だと具体的な問題に統計モデルを適用した良書が多い。

ただ、ボーダーラインは曖昧だが、経済学の本もあまりQiitaにはそぐわないかと思うのでnote.comに移動しました。→ データ分析が仕事の人が経済学・金融に手を出す

その他

人工知能

データサイエンスや機械学習を行うにあたって直接的には人工知能の知識は必要ないと思います。ただ、人工知能のニュースが連日流れており、上司から「人工知能でなんかやれ」と言われてお困りの方もいらっしゃるのではないでしょうか。事例記事に流されていると何が人工知能なのかわからなくなってくるので一度、引きの立場で眺めてみるのも良いかと思います。

  • 初級『マッチ箱の脳(AI)―使える人工知能のお話』森川幸人著

    • ニューロン1つをマッチ箱に見立てて、マッチで重みを表現するという面白い絵本仕立ての本。遺伝的アルゴリズム、ニューラルネットワークに加えてエキスパートシステムは強化学習法の解説まである。Amazon中古はあるみたいなので、人工知能や機械学習のイメージをつかみたい初心者によいのではないか。
  • 初級『人工知能はどのようにして 「名人」を超えたのか?―――最強の将棋AIポナンザの開発者が教える機械学習・深層学習・強化学習の本質

    • コンピュータ将棋第一人者で名人を倒したポナンザの開発者山本さんの本。人工知能がいくつかのハードルを乗り越えたのを「卒業」と表現しているのが興味深い。理論的な解説はないが、ボナンザ、アルファ碁、機械学習、深層学習、強化学習、モンテカルロ探索などについて平易な解説がある。
  • 初級『人工知能はいかにして強くなるのか? 対戦型AIで学ぶ基本のしくみ (ブルーバックス)

    • 人工知能というよりコンピューターチェス、コンピューター碁についての入門書です。AlphaGOについても言及がありますが深層学習より手の探索のアルゴリズムの説明。人工知能を知る入門としては弱いと思うけど、新書なので軽く読むのにはいいのではないでしょうか。
    • 初級『最強囲碁AI アルファ碁 解体新書 深層学習、モンテカルロ木探索、強化学習から見たその仕組み
    • アルファ碁の解説を通して、深層学習、強化学習、モンテカルロ法などの触りですが、分かりやすいと思います。
  • 初級・中級『人工知能入門』小高知宏著

    • 大学の半期の講義用の教科書らしい。人工知能の概要をコンパクトにまとめている。数式はほとんどなく、章末問題に少し出てくる。本来は1章が分厚い1冊になる内容をまとめているので物足りなさは残るが「人工知能」についての概要を知るのにはよいと思う。人工知能≠機械学習であり、人工知能⊃機械学習(人工知能は機械学習とイコールではなく、人工知能を目指す技術の一部が機械学習)ってことがよく分かります。

データサイエンティストによる推薦リスト

っーかaokikenichiって誰やねん、自分なんか信じらんねーという方向けに信頼と実績の著名データサイエンティストによる推薦リストを

最新の情報や、スクリプト例を無料で知りたいというなら、 データサイエンス領域の役立つブログをまとめる(日本のみ)

気になる近刊

1600
1048
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1600
1048