【記事更新】私のブックマーク「情報可視化」


私のブックマーク

情報可視化

高間 康史(東京都立大学)

1.はじめに:情報可視化とは

 可視化は「見えないもの・見えにくいもの」を見やすくするための技術であり,工学的には多様なデータを人にわかりやすく,視覚的に表現して提示するために用いられる.センサなどによる計測データや Webから収集した情報,シミュレーションの結果など,多様なデータがさまざまなドメインで扱われているため,可視化も幅広いドメインで利用されている.
 可視化は,流体力学分野や地理的データなどで利用される科学的可視化(scientific visualization)と,テキストデータやビジネス分野などで利用される情報可視化(information visualization)に大別される.前者は,物理空間と対応があり,可視化すべき構造が与えられたデータを対象とするのに対し,後者が対象とするデータは多次元・抽象的である.したがって,情報可視化では可視化すべき構造を定める処理もそのプロセスに含まれる.
 上述のように,可視化が利用されるドメインコミュニティは多岐にわたるため,可視化の研究は遍在的といえる.
 本ブックマークでは,情報可視化を対象とし,その中でも著者が関連するWebインテリジェンスや Human Computer Interaction(HCI)に関わる分野のリソースについてまとめる.

2.情報可視化の研究リソース

 まず,情報可視化について学びたい人向けに,情報可視化についてまとめられた資料,国際会議や論文誌,可視化の実例について紹介した後,可視化システムの実装やデータの可視化,視覚的分析に用いられるプログラミング言語やライブラリ,ツールについてまとめる.

2・1 情報可視化に関する資料

 情報可視化に関する書籍として,プログラミングやデザイン,各種分析ツールについて解説したものはコンスタントに出版されているが,学術的観点から情報可視化をまとめた書籍はしばらくの間出版されていなかった印象がある.
 近年になって,著者によるものも含め情報可視化に関する書籍がいくつか出版されたので,まずそれらを紹介する.
 本誌の「書評」で取り上げられている書籍もあるので,内容についてはそちらを参照されたい.

 書籍ではないが,スタンフォード大学のデータ可視化に関する講義資料も非常によくまとめられている.可視化や視覚的分析(visual analytics,可視化を活用したデータ分析)に関する研究分野を整理したArea Model for VISが,後述する国際会議VIS2022のHPで公開されている.このエリアモデルは 2021年に第1版として公開されたものであり,以下の6エリアにまとめられている.情報可視化よりも広いスコープで可視化研究を整理したものだが,全体像を知るうえで参考になる.

  • Area1:Theoretical& Empirical
  • Area2:Applications
  • Area3:Systems& Rendering
  • Area4:Representations& Interaction
  • Area5:Data Transformations
  • Area6:Analytics& Decisions

 対象データの性質や目的に応じて,多種多様な可視化手法が提案されている.それらについて,周期表のメタファを用いて整理したWebページを紹介する.本来の周期性のように,可視化手法間に周期性が存在するわけではなく,またそれほどメジャーではないものも含まれているが,類似する可視化手法が近くに配置されており,いろいろな可視化手法を知るうえで参考になるだろう.
 このほか,後述する可視化の開発に利用される言語のWebサイトでも,D3.jsのギャラリーVegaのギャラリーのようにさまざまな可視化手法の例を見ることができる.
 特定の可視化手法について紹介している Webサイトもいくつか紹介する.
 次元削減は,そのままでは可視化が困難な高次元データを二,三次元に写像して可視化するために用いられる手法である.実データの多くが多属性で構成されるため,視覚的分析でほぼ必須の処理といえる.t-SNEは代表的な次元削減手法の一つであり,データ分布を確率的に捉え,元の高次元空間と写像後の低次元空間の確率分布を近づけるように写像する.t-SNEの提案者による紹介ページでは,関連する論文や可視化例,各プログラミング言語における実装へのリンクなどが公開されている.
 NodeTrixは,グラフ構造の可視化手法として古くから知られている手法である.グラフ構造の可視化手法としては,オブジェクトをノード,ノード間の接続関係をリンク(エッジ)で表現して描画するノードリンクダイアグラム(Node Link Diagram: NLD)と,オブジェクトを行と列に配置した正方行列で,接続関係にあるセルを色付けして描画する接続行列がある.NodeTrixは両者を組み合わせ,接続関係が密な部分は接続行列で描画し,それ以外は接続行列間のリンクとしてNLDにより描画する.スモールワールドネットワークのような局所的に密で大局的には疎なネットワークの可視化に適している.NodeTrixの紹介ページでは,概要や文献,動画などが公開されている.
 テキストデータは我々にとって最も身近なデータの一つであり,可視化対象となることも多い.文書や,文書から抽出した単語をノードとし,共起関係をリンクで表すことで,グラフ構造の可視化手法を適用することも一般的であるが,テキストに特化した可視化手法としてワードクラウド(Word cloud)も良く用いられる.
 ワードクラウドは,単語集合を平面上に配置する手法であり,単語の重要度や出現頻度に応じてその大きさを調整することで,テキスト内の主要な話題などを把握しやすくする.また,単語の配置や色合いを工夫してアート作品のように描画することで,閲覧者の関心を高める効果も期待できる.
 可視化技術としては,与えられたスペース内での単語の配置をどのように決定するかが課題となる. WordCloudsでは,任意のテキストを入力し,単語を配置するスペースの形状など,いろいろなパラメータを調整して多様なワードクラウドを生成することができる.ギャラリーを見ると,アート作品のような生成例が紹介されている.

