社内輪読会の運営のコツ
こんにちは
マネーフォワード分析推進部の作野と申します。
突然ですが、みなさん輪読会はやっていますか?
技術本の輪読会を開催する事によって、参加者がそれぞれの理解を共有して自分ひとりで読んでいる時には気づかなかった視点を得る事ができます。
また、参加者の中での共通言語を作る事ができるのでコミュニケーションがスムーズになるという効果も期待できます。
そんなメリットがある輪読会ですが、適切に運営をするのが難しいですよね。
途中でフェードアウトする人が増えていって次第に参加者のやる気がなくなっていき最後は輪読会自体が中止になってしまう そんな事態は避けたいですよね。
この記事では、社内で輪読会を開催する時にどんな事に気をつければ良いのか備忘録もかねて書きたいと思います。
輪読会の目的
目的の設定の仕方は様々だと思いますが、
今回は
「数式がたくさん載っているような難しめの技術書(一人で読むと挫折しそうな物) を輪読して参加者がその本に載っている内容を理解する事」とします。
マネーフォワードでは「統計的因果推論の理論と実装(共立出版)」を輪読する事にしました。
こちらの本では、交絡とは何か?処置効果とは何か? といった基本的な説明から回帰を使ったバイアスの除去、傾向スコア、回帰不連続デザインなどの手法について数式とRコードが載っています。
実務で効果検証を行うケースがあるため、実務での利用を視野に入れて選書しました。
過去の輪読会の失敗
過去の輪読会では上記のような技術書の輪読会をやった際に以下のスタイルで運営しました。
事前準備なし
司会進行者なし
その週の担当者を決めない
輪読会の冒頭20分くらいで全員がその週に扱う章を黙読する
残り40分くらいで自由に意見を交換する
全員が忙しいからなるべく参加者の負荷が上がらないように と考えた結果
上記のようなスタイルで実施してみたのですが、結果として深い議論に発展しにくく全員が読んではいるが内容を理解しているとは言い難い状態になりました。
起こった事
前の章で登場した定義に立ち返る時間がない
数式を解釈している時間がない
人工データを使ったシミュレーションをしている時間がない
その章を理解していないので次の章にいった時に前提を理解していなくてまた分からなくなるという悪循環が生まれてしまいました。当然ですが、理解できないと輪読会そのものへのモチベーションが次第に低下していき参加者が減少していきます。
輪読会をうまくいかせるためにやった事
上記の失敗をふまえて、事前準備をしっかりと行って運営する事にしました。
社内wikiに輪読会のエントリーページを作る
「事前準備」と「参加者の役割」が曖昧になってしまうと運営に支障をきたす可能性があったため輪読会のエントリーページを作って誰もが運営ルールをすぐに参照できるようにしていました。
輪読会のエントリーページには以下を記載していました。
扱う本
slackチャンネル
登場人物(司会進行者、担当者、参加者)の役割
事前準備の方法
当日の進行方法
参加者の自己紹介記事
サマリ(後述)のリンク
輪読会の録画ファイルのリンク
司会進行者を決める
司会進行者の役割は、
週の担当者を決める
参加者に質問をふる(分からない所はなかったですか? など)
担当者や参加者が分からない部分について解説する
別の本の記載を引用したり解釈を述べて参加者全員の理解を促進する
などです。
司会進行者は持ち回りせずに固定としました。
本の全ての章を理解している必要があるため最も負担が大きい役回りですが、最も輪読会によって知識を深められるおいしい役回りであるとも言えます。
そういった下心もあり、今回の輪読会では私が率先して司会進行を担当しました(笑)
参加者の理解を促進する解説
例えば、回帰係数の標準誤差について
$$
s.e.(\hat{\beta}_1) = \dfrac{s_{reg}}{\sqrt{\Sigma(X_i-\bar{X})^2}} \\
s_{reg} = \sqrt{\dfrac{\Sigma(Y_i-\hat{Y_i})^2}{n-k}} = \sqrt{\dfrac{USS}{n-k}}
$$
そのまま見ると、特に記憶に残らずに消えていくのですが、
説明変数の分散 $${\Sigma(X_i-\bar{X})^2}$$ が大きいときは、標準誤差が小さい→つまり、広い範囲でデータが得られている時は標準誤差が小さくなる
データに対してのパラメータ $${n-k}$$ が少ないときは、標準誤差が小さい→つまり、推定したいパラメータに対してデータがたくさん得られている時は標準誤差が小さくなる
予測誤差の標準偏差 $${\Sigma(Yi-\hat{Y_i})^2}$$ が小さいほど標準誤差が小さい→予測した値と実際の値の乖離が少ない方が標準誤差が小さい
のように3つの構成要素によって標準誤差の大小が決まっているといった解釈を加えると直感的に数式を読める と補足していました。
(余談ですが、数理統計の知識があるとこういった数式を読む力がつくため統計検定1級は意外と実用的な資格だと私は考えています)
参加者全員が事前にその週に扱う章を読んでくる
輪読会で議論できる下地を作るために全員が必ず事前に本を読んでくる事を徹底していました。逆に言うと毎週 本を読んでこれるくらいモチベーションが高いメンバーで輪読会を回していたともいえます。司会者が毎週質問をふってくる事が事前に本を読む事の動機づけの一助になっていたと思います。
担当者がその週のサマリを作る
担当する週において、必ず担当者に社内wikiにサマリを用意してもらい、それをもとに発表してもらいました。
まとめ方は自由でしたが「担当者が数式を飛ばさずに解説できる状態」を目指して準備してもらっていました。
輪読会実施
担当者が用意した資料に沿って内容を説明します。
節の区切りのタイミングで司会進行者がその節について話をする時間を設けて話を参加者にふります。なるべく輪読会で無言の人を作らないように名指しで質問をする ということも意識していました。(誰か何かありませんか? ではなく、XXさん、今の節で分からない点や感想、解釈の補足などありますか? と質問していました)
また、参加者が十分に理解できていなさそうな部分は担当者、司会者が協力して解説をします。
1回の輪読会で大体2~3箇所くらいは参加者が理解できていない所が出てきていたので、そういった箇所では時間をかけて議論をしていました。
このスタイルで運営したところ
全18回の輪読会のうち、初回の参加者は13人で最後の参加者は8人でした。
4回目くらいまで残っている人は最後まで残る傾向にありました。
良かった事
失敗した輪読会よりも確実に負荷は上がりましたが、その分 有意義な時間を過ごせました。
目的を「数式がたくさん載っているような難しめの技術書(一人で読むと挫折しそうな物) を輪読して参加者がその本に載っている内容を理解する事」とした場合、負荷が上がる事は避けられないと思うので「どうやったら負荷を低くみんなに参加してもらうか?」を考えるよりも「どうやったら時間をかけてでも本の内容を深く理解できるか?」と考えた方が結果として得られる物が大きいのではないか と思いました
おわりに
最後まで読んでいただきありがとうございました!
この記事を読んで、少しでもマネーフォワードの分析推進部に興味を持ってもらえたら幸いです。
他にもメンバー紹介や日々の取り組みに関する記事が多数ありますので、ぜひご覧ください!
マネーフォワード・データ&AI|Money Forward Data|note