Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

第二回データサイエンティスト木曜勉強会20141016

19,226 views

Published on

ニコニコ動画のオープンデータをクレンジング&ビジュアライズしております。
http://d.hatena.ne.jp/monnalisasmile/20141016/1413458899

Published in: Data & Analytics
  • Be the first to comment

第二回データサイエンティスト木曜勉強会20141016

  1. 1. 1
  2. 2. 2
  3. 3. 3
  4. 4. 4
  5. 5. 5
  6. 6. 要件定義 データ収集 クレンジング・ 加工 集計・分析 ビジュアライズ ・リサーチ ・課題抽出 ・前提条件確認 -時間 -金額 -データ -インフラ ・ダウンロード ・API ・スクレイピング ・データ統合 ・修正 ・RDBM化 タス ク 必 要 ス キル・ 技 能 ・単純集計 ・クロス集計 ・統計解析 ・機械学習 ・表化 ・グラフ化 ・ダッシュボード化 ・コンサルティング ・プロジェクトマネジ メント ・業界知見 ・ビジネス知見 (会計、その他) ・クローリング ・HTML/FTP等の サーバーインフラ 系知識 ・データ加工のプロ グラミング ・データベース設計 ・SQL系のデータ ベース ・R、SAS系の予測分 析、機械学習系の プログラミング ・Excel、PowerPoint でのプレゼンテー ション ・Tableau系のダッ シュボードツール 時 間 3日~1週間 25% 1日~2日 10% 3日~1週間 25% 1日~1週間 20% 1日~1週間 20% 6
  7. 7. 要件定義 データ収集 クレンジング・ 加工 集計・分析 ビジュアライズ ・リサーチ ・課題抽出 ・前提条件確認 -時間 -金額 -データ -インフラ ・ダウンロード ・API ・スクレイピング ・データ統合 ・修正 ・RDBM化 タス ク ・分析設計 ・単純集計 ・クロス集計 ・統計解析 ・機械学習 ・表化 ・グラフ化 ・ダッシュボード化 ・メッセージング 本 日 の 内 容 皆さんに わかりやすく 楽しいデータ ”分析例”を提供 wget一撃 json⇒SQL Python UNIXによる加工 SQLによる集計 とサンプリング Pentaho集計 Rによる解析 Tableauで可視化 ダッシュボード化 所 要 時 間 1日 30分 1時間 1日~3日 4時間 7
  8. 8. 8
  9. 9. 9
  10. 10. http://www.nii.ac.jp/cscenter/idr/nico/nico.html ニコニコ動画コメント等データ -動画メタデータ 【理由】 ・無料/使いやすい ・実サービスで、結果の解釈がしやすい ・時系列、テキストマイニング等、 あらゆるものをはめられる。 ・大きさもそこそこ(12GBくらい) ・ブログ書いてます (http://d.hatena.ne.jp/monnalisasmile/) 10
  11. 11. wget –r example.com ≪格納先≫ 参考URL:http://girigiribauer.com/archives/925 【wgetコマンドをクローラーとして使う】 wget --recursive --level inf --no-clobber --random-wait --restrict-file-names=windows --convert-links --no-parent --adjust-extension example.com 11
  12. 12. 12
  13. 13. 13
  14. 14. 14
  15. 15. 【各設定の説明】 Headers:カラム名の出力有無 ⇒ON Output:画面出力orファイル出力 ⇒.output ファイル名で、ファイル出力 separator:区切り文字の説明 ⇒.separator ,でカンマ区切り 旧設定 設定変更 新設定 15
  16. 16. http://www.sql-reference.com/ http://www.1keydata.com/jp/sql/ 16
  17. 17. 【各カラムの説明】 video_id:ビデオのID番号 Title:ビデオのタイトル view_counter:再生数 mylist_counter:マイリスト数 Length:動画の長さ(秒) comment_counter:コメント数 upload_time:アップロードした時間 Tags:タグ(複数の場合、”_”で接続。 17
  18. 18. Select avg(view_count),avg(xxxx),・・・ from yyyy; 18
  19. 19. 19
  20. 20. 20
  21. 21. 21 A = B + B’ C = B/A A > B
  22. 22. 22
  23. 23. 23
  24. 24. 24
  25. 25. 区切り文字をSqlite3上でxxyyzzへ変換 Sedコマンドによる置換 25
  26. 26. http://orangain.hatenablog.com/entry/20100916/1284631280 ・cat:縦結合 ・paste/join:横結合 ・head:行頭x行だけ抜く ・grep:条件による行抽出 ・cut:列抽出 ・sed:置換 ・sort:並び変え、uniqの前処理 ・uniq:ユニーク化 ・wc:行数を数える(答え併せ用) ・nkf:エンコーディング(要インスト) ・awk:スクリプト言語 26
  27. 27. 27
  28. 28. 28
  29. 29. 29
  30. 30. 30
  31. 31. 31
  32. 32. 32
  33. 33. 33
  34. 34. 34
  35. 35. 35
  36. 36. 経過日数 ※正確にアップロード経過日数の再生数を記録しているわけではなく、 ある時点でのアップロードから3日経過した動画の平均値を出している。 36
  37. 37. 37 動画タイトル日付再生数 AAAAAAA 2014/9/20 8,241 AAAAAAA 2014/9/21 6,125 AAAAAAA 2014/9/22 5,391 AAAAAAA 2014/9/23 531 AAAAAAA 2014/9/24 4,399 AAAAAAA 2014/9/25 3,123 AAAAAAA 2014/9/26 4,574 BBBBBBB 2014/9/14 3,715 BBBBBBB 2014/9/15 2,717 BBBBBBB 2014/9/16 8,460 BBBBBBB 2014/9/17 2,454 BBBBBBB 2014/9/18 1,982 BBBBBBB 2014/9/19 2,092 BBBBBBB 2014/9/20 7,444 BBBBBBB 2014/9/21 3,663 BBBBBBB 2014/9/22 4,246 BBBBBBB 2014/9/23 5,155 BBBBBBB 2014/9/24 9,400 BBBBBBB 2014/9/25 9,163 BBBBBBB 2014/9/26 1,855 動画タイトルアップロード日付再生数経過期間 AAAAAAA 2014/8/20 9,642 42 BBBBBBBB 2014/7/11 1,252 82 CCCCCCCC 2014/6/1 3,532 122 DDDDDDDD 2014/5/22 1,576 132 EEEEEEEEEE 2014/5/12 7,681 142 DF 2014/2/1 9,555 242 asdjhgtagaqg 2013/10/24 3,804 342 sgajghjahgah 2013/11/13 5,270 322 gdahdjkgahlgal 2013/12/3 3,669 302 ajsghjasdhgaklg 2013/8/25 1,437 402 sghajhjehahg 2013/7/16 7,166 442 aghajhgahjkerga 2013/6/6 8,006 482 egahjghaehgajkl 2013/7/27 8,983 431 gajseghjahjlghaj 2013/9/16 557 380 gnasjgjhdfakh@ 2013/11/6 9,941 329 nlghakjhiarh; 2013/12/27 1,282 278 algjoiwheghal 2012/11/18 4,090 682 gnalkgh;aoeugp 2011/10/11 2,327 1,086 gnklanhgheoha 2012/8/30 1,341 762 gnklao;ho;gweh 2013/7/20 5,367 438
  38. 38. y = 415.55x-0.666 R² = 0.9161 0 100 200 300 400 500 600 700 800 0 200 400 600 800 1000 1200 1400 1600 view_count 累乗 (view_count) 38
  39. 39. 固いが、基本につい ては一番しっかり書 いてある。 いや、使ってみて決 めるわというヒトに。 知識俯瞰にも有効。 データサイエンスを 一番よく俯瞰してい る。ここから各専門 書へ。 久保さんが神。 最小二乗法⇒尤 度推定⇒階層ベ イズの説明の流 れは神です。 39
  40. 40. Rの学習をしながら 統計の勉強も出来る おトクな一冊 様々なデータセットを 使って実際に勉強でき る。米系データセットが 多いので、分析結果に ピンとこないものも。 会話形式で進むわかりや すい入門書。取り敢えずR で色々な分析回したい人 にはうってつけの書籍。 40
  41. 41. 参考:「でたぁっ 感動と失敗の備忘録」 佐藤さんのブログhttp://deta.hateblo.jp/entry/2014/05/08/052916 > source('~/Desktop/R/decrease_model.R') It. 0, RSS = 44314.9, Par. = 4.2 819.469 -0.800566 It. 1, RSS = 15135.2, Par. = -3.27199 689.324 -0.719096 It. 2, RSS = 15049.2, Par. = -4.06311 692.061 -0.713378 It. 3, RSS = 15049.2, Par. = -4.05919 692.114 -0.713528 It. 4, RSS = 15049.2, Par. = -4.05942 692.113 -0.713525 41 R^2=0.9849772> 0.9161 (Excel)
  42. 42. 0.0% 20.0% 40.0% 60.0% 80.0% 100.0% 120.0% 0 5 10 15 20 25 30 35 view_count predictionR prediction_xls アップロードからの経過日数 初速に 対する摩耗率 1日あたりの再生数摩耗状況 42
  43. 43. 43 Y = a + b*x^cモデル AIC:2401.326 Y = b*x^cモデル AIC:2431.819 当てはまりの良さ パラメーター数によるペナルティ
  44. 44. 44
  45. 45. 分析対象①タイトル文 分析対象②タグ 動画検索もキーワード、タグと分かれている。 45
  46. 46. MeCabインストール RMeCabインストール 辞書編集 46
  47. 47. 47
  48. 48. 順位 word Info1 Info2 Freq topとの比 タグ順位 1 実況 名詞 一般 952337 100.0% 15 2 実況プレイ 名詞 固有名詞 563761 59.2% 3 3 part 名詞 固有名詞 504697 53.0% 82 4 プレイ 名詞 一般 373371 39.2% 12 5 動画 名詞 一般 330019 34.7% 2 6 Part 名詞 固有名詞 298372 31.3% 82 7 part 名詞 一般 242152 25.4% 82 8 Part 名詞 一般 169590 17.8% 82 9 東方 名詞 一般 141042 14.8% 5 10 オリジナル 名詞 固有名詞 112628 11.8% 24 11 初音ミク 名詞 固有名詞 98884 10.4% 22 12 MAD 名詞 固有名詞 89329 9.4% 75 13 曲 名詞 一般 81770 8.6% 21 14 マスター 名詞 固有名詞 81592 8.6% 14 15 アイドル 名詞 固有名詞 81489 8.6% 13 16 三国志大戦 名詞 固有名詞 78016 8.2% 26 17 ゲーム 名詞 一般 77174 8.1% 1 18 MMD 名詞 固有名詞 64352 6.8% 69 19 MUGEN 名詞 固有名詞 62111 6.5% 39 20 大会 名詞 一般 60204 6.3% 249 21 男 名詞 一般 53692 5.6% 65 22 ポケモン 名詞 固有名詞 53435 5.6% 30 23 パート 名詞 一般 50766 5.3% 2838 24 ver 名詞 一般 50679 5.3% 1036 25 人 名詞 一般 50032 5.3% 18 26 最終 名詞 一般 48204 5.1% 147 27 ブレイク 名詞 固有名詞 47859 5.0% 29 28 amp 名詞 固有名詞 47796 5.0% 74 29 後編 名詞 一般 47608 5.0% 出現なし 30 鬼 名詞 一般 47246 5.0% 52 タイトル文の頻度分析結果 タグ文の頻度分析結果 順位 word Info1 Info2 Freq topとの比 タイトル文順位 1 ゲーム 名詞 一般 3722758 100.0% 17 2 動画 名詞 一般 1879199 50.5% 5 3 実況プレイ 名詞 固有名詞 1516231 40.7% 2 4 音楽 名詞 一般 903688 24.3% 222 5 東方 名詞 一般 482625 13.0% 9 6 コメント 名詞 固有名詞 475409 12.8% 608 7 シリーズ 名詞 固有名詞 388444 10.4% 109 8 アニメ 名詞 一般 384343 10.3% 72 9 ニコニコ 名詞 固有名詞 376676 10.1% 111 10 VOCALOID 名詞 固有名詞 363480 9.8% 179 11 エンターテイメント 名詞 固有名詞 320936 8.6% 出現なし 12 プレイ 名詞 一般 307308 8.3% 4 13 アイドル 名詞 固有名詞 289150 7.8% 15 14 マスター 名詞 固有名詞 285313 7.7% 14 15 実況 名詞 一般 271741 7.3% 1 16 ー 名詞 一般 203125 5.5% 4055 17 ムービー 名詞 固有名詞 173192 4.7% 89 18 人 名詞 一般 168323 4.5% 25 19 メーカー 名詞 固有名詞 166108 4.5% 1729 20 ボカロオリジナル 名詞 一般 165151 4.4% 出現なし 21 曲 名詞 一般 162986 4.4% 13 22 初音ミク 名詞 固有名詞 162355 4.4% 11 23 スポーツ 名詞 固有名詞 149003 4.0% 2440 24 オリジナル 名詞 固有名詞 146090 3.9% 10 25 ラジオ 名詞 一般 141972 3.8% 50 26 三国志大戦 名詞 固有名詞 122582 3.3% 16 27 神 名詞 一般 113649 3.1% 54 28 動物 名詞 一般 101485 2.7% 1477 29 ブレイク 名詞 固有名詞 101299 2.7% 27 30 ポケモン 名詞 固有名詞 100628 2.7% 22 上位30KW中、13KWがタグ文、タイトル文の両方に出てきている。また、トップとの比率で見ると、タグ文の方が上位KWへの頻度集中が強い。 タイトル文では、ボーカロイドのようなワードよりも「初音ミク」と指定されることが多く、逆に「曲」のような範囲の広いワードも多い。 タグ文は、検索に対しても、独特のルールがあるのか「ボカロオリジナル」のようなワードが抽出されている。 48
  49. 49. 49
  50. 50. 50
  51. 51. 51
  52. 52. 本日のまとめ 本日のまとめ 52
  53. 53. 53
  54. 54. 54
  55. 55. 55
  56. 56. 56
  57. 57. 57
  58. 58. 58
  59. 59. Occam’s Razor by Avinash Kaushik http://www.kaushik.net/avinash/ The information Lab http://www.theinformationlab.co.uk/ The Datographer http://datographer.blogspot.jp/ サイエンスメディアな日々、インフォグラフィックな日々 http://scivis.hateblo.jp/ 59
  60. 60. 参考【第38回Tokyo webmining資料LT20140726用】 http://www.slideshare.net/koichirokondo/tokyo-webmining20140726 60
  61. 61. 61
  62. 62. 62
  63. 63. • • • • – – – 63
  64. 64. http://thinkit.co.jp/article/70/1/ 64
  65. 65. ビジュアライズ 対象データ 処理&分析 ・スケーラビリティ ・リアルタイム性 (更新頻度) ・クレンジング有無 ・分析インフラ ・集計インフラ ・DB、データマート化? ビジュアライズプロジェクト運用における検討ポイント ビジュアライズプロジェクト開始における検討ポイント ・誰が何を確認するためのビジュアライズなのか?(ビジュアライズ大方針) -目的(Purpose)は何か? -閲覧者、意思決定者(Target)は誰か? ⇒例:外部要因・内部要因から、明日の売上を予測するダッシュボード? お客様の属性別に購買行動を可視化するためのダッシュボード? ・いつ、どこで、どのように確認するのか? (ビジュアライズのディティール) -どのデバイス(where)で確認するのか?⇒スマホ?PC?スクリーン? -どのくらいの頻度(when)で確認するのか?⇒毎日?週次?月次? -どのようなオケージョン(How)で確認するのか?⇒会議?朝の電車? デザイン ・ツール ・デバイス ・インタラクションの増減 組織共有 ・オンライン ・アプリケーション ・メール ・紙 選 択オプショ ン 評 価ポイン ト ・属性データ ・トランザクションデータ ・ウェブログ等 ・速度 ・高度分析の有無 ・デザインツールとの連携 ・見やすさ/わかりやすさ ・包括性 ・情報量とメッセージング ・深掘りの可否 ・アクション誘引 ・アベイラビリティ ・意思決定者のリテラシー 65
  66. 66. 経過日数 摩耗率少ない 摩耗率少ない 摩耗率高い 摩耗率超高い 摩耗率高い 摩耗率普通 摩耗率普通 摩耗率少ない 摩耗率少ない 摩耗率少ない 66
  67. 67. 【ダッシュボードの定義】 1.A dashboard is a visual display(ディスプレイ上のビジュアル) of 2.the most important information needed to achieve one or more objectives (目標を達成するための最も大切な情報を集約している) that has been 3.consolidated on a single computer screen(一つのスクリーンで見ることが出来る) so it can be 4.monitored at a glance(一目で確認が出来る) 67
  68. 68. 対象期間の設定 対象通貨の設定 68

×