年間30回の社内外発信をやったデータサイエンティストの情報収集から発信までの流れを共有します！

株式会社ブレインパッドでデータサイエンティストをしている金（a.k.a ジュンヒョン）です。

この記事は[BrainPad Advent Calender 2023](https://qiita.com/advent-calendar/2023/brainpad) 25日目の記事です。

## はじめに

みなさん、メリークリスマス！…ん？
 
 
し、、、しまった、、、12月26日？！

![DALL·E 2023-12-26 12.07.39 - An image depicting a humorous scene of Santa Claus waking up in his bedroom, with the calendar showing December 26th. Santa is in his classic red and .png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/665774/3230de37-0ca0-db25-90a6-e1b0d7fe1a1a.png)
（DALL·Eに生成してもらった「12月25日クリスマスにずっと寝て、12月26日に起きたサンタさん」の画像①です）

すみません、ルドルフが起こしてくれなくてずっと寝てしまった金です。１日遅れのアドベントカレンダーになりますが、どうか楽しく読んでいただけると幸いです🙇‍♂

![DALL·E 2023-12-26 12.02.29 - A warmly lit interior scene with soft focus. In the center, there's a person dressed in a classic Santa Claus costume, seated, looking pensive and pos.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/665774/edcb3979-ace0-cb21-5168-199d8878ef47.png)
（DALL·Eに生成してもらった「12月25日クリスマスにずっと寝て、12月26日に起きたサンタさん」の画像②です）


## 今年を振り返って

個人的に今年は社内外的に情報発信を頑張り始めた元年となります。

まず、社内発信で言いますと、**ブレインパッドでは年間300回以上の社内勉強会**（通称b2b）が実施されています。

その社内発信のチャンネルb2bを通じて、2023年3月30日に1回目の発信を開始し、総19回かつ23個のテーマを題材に発表を実施しました（通称、weekly_ジュンヒョン）

題材は主にLLMをメインとした生成AIと最近話題になっている技術・ライブラリーを紹介しました。その中で、Google Colabで動かせるハンズオンチュートリアルコードを必ず作成し、最新の技術を「手元で遊べる」状態にすることに個人的な一工夫にしております。

- 発表題材の一覧（社内用の資料のため、リンクは削除しました）
1. 20230330_ControlNetハンズオンチュートリアル
2. 20230330_Riffusionモデルハンズオンチュートリアル
3. 20230410_DeepFakeっぽいな技術のハンズオンチュートリアル
4. 20230420_Whiperハンズオンチュートリアル (動画翻訳、動画要約)
5. 20230420_Auto-GPT触ってみた
6. 20230508_Alpacaの日本語Fine-TuningをColabでやってみましょう
7. 20230512_Auto-GPTをもうちょっと触ってみた
8. 20230523_ベクトルデータベースのハンズオンチュートリアル
9. 20230523_Whisper-JAXを触ってみた
10. 20230608_Scikit-LLMハンズオン
11. 20230608_プロンプトなしControlNetの紹介
12. 20230711_Drag Your Ganハンズオン
13. 20230711_OCRを使った漫画の翻訳ハンズオン
14. 20230720_LLaMa2触ってみた
15. 20230725_機械非学習（Machine Unlearning）の紹介
16. 20230804_言語モデルを用いたテーブルデータの生成
17. 20230829_GPT-3.5のFine-tuning・ハンズオン
18. 20230905_Stable Diffusion XL(SDXL)の紹介
19. 20230905_Nougat：ViTを用いたPDF形式の学術論文のOCR
20. 20230919_Open Interpreter: ローカルCode Interpreter
21. 20231106_ChatDev: LLMのエージェントが運営するソフトウェア開発会社に発注してみた
22. 20231110_OpenAI DevDayの公開情報まとめ
23. 20231225_LLM以外にはどんな生成AIが話題になっているか


社内向け発信以外にはブレインパッドの公式ブログ「[Platinum Data Blog](https://blog.brainpad.co.jp/)」にブログを執筆したり、Podcast番組「[白金鉱業.FM](https://shirokane-kougyou.github.io/)」の収録に参加しました。

- Platinum Data Blogの記事一覧
1. [大規模言語モデル(LLM)のエンジン：データセットの解説](https://blog.brainpad.co.jp/entry/2023/06/02/163008)
2. [LLMの学習・推論の効率化・高速化に関する技術調査 【技術動向調査】](https://blog.brainpad.co.jp/entry/2023/09/28/170010)
3. [ソフトウェアエンジニアリングにおけるLLMの適用に関する最新論文調査【技術動向調査】](https://blog.brainpad.co.jp/entry/2023/11/09/161055)
- 白金鉱業.FMの参加エピソード一覧
1. [68. まだまだ続くよ白金鉱業FM！ChatGPTをはじめとした「基盤モデル・大規模言語モデル 社内タスクフォース」の話！](https://shirokane-kougyou.github.io/episode/68)
2. [70. LLM回2回目！ChatGPTプラグインとクレームっぽい名前の論文？そして世界中でバズったDrag Your GANなど！
](https://shirokane-kougyou.github.io/episode/70)
3. [72.「学習と推論の時間を劇的に減らせる？QLoRA」と「ユーザープライバシー保護に使いたいMachine Unlearning」の話](https://shirokane-kougyou.github.io/episode/72)
4. [73.言語モデルは中間部分を見ていない？「Lost in the Middle」とテキストデータのaugmentation？「GReaT」の話
](https://shirokane-kougyou.github.io/episode/73)

:::note info
白金鉱業.FMのエピソードについて、2代パーソナリティの浅野さんが今年の振り返り記事「[ワードクラウドで振り返る白金鉱業.FM（2023年）](https://note.com/nash_efp/n/n903679641862)」を書いてくださいました！面白いのでぜひ読んでいただきたいです！
:::


いやーーこうやって一覧化して振り返ってみると今年も頑張ってきたなと思いますね。後半ではプロジェクトにより時間を使いたく、隔週に１回か月に1回程度に頻度が減らしましたが、もうちょっと頑張ってもよかったかななど少し悔しさも残ったりします。

<!--
## 情報発信を始めたモチベ
-->

## 情報収集から発信までの流れ

![DALL·E 2023-12-26 13.53.24 - A visual representation of a five-step framework_ 1. Deciding the theme_ A person sitting at a desk with various books and a computer, brainstorming w.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/665774/4830c182-4d82-9b51-9a7c-6b9ed3560605.png)
(DALL·Eが生成したフレームワークの画像)

色々試行錯誤を繰り返しましたが、基本的な骨子は下記となります。
1. テーマを決める
2. 目次を決める
3. 資料調査
4. 抜き出して書き留める
5. 繋ぎ合わせて関連付ける

各ステップの目的と方法をまとめたテーブルです。

| ステップ | 目的 | 方法 | 補足 |
|----------|------|------|------|
| テーマを決める | 情報発信の主題や焦点を明確にする。 | 対象読者やメッセージの目的を考慮し、関心のあるトピックを選定する。 | 「何を話したいか？」を具体的に定義する。これは、特定の問題、興味のある話題、または特定の観点からのアプローチを含むことができる。 |
| 目次を決める | 情報発信の構造を計画し、内容の流れを整理する。 | 主要なポイントやセクションを決定し、論理的な順序で整列させる。 | 情報の提示順序と構成を考える。「どの情報を最初に提示するか？」や「どのように各セクションを結びつけるか？」などを計画する。 |
| 資料調査 | テーマに関連する情報やデータを集め、信頼性を確保する。 | 書籍、研究論文、ウェブサイト、専門家の意見など、様々な情報源からデータを収集する。 | 情報の信頼性と関連性を評価する。「どの情報源が信頼できるか？」や「収集したデータがテーマにどのように関連しているか？」を考慮する。 |
| 抜き出して書き留める | 収集した情報から重要なポイントを選び出し、整理する。 | 関連性の高い情報を抽出し、要約やキーポイントを記録する。 | 重要な情報やデータを選別し、簡潔にまとめる。「どの情報が最も重要か？」や「どのようにして情報を効果的に要約するか？」を考える。 |
| 繋ぎ合わせて関連付ける | 個々の情報を統合し、総合的な理解を形成する。 | 異なる情報を論理的に結びつけ、読者が理解しやすい形で発信する。 | 異なる情報やアイデアをどのように一つの統一された物語や論点に結びつけるかを考える。「各セクションの間でどのようなつながりを作るか？」や「情報をどのように統合して全体のメッセージを強化するか？」を検討する。 |

よりラフな言い方に変えると下のようになります（普段の頭の中での意識の流れはこちらに近いです）。

| ステップ | 目的 | 方法 | 補足 |
|----------|------|------|------|
| テーマを決める | 何について話すかを決めよう。これが全てのスタート地点だね。 | 自分の興味や読者が好きそうなトピックを考えてみよう。何が話題になっているかもチェックしてね。 | 具体的に「これ！」っていうアイデアを見つけるのが大事。何に興味があるか、どんな影響を与えたいか、そんなことを思い浮かべてみよう。 |
| 目次を決める | 話す内容の大枠を作ろう。何から始めて、何で終わるか決めよう。 | 大事なポイントをリストアップして、話の流れを作ってみよう。どの順番が一番いいかな？ | 各セクションをどうつなげるかも考えてみて。スムーズな流れで読者を引き込もう。 |
| 資料調査 | 話すための情報やデータを集めよう。しっかり調べて、正確な情報を伝えようね。 | いろんなところから情報を集めてみよう。本やネット、専門家の意見なども参考にしてね。 | どの情報が本当に役立つか、どの情報源が信頼できるかを見極めよう。関連性も大切だよ。 |
| 抜き出して書き留める | たくさん集めた情報の中から、本当に重要な部分を選ぼう。 | 大切なポイントを見つけて、簡単にメモしておこう。後で役立つよ。 | どの情報が一番伝えたいことに関係してるかを考えてみよう。要約するのもポイントだね。 |
| 繋ぎ合わせて関連付ける | それぞれの情報をうまく組み合わせて、一つの大きな話にしよう。 | バラバラだった情報をつなげて、分かりやすく伝えよう。 | それぞれの情報がどう関連しているかを見つけて、全体のメッセージを強くしよう。読者に伝わるようにね。 |

それでは、それぞれのステップでは何をやっているか詳細を説明したいと思います。

### 1. テーマを決める

「これ！」というアイデアやネタを見つけることが、情報発信の第一歩です。テーマの選定は、全体のプロセスに大きな影響を与えるため、最も時間をかけて行っているステップです。

その中で、考慮すべきことは自分が興味を持っているトピックと想定している読者・聞き手の関心のあるトピックの間でうまくバランスをとっていくことだと思います。情報発信はそれを受信する側がいないと成り立たない仕組みであるため、ニーズを手早く把握した上でテーマを決めることはとても大事なステップです（頑張って準備したネタの反応がよくないとモチベにも影響します）。

私の場合は下の２つの軸を主なテーマ探索の軸にしております。
1. 特定の技術の解説
2. 最新トレンドの紹介

テーマの探索にはさまざまな情報源に頼っています。よく利用している情報源を下記にリスト化してみました。

1. 社内のslackに共有された記事や論文
2. 技術ブログ
    - https://qiita.com/
    - https://zenn.dev/
    - https://medium.com/
    - https://hatenablog.com/
3. 論文まとめサイト
    - https://paperswithcode.com/
    - https://huggingface.co/papers
    - https://nlp.elvissaravia.com/
    - https://aiboom.net/
4. 企業のテックブログ
    - https://blog.brainpad.co.jp/
    - https://engineer.recruit-lifestyle.co.jp/techblog/
    - https://techblog.zozo.com/
    - https://techblog.lycorp.co.jp/
    - https://developers.cyberagent.co.jp/blog/
    - https://www.datarobot.com/jp/blog/
    - https://wandb.ai/site/articles
5. githubのライブラリー
    - https://github.com/trending
    - https://github.com/microsoft
    - https://github.com/facebookresearch
    - https://github.com/eugeneyan/applied-ml
    - https://github.com/academic/awesome-datascience
6. kaggleなどデータ分析コンペの記事
    - https://weeklykagglenews.substack.com/
7. IT勉強会での公開資料
    - https://connpass.com/

上記の情報源は定期的にアクセスし、キャッチアップを進めながら情報発信のアイデアを得ております。そのキャッチアップの中で自然と「1. テーマを決める」、「2. 目次を決める」、「3. 資料調査」のステップが同時に行われます。

### 2. 目次を決める

テーマが決まったら、次はそのテーマをどのように展開していくかの大枠を作成します。これは、記事の「骨格」を作るようなもので、どのようなポイントやセクションを含めるかを決めることが重要です。各セクションの目的と内容を概説し、セクション間の論理的なつながりを考慮することで、読者がスムーズに情報を理解しやすい構造を作り出します。

30分~1時間の発表において、私が目指す理想的な姿は二点に集約されます。①は、限られた時間内で、「これだけは伝えたい」と考える核心的なメッセージが明確に伝わることです。②は、発表終了後に「面白かったな。もっと詳しく調べてみたい、」と感じるように促すことです。

これを実現するために、冒頭でこの発表・発信から何を得られるかを明確に述べることを心掛けています。また、発表中に取り上げきれない内容については、後で調査する際に役立つ資料やリンクを提供しています。
この方法により、一方通行の情報伝達にとどまらず、能動的に知識を深めるための手引きとなり、メッセージがより効果的に伝わるようにしています。

### 3. 資料調査

このステップの原材料、話す内容のメインとなる資料は「1. テーマを決める」のステップでできている状態です。「2. 目次を決める」を通じてどの部分により肉付けをするかを決めて、追加の資料を調査します。

最近発表された論文や技術をテーマにする際は、直接に関連した参考資料が少ない場合が多いため、その分野におけるトレンドや開発の背景となるコンテキストまでに調査の範囲を広げることが重要です。

### 4. 抜き出して書き留める

資料調査で集めた情報の中から、特に重要なポイントやデータを抽出し、要約します。
このプロセスは、特に調査の探索範囲が膨大な場合には、特別な注意を払う必要があります。そこで、私はよくChatGPTやClaudeなどの大規模言語モデル（LLM）の力を借りることがあります。

例えば、特定の論文の中で関連する内容を見つけたい場合、その内容がどこにあるか、そしてそれを要約してまとめるよう、ChatGPTやClaudeを活用します。このプロセスをテンプレート化し、効率的に情報を処理することで、時間と労力を節約できます。

そのほかのプロンプトエンジニアリング術に関しては、ブレインパッドの公式ブログに記事をまとめているので、ぜひご覧になってください。「[プロンプトエンジニアリングの基本と応用](https://blog.brainpad.co.jp/entry/2023/12/19/153000)」

### 5. 繋ぎ合わせて関連付ける

このステップは、上記のステップで行ったことを集めて、一つの物語に結びつけて集大成する段階となります。
全体の構成を見直し、セクション間のつながりを強化し、統一感のあるメッセージを形成します。

「2. 目次を決める」の骨子に沿って作ったセクションに合わせて、「3. 資料調査」、「4. 抜き出して書き留める」を通じて集めた文章を適切に配置します。ここで、伝えたいメッセージや強調したい部分に合わせて配置や順序を考慮することが大事です。

繋ぎ合わせにおいても、大規模言語モデル（LLM）を活用することができます（実際にもよく使います）。セクションを通じて伝えたい内容とともに文章を渡して、一つの段落を完成してもらいます。


## 最後に

ここまで読んで下さったみなさん、ありがとうございます。

フレームワークというと大げさなことを言っているようですが、実際やっていることは「話したいものを見つける　→　その中で何を話すかを決める」の２段階でまとめることもできると思います。
伝えたいものは「実は情報収集してまとめることは難しいことではない」、「ChatGPTなどのツールを積極的に活用するとハドルは低くなる」です。

来年は引き続き情報発信を頑張りながら、情報発信のハドルを下げて発表を促すには何をすべきかを工夫していきたいと思います。

では良いお年をお迎えください！