SlideShare une entreprise Scribd logo
1  sur  34
Télécharger pour lire hors ligne
テクニカル・セッション	

GEOxCODE ~一歩先行くFOSS4G~	

FOSS4GでRubyでできること	

東京大学 空間情報科学センター	
  
博士課程 仙石裕明	
  @xianshiyuming
自己紹介	
仙石裕明(せんごく ひろあき)	
  
	
  
専門はマイクロシミュレーション!	
  
	
  
東京大学 空間情報科学センター	
  
柴崎亮介研究室 博士課程在籍	
  
	
  
合同会社マイクロベース 代表	
  
	
   h9p://microgeodata.com/	
	
  
NPO伊能社中 副理事長	
  
h9p://www.iknowshachu.org/
3
Java	
public	
  class	
  HelloWorld	
  {	
  
	
  	
  	
  	
  public	
  staJc	
  void	
  main(String[]	
  args)	
  {	
  
	
  System.out.println("Hello,World!");	
  
	
  	
  	
  	
  }	
  
}	

Ruby	
puts	
  "Hello,World!"
Java	
public	
  class	
  HelloWorld	
  {	
  
	
  	
  	
  	
  public	
  staJc	
  void	
  main(String[]	
  args)	
  {	
  
	
  System.out.println("Hello,World!");	
  
	
  	
  	
  	
  }	
  
}	

Ruby	
puts	
  "Hello,World!"	

じぇじぇじぇ!!!	
  
簡単すぎてやばい!!	

’)	
jj	
  
'	
  j
