こんにちは。LINEヤフー株式会社の佐野です。
2026年7月6日〜9日にポーランド・ワルシャワで開催された useR! 2026 に参加してきました。私自身は初めての参加です。弊社は過去にも参加しており、2018年の参加レポートはこちらです。useR! は、世界中のRユーザー、開発者、研究者が集まる国際カンファレンスです。2026年はワルシャワで開催され、チュートリアル、基調講演、通常講演、ポスター発表など、Rに関するさまざまな発表が行われました。
(※ 本記事に掲載している写真の一部は、useR! 2026 のボランティアおよび現地運営委員会(Local Organizing Committee)が撮影したものです)

useR! について
useR! は、R Foundation のサポートを受けながら、Rコミュニティのボランティアによって運営されている非営利のカンファレンスです。2004年から続いているRコミュニティの主要な国際イベントで、Rパッケージ開発、統計モデリング、可視化、教育、プロダクション利用、コミュニティ活動など、かなり幅広いテーマが扱われます。
私自身、Rは普段の分析やパッケージ開発でもよく使っているのですが、useR! に現地参加するのはとてもよい刺激になりました。同じRを使っていても、研究、教育、OSS開発、行政統計、企業でのデータ分析など、使われ方が本当にさまざまで、Rという言語の広がりを改めて感じました。
ポスター発表
今回、弊社からは私と牧山が参加し、共同で2件のポスター発表を行いました。
1件目は deltatest: Statistical Hypothesis Testing Using the Delta Method for Online A/B Testing です。これは、オンラインA/Bテストでよく使われる比率指標に対して、デルタ法を使った仮説検定を行うためのRパッケージです。オンラインA/Bテストでは、ユーザー単位でランダム化している一方で、ページビューやセッション単位の指標を評価したい、という状況がよくあります。このとき、単純なZ検定をそのまま使うと分散を過小評価し、偽陽性が増えやすくなることがあります。deltatest は、そうした問題に対して、Rから手軽に使えるインターフェースを提供するものです。
deltatest については、すでにLINEヤフー Tech Blogで詳しく紹介しています。記事では、ユーザーごとに集計された購入回数とセッション数のデータに対して、deltatest(data, buy_count / session, by = group) のように1行でデルタ法を使った検定を実行できる例を紹介しています。詳しくは「デルタ法を使った統計的仮説検定を行うRパッケージ deltatest の紹介」をご覧ください。
2件目は TheseusPlot: Visualizing Decomposition of Differences in Rate Metrics です。これは、コンバージョン率や継続率のような比率指標が2つのグループ間で異なるときに、その差がどのサブグループから生じているのかを分解して可視化するRパッケージです。全体の差だけを見ると、「どのセグメントの変化が効いているのか」「単に分母が大きいだけなのか」が分かりづらいことがあります。TheseusPlot では、ウォーターフォールプロットのような段階的な差分と、各サブグループのサイズを組み合わせ て表現することで、KPI変化の要因を説明しやすくしています。

ポスター発表は、スライド発表とは違って、聞きに来てくれた人の関心に合わせて説明の粒度を変えられるのが面白いところでした。「自分たちの環境でも利用してみたい」「この手法はなぜうまくいくのか」といった、さまざまな質問や意見をいただきました。英語で統計や実装の細かい話をするのはなかなか大変でしたが、Rパッケージとして外に出しておくことで、社外の人とも具体的に議論できるのはとてもよい経験でした。
気になった発表
すべての発表を紹介すると長くなってしまうので、ここでは個人的に印象に残ったものをいくつか紹介します。
Interactive Graphics for Understanding and Interpreting Nonlinear Model Behaviour in High Dimensions, using R
まず印象的だったのは、Dianne Cook氏による基調講演 “Interactive Graphics for Understanding and Interpreting Nonlinear Model Behaviour in High Dimensions, using R” です。複雑なモデルを作るとき、精度指標だけを見て判断するのではなく、データやモデルの振る舞いを可視化しながら理解することの重要性が話されていました。高次元データの可視化や、同じように高い性能を持つ複数のモデルが異なる解釈を与える例などを通じて、モデルを「ブラックボック スのまま使う」のではなく、きちんと見ながら理解していく姿勢の大切さを感じました。

特に印象に残ったのは、可視化を分析の最後に行う確認作業としてではなく、モデル開発の自然な一部として組み込む、という考え方です。Rには可視化やモデリングのためのパッケージが多くありますが、それらをうまく組み合わせることで、モデルの解釈や診断をより実践的に進められるのだと感じました。
Futurize - Tearing Down Parallelization Barriers in R with Transpilers
Henrik Bengtsson氏の “Futurize - Tearing Down Parallelization Barriers in R with Transpilers” も面白い発表でした。Rで処理を並列化しようとすると、既存のコードを書き換えたり、並列処理用のAPIを新しく覚えたりする必要があり、どうしても心理的なハードルがあります。この発表では、Futureverse のエコシステムを背景に、futurize() によって既存の map() などの処理を自然な形で並列化するアプローチが紹介されていました。
発表では、ys <- map(xs, slow_fcn) |> futurize() のように、コードのロジックを大きく変えずに並列化できる例が紹介されていました。また、どこを並列化するかの宣言と、実際にどこで実行するかを分離することで、ローカル環境、複数マシン、クラウド、HPCクラ スタなどに切り替えやすくするという考え方も紹介されていました。普段の分析コードを大きく崩さずに高速化できる可能性があり、実務でRを使っている立場からも関心を持ちやすい内容でした。
Reusing 'ggplot2' code: how to design better plot helper functions
もう一つ、かなり実践的で印象に残ったのが、Cynthia Huang氏の “Reusing 'ggplot2' code: how to design better plot helper functions” です。ggplot2 のコードを何度も書かないようにヘルパー関数にまとめる、というのはよくある一方で、関数の設計によっては、後から細かい調整がしづらくなってしまいます。この発表では、ggplot2 の柔軟さを損なわずに、再利用しやすいプロット用ヘルパー関数をどう設計するかが紹介されていました。
具体的には、データの前処理と描画を分けること、カスタマイズのためにlist型の引数を活用すること、内部で何をしているのかをドキュメントで明示することなどが紹介されていました。これは社内の分析コードやパッケージでもよく起きる問題なので、かなり身近な話題として参考になりました。便利なヘルパー関数を作ったつもりが、後から「ちょっとだけ直したい」ケースに対応できなくなる、というのは身に覚えがありすぎます。
参加してみて
インターネット上だけでもスライドやパッケージのドキュメント、発表動画など、さまざまな情報にアクセスできる時代ですが、実際に現地に行くと、セッションの合間や ポスターの前での会話から得られるものが多くありました。
今回印象に残った発表も、モデルの解釈、計算の効率化、可視化コードの設計と、扱っているテーマはそれぞれ違います。しかし、どれも「Rを使って分析をよりよく進めるにはどうするか」という点ではつながっているように感じました。useR! は、新しいパッケージや手法を知る場であると同時に、普段書いているRコードや分析ワークフローを見直すきっかけになる場でもありました。
また機会があれば、ぜひ参加したいです。
Enjoy!


