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
100
新入社員目線から学ぶエンジニアに必要なこと その2:新しいサービスを作る (必要性の理解:形態素解析+文章のベクトル化)
本当その開発が必要かどうかは、需要によっても決まります。ですので、あらかた需要があるかを確認できる可能性のあるものとして、今回は形態素解析、そして単語のベクトル化について扱います。
NearMeの技術発表資料です
PRO
August 16, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
ガウス過程回帰とベイズ最適化
nearme_tech
PRO
0
35
確率的プログラミング入門
nearme_tech
PRO
2
35
Observability and OpenTelemetry
nearme_tech
PRO
2
29
観察研究における因果推論
nearme_tech
PRO
1
72
React
nearme_tech
PRO
2
33
Architecture Decision Record (ADR)
nearme_tech
PRO
1
820
遺伝的アルゴリズムを実装する
nearme_tech
PRO
1
46
Fractional Derivative!
nearme_tech
PRO
1
37
GitHub Projectsにおける チケットの ステータス更新自動化について
nearme_tech
PRO
1
58
Other Decks in Science
See All in Science
最適化超入門
tkm2261
14
3.3k
様々な侵入者タイプに対応した適切な警備計画の策定 / Patrol route design considering various types of intrudes
konakalab
0
200
Improving Search @scale with efficient query experimentation @BerlinBuzzwords 2024
searchhub
0
240
論文紹介: PEFA: Parameter-Free Adapters for Large-scale Embedding-based Retrieval Models (WSDM 2024)
ynakano
0
150
2024-06-16-pydata_london
sofievl
0
530
化学におけるAI・シミュレーション活用のトレンドと 汎用原子レベルシミュレーター: Matlantisを使った素材開発
matlantis
0
270
トラブルがあったコンペに学ぶデータ分析
tereka114
2
920
JSol'Ex : traitement d'images solaires en Java
melix
0
110
拡散モデルの原理紹介
brainpadpr
3
4.8k
Sociovirology
uni_of_nomi
0
100
統計的因果探索の方法
sshimizu2006
1
1.2k
教師なしテンソル分解に基づく、有糸分裂後の転写再活性化におけるヒストン修飾ブックマークとしての転写因子候補の抽出法
tagtag
0
120
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Ruby is Unlike a Banana
tanoku
97
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Bash Introduction
62gerente
608
210k
Designing Experiences People Love
moore
138
23k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Code Reviewing Like a Champion
maltzj
520
39k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Building Applications with DynamoDB
mza
90
6.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
380
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