Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
新入社員目線から学ぶエンジニアに必要なこと その2:新しいサービスを作る (必要性の理解:形...
Search
NearMeの技術発表資料です
PRO
August 16, 2023
Science
0
110
新入社員目線から学ぶエンジニアに必要なこと その2:新しいサービスを作る (必要性の理解:形態素解析+文章のベクトル化)
本当その開発が必要かどうかは、需要によっても決まります。ですので、あらかた需要があるかを確認できる可能性のあるものとして、今回は形態素解析、そして単語のベクトル化について扱います。
NearMeの技術発表資料です
PRO
August 16, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
ESLintをもっと有効活用しよう
nearme_tech
PRO
0
6
リファクタリングのための第一歩
nearme_tech
PRO
0
29
ガウス過程回帰とベイズ最適化
nearme_tech
PRO
1
75
確率的プログラミング入門
nearme_tech
PRO
2
69
Observability and OpenTelemetry
nearme_tech
PRO
2
35
観察研究における因果推論
nearme_tech
PRO
1
100
React
nearme_tech
PRO
2
41
Architecture Decision Record (ADR)
nearme_tech
PRO
1
860
遺伝的アルゴリズムを実装する
nearme_tech
PRO
1
62
Other Decks in Science
See All in Science
Mechanistic Interpretability の紹介
sohtakahashi
0
420
Pericarditis Comic
camkdraws
0
1.5k
創薬における機械学習技術について
kanojikajino
13
4.7k
マテリアルズ・インフォマティクスの先端で起きていること / What's Happening at the Cutting Edge of Materials Informatics
snhryt
1
150
事業会社における 機械学習・推薦システム技術の活用事例と必要な能力 / ml-recsys-in-layerx-wantedly-2024
yuya4
3
250
最適化超入門
tkm2261
14
3.3k
機械学習による確率推定とカリブレーション/probabilistic-calibration-on-classification-model
ktgrstsh
2
290
科学で迫る勝敗の法則(名城大学公開講座.2024年10月) / The principle of victory discovered by science (Open lecture in Meijo Univ. 2024)
konakalab
0
230
Introduction to Graph Neural Networks
joisino
PRO
4
2.1k
理論計算機科学における 数学の応用: 擬似ランダムネス
nobushimi
1
370
Celebrate UTIG: Staff and Student Awards 2024
utig
0
500
Science of Scienceおよび科学計量学に関する研究論文の俯瞰可視化_ポスター版
hayataka88
0
150
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Building Applications with DynamoDB
mza
91
6.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Into the Great Unknown - MozCon
thekraken
33
1.5k
Scaling GitHub
holman
459
140k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
The Invisible Side of Design
smashingmag
298
50k
Visualization
eitanlees
146
15k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
450
Transcript
0 新入社員目線から学ぶエンジニアに必要なこと その2:新しいサービスを作る (必要性の理解:形態素解析+文章のベクトル化) 2023-08-04 第55回NearMe技術勉強会 Asahi Kaito
1 まずは前回のJamの確認から
2 弊社でのJam(1)
3 弊社でのJam(2)
4 弊社でのJam(2) これに着目してみたい
5 どんなタスクか? 想定)元々大きなアプリがあり、そのFeatureタスク • 親 → フードデリバリーアプリ(ここは前提とする) • 子 →
まかない提供機能 *考慮する事項として考えられるもの 1. そもそも、その機能の必要性は? 2. UIのどの部分に取り入れるか? 3. 料金体系はどうするのか? …などなど
6 どんなタスクか? 想定)元々大きなアプリがあり、そのFeatureタスク • 親 → フードデリバリーアプリ(ここは前提とする) • 子 →
まかない提供機能 *考慮する事項として考えられるもの 1. そもそも、その機能の必要性は? 2. UIのどの部分に取り入れるか? 3. 料金体系はどうするのか? …などなど ここを扱います
7 どんなタスクか? *考慮する事項として考えられるもの 1. そもそも、その機能の必要性は? • どのように必要性を取得するか ◦ ユーザーからのFB →
フォームなどから ◦ SNSでのエゴサーチ → 形態素解析+文章のベクトル化で分析を行うことなど ◦ Google Mapなどでの評価 → 自分の会社の口コミチェックなど *形態素解析 → ある文章を分かち書きにして、品詞ごとに分解するもの *文章のベクトル化 → 文章を形態素に分解してベクトルとすることで、内積や距離の定義ができるので単語間の関係性を定量 的に計算することができる
8 とにかく実践だ!
9 形態素解析+文章のベクトル化 理論)どのようにして文章を解析するのか? 1. 文章のベクトル化 a. 文章を形態素という要素に分解して、ベクトル化する 俺
10 形態素解析+文章のベクトル化 理論)どのようにして文章を解析するのか? 1. 文章のベクトル化 a. 文章を形態素という要素に分解して、ベクトル化する b. あるターゲット文章とベクトルとして比較する(cos類似度など)
11 形態素解析+文章のベクトル化 理論)どのようにして文章を解析するのか? 1. 文章のベクトル化 a. 文章を形態素という要素に分解して、ベクトル化する b. あるターゲット文章とベクトルとして比較する(cos類似度でまずは簡単に処理) c.
類似度の高いものを集め(ベクトル化の利点)、 そこからデータをフィルタリングする(形態素解析の利点) [ ‘まじでこのアプリ最高。感動した。’, ‘まかないの機能とかあると良いな。’, ‘aaaaaaaaaaaaa’, ]
12 形態素解析+文章のベクトル化 理論)どのようにして文章を解析するのか? 2. 文章の分析方法 • Pythonを用いて実装 • 以下のモジュールを用いる ◦
Janome(形態素解析のメインモジュール) ◦ Word2Vec(分散表現でベクトル化する機械学習モデル) ※Colabへのリンク :https://colab.research.google.com/drive/1GsAIOmJzTsIU-56gCbg63juo5M738QI9?usp=sharing
13 形態素解析+文章のベクトル化 より実践)Twitter(X) APIを用いて、形態素解析+ベクトル化を実施してみよう • https://developer.twitter.com/ja/docs/twitter-api(X開発者プラットフォーム)
14 WordCloudで単語の頻度を可視化 実践)単語の頻度を可視化する方法 • WordCloudを用いて実装 ◦ 以下のモジュールを用いる ◦ WordCloud(単語の頻度を画像で可視化) ※Colabへのリンク(先ほどと同じ)
:https://colab.research.google.com/drive/1GsAIOmJzTsIU-56gCbg63juo5M738QI9?usp=sharing https://self-development.info/wp-content/uploads/2021/01/my.png
15 次回こそ 要件定義の作成 (どのように要件定義を書くか?)
16 参考リンク • 形態素解析 ◦ Janomeを使ってPythonで形態素解析 :https://qiita.com/charon/items/661d9a25b2233a9f8da4 • ベクトル化(ここでは分散表現) ◦
Efficient Estimation of Word Representations in Vector Space(単語の分散表現の論文) :https://arxiv.org/abs/1301.3781 ◦ Word2vecによる分散表現を可視化:https://qiita.com/g75hca/items/507a557f10d6133a699a ◦ Word2Vecを理解する:https://qiita.com/g-k/items/69afa87c73654af49d36 ◦ 感情分析でニュース記事のネガポジ度合いをスコア化する :https://qiita.com/g-k/items/e49f68d7e2fed6e300ea • WordCloud ◦ Pythonを使ってWordCloud(ワードクラウド)を作成する:リンク
17 Thank you