Introduction to Applied Linear Algebra 第7章

第6章はこちら。第7章はMatrix Examples、行列を使った事例の紹介。

行列による演算で拡縮や回転反転などができる。また直線への射影もできる。軸の変換も同様。

各行に1の要素が一つだけある行列をかけ合わせることで、ベクトルに対して要素を選択するような演算を行うことができる。これを応用すると画像のクロップも行える。同様にpermutationを行列の掛け算で行うこともできる。

Incidence matrixという表現を使うと、有向グラフやネットワークを表せる。これを応用してグラフ上の流量を計算するような例が書かれている。

最後に1次元畳み込みと2次元畳み込みの事例が書かれていて、グラフや画像を平滑化するために用いられている例が図とともに述べられている。

Introduction to Applied Linear Algebra 第6章

第5章はこちら。第6章は行列について。

まずは行列の定義とか用語の説明などから入って、例として票形式のデータを行列で表すのが挙げられている。他にもdirected graphを行列で表す隣接行列の考え方なども述べられている。

次にゼロ行列と単位行列の解説がある。この辺りは基礎なので問題なく読み進められる。

最後に行列の転置・足し算・掛け算が説明されている。各章でおなじみではあるが、各演算の計算量も解説されている。

Introduction to Applied Linear Algebra 第5章

第4章はこちら。第5章は線形独立について。

まずは線形従属とは何ぞやという話から始まって、線形独立なベクトルを開設している。その後Basis(基底)の説明があって、線形独立なベクトルは基底を張っているというような内容が書かれている。

例としてはキャッシュフローとローンの利率の計算をある期間のでどのように変化するかという例が挙げられている。

そのあとは、Orthonormalベクトルの解説があり、グラムシュミットのアルゴリズムでOrthonormalベクトルを求める方法が説明されている。

Introduction to Applied Linear Algebra 第4章

前回はこちら。4章はクラスタリングの話。序盤でクラスタリングみたいな話が入ってくるのは珍しい。それだけ応用を意識している本ということだろうか。

クラスタリングがどういうものかの説明の後に様々な応用事例が述べられている。例えば郵便番号のクラスタリングや、アンケート結果のクラスタリングなど、非常に幅広い分野で応用が可能。

クラスタリングの目的関数とk-means法の紹介がある。この辺りは、よくある機械学習の教科書とかを見れば簡単に理解できる。

最後に実際の応用事例としてMNISTのクラスタリングやドキュメントトピックのクラスタリングが説明されている。MNISTの場合は単純にピクセル値を、ドキュメントトピッククラスタリングの場合は単語のカウントをベクトルとして入力としただけで、それなりにもっともらしい結果が出力できている。

Introduction to Applied Linear Algebra 第3章

第三章はノルムと距離について。2章の内容についてはこちら

ノルムとはベクトルの大きさのようなものですよ、という解説から始まり、ノルムの性質・計算方法などが説明されている。距離についてはなじみのあるユークリッド距離から解説が始まって三角不等式が述べられている。

次の節では標準偏差の計算方法が解説されている。統計的な本で見る記述と比べるとベクトル表現なので、一見して理解しづらいがやっていることは統計学の標準偏差の計算と同様。

次にベクトル間の角度を計算する方法が説明されている。内積とノルムが分かると角度は計算できる。ついでに相関係数や計算量についての話も書かれている。

Introduction to Applied Linear Algebra 第2章

引き続きIntroduction to Applied Linear Algebra第2章を読んだ時のメモ。第1章はこちら

第二章は線形関数について。線形関数はベクトル同士の掛け算で表せますよということから始まって、アフィン変換などで2次元ベクトルの場合グラフ上でどのように変換されるかが可視化されている。具体例としてcivil engineeringの分野で橋にかかる負荷の計算の例が挙げられていた。

その後は、テイラー展開と線形回帰モデルについての解説がある。テイラー展開では偏微分とか出てくるけども、二次元での例が図示されているので何となく理解できると思う。線形回帰の部分では住宅価格の予測についての例が示されている。

Introduction to Applied Linear Algebra 第1章

線形代数の復習をかねてIntroduction to Applied Linear Algebraという本を読んでいます。線形代数についての基礎(ベクトル・行列)から機械学習に関する応用など幅広く書かれていて、読み始めですがかなり分かりやすいです。
実世界での応用事例についてを紙幅を割いて各章で述べられているところも、初学者にとってはなんで線形代数を勉強するのかという疑問を解決するために良いと思っています。

まずは第一章。第1章はベクトルです。基本的にはベクトルとは何か、足し算、内積などの基礎的な内容から計算量までが語られています。
応用事例として例えばベクトルの内積により、2つのベクトルの共起回数を求められるといった内容や、多項式の計算ができるといったことなどが書かれています。

書評:The Data Science Design Manual

少し前に「The Data Science Design Manual」という本を読んだので紹介します。

