iwiwi 備忘録

学んだことを殴り書きます。自分向けのメモです。

ACM Paris Kanellakis Award (Theory and Practice Award)

Paris Kanellakis Theory and Practice Award はコンピュータの世界に重要な実用的インパクトを引き起こした理論的研究成果に対して贈られる賞だそうです.賞金は $10,000.

Paris Kanellakis 氏はデータベース分野の研究者でしたが,1995 年に飛行機事故に巻き込まれ亡くなったそうです.賞金にはご両親からの寄付に加え ACM の分科会などからの支援が含まれているそうです.

以下は受賞者と受賞の対象となった成果の表です.上記の Wikipedia 英語版の記事に記載されている表の日本語版……のつもりでしたが,Wikipedia にはよくわからない説明が多くても試しに公式ウェブページの説明を開くとよく知っているキーワードが出てきたりということも多く,そこそこの部分は結局公式ウェブページの説明に基づいています.

受賞者 受賞の対象となった研究成果
1996 Leonard Adleman, Whitfield Diffie, Martin Hellman, Ralph Merkle, Ronald Rivest, and Adi Shamir 公開鍵暗号
1997 Abraham Lempel and Jacob Ziv データ圧縮(LZ アルゴリズム
1998 Randal Bryant, Edmund M. Clarke, E. Allen Emerson, and Kenneth L. McMillan 記号モデル検査と BDD
1999 Daniel Sleator and Robert Tarjan スプレー木
2000 Narendra Karmarkar 内点法
2001 Eugene Myers シーケンスアラインメントアルゴリズム(BLAST)
2002 Peter Franaszek Constrained Channel Coding
2003 Gary Miller, Michael Rabin, Robert Solovay, and Volker Strassen 素数判定アルゴリズム(Miller-Rabin,Solovay-Strassen)
2004 Yoav Freund and Robert Schapire ブースティング機械学習
2005 Gerard Holzmann, Robert Kurshan, Moshe Vardi, and Pierre Wolper 形式的検証システム(COSPAN,SPIN)
2006 Robert Brayton 回路設計のための論理合成
2007 Bruno Buchberger グレブナー基底
2008 Corinna Cortes and Vladimir Vapnik SVM (Support Vector Machine)
2009 Mihir Bellare and Phillip Rogaway Practice-Oriented, Provable-Security (POPS)
2010 Kurt Mehlhorn Library of Efficient Data types and Algorithms (LEDA)
2011 Hanan Samet 4 分木等の多次元データに対するデータ構造
2012 Andrei Broder, Moses S Charikar and Piotr Indyk LSH (Locality-Sensitive Hashing)
2013 Robert D. Blumofe, and Charles E. Leiserson 並列プログラミング(Cilk 等)

回路・ハードウェア寄りの分野は不得手なので不正確かもしれません.より適切な日本語訳などもし有れば教えて頂ければと思います.

Core Decomposition of Uncertain Graphs (KDD'14)

定義

  • uncertain graph
    • 各辺に対し存在する確率が与えられる
    • リンク予測の出力,影響,protein-interaction (ノイズ)
  • (k, η)-core
    • 極大部分グラフ H, [deg_H(v) ≧ k] ≧ η

計算

  • 小さい方から剥ぎ取る
  • 確率の計算がちょっと入るが簡単な DP

応用実験

  • 影響最大化:密グラフとして抽出する前処理
  • Task-Driven Team Formulation:それっぽいチームを探す

ダメな統計学

http://id.fnshr.info/2014/12/17/stats-done-wrong-toc/

知っている部分もあったが面白かった

  • (1) はじめに
    • 統計的処理がきちんと行われず誤った結論が導きだされている論文は半数以上かもしれないらしい(医学の話)
  • (2) データ分析入門
    • 「p値」 = どれだけ驚くべきか
      • 差異がないという仮定の元で,このような(あるいはこれ以上極端な)結果が出る確率
      • 多くのデータを使って差異が出たら驚く
      • 大きな差異が出たら驚く
    • 使われている方法:「p が 0.05 ⇔ 有意
    • 限界がある
      • らしいが説明があまりよくわからない
      • 次章を見るに,主に「有意でない」ことを言う能力が欠けているという指摘か
      • 重大な副作用に気づかないかもしれない
  • (3) 検定力と検定力の足りない検定
    • 「検定力」 = 有意差を検定できる確率
    • 「検定力曲線」 = 影響に対する検定力のグラフ
    • 「新しい薬が生存率を 10% 以上改善するかを私見するために,どれだけの患者が必要か」
    • アメリカでは 1970 年代に赤信号で右折できるようになった.事故が増えるかについて有意差が発見できなかったが,そもそも検定力が足りていなかった.後々に増えてきたデータにより,事故が有意に増えていることが分かった.
  • (4) 擬似反復:データを賢く選べ
    • 100 人で 10 回計測 → 1000 のデータ点?ではない
    • 「擬似反復」と呼ばれる
    • 対策法
      1. 独立していないデータ点の平均をとる
      2. 独立していないデータ点を別個に分析 → 多重比較
      3. 階層モデル
  • (5) p値と基準率の誤り
    • 「基準率」 = 調査対象のもののうち,真に有効であるものの割合
    • p = 0.05 で判定を行うと,5% は擬陽性になる
    • 真に陽性である確率(=基準率)と併せて考えないと結果が殆ど擬陽性になる
    • p < 0.05 ≠ 「これの結果が偶然の確率は 5% だ」 (よくある勘違い)
    • 偽発見率を制御する方法:ベンジャミーニ=ホッホベルク法
  • (6)有意であるかないかの違いが有意差でない場合
    • エラーバーが重なっていても有意差がある可能性がある
    • エラーバーが重なっていなくても有意差がない可能性がある
  • (7) 停止規則と平均への回帰
    • 停止規則 = 有意差が出たら実験を止める
      • しばしば結果が実際より誇張される
    • サイズの違う集合での平均点の「上位」「下位」は両方小さい集合になる(ばらつくから)
  • (8) 研究者の自由:好ましい雰囲気?
    • 統計処理の際,無視して良い要素,除外する outlier 等で結果が大きく好ましい方向にねじ曲げられる
  • (9) 誰もが間違える
    • データを公開してほしい
  • (10) データを隠すこと
    • データを要求して送ってくる著者グループは 3/4
    • データを得られた研究の半分がデータの処理に誤りがあった
    • 15% では誤りによって有意な結果が出てしまっていた
    • データを共有したがらないグループの方が誤りが多い
    • マイナーな論文誌のほうがデータ処理法を隠す

ここから後は技術的な話ではなく教育等についての議論

次に誰かが「この結果は p<0.05で有意だから、これが偶然である確率は20分の1しかない!」と言うのを聞くことがあったら、私のためにその連中の頭を統計の教科書でぶったたいでください

高画質動画配信の方法

最近,やはり動画配信の時代だなと思う.どうせなら高画質で配信をしたい.その方法を調べる.

前提:Web カメラは NG

Logicool C920(t) は Web カメラとしては評判が良い.これは俺も持っているし,ICPC 放送の時とかはチョクダイもこれを持ってくる.定番のようだ.

まーしかし,やっぱりサイズもサイズだし画質はお遊びレベル感が否めない.特に,今年の ICPC 配信はカーテンを閉めた暗めの部屋だったからか,結構辛かった様子.

もっとデカいカメラは直接 PC につながるのか?

繋がらないようだ.

ここで,もっとデカいカメラはデジタル一眼レフとかデジタルビデオカメラを想定.USB に繋いでそのまま配信〜という用途で使えるものは今の所ない様子.

HDMI スルー出力」

動画配信用途でそういったカメラを使う際のキーワードは「HDMI スルー出力」というものらしい.この機能を用いて,カメラから映像をそのまま HDMI で出力し,それを PC に取り込む.

HDMI スルーはできる機種は結構限られているらしい.メーカーのウェブページを見てもよくわからないので,口コミを探すしかない.

俺の E-M5 はできない.パナソニックの GH シリーズができるらしく,GH-2 時代から高画質配信界隈で好評らしい.α7 もできるらしい.

HDMI → PC

Monster X live という製品がよく使われているらしい.USB バスパワーのみで動作するので持ち運びにも好評.

ちなみに

高画質配信を目指す界隈は「シネ UST」なんて呼ばれているらしい.
https://www.facebook.com/cineust

latex 執筆時に omake -P で快適自動ビルド

博論執筆の現実逃避で自分の latex 執筆環境の改善を少し試みる.

OMakefile

だいたいこれをベースにさせてもらうととても良い感じ.

eps → pdf

eps の図を入れまくると texコンパイルが遅くなり omake -P の快適さが薄れてしまう.tex からは pdf を入れるようにして,omake で事前に eps を pdf に変換するようにした.

OMakefile

問題は,自分の画像のディレクトリ構造が上の OMakefile で想定されているものよりももっと深いこと.これに対応するのが簡単かと思いきや omake 初体験にはかなり骨が折れた.

omake はドヤ顔で「omake のルールには有効範囲のスコープがあるので管理しやすい!ワイルドカードを用いるルールが適用されるのはカレントディレクトリだけだ!」って言っているのだけれど,それがめっちゃ困るっていう.export というものを使うと変数等をグローバル化したりできるっぽいのだが,ワイルドカードのルールは頑張っても外に出てくれず,自分のググり力で30分ググった感じでは出すのに成功してる人は見つけられなかった.

というわけで愚直に foreach する以下のような物を書いたら動いた.

EPS_IMAGE_FILES = $(glob $(IMAGE_DIR)/*.eps $(IMAGE_DIR)/*/*.eps $(IMAGE_DIR)/*/*/*.eps)

foreach(EPS_FILE, $(EPS_IMAGE_FILES))
	PDF_FILE = $(addsuffix .pdf, $(removesuffix $(EPS_FILE)))
	XBB_FILE = $(addsuffix .xbb, $(removesuffix $(EPS_FILE)))
	$(PDF_FILE): $(EPS_FILE)
		$(EPSTOPDF) $<
	$(XBB_FILE): $(PDF_FILE)
		$(EBB) $<

no BoundingBox

上記のように Bounding Box を用意してやっても no BoundingBox と言われることがある.調べると,ファイルパスにドットが2つ以上入っていると起こる有名なバグみたいだ.これはひどい

これは,hoge.piyo.pdf というファイル名とすると,{hoge.piyo}.pdf と表記すると回避できる.

結果

EPS 使用時

omake thesis.pdf 10.17s user 0.61s system 100% cpu 10.740 total

PDF 使用時

omake thesis.pdf 0.89s user 0.09s system 99% cpu 0.977 total

満足.

発表中に画面にニコ動風にコメントを流したい

2つソフトが見つかった.どっちもすぐにマトモに動作した.

n2witter

Twitter を使う.このご時世なのにアカウントのパスワードを入れないといけない.

鍵アカからの投稿が表示されるか等,要検証.

パパパコメント

Twitter に依存しない.簡単に部屋が作れ,皆をその「部屋」に導入するとコメントさせられる.

コメント一覧ができない.通り過ぎるのを見逃したらもう見れない.

自分が使うための検討

Twitter について

  • Twitter アカウントを持ってない人 or 晒したくない人からもコメントを貰いたい
  • しかし n2witter はアイコンが出るからちょっとテンションが上がる
  • というかパパパコメントは一覧機能がないので n2witter 中心にしたい

方法 1:「Twitter からの人は n2witter, それ以外の人がパパパコメント」

  • 同時起動で上手く動くことは確認した
  • ただし,パパパコメントはコメント一覧が見れない
  • コメント一覧を見たい場合,パパパコメントに投げつつ一覧を表示できるラッパー CGI を書くことになりそう
    • しかし一覧をツイッターCGI で2つみないといけなくなってしまう(かっこわるい)

考えられる方法 2:「Twitter 以外の人のコメントを自分のツイッターアカウントに投げて n2witter でまとめて拾う」

  • こっちでも CGI を書くのは同じだが,twitter に投稿するだけでよい
  • 一覧が1つになるので楽
  • ただし,匿名投稿用のアカウントに鍵をかけると,n2witter はキーワードでは拾えなくなる
  • n2witter を2つ起動してキーワードと user stream にすることで解決?(動作は一応確認)

結論

Heroku でコメント投稿用画面を作っておいた.

スライド

Heroku アプリの短縮 URL を張る.URL は簡単にすり替えられるようにフッターにする.

パパパコメントの部屋の URL も念のため短縮しておき,パワポのコメントに入れておく.当日問題が出たらその URL に切り替える.

当日

  1. ディスプレイを繋ぐ.画面をミラーリングにする.
  2. n2witter を2 つ起動する.
  3. Tween を起動する(余裕があればフォントサイズ調整)
  4. パワポ
  5. パパパコメントを一応起動しておく

Querying K-Truss Community in Large and Dynamic Graph (SIGMOD'14)

  • 問題
    • グラフ G,クエリ:頂点 v, 整数 k
    • v を含む k-truss community をすべて列挙
  • k-truss vs. clique percolation
    • clique percolation: コミュニティと呼べない,パラメータが3つも,NP-Hard
    • k-truss: コミュニティの直径が |C|/k,高枝連結度,パラメタ1つ,多項式時間
  • index
    • simple index
      • 各枝の trussness を計算しておく
    • tcp index (tcp = triangle connectivity preserved)
      • simple の無駄:要らない枝へのアクセス,使用する枝への複数回のアクセス
      • 各頂点について近傍のみからなるグラフを考え,最大全域森を取る
      • うまいこと近傍のみからなるグラフを移りながら探索する
  • dynamic update
    • 下界だか上界だかを使って処理を枝刈りするらしい

Reverse Top-k Search using Random Walk with Restart (VLDB'14)

  • RWR
    • Bookmark Coloring Algorithm (BCA)
      • 受け取って少し確定して残りを配るタイプのやつ
    • ハブを活用
      • ハブの頂点は受け取っても配らないことにして,後でまとめて影響を計算
  • Reverse Top-K RWR Query
    • 頂点 q と k → 頂点 u からのの RWR で q が top-k に入る u を全て答える
    • 応用:「こいつに強い影響を与えている物の集合」が得られる
      • spam detection
      • popularity of authors in co-authorship network
      • promotion in co-purchase graph
  • Offline indexing
    • 各頂点から BCA を t ステップ走らせる → RWR の下界
    • 改良:ハブ,サイズ圧縮,・・s
  • Online Query Algorithm
    • proximity の上界と下界を狭めていくよくあるタイプ
  • 実験結果
    • web-Google で前処理時間 10^6 秒とは・・・
  • 応用実験 (5.4)
    • spam detection, co-author network を試している

国内学会の全国大会の大まかな日程

後輩が国内イベント(全国大会)に行ってみたいと言っていたので調べてリストアップしてみる.日程は目安として前回のもの.

他に関連が有りそうなものがあれば教えて下さい.

Path Skyline の計算サーベイ

厳密列挙アルゴリズム

  • (1984) On a multicriteria shortest path problem
    • Martin's Algorithm (元祖 Label Setting Approach)
  • (JACM'91) Multiobjective A*
    • 最初に single source でなく point-to-point にして global domination を導入したっぽい
  • (EJOR'92) A multicriteria pareto-optimal path algorithm
    • multidijkstra (MD).各コスト単体での距離(→下界)を前計算.
  • (SEA'09) Pareto Paths with SHARC
    • 前処理してる.次元が増えるとつらそう(変な制約を追加して厳密性を緩和してる)
  • (ICDE'10) Route skyline queries: A multi-preference path planning approach
    • ARSC
    • reference node embedding という前処理により下界を前計算
  • (2012) Multiobjective heuristic search in road maps
    • クエリごとの前処理系
  • (Arxiv'14) ParetoPrep: Fast computation of Path Skylines Queries
    • グローバルな前処理はなし,クエリ事の前処理系
    • MD とかより良い下界が計算できるから良い,みたいな感じっぽい
  • みてない
    • (2012) Faster Multiobjective Heuristic Search in Road Maps
    • (2011) Multiobjective route planning with precalculated heuristics
    • (2012) An Analysis of Some Algorithms and Heuristics for Multiobjective Graph Search
    • (2013) A case of pathology in multiobjective heuristic search

その他

OR 系では multi-objective shortest path problem と呼ばれているらしい

  • サーベイ
    • (2000) A classification of bicriterion shortest path (bsp) algorithms
    • (2009) A comparison of solution strategies for biobjective shortest path problems
    • (2007) Selected multicriteria shortest path problems: An analysis of complexity, models and adaptation of standard algorithms
    • (2000) A survey and annotated bibliography of multiobjective combinatorial optimization
  • 指数個の Skyline があるので NP-Hard
    • (1980) Multiple criteria decision making theory and application
  • 相関が強ければ Skyline は少ない
    • (2001) Pareto shortest paths is often feasible in practice
  • FPTAS
    • (1980) Multiple criteria decision making theory and application
    • (1987) Approximation of pareto optima in multiple-objective, shortest-path problems
    • (2006) Multiobjective optimization: Improved fptas for shortest paths and non-linear objectives with applications.
  • 遺伝的アルゴリズム
    • (2007) Evolutionary algorithms for the multi-objective shortest path problem

クラウドストレージを用いた個人データのバックアップ法の比較

クラウドストレージを使って,個人データの簡単かつ安心なバックアップを実現したい.現在の選択肢を調べてみた.

前提

自分がバックアップしたいデータは,写真が中心.現在 1TB 弱.

(ただ,将来的には数 TB 行きそう.)

Amazon S3/Glacier

有名なヤツ.1GB/1円.

Google Drive

今年の 3 月に Google Drive が凄い安くなったらしい.1TB で $9.99/月.

  • メリット
    • Amazon ほどではないかもしれないが,信頼度は高そう
    • Gmail の容量も増えることになるので調度良いかも(今,無料分の半分ぐらい来てる)
  • デメリット
    • 1TB を超えるといきなり 10TB になる(月 $99.99……)
    • クライアントがショボい.Linux が無い.Win/Mac でも未だに LAN 同期をサポートしてないらしい.

Dropbox

と思ったら更に今年の 8 月末に Dropbox も凄い安くなっていた.1TB で 12,000 円/月.

  • メリット
    • Dropbox は使い慣れている.クライアントも比較的良くできてる.
    • Dropbox の容量も増えることになるので調度良いかも
      • というか,University Race で獲得した容量が今年の 12 月に expire するので課金不可避なのでは……
  • デメリット
    • 1TB を超えるプランが無い
    • 普段使いとシステムが被ることによる面倒がある.
      • 例えば,写真等のバックアップデータは違うドライブに置きたいが,Dropbox 公式クライアントは同期するディレクトリを一箇所にするので,全てを同じドライブに置かなければならないという制約ができる.

番外編:Bit Torrent Sync

クラウドストレージの利点は,手間の他,(あってほしくないが)家が火事・水没などした時にもデータが取り戻せること.家の中でバックアップしてる限りこれは解消されない.

しかし,それなら実家と下宿先など2ヶ所でデータを同期していればそれで十分なようにも思う.Bit Torrent Sync というヤツが便利そう.

  • メリット
    • 安い?[要検証]
    • 容量も自分の需要に合わせて変更できる
  • デメリット
    • Bit Torrent Sync は未だに beta.
    • 設定や管理を自分で行わなければならない.時たま設置場所にわざわざ行かねばならない.

Online Topic-aware Influence Maximization Queries (EDBT'14)

  • topic-aware IC model (ICDM'12)
  • 提案手法
    • 1000 点ぐらい代表的なベクトルを作って,先に計算しておく
    • クエリが来たら適当に混ぜて答えを作る
    • 怪しい謎の努力がいっぱいある
  • 実験結果
    • 普通に計算してもはやそうな小さなグラフ

問題は面白そう

Collaborative learning in networks (PNAS'12)

模倣と集合知

  • 面白い実験 Goldon (1907)
    • 牛を見せて,体重の推測値を考えさせる
    • 専門家 1 人の推測よりも,大勢が投票した結果を平均した結果のほうが誤差が小さかった
  • 集合知が形成されるための条件
    • 意見の多様性
    • 個人の判断の独立性
    • 課題:多様性を保ちつつ,個人の選択を集積しなければならない
  • コレに関する実験 PNAS'11
    • 5 ラウンドで答えるクイズ,情報をどのぐらい共有するかを変えてみる
    • diversity 下がり error も下がる
  • ゲーム理論都の関係 Rogers, 1988
    • 模倣 (e.g., カンニング) は,する人数が少ないと得をするが,増えてくると損になってくる
    • 一方で,人は強い模倣傾向を持つ

複雑ネットワークと模倣との関係

概要:距離・クラスターが集合意思決定に影響

Journal of Experimental Psychology: General, 2008
  • 1引数関数で出来るだけ大きい値を見つける感じの課題
  • 各ラウンド,近傍が選んだ選択肢とスコアがフィードバックされる
  • グラフ:full, small-world, random, regular lattice
  • 結果
    • Unimodal optima の場合:Full netework 最強(簡単)
    • Multimodal optima の場合:Small world の方が global maxima を見つける
    • もっと病的な例:Lattice が若干良い
    • 課題の難易度によってネットワークの優劣が変わってくる
PNAS'12
  • 今度は 100X100 のグリッドでやっぱり最適化
  • 距離の短い&クラスターの少ないネットワークのほうがパフォーマンスが高い
  • ジレンマ
    • 模倣を行う参加者ほど利得が高い
    • しかし模倣する参加者が増えるとピークは発見されにくい

SIGMOD 2014

グラフ

  • Influence Maximization: Near-Optimal Time Complexity Meets Practical Efficiency
  • Tripartite Graph Clustering for Dynamic Sentiment Analysis on Social Media
  • Querying K-Truss Community in Large and Dynamic Graphs
  • Reachability Queries on Dynamic Graphs: A Hierarchical Labeling Approach
  • Local Search of Communities in Large Graphs
  • Scalable Similarity Search for SimRank
  • Efficient Cohesive Subgraphs Detection in Parallel
  • Parallel Subgraph Listing in a Large-Scale Graph
  • OPT: A New Framework for Overlapped and Parallel Triangulation in Large-scale Graphs
  • Fast and Unified Local Search for Random Walk Based K-Nearest-Neighbor Query in Large Graphs

グラフだけどあんまり関係なさそう

  • Scalable Big Graph Processing in MapReduce
  • In Search of Influential Event Organizers in Online Event-based Social Networks
  • Efficient Location-Aware Influence Maximization
  • Efficient Algorithms for Optimal Location Queries in Road Networks
  • Navigating the Maze of Graph Analytics Frameworks using Massive Graph Datasets
  • Localizing Anomalous Changes in Time-evolving Graphs
  • Mining Statistically Significant Connected Subgraphs in Vertex Labeled Graphs
  • Querying Big Graphs within Bounded Resources
  • Answering Top-k Representative Queries on Graph Databases

それ以外で気になる

  • A Comprehensive Study of Main-Memory Partitioning and its Application to Large-Scale Comparison and Radix-Sort

日本人

  • AutoPlait: Automatic Mining of Co-evolving Time Sequences
  • Resource-Oriented Approximation for Frequent Itemset Mining from Bursty Data Streams