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
project yamcha phase 1
Search
andmohiko
November 18, 2018
Programming
1
110
project yamcha phase 1
学生の一行プロフィールをベクトル化して類似度の高いものを探す
andmohiko
November 18, 2018
Tweet
Share
More Decks by andmohiko
See All by andmohiko
Mantine + React Hook Form + Zod でフォームをつくる
andmohiko
0
720
文章のベクトル化
andmohiko
0
420
Predicting categories of news articles
andmohiko
0
120
kobachi presentation
andmohiko
0
200
Other Decks in Programming
See All in Programming
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
7
1.6k
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
490
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
340
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
540
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
190
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
180
Advance Your Career with Open Source
ivargrimstad
0
350
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
610
AIエージェント時代における TypeScriptスキーマ駆動開発の新たな役割
bicstone
4
1.5k
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
1k
XP, Testing and ninja testing ZOZ5
m_seki
3
310
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
460
Featured
See All Featured
Making Projects Easy
brettharned
119
6.4k
How GitHub (no longer) Works
holman
315
140k
Practical Orchestrator
shlominoach
190
11k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Gamification - CAS2011
davidbonilla
81
5.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
850
Git: the NoSQL Database
bkeepers
PRO
431
66k
Producing Creativity
orderedlist
PRO
347
40k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Designing for humans not robots
tammielis
254
25k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Transcript
やみつき飲茶な熱帯夜 Project yamcha phase 1 2018/09/11 いとぅー
あうとらいん • 目的 • 理論 • 手法 • 結果 •
考察 • 今後の展望
目的 人事が今までにスカウトを打った学生と似ている学生をキャッチコ ピーを使って探し出す。 つまりキャッチコピーが似ている人を探し当てたい。
目的 人事が今までにスカウトを打った学生と似ている学生をキャッチコ ピーを使って探し出す。 つまりキャッチコピーが似ている人を探し当てたい。 自然言語において「似ている」とは 数学的にどういうことか?
自然言語において「似ている」とは、 文章をベクトルに変換し、そのベクトル同士の類似度を測る。 doc2vecという手法を使うが、 doc2vecについて説明するためにまずword2vecについて説明する。 理論
理論 word2vecのせつめー word2vecとは... 大量のテキストデータを解析し、 各単語の意味をベクトル表現化する手法 ↑これを「単語の分散表現を得る」という 単語をベクトル化することで、 ・単語同士の意味の近さを計算 ・単語同士の意味を足したり引いたりとい うことが可能になる。
理論 word2vecのせつめー word2vecとは... 大量のテキストデータを解析し、 各単語の意味をベクトル表現化する手法 ↑これを「単語の分散表現を得る」という 単語をベクトル化することで、 ・単語同士の意味の近さを計算 ・単語同士の意味を足したり引いたりとい うことが可能になる。
king - man + woman = queen となる!!!
理論 word2vecのせつめー word2vecとは... 大量のテキストデータを解析し、 各単語の意味をベクトル表現化する手法 ←これを「単語の分散表現を得る」という 単語をベクトル化することで、 ・単語同士の意味の近さを計算 ・単語同士の意味を足したり引いたりとい うことが可能になる。
king - man + woman = queen となる!!! word2vecを文章レベルに 拡張したものがdoc2vecである
理論 ベクトルの類似度を測るにはコサイン類似度を使う。 cosθが ・1ならベクトルの方 向が一致、 ・-1なら方向が真逆と いうことになる θ θ
手法 • 使用したデータ TRUNKのレジュメに記入されたユーザーのキャッチコピーと自己紹介 • データセットの作り方 キャッチコピーと自己紹介をただ学習させるのか、 同じ文脈としてstringをくっつくる方がよいのか。 • 特徴量の作り方
全ての単語を使用するか、 名詞のみ取り出すか、 名詞と動詞を取り出すか。
結果 jupyter notebookをご覧ください
結果 • 単語は名詞と動詞と形容詞を取り出して使うのがよい • データセットはシンプルにキャッチコピーと自己紹介を学習させるのがよい
考察 & 反省まとめ • 「似ている」とされたキャッチコピーは「なんとなく似てるかも...?」「うーん」「あー」く らいなものが取ってこれた。 →テキストデータが増えればここの精度は上がるはず • 逆に「似ていない」とされたキャッチコピーはしっかり似ていない 明らかに「ちげーな」って思うやつははじくことができた
• データ整形の時間を辞書追加の時間にすればよかった
• 「なんとなく近いかも」くらいなものを取り出すことに成功したので、 現状のものをAPI化してプロダクトに埋め込む • API化に向けてコードを書き直す • それに伴って発生する課題 ◦ 新しいユーザーが追加される →学習し直すタイミング
◦ キャッチコピーや自己紹介が更新された時の旧文章の扱い 今後の展望と課題