2014年12月13日土曜日

Visualization

Fisheye
http://bost.ocks.org/mike/fisheye/

D3.js (Data Driven Document)
http://d3js.org/

2014年12月5日金曜日

Elastic ScaleGraph

Elastic Graph Processing Library on X10 2.5 (Elastic X10) 

2014年12月3日水曜日

Deep Learning

Application to Natural Language Processing : http://www.socher.org/

Distributed Neural Networks with GPUs in the AWS Cloud
http://techblog.netflix.com/2014/02/distributed-neural-networks-with-gpus.html

Large Scale Distributed Deep Networks
http://static.googleusercontent.com/media/research.google.com/en//archive/large_deep_networks_nips2012.pdf


Open Software

Deep Learning for Java
http://deeplearning4j.org/

Deeplearning4j is the first commercial-grade, open-source deep-learning library written in Java. It is meant to be used in business environments, rather than as a research tool for extensive data exploration. Deeplearning4j is most helpful in solving distinct problems, like identifying faces, voices, spam or e-commerce fraud. Deeplearning4j integrates with GPUs and includes a versatile n-dimensional array class. DL4J aims to be cutting-edge plug and play, more convention than configuration. By following its conventions, you get an infinitely scalable deep-learning architecture suitable for Hadoop and other big-data structures. This Java deep-learning library has a domain-specific language for neural networks that serves to turn their multiple knobs. Deeplearning4j includes a distributed deep-learning framework and a normal deep-learning framework (i.e. it runs on a single thread as well). Training takes place in the cluster, which means it can process massive amounts of data. Nets are trained in parallel via iterative reduce, and they are equally compatible with Java, Scala and Clojure, since they’re written for the JVM. This open-source, distributed deep-learning framework is made for data input and neural net training at scale, and its output should be highly accurate predictive models. By following the links at the bottom of each page, you will learn to set up, and train with sample data, several types of deep-learning networks. These include single- and multithread networks, Restricted Boltzmann machines, deep-belief networks, Deep Autoencoders, Recursive Neural Tensor Networks, Convolutional Nets and Stacked Denoising Autoencoders.

2014年1月16日木曜日

渡部君・金刺君とのミーティングメモ

DEIM 2014の論文:Dropbox/SuzumuraLab/Projects/Social Analytics/watanabe/paper/DEIM2014/submit/draft_20140114.pdf 

引き継ぎ、研究の方向性
XAXIS(5章)の説明

頂点を追加、削除→オブジェクトを消さず、インアクティブにする
実行時のコスト(ガベージコレクションなど)は小さいが、メモリやノードの消費量が大きくなる
シミュレーションの基盤を成長させていく(成長シミュレーション)
今のプラットフォームのあるべき姿→研究テーマにする
解析:最初のシミュレーション:インアクティブの割合が大きいと効果が大きい
本来は1/10のノードでOK(6〜7千万/4億)

ハードウェア
ノードもダイナミックに追加する(X10ではできない?)
Amazon EC2 のインスタンスを確保して、ストリーム処理する(石井先輩の研究)
VMを必要に応じて予測、確保

ソフトウェア:
インスタンスの必要な量を予測して追加
X10の他に基盤が必要(Hadoopは難しいが、できなくはない→YARNを使用する)

グラフの処理系の上でgiraph上に、ノードを追加、Hadoopを実装
VMやYARNの起動、頂点の追加削除による実行速度が落ちないように、
成長モデルに応じた予測のアルゴリズムモデルを考える
バルク確保によるメモリ消費量とのトレードオフも考慮する
アダプティブなシミュレーション基盤を作る

オーバーヘッドを考えるとXAXISの方が速いと思われるが、渡部先輩の実験結果(参考値)と比較する
SocialMediaのデータ解析は、シミュレーションのモデルを作る上で重要
スキルトランスファーをしてもらう
確実な方法があるのか、試行錯誤する部分もあるのか

まずは、HadoopをTSUBAMEで動かして、使い方を学ぶ
解析をしたい時にRAがオーバーヘッドなく扱えるよう、ドキュメントを作っておく
何を調べたいか、やりたいことは色々あるが、データが大きいため扱いにくい

一部のデータ(属性情報)だけ取ってきて、それだけでフォローのモデルを作成する
データ同化にもつながる(シミュレーションしながらモデルを改良していく)
新規のユーザ追加のコストを削減
いきなり数十ノードを最初から確保するのは現実的でない
まずは小規模で実行し、ユーザ数が増えてきたら結果をダンプする
規模が大きくなったら途中結果を読み込んで、やり直す
スナップショットを少しずつ取りながら、ノードを確保していく
X10は動的なアロケーションができない
他の新規ノードが追加できるような基盤を作る

twitterの追加解析も行う
クラスタリング係数値、Connected Components
ScaleGraphのライブラリも使っていく
Webマイニングの話にもかかわる
既存研究のWebマイニングの論文を調べて、どうネットワーク解析をしていくか
デフォルトの(通常行われている)解析セットを調査する
そこから発展させて、分かっていないことを仮説を立てて検証する
「何次の隔たり」よりも、もう少しミクロ(詳細)な仮説の方が良い
tweet そのものの解析も行う
投稿した内容、頻度から、ユーザのプロパティを予想する
データ取得(クロール)の方法も教えてもらう

“What is twitter”で行われていないことは?
retweetの木構造も研究されていた
リアルタイムに変わるGraphは、PageRankを計算すると異なる
グラフの構造の変化はリアルタイムにある
グラフ分割、BC、PageRank、クラスタリングをグラフストリーム的に計算する
tweetも、テキスト処理をしてクラスタリング(類似度計算)できる

2014年1月10日金曜日

ACM SIGSIM PADS 2013

Here is a list of accepted papers for PADS 2013 that are all relevant to our agent-based simulations.
http://www.acm-sigsim-pads.org/acceptedPapers.htm

  • Accelerating Optimistic HLA-based Simulations in Virtual Execution Environments
  • A Time Management Optimization Framework for Large-Scale Distributed Hardware-In-The-Loop Simulation
  • An Expansion-aided Synchronous Conservative Time Management Algorithm on GPU
  • Towards Performance Evaluation of Conservative Distributed Discrete-Event Network Simulations Using Second-Order Simulation
  • Event Pool Structures for PDES on Many-Core Beowulf Clusters
  • Modeling Communication Software Execution for Accurate Simulation of Distributed Systems
  • GPU Accelerated Three-stage Execution Model for Event-Parallel Simulation
  • Designing Computational Steering Facilities for Distributed Agent Based Simulations
  • TerraME HPA: Parallel Simulation of Multi-Agent Systems over SMPs
  • Optimizing Parallel Simulation of Multicore Systems Using Domain-Specific Knowledge
  • Data Assimilation in Agent Based Simulation of Smart Environment
  • On the Parallel Simulation of Scale-Free Networks
  • Warp Speed: Executing Time Warp on 1,966,080 Cores

GraphLab's Blog

A co-founder of a fast-growing startup company named "Graphlab" - launched from Carnegie Mellon University - has just blogged about our ScaleGraph project. That's a great news for celebrating a new year 2014, and we definitely accelerate the speed to become the leading project in this area. 
http://bickson.blogspot.ie/

SIGSIM PADS 2014 CFP

2014年1月7日火曜日

2014年1月2日木曜日

Distributed-Memory Parallel Algorithms for Generating Massive Scale-free Networks Using Preferential Attachment Model

Distributed-Memory Parallel Algorithms for Generating Massive Scale-free Networks Using Preferential Attachment Model