この本の著者はAlgorithm Design Manualを書いた、Steven S. Skiena先生であり内容自体はデータサイエンスの基礎的な内容を網羅的に説明した本です。非常にユーモアがある書き方で、データサイエンスの勉強はもちろん純粋な読み物としても楽しめる部分があります。
どのくらいユーモアがあるかというのは序文のCaveatという部分を読めばわかります。以下はその部分の引用です。
「It is traditional for the author to magnanimously accept the blame for whatever deficiencies remain. I don’t. Any errors, deficiencies or problems in this book are somebody else’s fault, but I would appreciate knowing about them so as to determine who is to blame.」

技術的な内容は数式を使ってしっかりと解説されており、ところどころにSkiena先生が実際に体験したデータ分析する上での罠や手法の説明を書いた「War Story」という節が挟まれており、読んでいて飽きないように工夫されています。
内容自体はデータの前処理から可視化、モデル作成と一通り書かれており、統計や線形代数の基本的な内容もカバーされているので1冊で基本的な部分が簡潔に学べるようになっていました。

このような本の類書は最近非常に増えており、内容的には大体理解している部分が多かったが、系統立てて読んでみると知識の抜けている部分が分かるので、英語に抵抗がなくて何か一冊データ分析の本を選ぶなら、読み物として面白いので割とおすすめできる本でした。


「欠測データ処理」を読んだ

データ分析の前処理における重要なポイントの一つとして、欠測データをどのように扱うかがある。
入門向けの記事だと単純に平均値や0埋めなどを施して、そのまま機械学習モデルに投入する例が多いが統計学的にはこのような単一代入法と呼ばれる手法はバイアスを生じる。
そこで使われるのが多重代入法と呼ばれる手法である。

多重代入法について詳しく知りたかったので、評価の高い「欠測データ処理」を読んだ。

本書では欠測データの種類、単一代入法・多重代入法の理論的な側面とともにRによる実際のコード例も紹介されている。
例えば、一口に欠測データといってもその生成メカニズムとしてMCAR, MAR, NMARなどの種類が存在する。ある調査では経験的に完全にランダムに欠損が生じているデータ(MCAR)は公的統計の調査においては約10~20%程度という結果もある。
MARによる欠損は単一代入法ではバイアスが生じるため、多重代入法を利用するべきである。多重代入法とは欠測データの分布から独立かつ無作為に抽出されたM個のシミュレーション値によって欠測値を置き換えるものである。

最後の「おわりに」の章にある3つの疑問に対する回答が、なぜ多重代入法を使うのかという説明として非常にわかりやすかった。「なぜ複数回の代入が必要なのか」という疑問に対して、複数回の代入を行うことで推定に関する不確実性を代入されたデータに取り入れることで、標準誤差を適切にすることができると書かれている。これによって母集団パラメータの推定を妥当なものとすることができる。

【書評】中国のAI技術と進むべき方向性:「AI Superpowers: China, Silicon Valley, and the New World Order」

最近、アメリカのAmazonで話題となっている「AI Superpowers: China, Silicon Valley, and the New World Order」という本を読んだ。
色々と面白い内容が多かったので、ここに書きたいと思う。

まず、この本の著者であるDr. Kai-Fu Leeは台湾で生まれてアメリカのカーネギーメロン大学で音声認識の分野でPh.Dを取った、人工知能の専門家である。現在はベンチャーキャピタリストとして北京を活動拠点にしている。
著者がどんな人かを手っ取り早く知りたい人は以下のTED動画を観ると良いと思う。
https://www.youtube.com/watch?v=ajGgd9Ld-Wc

この本を読むと、とにかく中国のAI活用がものすごいペースで進んでいるということが分かる。もちろん、筆者が中国をベースにビジネスをしていることを割り引いて考える必要はあるかと思うが、筆者の中国がAI実装の分野で力を付けていくだろうというビジョンは本書を読むと説得力がある。
筆者はディープラーニングによる世の中のシフトは、2つの変革として表れていくだろうと述べている。すなわち、「発見の時代から実装の時代」のシフトと「専門家の時代からデータの時代」へのシフトである。

今現在も続いている専門家がアルゴリズムを考えて、新たな有効な機械学習手法を編み出していく時代から、その手法を実際に社会実装していく時代が来るだろうとの考えから、このシフトを筆者は考えている。最近は多くの研究者がarxivなどに論文を学会で発表する前に載せており、コード実装を公開する例も多い。インターネットさえあれば、それらの世界最先端の技術を学ぶことができ、ビジネスに応用していくことが出来る時代である。

ビジネスとして最先端の機械学習の成果を利用するには、必ずしも最先端の研究者が必要なわけではない。筆者は「Today, successful AI algorithms need three things: big data, computing power, and the work of strong — but not necessarily elite — AI algorithm engineers.」とも述べている。
このように機械学習の社会実装という面だけで考えれば、中国はアメリカに劣っていないという。また、研究面でも中国出身の研究者が多くの論文を発表するようになってきており、AAAIというAI関連の有名な学会の日程が旧正月と被るために日程を変更せざるを得なかったという象徴的な出来事があった。
https://www.theatlantic.com/technology/archive/2017/02/china-artificial-intelligence/516615/