(
GISデータの読み込みや基本的な機能も簡単!	

GeoRuby	

geokit	
sqlite3	

RGeo	

PostGIS
難しい計算は外部に任せる!	

ruby-­‐opencv	

RMagick	

mecab-­‐ruby
DEMO	
不動産賃料を推定したい!!	
価格形成には多くの変数が絡んでそう。得
に不動産は立地が大事と聞く。	
  
	
  
GISを使って、建物からpgrouJngで「最寄駅
までの距離」を推定しよう!
DEMO	

略	
時間かかるので飛ばします
DEMO	

不動産賃料を機械学習(ランダムフォレ
スと)で簡単に推定してみる	
※ここでは簡易的な推計を行います
コード量にすると、これだけ。	
Rを呼び出す
ライブラリ	

require	
  'rsruby'	
  
	
  
r	
  =	
  RSRuby::instance	
  
	
  
cor	
  =	
  r.eval_R(<<-­‐RCOMMAND)	
  
RCOMMAND内
	
  library(randomForest)	
  
にRのソース
	
  data	
  <-­‐	
  read.csv(“mansion.csv",header=T)	
  
コードを囲む	
	
  ndata	
  <-­‐	
  nrow(data)	
  
	
  ridx	
  <-­‐	
  sample(ndata,	
  ndata*0.5)	
  
	
  data.learn	
  <-­‐	
  data[ridx,]	
  	
  
	
  data.test	
  <-­‐	
  data[-­‐ridx,]	
  
	
  forest	
  <-­‐	
  randomForest(price~.,data	
  =	
  data.learn)	
  
	
  predict	
  <-­‐	
  predict(forest,	
  newdata	
  =	
  data.test,	
  type	
  =	
  "class")	
  
	
  cor(predict,	
  data.test[,5])	
  
RCOMMAND	
  
ランダムフォレ
	
  
スとの関数	
puts	
  cor	
  
統計学とか機械学習とか	
  
Springerの難しい本で	
  
理解するの大変	
  
大枠を理解したい。まず試してみ
たい。そんなときにすぐに試せる。	
  
Rubyでデータ収集・加工して、	
  
ライブラリをつかってすぐに試す	
  
Rubyのライバル?	
  
Wikipedia:	
  h9p://ja.wikipedia.org/wiki/ファイル:Python	
  molurus	
  тигровый	
  питон.jpg
無理無理!次元
が違うって	

)	
j	
  ’
	
  jj
('

Wikipedia:	
  h9p://ja.wikipedia.org/wiki/ファイル:Python	
  molurus	
  тигровый	
  питон.jpg
FOSS4Gだと	
  
Pythonが優勢??	
  
Rubyだって	
  
負けてません	
  
Rubyの良いとこ	
  
リアルタイム延焼シミュレーション
のバックエンド	

RGeo
h9p://2010.rubyworld-­‐conf.org/ja/program/B-­‐6/
開発者が身近にいる
中学生のコミッタ!!	
  
(2011年当時)	

h9p://www.atmarkit.co.jp/news/201104/14/sora.html
私的結論	

Rubyはサービス・プロ
トタイプの開発好き・
スタートアップには向
いてる?	
  
現時点ではFOSS4Gの用途においてはPythonの方が上かも…	
  
最近こんな本も
もっと基礎から
明日からはじめよう!!
Enjoy	
  Ruby	
  life!!
Foss4 g2013 geoxcode_sengoku

Contenu connexe

Similaire à Foss4 g2013 geoxcode_sengoku

AFNetworking使ってみた
AFNetworking使ってみたAFNetworking使ってみた
AFNetworking使ってみたTaro Matsuzawa
 
Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境openrtm
 
世界をすこしだけ前に進めるということ
世界をすこしだけ前に進めるということ世界をすこしだけ前に進めるということ
世界をすこしだけ前に進めるということYukei Wachi
 
G* Workshop in Fukuoka - Introduction
G* Workshop in Fukuoka - IntroductionG* Workshop in Fukuoka - Introduction
G* Workshop in Fukuoka - IntroductionKazuchika Sekiya
 
W3C TPAC 札幌におけるオープンデータ プロモーション
W3C TPAC 札幌におけるオープンデータ プロモーションW3C TPAC 札幌におけるオープンデータ プロモーション
W3C TPAC 札幌におけるオープンデータ プロモーションTaisuke Fukuno
 
HexRinger と FOSS4G の紆余曲折
HexRinger と FOSS4G の紆余曲折HexRinger と FOSS4G の紆余曲折
HexRinger と FOSS4G の紆余曲折Hironov OKUYAMA
 
Community & Activity ~OSGeo財団日本支部とその活動のご紹介~ Prese
Community & Activity ~OSGeo財団日本支部とその活動のご紹介~ PreseCommunity & Activity ~OSGeo財団日本支部とその活動のご紹介~ Prese
Community & Activity ~OSGeo財団日本支部とその活動のご紹介~ PreseIWASAKI NOBUSUKE
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?Takuya Ueda
 
LODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソン
LODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソンLODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソン
LODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソンKouji Kozaki
 
受託開発とRubyGems
受託開発とRubyGems受託開発とRubyGems
受託開発とRubyGemsKoichi ITO
 
2009 08 08_wcan_xcl
2009 08 08_wcan_xcl2009 08 08_wcan_xcl
2009 08 08_wcan_xclTom Hayakawa
 
CoderDojo広島ってなんじゃろ?
CoderDojo広島ってなんじゃろ?CoderDojo広島ってなんじゃろ?
CoderDojo広島ってなんじゃろ?NAKAOKU Takahiro
 
197x Timer with Your Messages
197x Timer with Your Messages197x Timer with Your Messages
197x Timer with Your MessagesKuniaki Igarashi
 
190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...
190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...
190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...Junya Ishioka
 
Gecko入門 - Introduction to Gecko -
Gecko入門 - Introduction to Gecko -Gecko入門 - Introduction to Gecko -
Gecko入門 - Introduction to Gecko -Masahiro Hidaka
 
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方Yuki Takahashi
 
ML system design_pattern
ML system design_patternML system design_pattern
ML system design_patternyusuke shibui
 
世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜
世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜
世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜Taisuke Fukuno
 

Similaire à Foss4 g2013 geoxcode_sengoku (20)

AFNetworking使ってみた
AFNetworking使ってみたAFNetworking使ってみた
AFNetworking使ってみた
 
Gws in fukuoka
Gws in fukuokaGws in fukuoka
Gws in fukuoka
 
高専カンファIn京都
高専カンファIn京都高専カンファIn京都
高専カンファIn京都
 
Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境
 
世界をすこしだけ前に進めるということ
世界をすこしだけ前に進めるということ世界をすこしだけ前に進めるということ
世界をすこしだけ前に進めるということ
 
G* Workshop in Fukuoka - Introduction
G* Workshop in Fukuoka - IntroductionG* Workshop in Fukuoka - Introduction
G* Workshop in Fukuoka - Introduction
 
W3C TPAC 札幌におけるオープンデータ プロモーション
W3C TPAC 札幌におけるオープンデータ プロモーションW3C TPAC 札幌におけるオープンデータ プロモーション
W3C TPAC 札幌におけるオープンデータ プロモーション
 
HexRinger と FOSS4G の紆余曲折
HexRinger と FOSS4G の紆余曲折HexRinger と FOSS4G の紆余曲折
HexRinger と FOSS4G の紆余曲折
 
Community & Activity ~OSGeo財団日本支部とその活動のご紹介~ Prese
Community & Activity ~OSGeo財団日本支部とその活動のご紹介~ PreseCommunity & Activity ~OSGeo財団日本支部とその活動のご紹介~ Prese
Community & Activity ~OSGeo財団日本支部とその活動のご紹介~ Prese
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
 
LODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソン
LODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソンLODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソン
LODの紹介@第1回 Firefox OS x HTML5 x LOD WEBイノベーションハッカソン
 
受託開発とRubyGems
受託開発とRubyGems受託開発とRubyGems
受託開発とRubyGems
 
2009 08 08_wcan_xcl
2009 08 08_wcan_xcl2009 08 08_wcan_xcl
2009 08 08_wcan_xcl
 
CoderDojo広島ってなんじゃろ?
CoderDojo広島ってなんじゃろ?CoderDojo広島ってなんじゃろ?
CoderDojo広島ってなんじゃろ?
 
197x Timer with Your Messages
197x Timer with Your Messages197x Timer with Your Messages
197x Timer with Your Messages
 
190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...
190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...
190730 Introduction of VR/MR in Experimental Equipment for Real-time Discussi...
 
Gecko入門 - Introduction to Gecko -
Gecko入門 - Introduction to Gecko -Gecko入門 - Introduction to Gecko -
Gecko入門 - Introduction to Gecko -
 
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
 
ML system design_pattern
ML system design_patternML system design_pattern
ML system design_pattern
 
世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜
世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜
世界最安値!? 鯖江産コンピューターIchigoJam 〜福井技術者の集い その2〜
 

Plus de Hiroaki Sengoku

社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。
 社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。 社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。
社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。Hiroaki Sengoku
 
都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築
都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築
都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築Hiroaki Sengoku
 
物流オープンデータ活用コンテストに応募してみよう!!
物流オープンデータ活用コンテストに応募してみよう!!物流オープンデータ活用コンテストに応募してみよう!!
物流オープンデータ活用コンテストに応募してみよう!!Hiroaki Sengoku
 
Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Hiroaki Sengoku
 
位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術Hiroaki Sengoku
 
Mobmap人流データ解析入門
Mobmap人流データ解析入門Mobmap人流データ解析入門
Mobmap人流データ解析入門Hiroaki Sengoku
 
伊能社中の一億総伊能化計画
伊能社中の一億総伊能化計画伊能社中の一億総伊能化計画
伊能社中の一億総伊能化計画Hiroaki Sengoku
 
Introduction of open source gis
Introduction of open source gisIntroduction of open source gis
Introduction of open source gisHiroaki Sengoku
 
Foss4 gマイクロジオデータ解析入門
Foss4 gマイクロジオデータ解析入門Foss4 gマイクロジオデータ解析入門
Foss4 gマイクロジオデータ解析入門Hiroaki Sengoku
 

Plus de Hiroaki Sengoku (15)

社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。
 社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。 社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。
社会を支えるインフラが、 社会の問題にならないために。 上水道インフラへのAI導入の挑戦。
 
都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築
都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築
都市計画情報を考慮した ミクロな将来世帯数の推計手法の構築
 
物流オープンデータ活用コンテストに応募してみよう!!
物流オープンデータ活用コンテストに応募してみよう!!物流オープンデータ活用コンテストに応募してみよう!!
物流オープンデータ活用コンテストに応募してみよう!!
 
Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析
 
位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術
 
Mobmap人流データ解析入門
Mobmap人流データ解析入門Mobmap人流データ解析入門
Mobmap人流データ解析入門
 
伊能社中の一億総伊能化計画
伊能社中の一億総伊能化計画伊能社中の一億総伊能化計画
伊能社中の一億総伊能化計画
 
QGIS training class 3
QGIS training class 3QGIS training class 3
QGIS training class 3
 
QGIS training class 2
QGIS training class 2QGIS training class 2
QGIS training class 2
 
QGIS training class 1
QGIS training class 1QGIS training class 1
QGIS training class 1
 
Qgis install guide
Qgis install guideQgis install guide
Qgis install guide
 
Introduction of open source gis
Introduction of open source gisIntroduction of open source gis
Introduction of open source gis
 
Foss4 gマイクロジオデータ解析入門
Foss4 gマイクロジオデータ解析入門Foss4 gマイクロジオデータ解析入門
Foss4 gマイクロジオデータ解析入門
 
QGIS入門(1)
QGIS入門(1)QGIS入門(1)
QGIS入門(1)
 
Qgislecture 0
Qgislecture 0Qgislecture 0
Qgislecture 0
 

Foss4 g2013 geoxcode_sengoku