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
BERTで文章関連度算出して戯れてみる
Search
Kawazu
November 25, 2021
Programming
0
150
BERTで文章関連度算出して戯れてみる
Kawazu
November 25, 2021
Tweet
Share
More Decks by Kawazu
See All by Kawazu
個人的に考える要件定義でやる一連の流れ
kawazu
0
380
ChatGPTで水平思考ゲームを行えるか試してみた
kawazu
0
310
新人プロダクトマネージャーの試行錯誤記録
kawazu
0
170
バックエンドエンジニアが初めてReactを触って感じたこと
kawazu
0
250
音楽仲間がいないのでバンドメンバーを実装した話
kawazu
0
100
JetsonNanoで自動作曲配信システムを作ってる途中の話
kawazu
0
720
bert-tokenizerノードを触ってみた
kawazu
0
300
Node-REDとAutomatorでプライバシーマスク作成を自動化する
kawazu
0
160
AWS DeepComposerで作業用BGMを作った話
kawazu
0
160
Other Decks in Programming
See All in Programming
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
230
Perplexity Slack Botを作ってAI活用を進めた話 / AI Engineering Summit プレイベント
n3xem
0
670
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
130
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
150
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
150
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
160
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
370
第9回 情シス転職ミートアップ 株式会社IVRy(アイブリー)の紹介
ivry_presentationmaterials
1
210
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
130
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
830
CursorはMCPを使った方が良いぞ
taigakono
0
150
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
170
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
BBQ
matthewcrist
89
9.7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
700
Raft: Consensus for Rubyists
vanstee
140
7k
Site-Speed That Sticks
csswizardry
10
650
Building a Scalable Design System with Sketch
lauravandoore
462
33k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Building Applications with DynamoDB
mza
95
6.5k
Transcript
BERTで文章関連度算出して戯 れてみる 河津正和
河津正和 株式会社博報堂アイ・スタジオ所属 • 主にバックエンド領域のテクニカルディレクター • 新規事業開発的なお仕事をしてます • コンテナ技術とか機械学習とか電子工作にも興味あり Twitter:@kawazu255_ Qiita:kawazu255
note:kawazu255
以前作ったもの • メロディ・伴奏・ドラムのmidi音源 を自動生成し続けるプログラム • ぼっちでも音楽セッションしたかっ た • StayHome先駆けプロダクト
BERT
BERTとは? • Googleが発表した自然言語処理モデルで、2019年からは検索エンジンにも使用さ れている • 文脈理解の精度が評価 • 様々な自然言語処理タスクにファインチューニングする前の、ベースモデルとしても 使用できる •
BERT日本語学習済みモデル->https://yoheikikuta.github.io/bert-japanese/
気になるなあと思いつつもよくわからなかった ->実際に触りつつ、どんなことができるか試したい
試したこと • 文章同士の関連度合いを出してみる • 参考にさせていただいた記事:BERT(Keras BERT)を使用した文章ベクトル作成 https://qiita.com/jjking/items/a9fe907f992ccaefbd2a
文章の特徴量を出す(768次元ベクトル) ... 「今日は月が 綺麗ですね」
比較したい2つの文章のベクトルを出した後、 コサイン類似度を用いて それぞれの関連度合いを出してみる
CASE1:厚生労働省のサイト文言 • 文章1:「国内で報告された新型コロナウイルス感染症の感染者に係る報告を基に した追跡調査の結果、感染者間の関連が認められた集団(クラスター)を地図上に 表示したものです。」 • 文章2:「クラスターは、現時点で、同一の場において、5人以上の感染者の接触歴 等が明らかとなっていることを目安として記載しています。家族等への二次感染等 を載せていません。また、家族間の感染も載せていません。」 •
コサイン類似度:0.24
CASE2:厚生労働省のサイト文言+吾輩は猫である • 文章1:「国内で報告された新型コロナウイルス感染症の感染者に係る報告を基に した追跡調査の結果、感染者間の関連が認められた集団(クラスター)を地図上に 表示したものです。」 • 文章2:「吾輩は猫である。名前はまだない。どこで生れたか頓(とん)と見当がつか ぬ。何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している。 吾輩はここで始めて人間というものを見た。」 •
コサイン類似度:0.41
せっかくなので色々試してみましょう
CASE3:ふなっしー&くまもんTwitter • 文章1:「みんなー今日も一日お疲れ様なっしー♪ヾ(。゜▽゜)ノはふーん♪ ぱふぇー♪夏になったら旅行行きたいなっしー♪明日もみんな良いこと 有りますように梨汁ブシャー:*もやぱふぇ」 • 文章2:「なんだか眠くなってきた・・・モン・・・おやくま〜☆」 • コサイン類似度:0.21
CASE4:西野カナ&あいみょん歌詞 • 文章1:「会いたくて 会いたくて震える君想うほど遠く感じてもう一度聞 かせて嘘でもあの日のように"好きだよ"って… 」 • 文章2:「麦わら帽子の君が揺れたマリーゴールドに似てるあれはまだ 空が青い夏のこと懐かしいと笑えたあの日の恋」 •
コサイン類似度:0.18
CASE5:西野カナの歌詞(曲違い) • 文章1:「会いたくて 会いたくて震える君想うほど遠く感じてもう一度聞 かせて嘘でもあの日のように"好きだよ"って… 」 • 文章2:「これからもどうぞよろしくねこんな私だけど笑って許してね ずっと大切にしてね永久保証の私だから」 •
コサイン類似度:0.16
CASE6:西野カナ&マキシマムザホルモン歌詞 • 文章1:「会いたくて 会いたくて震える君想うほど遠く感じてもう一度聞 かせて嘘でもあの日のように"好きだよ"って… 」 • 文章2:「ブッイキス!!てめーらブッイキス!!I wanna ブッイキス!!てめーら
ブッイキス!!ブッイキス!!貴様らブッイキス!!貴様らブッイキス!!貴様ら ブッイキス!!」 • コサイン類似度:0.36
CASE7:ミルクボーイ&アンジャッシュネタ • 文章1:「いきなりですけどね うちのオカンがね 好きな朝ごはんがあるら しいんやけど あっ そーなんや その名前をちょっと忘れたらしくてね 朝 ごはんの名前忘れてもうて どうなってんねそれ でまあ色々聞くんやけど な 全然分からへんねんな 分からへんの? いや ほな俺がね おかん の好きな朝ごはん ちょっと一緒に考えてあげるから どんな特徴ゆうてた かってのを教えてみてよ あのー甘くてカリカリしてて で 牛乳とかかけて 食べるやつやって言うねんな おー コーンフレークやないかい その特徴 はもう完全にコーンフレークやがな コーンフレークなぁ
」
CASE7:ミルクボーイ&アンジャッシュネタ • 文章2:「お巡りさん、遅いな…。通報して何分経ってると思ってるんだよ。 早く来ないとのぞき魔、どっかに逃げちゃうよ。まだ犯人のやつ絶対あの 女子寮の近くにいるはずなんだよな。はい、今のぞきの通報を受けた現場 に到着しました。明らかな不審者発見。尋問します。あの、ちょっとすいま せん。お巡りさん。この辺りでのぞきがあったって通報受けたんだけど。そ れ、僕です。君か!君なんだね。はい。さっきまであそこの女子寮の風呂 をずっとのぞいてました。何、堂々と言ってるんだよ。状況、分かってる? 私、警官だよ。はい。早く逮捕してくださいよ!なんなんだ君!新しいタイ
プだな。君さ、なんでこんなことしちゃったの?」 • コサイン類似度:0.15
やってみて思ったこと • 肌感的にはそこそこの傾向は見て取れる • ただあくまで傾向にすぎない。どの閾値から先が「関連度が高い」となるのかは ルールなし。データによりけり • ここで出してる関連度については、「絶対値」的な判断よりも「相対値」的に判断した 方が良いかも •
書き方・表現の仕方からどのくらい影響を受けているのかを探る必要はありそう • 特定の文章に特化させるならば、ファインチューニングが必要かも • 学習モデルの読み込みが重くてアプリケーション化するには要検討 • 浮気はいけないこと
オンライン会議支援サービス 開発中! ←サービス紹介ページです(事前登録できます)