駄文型

プログラミングとか英語とかの話題を中心にした至極ちゃらんぽらんな日記です。

Rによるデータサイエンス 読書メモ その3(所感あり)

目次

koheikimura.hatenablog.com

の続き。

16章 集団学習

  • 複数のモデルを組合せて精度の高いモデルを構築する手法
  • バギング libraly(adabag) bagging
    • ブートストラップというリサンプリング法で複数の学習データセットを作成
  • ブースティング boosting
    • 逐次重みの調整を繰り返す
  • ランダムフォレスト libraly(randomForest) randamForest
    • ランダムサンプリングしたデータに対してバギングを適用
    • 精度および計算リソースの節約の面でバギングとブースティングより ◯

17章 カーネル法サポートベクターマシン

  • カーネル法: カーネル関数 にりデータを別空間に射影
    • 別空間に射影すれば非線形データを線形モデルで分類できる可能性がある
  • カーネル主成分分析 libraly(kernlab) kpca
  • サポートベクタマシン ksvm

18章 ニューラルネットワーク

  • 神経細胞ニューロン)が多数並列に接続されたシステムを数理的にモデル化したもの
  • 出力結果が目標値に近づくように重みを変える計算を繰り返す
  • パターン認識,分類,ノイズが混在しているデータの処理が得意
  • モデルの分類
    • 教師あり ⇔ 教師なし
    • 階層型ネットワーク ⇔ 非階層型ネットワーク
  • 中間層ありの NN パッケージ nnet

深層学習

  • 階層型ネットワークに属す
  • 中間層を多く用いるため計算量が多い
  • 画像認識,音声認識 → 畳み込みNN (CNN)
  • 時系列データ → 再帰型 NN (RNN)
  • パッケージ ho2 darch mxnet deepnet など
    • この本では ho2 を例に
  • アルゴリズム,隠れ層の数,各層のユニット数,学習の回数をデータ構造に基いて決める必要がある
    • 関連知識と経験が必要

19章 ネットワーク分析

  • 何らかの関係の有無や度合いを分析
  • グラフ理論に基礎をおいていいるためグラフ分析とも
  • 隣接行列の作成 libraly(igraph) graph.adjacency
  • データフレームからグラフオブジェクトに変換 graph.data.frame
  • ネットワークの統計量
    • ノード数 vcount
    • エッジ数 ecount
    • 隣接ノード neighbors
    • 次数(自由度) degree
    • 密度 graph.density
    • 中心性 定義によっていろいろ(次数中心性,接近中心性など)
    • クラスターの係数 transitivity 隣り合うノードの間に三角形グループがいくつあるか
    • ニューマンの次数の相関係数 assortativity.degree 2つのノード間の次数の関連性
    • 最短パス値 shortest.paths
    • 平均パス average.path.length
  • 次数の平均,密度,中心性,クラスター係数などから複雑さを比較可能
  • グラフ間の差分 graph.difference
  • コミュニティ抽出 p244 表19.6
  • オーバーラッピングを許すコミュニティ抽出 linkcomm
  • ベイジアンネットワーク: 因果関係を推測

20章 アソシエーション分析

  • マーケット・バスケット・トランザクションデータの分析
  • libraly(arules)
  • 相関ルール apriori 商品の組合せの規則を抽出
  • 頻出アイテムの抽出 eclat
  • 抽出結果の補助分析 dissimilarity

21章 時系列分析

  • 時系列データ: 一定の時間間隔で測定・観測したデータ
  • libraly(stats)
  • 時系列データの図示 ts.plot
  • 自己共分散と自己相関
  • スペクトル分析 spec.pgram 周期性を解析(トレンドやノイズを除去するようなイメージ)
  • 単位今検定 libraly(tseris) adf.text データがランダムウォークかどうか
  • AR(自己回帰)モデル ar
  • ARMA/ARIMAモデル arima ARモデルに誤差の移動平均を加えたモデル
  • 成分の分解 stl トレンド,周期変動,残差に分解

22章 生存分析

  • イベントが起きるまでの時間とイベントとの関係に焦点
  • 機械システムの故障や患者の疾患,死亡を対象
  • libraly(survival)
  • ノンパラメトリックモデル survfit
  • セミパラメトリックモデル coxph
  • パラメトリックモデル survreg
  • 共変量(時間以外の説明変数)の有無,分布を仮定するか否かに違い

全体の感想

網羅的に手法をカバーしているので課題に対してどの手法を使うべきか?の検討に使うことができる。網羅的な分,説明が短いので入門書として使うのは厳しい。Rについても統計についても,すでにある程度知っている,あるいは昔学習したが忘れているくらいの知識レベルだとちょうどいい印象。Rの関数の使い方だけでなく,結果データの見方や手法の選び方も解説しているので実用性は高い。一度目を通しておけばリファレンスとして使えそう。さらに深く知りたければ参考文献に載っている各手法の専門書を読むとよさそう。