Upgrade to Pro — share decks privately, control downloads, hide ads and more …

スモールデータ勉強会発表資料

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

 スモールデータ勉強会発表資料

Avatar for Minoru Natsutani

Minoru Natsutani

June 10, 2024
Tweet

More Decks by Minoru Natsutani

Other Decks in Research

Transcript

  1. 9 データの標準化 実際のコード std_x = (x - np.mean(x, axis=0)) /

    np.std(x, axis=0)) グラフのコードはgithubに上げています https://github.com/natsutan/WorkshopHub
  2. 10 標準偏差メモ その1 1σに含まれる割合(正規分布の場合)は感覚として掴んでおこう 範囲 確率(1次元) ±1σ 68.3% ±2σ 95.4%

    ±3σ 99.7% ±1σで68%、3σで99%くらいは感覚として持っていても良い。 標準化されたデータに対して半径1(1σ)の円を描い たとき、その中に含まれるデータは上の表より少ない 気がするけど、理由わかるかな?
  3. 11 標準偏差メモ その2 サンプリングしたデータの分散の計算はN-1で割る。 標本分散 (sample variance) for n in

    [10, 20, 100]: x = gaussian_sampling(0, 2.0, n) print(f'n={n}, variance={np.var(x, ddof=0)}, sample variance={np.var(x, ddof=1)}') n variance sample variance 10 3.00 3.33 20 3.45 3.64 100 4.18 4.23 σ=2.0なので、4.0になって欲しい 実際にパラメータがわかっている確率分布からサンプリングして試してみる。 サンプリングすると実際の分散よりも小さい値になりがち。それをN-1で補正している。 ライブラリを使うときは、どちらの値が出てくるのかを確認する。キーワードddofをつけて検索する。 例えばscikit-learnの標準化では標本分散は使われない(ddof=0)
  4. 17 PCAの例 テストの結果(国語、英語、数学、物理、化学) https://estat.sci.kagoshima-u.ac.jp/data/cgi-bin/data/whats_data/data/img/932722923_9821.xls からダウンロードしました。 # データをutf-8で読み込む data = np.loadtxt('grade.csv',

    delimiter=',', skiprows=1, usecols=[1, 2, 3, 4, 5], encoding="utf-8") # データを標準化する。 std_data = (data - np.mean(data, axis=0)) / np.std(data, axis=0) # 主成分分析を行う pca = PCA() pca.fit(std_data)
  5. 33 データ収集の心構え 正しく問題を設定する。 何のためにスモールデータ解析をするのかを明確にする。それにより求める精度が変ってくる。 ベースラインを定義してベースラインと比較する 三現主義 ・現場に足を運び、現場の状況を把握する ・現物を触れて、物の状態を確認する ・現実をこの目で見て、事実を知る データを一つ一つ確認する

    スモールデータの意義 解析対象に対する知識(ドメイン知識)が重要。 データが不足しがちな為、あらかじめ妥当な仮説を立て、仮説に基づいてデータを収集、解析す る。表面的な機械学習やプログラミングの知識では駄目。 スモールデータだと対象や手法の深い理解が必要で、それが差別化要因となる。