このようにAI研究や社会実装で中国の力が伸びてきており、半分冗談であるが「中国がシリコンバレーにAI研究でどれほど遅れているか?」と聞かれた中国の実業家は「16時間」と答えたらしい。これはカリフォルニアと北京の時差である。「When asked how far China lags behind Silicon Valley in artificial intelligence research, some Chinese entrepreneurs jokingly answer “sixteen hours”—the time difference between California and Beijing.」と答えたらしい。

また、中国企業のハードワークさも今後のビジネスの行方に有利に働くと考えている。筆者に言わせると、中国企業に比べてシリコンバレーの企業はとてもゆっくりと怠けて仕事をしているスピード感の違いを感じるそうだ。また、非常に熱心に学ぶ中国の学生やエンジニアの話も紹介されており、英語圏の著名なAI研究者の動画などにはすぐに中国語の字幕や翻訳が出るとのことで、将来性ももちろん感じる。この辺りの話を読んでいると、高度成長期時代の日本の姿に重なるものを感じる。
もちろん筆者だけでなく、世の中の著名な人物も似たような評価を下している。たとえばエリックシュミットは講演のなかで「Trust me, these Chinese people are good. . . . If you have any kind of prejudice or concern that somehow their system and their educational system is not going to produce the kind of people that I’m talking about, you’re wrong.」と述べたそうだ。

この本のなかでは、一体何が中国をAI実装の分野で強くしているのかといったことが書かれている。例えば、独自の文化圏、国家主導の仕組みづくり、テクノロジーを一段飛ばしで来たこと、データを使われることへの許容、ハードウェアに強い深圳を持つこと、などなど様々な点が強みとして挙げられている。
例えば、独自の文化圏として、昔の話であるがグーグルサーチは中国市場を単なる一地域としてしか見ておらず、本格的なローカライズのペースが遅かったと言う(ちなみにこのころは著者はGoogle Chinaで働いていたそうだ)。通常、検索結果をクリックするとそのページへ飛ぶが、中国人は検索結果を「ショッピングモール」のようなものだと思っており、検索結果をクリックしてもそのサイトは別タブ・ウィンドウで表示され、検索結果のページが残ったほうが効果的であったという。Baiduはいち早くそのように実装し、Googleに対して優位性を取ったという。
また、国家主導の仕組みづくりとしては、地方自治体が競うようにしてITベンチャーを簡単に設立できる特区のような地域を作るなどして、ベンチャー企業が数多く設立される仕組みを作っている。

テクノロジーを一段飛ばしで来たことは、例えば多くの人にとってはデスクトップやラップトップを経由せずにスマートフォンがメインのデバイスとして使われるようになり、スマホ特化のアプリやベンチャーが生まれたり、クレジットカードを経由せずにQRコードによる支払いが進んでいくようになったことなどが挙げられる。
データを使われることへの許容とは、直接的に言及されていないが中国政府による検閲やプライバシーといったものの意識が近年まで問題になっていなかった背景などもあり、企業に個人データを使われても、それで便利になるならば許容する精神が西側諸国よりかは大きいのだと思われる。
また、深圳はハードウェアのメッカとして知られているが、現状では他国の企業に比べて中国企業は文化・言葉などの面でビジネスをしやすいという。他国が苦労しながらもハードウェアを深圳で作ろうとしている間に、中国企業は様々なトライアルアンドエラーを行ってAI技術を用いた新しいデバイスを作れるようになるだろうと著者は予測する。
このほかにも今後数年~十数年のうちに実現するであろう、AI技術を社会実装した例なども挙げられており、専門家の目から見た将来像を学ぶ上で有益な一冊であると言える。

後半は前半とは大きく変わって、著者のTEDトークにもあったステージ4のがんであると診断された後に気付いた人生の目的やそれに向けたAI活用の話になってくる。著者は、がんと診断される前は仕事一筋で、どれだけ自分が社会に与える影響を最大化できるかといったことだけを考えて生きてきたという。しかし、人との関りや家族友人を大切にすることこそが一番重要だと思うようになったと語る。よく言われていることだが、死の間際にあの時もっと働いていれば良かったと思う人はほとんどいない。
そういった出来事を踏まえて、AIの発展した時代には人間は人との関わりを活かした仕事を進めていくべきであると言う。例えば、誰もステージ4のがんを機械に宣告されたくないはずで人間的なアプローチを持った仕事は残っていくし重要であるだろうと予測している。この辺りはTEDトークを見てもらえれば良く分かると思う。

個人的にはこの本がアメリカのAmazonで大ヒットしている現実を見ると、やはり欧米諸国は中国とパートナー関係を結んでビジネスを進めていこうという流れが出来てくるだろう。最後の方にもこの本のタイトルである「AI Superpowers」は決して、冷戦や宇宙進出の競争の時代にあったような対立関係を煽るものではなく、米中で協力してAI技術を発展させていくべきであるとも述べている。そうなった際に置いてけぼりにならないように、日本企業が中国企業から学ぶべきところは多いだろうと思う。