2・2 論文誌・国際会議

 データを人が分析したり,確認する場合には可視化が必要となるため,いろいろな分野の学会や論文誌において,可視化に関する研究は発表されている.ここでは,著者が関連する研究分野として,情報可視化,HCI,Webインテリジェンス系で可視化との関連が強い国際会議,論文誌を紹介する.
 情報可視化を含む可視化の国際会議として代表的なものとしては以下があげられる.

  • IEEE VIS:IEEEVAST(Visual Analytics Science andTechnology),InfoVis(InformationVisualization),SciVis(ScientificVisualization)の3会議が合同で開催していたが,2021年から一つの会議形態に統合された.
  • EuroVis:欧州を中心とする国際会議
  • PacificVis:アジア太平洋を中心とするIEEEの国際会議

 可視化はユーザである人とのインタラクションを必然的に含むため,HCI系の国際会議でも主要トピックの一つとなる.代表的な国際会議として以下があげられる.

  • IUI:ACMの知的ユーザインタラクション(Intelligent UserInteraction)に関する国際会議であり,AIコミュニティとHCIコミュニティが出会う場であることをうたっている.
  • CHI:ACM-SIGCHIによるHCIに関するフラグシップ国際会議.正式名称はCHI Conference on Human Factors in Computing Systems
  • SIGGRAPH:ACM-SIGGRAPH(Special Interest Group on ComputerGraphics)が開催し,国際会議と展示会から構成されている.2008年からはアジア地域においてSIGGRAPH ASIAも開催されている.

 Webはいろいろな側面から捉えられるが,例えば世界最大の情報リソースとして捉えた場合,情報アクセスやデータ分析の観点から可視化の研究対象となる.Webインテリジェンス系の国際会議としては以下があげられる.

  • WSDM:ACMのWebインテリジェンスに関する国際会議.wisdomと同様に発音する.正式名称はWeb Search and Data Mining
  • WI-IAT:IEEE Computer Society,WIC(Web IntelligenceConsortium),ACM-SIGAIによる国際会議.第1回は2001年に日本(前橋)で開催.正式名称はWeb Intelligence and Intelligent Agent Technology

 可視化がスコープに入っている論文誌も国際会議と同様,多数存在するが,ここでは可視化をメインとした論文誌を紹介する.

2・3 可視化の事例

 Minardによるインフォグラフィックは,ナポレオンによる1812年のモスクワ遠征を題材とした可視化である.遠征の悲惨さをデータに基づき描画している.19世紀(1869年)に作成されたものであり,当然コンピュータグラフィクスは使用されていないが,古典的な可視化の事例として紹介されることが多い.
 反対に最近の可視化の事例として,新型コロナウイルスに関する感染者数などのデータがオープンデータとして世界中で共有され,それに基づく可視化も多く公開されている.一例として,WHO Coronavirus Dashboardは世界保健機関(World Health Organization:WHO)が公開している,COVID-19に関するデータのダッシュボードである.世界地図や棒グラフ,線グラフなどを用いてCOVID-19に関する世界中の各種データを視覚的に確認できる.
 可視化の目的として,データ分析の支援や,データから得た知見を他者に伝え,共有するプロセスの支援があげられる.前者は前述の視覚的分析であり,後者はストーリーテリング(storytelling)やNarrative visualizationと呼ばれる.また,データなど客観的なファクトに基づき作成者の伝えたいことを表現した可視化はインフォグラフィック( infographics)と呼ばれ,マスメディアによる報道や,行政機関などによる啓蒙に広く用いられている.インフォグラフィックの共有サイトとして有名なものにVisual.lyがある.また,New York TimesGuardian Interactivesはインフォグラフィックを活用しているメディアとして有名である.このほか,世論調査の分析や政治,経済,スポーツblogを中心とした WebサイトFiveThirtyEightや,FlowingDataなどのData visualization blogsでも多数のインフォグラフィックが公開されている.

