Monthly Archives: August 2016

表計算ソフトを常用する人に勧めたい『10年戦えるデータ分析入門』

DSC05980

10年戦えるデータ分析入門』という本を読みました。

この書籍の趣旨は、データベース操作言語 SQL を使って分析を行いビジネスに役立てようというもの。なぜSQLを使うのか (どうして Excel や R や C++ ではいけないのか) という根本的な疑問に対して、著者は第1章の冒頭から SQL を使うことが適当である事の明確な根拠を提示します。

第2章でリレーショナルデータベースについての導入が行われ、以後のページの大半を占める第1部は日常業務で便利なデータの探索や集計の具体的な実行方法の解説に費やされます。



普段は意図して触れていませんが私もソフトウェア開発に携わる者なので、これだけであれば本書に内容的な新規性を見出す事はなかったでしょう。

本書が特徴的であるのは、検索したデータを表示する際に「limit節で表示行数を絞る (48p) 」などの具体的なアドバイスや HAVING や GROUP BY などの「select文の節の実行順序 (77p) 」など、自明であると思われている (事が多い) が故に省略されがちな項目についても丁寧に記述されている点です。

先述の SQL (リレーショナルデータベース) を使う事が適当である理由とも合わせて、データ分析よりもむしろ データベースに初めて触れる人に最初に読んでもらいたい本 であると思われた事が、本書を購入した実の理由です。

本書では「正規化」と「テーブル作成」という言葉こそ登場しますが、具体的な正規形や論理設計の詳細には触れられていません。まして通読中に物理設計やパフォーマンスを意識する事は基本的にはありません。

こうした割り切った構成で、集計表の作成など日常業務で頻繁に使われるデータの参照方法に特化している点に好感が持てます。

(知らずのうちであったとしても) データベースに触れない日はないほどデータベースが普及している今日では、そこに蓄えられたデータを参照して活用できるようになる事が第一で、新規にデータベースを設計する為の技術は必要になった際に学べば良いからです。



そうした意味で第1部を読み終えた後に更にテーマを深化させた内容としてお勧めしたいのが、『達人に学ぶ SQL徹底指南書』です。

CASE式を使った条件分岐から始まり、行列変換、行間比較、集合演算など、SQL だけでここまで表現 (分析) できるのかと感嘆し、長すぎる 学生生活の中で何度も読み直したものですが、データ分析のためのSQL技術書という点で本書の延長上に位置する内容となっています。

一方、SQLを用いた分析システム構築について触れた第2部については、一転して概念の導入的な記述が増えます。一つ一つのテーマについて具体的に触れていると、それだけで分厚い本が何冊も書ける容量と高度な専門性が要求される内容となってしまい本書の趣旨が曖昧になるので、導入に留めて詳細は他の書籍に譲るという割り切りなのかもしれません。

第2部の内容のみでシステム設計ができる訳ではありませんが、重要な項目は一通り押さえられています。対して本書を通して触れられていない項目には、内部スキーマ、サイジング等のパフォーマンスに関連するもの、相関等の統計的な分析手法、分析結果の可視化と評価等があります。

そうした点を加味しても、本書に対する私の印象は通読するだけの価値があったというものでした。表計算ソフトを日頃から常用しており、入力する行数が増えてくるとパソコンの反応が鈍くなって埒が明かないと思う人にとっては、SQLの利用により劇的に作業効率が上昇する事も十分に考えられる為、本書を上梓して下さった著者に賞賛を送りたい気分でさえあります。



本書の参考文献には挙げられていませんが、経営視点からのデータ分析について私は個人的に『14のフレームワークで考えるデータ分析の教科書』をお勧めします。どのようなデータを収集し、何の目的に使用するかを具体的に記述している点が特徴です。

統計学については『統計学入門』と言いたいところですが、読み手を選ぶので『完全独習 統計学入門』あたりをまず一読される事を提案いたします。

機械学習については ベイズの 定番 Pattern Recognition and Machine Learning (Information Science and Statistics) も良いのですが、昨今の日本語書籍の充実ぶりも目覚ましいものがあります。

中でも個人的にお勧めなのが『言語処理のための機械学習入門 』です。必要な数学的知識 (最適化・確率・情報量) から始まり、深層学習以前の種々の手法について丁寧に解説されています。

真夏の高尾に登る

DSC05876

夏季休業中に旧友が北海道から帰省してきました。私自身は転居の多さから出身地が何処だか不明になっていますが、国内においては大阪府や東京都で生まれ育った人物が友人知人の大半を占めています。

そんな帰省した東京人の彼等が久し振りに面会して、何処に行きたいかと言う話になった際、候補の筆頭に上がったのが八王子の高尾山でした。



小学校の遠足の定番だけに馴染みのある山ですが、登山路は自転車進入禁止である事からロードバイクに乗っていると疎遠になりがちな山でもあります。

高尾山の直ぐ南側を東西に横切る甲州街道の 大垂水峠 も他の峠からのアクセスが良くない割に攻略難易度や展望がイマイチなので、積極的に経路に組み込みにくい点も残念です。

しかし、自転車を降りて眺めてみると鉄路によるアクセスは抜群に良く、気軽にトレッキングを味わえる良好な環境があり、由緒ある霊山でもある高尾の魅力が見えてきます。

そんなところが展望台や専門店街に何の感動も抱かない東京人を引き寄せるのかもしれません。


DSC05888


麓の京王線高尾山口駅前から薬王院までの参道は綺麗に舗装されていますが、車輪の侵入を前提としていない傾斜は奥多摩に行き慣れた私が見ても相当のもの。

以前であれば急崖部に曝け出された地層の体積や植生に目を奪われて意識する事もなかった登山路ですが、日頃、斜度と距離を意識しながら峠道を越えていると高尾山の登山道がなかなかの「激坂」である事に気がつきます。



辿っている道が前ではなく上に続いている事はヒルクライムの醍醐味ですが、その事態の非日常感を味わえるのは自転車に乗っていてもいなくても同じこと。他の友人たちは道の傾斜に面白さを見出している事を新鮮に感じているようでした。


DSC05910


舗装路やケーブルカー、自動販売機などのインフラが充実している一方で、自然林や従来の環境が保全されているのも高尾山の面白いところ。

参道を外れると未舗装路が現れ、それらの一部は吊り橋や沢へと通じています。



そうした名所を経路に取り入れつつ (沢歩きは下山時) 1時間ほど登山路を歩くと頂上に到達します。

標高 599m の山頂は奥多摩に続く笹尾根では高い方ではありませんが、見晴らしは抜群です。


DSC05901

DSC05905

DSC05906


ここから見えそうな位置に和田峠を擁する陣馬山、甲武トンネル、そして都民の森の名で知られる三頭山があると思うと、檜原村をホームグラウンドとしているロードバイク乗りとしては感慨深いものがあります。

こうして約1時間と30分の登下山を終えてみると、立ち止まって写真を撮る目的であれば徒歩の方がずっと容易な上、自転車では入り込めない様々な場所に立ち寄れる事、運動中の人物達を綺麗に撮影する事は困難である事など、いつもとは状況が異なるが故の様々な注意点に気づかされる事となりました。