2. Copyright(C) Open Stream, Inc. All Rights Reserved.
はじめに
■ 今日は、自分のことは棚に上げて、息の長いITエンジニア
であるために必要なリベラル・アーツ(教養)について、私な
りの考え方についてお話したいと思います。
■ もちろん、異論はあると思います。一部でもみなさまの参考
になれば幸いです。
2
19. Copyright(C) Open Stream, Inc. All Rights Reserved.
■ ビッグデータ
■ IoT
■ AI
19
*1:Internet of Things
*2:Machine to Machine
旧来のITはコモディティ化
データの活用力が価値の中心になる時代
23. Copyright(C) Open Stream, Inc. All Rights Reserved.
Type-I:いままでのITシステムで
扱っていたデータ
計算機内に閉じている、構造化されたデータ
■ もともと数値(金額、日付、個数…)
■ 文字列(名前、住所、ID、URL…)
■ バイト列(BLOB)(画像、音声、テキスト…)
23
24. Copyright(C) Open Stream, Inc. All Rights Reserved.
Type-II:データ中心時代に
必要となるデータ
24
計算機の外からやってくる;非構造化データ
■ 物理計測数値(センサー系:温度、圧力、加速度、
電圧、音圧、明るさ…)
■ バイト列(BLOB)(画像、動画、音声、自然言語テキ
スト…)
32. Copyright(C) Open Stream, Inc. All Rights Reserved.
例1:月面サッカーの
ボール軌道計測
■ 20XX年、月面サッカー協会からの依頼
• 選手がキックしたボールの軌道を解析し、選手の特徴を分析したい。
• ボールの内蔵IoTセンサーで、リアルタイムで位置を計測できる。
• ただし、原理上、計測誤差が発生する。
32
35. Copyright(C) Open Stream, Inc. All Rights Reserved.
アイデア-1-1
(中学生級)
■ 誤差=ばらつき
■ ばらつきを消すには?
■ →平均をとろう!
35
36. Copyright(C) Open Stream, Inc. All Rights Reserved.
移動平均を取った結果
• 平均範囲:i-5~i+5
• 赤いプロットが移動平均
• 最後まできれいな
放物線にならない。
• 最初と最後の部分の
データが欠ける。
36
37. Copyright(C) Open Stream, Inc. All Rights Reserved.
アイデア-1-2
(大学1~2年級)
■ 『重力場で投射された物体は
放物線を描く』
• 高校物理の知識
■ 計測データ=放物線+誤差
■ 最小二乗法で誤差を取り除こう!
37
38. Copyright(C) Open Stream, Inc. All Rights Reserved.
最小二乗法の考え方
38
計測データ P1
~PN
について、
S1
~SN
の面積の合計が最小となるよう
な方程式 y=f(x) を求める。
※誤差は正規分布していると仮定
※f(x)は直線・放物線など
39. Copyright(C) Open Stream, Inc. All Rights Reserved.
最小二乗法の結果
39
• 2次方程式(放物線)を
データに当てはめた
• 統計学的に最も妥当な放
物線が得られる
40. Copyright(C) Open Stream, Inc. All Rights Reserved.
例2:月面サッカー
リアルタイム計測編
■ 前述の計測システムが好評だったので、
次にリアルタイム化を依頼された。
■ ボール飛行中にリアルタイムにノイズを取り
除いて画面に表示したい
■ 他のセンサー等の追加設備はない。
40
41. Copyright(C) Open Stream, Inc. All Rights Reserved.
アイデア-2-1
(大学1~2年級)
■ ボールの飛行中に放物線を求めたい。
■ リアルタイムに最小二乗法を適用してみる。
41
49. Copyright(C) Open Stream, Inc. All Rights Reserved.
月面サッカーの例では
■ (直接観測できない)状態=[ボールの位置, ボールの速度]
■ ニュートンの運動方程式を使って、状態方程式(遷移係数)を作成
■ 外部入力は月の重力(重力加速度)
■ 観測できるのはボールの位置だけ;センサ値には誤差がある
49
青が計測値
赤が推定値
50. Copyright(C) Open Stream, Inc. All Rights Reserved.
余談:宇宙開発と
カルマンフィルター
■ 1960年代の宇宙開発において、カルマンフィルターは
大きな役割を果たした(ロケットの飛行制御)
■ 当時の非力なコンピュータでも動作できた
50
アポロ宇宙船の
誘導コンピュータ
(ソースコードが公開されている)
月ロケットの軌道制御
赤:ロケットの自己位置計測値
青:カルマンフィルタ推定軌道
緑:真の軌道
51. Copyright(C) Open Stream, Inc. All Rights Reserved.
GPSもカルマンフィルター*
51
• この円は、カルマンフィルターで
推定された誤差の大きさを示して
います。
• 円は最初大きいが、しばらくする
と小さくなる。繰り返し更新により
推定誤差が小さくなっていくため
です。
*パーティクルフィルター等が使われている可能性もあります
52. Copyright(C) Open Stream, Inc. All Rights Reserved.
状態空間モデルは
マーケティングにも応用されつつある
■ “状態空間モデルによるインターネット広告のクリック率予測”
http://www.orsj.or.jp/archive2/or57-10/or57_10_574.pdf
*この例では、パーティクルフィルタ(粒子フィルタ)を用いています。こ
れは、カルマンフィルタと似た効果のある別のフィルタ手法です。
52
61. Copyright(C) Open Stream, Inc. All Rights Reserved.
教科書を読んでいく
1) 最初は流し読み。どこに何が書いてあるか?
2) 2回めから精読。紙とペンを用意
3) ときどき例題もやってみる
4) 3〜6回読み返すのが理想
5) 分からない箇所は:
a) ネット・Youtubeで調べる(複数ソースで裏を取る)
b) 数学系のコミュニティで専門家に聞く
6) だいたい、1冊を1年かけて読むつもりで
61
62. Copyright(C) Open Stream, Inc. All Rights Reserved.
例題をプログラムで実装してみる
ITエンジニアは、プログラムコードで理解を深められるのが利
点
1) よく使われる言語
a) Python、R、Julia
2) 最近は、プログラミング言語で数学を説明する参考書が増
えている。これらを使う手もある。
3) さまざまなサンプルコードがネットで見つかる
62
63. Copyright(C) Open Stream, Inc. All Rights Reserved.
数学が苦手な人へのヒント
■ 学校数学と応用数学との違い
■ 数学は言葉
■ 数学はモデル
63
64. Copyright(C) Open Stream, Inc. All Rights Reserved.
学校数学が苦手だった人も
応用数学は好きになるかも
■ 学校数学
• 数学の問題を解くために数学を学ぶ
• 進学のために仕方なくやる
• 意味・目的が分からない
• 初等では教えない先生もいる
• 『紙と鉛筆(手計算)』がメイン
■ 応用数学
• 現実の問題を解くためのツールになる
• 意味・目的がはっきりしている
• 計算はコンピュータに任せる
64
65. Copyright(C) Open Stream, Inc. All Rights Reserved.
数学は言葉
■ 数式は『意味不明の記号の羅列』では
ありません。数学語という世界共通の
言語です。
■ 数学語を日本語に訳したり、日本語を
数学語に訳したりできます。
■ まずは数学語を和訳できるようになり
ましょう。
65
『数学は言葉』新井紀子著
66. Copyright(C) Open Stream, Inc. All Rights Reserved.
数学はモデル
■ モデル=模型
■ 数学を使って、現実の問題を
模型化することができます。
■ 数学的モデルは、コンピュー
タとの
親和性が高いです。
66
68. Copyright(C) Open Stream, Inc. All Rights Reserved.
コンピュータサイエンス
■ コンピュータの原理(ハード・ソフト・システム・ネットワー
ク)についての科学
■ どのような原理・仕組みでコンピュータが動いているの
か、限界はどこか
■ 非常に広範囲→どこから手を付ければ良いか?
68
69. Copyright(C) Open Stream, Inc. All Rights Reserved.
おすすめCS勉強法
ツールの自作を通じた実践勉強
普段使っている道具を自分で作ってみるのが一番勉強にな
る。簡易版でも十分。
■ テキストエディタを自作
■ グラフィックエディタを自作
■ 言語処理系(コンパイラ、インタープリタ)を自作
■ Webサーバを自作
■ GUIシステムを自作
■ DBを自作
■ OS・デバイスドライバーを自作
■ CPUを自作
69
95. Copyright(C) Open Stream, Inc. All Rights Reserved.
おすすめドラマ
■ “NUMB3RS ナンバーズ 天才数学者の事件ファイル”
95
• LAを舞台とした刑事ドラマ
• FBI捜査官の兄、天才数学者の弟が協力し、数学を使って
犯罪捜査
• 劇中で使われる数学は本物(制作にはプロの数学者)
• 解説本も出ている
• 数学を知らなくても楽しめる
• BS放送 D-Life で再放送中
96. Copyright(C) Open Stream, Inc. All Rights Reserved.
おすすめ映画
■ “イミテーション・ゲーム”
96
• 数学者アラン・チューリングの生涯を描いた映画
• アインシュタインと並ぶ『20世紀の天才』
• コンピュータの原理・限界:チューリング・マシン
• 人工知能の父:チューリング・テスト
• ナチスのエニグマ暗号を解読、アメリカを勝利に導いた影の立役者
97. Copyright(C) Open Stream, Inc. All Rights Reserved.
おすすめ映画
■ “Hidden Figures”(邦題:ドリーム)
97
• 1960年代のNASAで活躍した黒人女性 数学者・エンジニアの伝記
• 人種差別、職業差別(女性が数学者?)と闘いながら偉業を達成する