は,閲覧者の情緒的反応を引き起こすためのインフォグラフィックのデザイン指針についての論文であり,研究に利用したコーパスを公開している.
 可視化の共有はストーリーテリングに限ったものではない.データ分析において,可視化を複数人で共有して協調的に分析を行うことはsocial visualizationなどと呼ばれる.協調的なデータ分析は意図して行われるだけでなく,自然発生した事例も知られている.NameVoyagerは,アメリカにおける新生児の名前のトレンドを可視化して提供するサイトであり,1880年代から現在までの,各名前の人気の変遷などを見ることができる.このサイト自体には利用者がコメントを投稿したり,利用者間で議論したりする機能は用意されていなかったが,利用者達は別のWebサイト(blogやディスカッションフォーラム)を利用して,自分や知り合いの名前の時系列な変化を紹介したり,有名人の名前について気付いたことを発表したりといったことを行っていた.この現象について研究した論文やその概要が公開されている.なお,現在のNameVoyagerはBaby Name Finderと名前を変え,当時とは異なる公開形態となっているが,当時と同等のサイトは別途NameGrapherとして公開されている.また,本会誌において著者がこの論文を過去に紹介した記事も参考にされたい.
 このほか,YouTubeでもさまざまな可視化手法・システムのデモが公開されている.新しいものだけでなく,古典的なものもまだ多く公開されている.例えば,複数のビュー(可視化)を組み合わせて情報を提示する協調的マルチビュー(Coordinated Multiple View:CMV)の一種であるworlds in miniatureでは, VR(virtual reality)を活用した可視化のデモを見ることができる.遠近感を利用した可視化手法Perspective Wallは,情報可視化において重要なFocus+context(詳細な情報と,データの全体像の両方を提示すること)を実現する先駆的な可視化手法である.グラフィクスとしてのクオリティは当然現在の可視化より劣るが,そのコンセプトは今でも色あせるものではないだろう.

2・4 ライブラリ・言語・ツールなど

 可視化システムの実装やデータの可視化・視覚的分析に利用されるプログラミング言語,ツールについてまとめる.
 プログラミング言語の代表的なものとしては以下があげられる.各サイトにおいてギャラリーが公開されており,可視化事例としての参考にもなる.

  • Processing:インタラクティブアートなどのために開発されたプログラミング言語であり,Javaをベースとしてグラフィック機能に特化・簡単化したものであるため習得しやすい.スケッチブックも提供されている.
  • D3.js:JavaScriptのライブラリとして提供されており,Webブラウザでの実行に適している.線グラフ,折れ線グラフ,TreeMapなど多様な可視化が用意されている.アニメーションやインタラクティブな可視化も実装可能である.
  • Vega:visualization grammerとして開発され,JSONフォーマットで宣言的に可視化を記述する.D3.jsと同様JavaScriptのライブラリとして提供されており,多様な可視化に対応し,アニメーション,インタラクティブな可視化が可能である.
  • Vega-Lite:Vegaを簡単化したものであり,機能は制限されるがより簡潔に記述することができる.

 上記で紹介したプログラミング言語との境界が曖昧なものもあるが,データの可視化や視覚的分析に用いられるライブラリやツールを以下にまとめる.

  • Google Charts:JavaScriptのライブラリとして提供されており,Geochartや散布図,棒グラフなど基本的な可視化は一通り用意されている.
  • SciChart.js:JavaScriptのライブラリとして提供されており,インタラクティブな可視化を Webアプリとして実装できる.高速性を重視して開発されている.科学的可視化などのために 3Dチャートも用意されている.
  • Observable:ノートブック型のJavaScript実行環境であり,ブラウザから利用可能である.グラフなどの可視化も容易に利用できる.
  • Cytoscape:グラフ構造をもつデータの可視化ツール.ノードレイアウトなどを柔軟に変更でき,多様な可視化が生成できる.ローカル環境にインストールするアプリケーションとして提供されているほか,JavaScriptライブラリとしてCytoscape.jsも用意されている.
  • Tableau:視覚的分析ツールとして代表的な存在であり,広く利用されている.

3.おわりに

 何度も言い訳のように書いているが,可視化は研究,ビジネス,教育などさまざまな場に遍在的に存在する.今回は,著者の関連する研究分野を対象としたが,それでもどの範囲までを含めるか,除外するか迷いつつまとめた.網羅性は低いかもしれないが,ブックマークとはそもそも個人的な備忘録ということでご容赦いただきたい.データ分析などのために可視化に関心がある人,可視化の研究を始めたい人などの参考に少しでもなれば幸いである.