この記事はLINE Advent Calendar 2017の15日目の記事です。
こんにちは、LINEとLINE Fukuokaでデータサイエンティストをしております、stakaya、horikawa、oshiroです。
12月2日(土)に、Japan.R 2017というイベントが開催されました。弊社はJR新宿ミライナタワーの本社を会場として提供する形で協賛しましたので、当イベントについてご報告します。
Japan.Rとは
Japan.Rは、統計解析言語Rのコミュニティ関係者が集まる国内最大のカンファレンスで、日本各地で年に1度開催されます。
- Japan.R公式サイト
http://japanr.net/
当日の様子
今年の参加者は、募集サイト上では162名にのぼりました。開場早々に机席はほぼ全て埋まってしまい、急きょ椅子席を追加しました。
スペシャルゲストトーク
当日はスペシャルゲストとして上海よりKun Ren氏をお招きしました。「Boosting R Code Performance」と題して、Rのコードのパフォーマンスをいかに上げるかについてご講演いただきました。
Ren氏は、上海のヘッジファンドにクオンツ(簡単に言うと金融業界の機械学習エンジニア・データサイエンティスト)として勤務されており、高頻度(ミリ秒以下単位での取引)から低頻度(おおよそ日次〜月次での取引)までの幅広い取引に関する調査をされています。
また、有名なR言語のパッケージも作成されています。特にdata.frame(データフレーム)という、いわゆる表形式のデータを綺麗に表示するためのformattable
が有名です。
- formattableソースコード
https://github.com/renkun-ken/formattable
さらに昨年は『Learning R Programming』という書籍も出版されました。こちらは先月、『Rプログラミング本格入門: 達人データサイエンティストへの道』と題して、共立出版様より日本語訳が発売されました。
Ren氏は講演の中で、プログラムのパフォーマンスを改善するには、次の2点を繰り返し行うことが大切であると説かれました。
- 最も遅いプログラムの部分をプロファイリングして発見する。
- 発見した遅い部分が高速になるように実装を見直す。
具体例として、ローリング回帰と呼ばれる、金融業界では比較的よく行われる「単回帰の繰り返し計算」が挙げられました。プログラムの見直し手法として、例えば次のポイントがあるそうです。
- 必要になる分だけあらかじめメモリを確保しておく(ループのたびに毎度メモリ確保をしにいくようなプログラムを書かない)。
- 無駄なコピー(Deep Copy)を避ける。
- data.tableという高速に動作するタイプのデータフレームを活用する。
- 並列処理になるようプログラムを書き換える。
- 処理の遅い部分をC++で書き換える。
これらの見直し手法を適用した結果、元のプログラムよりもおよそ900倍も高速に動作するコードを示して、Ren氏の講演は締めくくられました。当日の資料およびコードは以下のGitHubリポジトリから参照できますので、ぜひご覧ください。
- 講演スライド
https://github.com/renkun-ken/japan-r-talk-2017/blob/master/japan-r-talk-2017.pdf - 講演に使用したコード
https://github.com/renkun-ken/japan-r-talk-2017
発表者の方々の資料と動画
およそ5時間にわたり、Long Talk、LTなど24名の方々が発表されました。内容も、統計解析、機械学習、自然言語処理、可視化、R言語の仕様、データ整備、などなど多岐にわたりました。
発表タイトル、資料、および当日の動画(公開を了承された方のみ)は、以下のページからご覧いただけます。
https://japanr.connpass.com/event/70230/
弊社からも社員が登壇しましたが、その中でも大城は、「LINE Fukuokaでの分析事例と福岡のR事情」と題して、LINE Fukuokaでの分析業務と福岡での分析コミュニティについて、お話しさせていただきました。
福岡は、住環境は良いといわれます。ただし職を探して移住するとなると、待遇は十分か、主導権を発揮できるか、業務内容は挑戦的か、などで不安を感じられたり、特にエンジニアの場合には、他のエンジニアとの繋がりを保てるかどうかという点で躊躇されたりすると思います。
大城からは、LINE Fukuokaは、待遇や分析環境は東京と同一であること、東京の下請けではなく主導権を持って仕事ができることをご説明しました。また社外では、福岡・九州での分析関係者が集うコミュニティに対する協力や新規コミュニティの立ち上げに携わり、福岡・九州でのコミュニティの形成や活性化を進めている状況であることをご紹介しました。
最後に、Data Labs/Clovaセンターの橋本より、会社でのエンジニア支援やオフィスの様子についてご紹介しました。
参加者、そして講演者の皆さま、長丁場でしたが懇親会までお付き合いいただき、ありがとうございました!
参加者によるレポートやツイート
他にも、当日参加された方によるレポートやツイートのまとめ(Togetter)があります。あわせてご覧になると、当日の熱気がお分かりいただけると思います。
- Japan.R 2017に参加してみた(DATUM STUDIO株式会社様)
https://datumstudio.jp/blog/japan-r-2017に参加してみた - 統計でデータを活用!Japan Rに参加して(NHNテコラス株式会社様)
https://datahotel.io/archives/6291 - 運営雑用係から見たJapan.Rの振り返り
http://y-mattu.hatenablog.com/entry/japanr2017 - Togetter: Japan.R 2017まとめ
https://togetter.com/li/1177826
さいごに
LINE、LINE Fukuoka、LINE KYOTOでは、私たちのようなデータサイエンティストはもちろん、機械学習エンジニア、自然言語処理・音声処理エンジニア、サーバサイドエンジニア、データプランナー、AI研究者など、データ分析に関連するポジションを積極的に採用中です!
本稿はR言語のイベント紹介ですが、Pythonをはじめとしたその他の言語のエンジニアも大活躍中です。言語を問わず、データ分析を愛する人はいつでも大歓迎です!
活躍の舞台も、LINEアプリケーションはもちろん、スタンプをはじめとしたその他関連のビジネス、そしてスマートスピーカー「Clova WAVE」のAIアシスタント「Clova」など、国内外に豊富にあります。
現在募集中のポジションについては、こちらをご参照ください。
- 東京、京都勤務
https://linecorp.com/ja/career/ja/all?job=%E6%8A%80%E8%A1%93%E8%81%B7 - 福岡勤務
https://linefukuoka.co.jp/ja/career/list/engineer/
いきなり応募はちょっと……だけど気になるのでカジュアルに話を聞いてみたい、という方も、お気軽にLINE社員にお声がけいただければと思います。
Advent Calendar、明日の記事は金洙赫さんによる「大規模サービスLINE LIVEのためのエンコーダレイヤ構造と悩んだこと」です。お楽しみに!