まで自学自習できるよう、基本技術から具体的なコンピュータ環境の構築と分析ツールの実装法までを解説。自学自習できるようにした。ソーシャルメディア由来のソーシャルデータと実世界由来の実世界データは最近注目されるビッグデータの重要な構成要素である。公共的な性格を持ったオープンデータも信頼性のあるデータとして注目される。したデータを本書ではソーシャルビッグデータと総称する。ソーシャルデータの典型はTwitterやFlickrへの投稿記事や写真である。実世界データには自動車のプローブデータやJAXAの打ち上げた「はやぶさ」のデータが含まれる。OSM地図やWikipediaを使いやすくしたDBpediaもオープンデータの一種である。ソーシャルビッグデータを有機的に分析できれば,新たな価値が発見できて,観光や防災,科学まで多様な分野に応用が可能となる。ソーシャルビッグデータを時間的,空間的,意味的に分析することにより,大衆の行動を集合的に予測することができるようになる。これを本書では「イシカワ・コンセプト」と呼ぶ。イシカワ・コンセプトを実践することで,例えば訪日外国人が国内において期待以上に満足する場所はどこか,複数の楽しみが同時に体験できる観光地はどこか,観光地の目玉になる桜のような花々はその観光地でいまが旬か,災害時に現在地から避難所までの安全な経路はどこかなどがわかる。データ分析,データサイエンスで重要となる仮説そのものについては,以下のように二つの異なる見方ができる。宣言としての仮説:伝統的なデータ分析における仮説に相当する。この種の仮説に対する主要なタスクは,仮説の検証である。手続きとしての仮説:手順を実行し,その結果として仮説を生成する。この場合でも生成された仮説の検証は必要である。making:EBPM)ができるように,定性的で一般的な仮説でなく,定量的で具体的な仮説生成とそのための手順が求められている。ソーシャルビッグデータの応用分野を観察すると,大量のデータ管理とそれに対するデータマイニングからなる。データ管理とデータマイニング,機械学習,人工知能は,それぞれ別々に発展してきたデジタルエコシステム(以下単にエコシステムという)である。一般にエコシステムは,製品やサービスを媒介にして複数のベンダと利用者からなる相互に依存した生態系である。ソーシャルビッグデータ応用の多くは,異なるエコシステムからなるハイブリッドな応用であるといえる。計算機科学あるいは情報科学も広い意味では科学であり,その手順に関して再現性のある説明が,計算機科学の応用であるソーシャルビッグデータ応用の信頼性にとっても不可欠である。要するにソーシャルビッグデータ応用において,複数のエコシステムを利用して,再現性のある仮説生成手順の記述には,データモデルとして統一的なデータ構造とそれらに対するデータ操作を定義する必要がある。これをデータモデルアプローチという。本書ではソーシャルビッグデータの収集,分析,可視化の基本(概念,技術)と実践(アルゴリズム,プログラム)をバランスよく学ぶことを目指す。前著『ソーシャル・ビッグデータサイエンス入門』は本書の入門編にあたり,まずは概念を理解してもらうためにあえて実践的なコードは示さなかった。そこで本書では分析に必要となる基本概念,基本技術の説明に加えてソーシャルビッグデータの典型的な応用の実装にすぐに使えるコード(JavaScriptやPythonプログラム)を掲載し,実務家(卒論,修論などを執筆する学生,企業の技術者,研究者)にすぐに役立つ内容の提供を目指す。1章ではデータ管理とデータマイニングを含む複数の事例を通して,仮説を作り出すための手順を具体的に与えている。そのためにデータモデルアプローチを導入し,手順を特定のプログラム言語とは独立な形式で記述している。一歩踏み込んでソーシャルビッグデータ応用でよく使われる仮説生成のための方法論についても触れている。2章ではソーシャルビッグデータ応用で必要とされるデータマイニング,機械学習の基本概念とそこでよく使われる手法,実現アルゴリズムについて説明している。分類やクラスタリング,相関ルールなどの手法に関する複数アルゴリズムの説明に加えて,人工知能として最近注目されるディープラーニング(深層学習)についても利用目的に応じてその手法を概観できるようにした。3章以下の第II部は,ソーシャルビッグデータの収集や分析,可視化まで含めた包括的なアプリケーションをフルスタックJavaScriptにて実装する実践的な内容となっている。データベース問い合わせ・サーバ・クライアントの3層すべてをJavaScriptで開発する方法論で,本書ではそれに加えてPythonの著名な機械学習ライブラリscikit-learnとの連携手法も示している。本書で実装するプログラムはすべてGitHubリポジトリとして公開している。遠藤雅樹氏ならびにコロナ社で企画から編集,出版までをお手伝いいただいた関係者の皆様に深く感謝する。本書は,ソーシャルビッグデータの分析について,実際のコードを動かしながら分析手法を学ぶことができます。技術的な概要を学び,実際にコードを動かして全体的な流れを身に着けるというコンセプトで書かれているため、これからデータ分析を始めたい人のための入門書として良いと思います。本書は二部構成となっています。第一部では,最初にソーシャルビックデータの定義とその分析について説明します。ソーシャルビッグデータの分析とは,例えば地図情報などの実世界のデータと,twitterやflickrなどのソーシャルデータを同期データを分析することを指します。分析の具体例として,観光地の満足度を分析するという例が本書では取り上げられています。これは,ツイートの位置情報,および,その位置に至る前後のツイートからその位置の満足度を分析するというものです。これによって様々な場所についてその場所の価値(満足度)を評価できるという例です。そのあとに,データマイニングのプロセスや、データマイニングの手法,機械学習の手法について学びます。データマイニングのプロセスでは,データの選択,データの前処理,データの変換,パターン・知識の発見,解釈と評価という一連のプロセスについて学びます。手法では,階層的クラスタリングやk-meansなどのクラスタリング,k近傍法,決定木,SVMなどの分類手法に概要に触れています。第一部では,ソーシャルビックデータの定義とその分析が実例をもとに説明されていて理解しやすかったです。様々な手法の概要がシンプルに説明されていて,どのような手法なのか把握しやすかったです。第二部では,ウェブ環境の構築,データ収集,可視化,分析について学びます。MongoDBの基本的な使い方に触れます。次に,twitter,Flickr,オープンな地図情報のOpenStreetMapなどのデータ収集方法とクローラーを実装します。twitter,Flickrは検索によりデータを収集します。これらを使うときにはAPIキーの取得が必要ですが,取得方法については本の範囲外なので,自分で調べる必要があります。クロールしたソーシャルデータの可視化方法として,散布図,ワードクラウド,地図描画,ヒートマップといった例を上げています。最後に,pythonを使って,線形回帰,k-means,DBSCAN,機械学習,TF-IDFなどの分析を実際に行います。pythonのコードについてはほとんど解説がありませんでした。pythonでの機械学習の実装についてを本書に期待している場合には期待外れになると思います。第二部はgithubにソースコードがすべて公開されているので,これらを動かして確認しながら学ぶことができたので良かったです。ソースコードは必要最小限の構成として書かれているので,理解しやすいです。事前知識としてnodejsで書かれたjavascriptのコードを読むための簡単な知識が必要です。まで」広く学ぶことができる1冊です。ソーシャルビックデータとは何なのかという定義から,実際のユースケースで理解が深まりました。データマイニングと機械学習についても前半で広く説明がされています。実践編では,ソーシャルビックデータに欠かせないWeb技術について「Web3層アーキテクチャの実装」をカバーしていたのが印象的で勉強になりました。Twitterなど様々なAPIを活用する最新のコードが掲載されているので色々応用できると思います。本の冒頭にも述べられているように,本分野の初学者ですぐに実務や研究で実践する知識とコードを手に入れたい場合は前著の『ソーシャル・ビッグデータサイエンス入門―基本概念からマイニング技術,応用まで』から読んだ方が理解しやすいかもしれないと感じました。本書はさらにそれらの知識と実装を広く展開した1冊でした。-あらゆる業務の意思決定や仮説検証を助けるツールである情報可視化技術の基本からIT業界の各種技術分野への応用に至るまでを紹介。-ソーシャルビッグデータの基本から応用まで,全体像を伝えることを目指した。データベースと知識発見データベースの基礎知識だけでなく,社会状況との関係を常に意識し,基礎概念や応用技術も解説した。-フリーソフトTETDMで,データサイエンティストに求められている能力と技術を習得。