Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Rでpgxを使う

413 views

Published on

PGX Release 2.3.0から実施可能になるRからのPGX実行を一足先に試してみた

Published in: Technology
  • Login to see the comments

  • Be the first to like this

Rでpgxを使う

  1. 1. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. R で PGX を使う 日本オラクル株式会社 武井美緒 2016年12月20日
  2. 2. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。 また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むこと はできません。以下の事項は、マテリアルやコード、機能を提供することをコ ミットメント(確約)するものではないため、購買決定を行う際の判断材料にな さらないで下さい。オラクル製品に関して記載されている機能の開発、リリース および時期については、弊社の裁量により決定されます。 Oracle と Java は、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国に おける登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。 2
  3. 3. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. 自己紹介 3 名前:武井 美緒(たけい みお) 所属:日本オラクル株式会社 クラウド・テクノロジーコンサルティング事業本部 担当:Analytics関連製品担当 (Oracle R Enterprise,Oracle Data Miner…) 機械学習についてのトレーニングやデータ分析の技術支援を実施
  4. 4. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. R で PGX を使う 4 PGX release 2.3.0(現在は2.2.1)ではRからPGXを実行できます! 利用のために必要なもの ■PGX:PGX release 2.3.0 ■R:ORE(Oracle R Enterprise) ■Rパッケージ: -OAAgraph -rJava(Third-Party Packages)
  5. 5. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. 念のため・・・Rとは? 5 ・統計とデータサイエンスにおいて広く利用されているオープンソースのプログラミング言語と その実行環境 ・ベクトルを主なデータ構造とし、最小限の労力で統計解析を可能にする ・豊富なデータセット集 ・活発なコミュニティによるサードパーティライブラリの充実 ・統計解析に必要な多数の高水準組み込み関数 ・視覚化に優れたグラフ機能
  6. 6. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. ・Oracle DatabaseのオプションであるAdvanced Analyticsのコンポーネントの1つ ・Oracle Databaseと統合するためのRパッケージおよびOracle Databaseの機能のセット ・RユーザはSQLを使用せずにOracle Databaseにアクセスすることができ、サーバ上の埋め込み Rエンジン上でRスクリプトを実行できるため、大規模データの統計解析にも対応できる。 ・データの移動を排除し、データベースサーバ上でデータの準備・モデルの構築・Rオブジェクト の保存/管理ができるため、クライアントPCのメモリ制約を回避できる。 Database Server R Engine Other R packages Oracle R Enterprise packages R Client Spawned R Engine Other R packages Oracle R Enterprise packages SQL 結果 結果 OREとは・・・?
  7. 7. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. RからPGXを実行! 7 「はじめようPGX」で実行していたヒーローのグラフを使ってRからPGXを実行 してみる 今回は次数中心性をRから実行 抜粋: Oracle Labs 発! Parallel Graph Analytics(PGX)
  8. 8. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. RからPGXを実行! 8 さっそくやってみる① #必要なライブラリの読み込み >require(rJava) >require(OAAgraph) #PGXサーバーへ接続 >oaa.graphConnect(pgxBaseUrl = "http://192.168.56.102:7007") #ヒーローのグラフをロード(有効グラフとして読み込み※) >graph <- oaa.graph(jsonPath = "/home/oracle/work/pgx/pgx_data/hero- network.json") ※そのため「Oracle Labs 発! Parallel Graph Analytics(PGX) 」の資料の結果と異なります
  9. 9. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. RからPGXを実行! 9 さっそくやってみる② #前処理の実施 >graph <- oaa.simplify(graph, keepMultiEdges = FALSE, keepSelfEdges = FALSE, keepTrivialNodes = FALSE, createCopy = TRUE, name = NULL) #取り込んだグラフの確認 >print(graph) Graph Name: hero-network_sub-graph_1 Number of Nodes: 6426 Number of Edges: 224169 Persistent Graph: FALSE Node Properties: Edge Properties:
  10. 10. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. RからPGXを実行! 10 さっそくやってみる③ #次数中心性のアルゴリズムの実行 > c1 <- degree(graph, name ="INDEGREE", mode="In") #次数中心性の結果をRで分析するための準備 > cursor <- oaa.cursor(graph, c("INDEGREE")) #Rのデータフレーム型としてデータを取得(全ノードのデータを取得) >df <- oaa.next(cursor,graph$num_nodes)
  11. 11. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. RからPGXを実行! 11 さっそくやってみる④ #データの確認 >head(df) INDEGREE LITTLE, ABNER 15 BLACK PANTHER/T'CHAL 487 STEELE, SIMON/WOLFGA 9 RAVEN, SABBATH II/EL 8 IRON MAN IV/JAMES R. 326 IRON MAN/TONY STARK 1106
  12. 12. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. RからPGXを実行! 12 Rのデータフレーム型になれば可視化もおてのもの #データフレームに列を追加、次数中心性の値が大きい順にソートし30件を抽出 >df$name <- row.names(df) >df <- head(df[order(-df$INDEGREE),],n=30) #棒グラフを表示 > par(mai = c(2, 0.68, 0.1, 0.35)) > barplot(df$INDEGREE,las=2,names.arg=df$name,cex.names=0.8)
  13. 13. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. RからPGXを実行! 13 Rのデータフレーム型になれば可視化もおてのもの
  14. 14. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. おわりに 14 RからPGXを実行できます! Rから実行することで、PGXで実施した結果を簡単に可視化、さらなる分析の実 施を一連の流れの中で実施できるためとても便利になります。
  15. 15. Copyright © 2016 Oracle and/or its affiliates. All rights reserved.

×