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
machine-learn
Search
kanayannet
October 22, 2017
Programming
0
370
machine-learn
kanayannet
October 22, 2017
Tweet
Share
More Decks by kanayannet
See All by kanayannet
生成AIの使いどころ
kanayannet
0
140
github copilot と 心理的安全性
kanayannet
0
180
FW と ライブラリ の考え方
kanayannet
0
210
TDDと今まで
kanayannet
0
530
個人開発 稼げなくてもいいアプリ
kanayannet
0
510
システムの堅牢性
kanayannet
0
280
Agile的学習方法
kanayannet
0
270
GUIをエンジニアが考える
kanayannet
0
240
http2http3
kanayannet
0
190
Other Decks in Programming
See All in Programming
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
6
340
try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう
kajitack
3
190
Parallel::Pipesの紹介
skaji
2
780
ruby.wasmとWebSocketで遊ぼう!
lnit
0
150
ソフトウェア品質特性、意識してますか?AIの真の力を引き出す活用事例 / ai-and-software-quality
minodriven
19
6.4k
TypeScript だけを書いて Tauri でデスクトップアプリを作ろう / Tauri with only TypeScript
tris5572
2
490
Digging into the Matrix: Practicing Code Archaeology
arthurdoler
PRO
0
210
Agent Rules as Domain Parser
yodakeisuke
1
210
TypeScriptのmoduleオプションを改めて整理する
bicstone
4
400
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
460
生成AI時代のフルスタック開発
kenn
9
2.1k
抽象データ型について学んだ
ryounasso
0
200
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.9k
The Invisible Side of Design
smashingmag
299
50k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.7k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Balancing Empowerment & Direction
lara
1
77
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
How STYLIGHT went responsive
nonsquared
100
5.6k
Gamification - CAS2011
davidbonilla
81
5.3k
Transcript
機械学習で奇妙な冒険 @kanayannet Gunma.web #29
自己紹介 名前 : 金澤 宏昭 Twitter : @kanayannet Facebook :
HiroakiKanazawa
機械学習と私 2011 年9 月 spam_ lter-druby---classi er- https://github.com/kanayannet/spam_ lter- druby---classi
er-
おそらく まだ「機械学習」という言葉が流行ってなかった時代。
こっちの言葉の方が流行ってたかな? ベイズの定理 ベイジアンフィルター レコメンドエンジン
全部話すと大変 1 日じゃ終わらない。
今日話すこと なぜ話すのか? 機械学習の種類 奇妙な冒険 まずは動かしてみる 実験 まとめ
なぜ話すのか? 機械学習 という言葉が流行してから数年がたった。 web-db press でも扱われたし(8 月) そろそろ話してもい いかな?
機械学習の種類 アルゴリズムの分類 教師あり学習 教師なし学習 強化学習...etc
今日取り扱うもの 教師あり学習
理由 数年前作ったものを現在でも動くのか? 試したかった。 おそらく、動かない( 予想) 現代風に作り直すことである程度勉強になる
理由 教師なし学習.. 難しい!!>< 正直に言う、解らない!! 初心者でも解りそうな本あったら教えて!!
奇妙な冒険 JOJO の奇妙な冒険
なぜ? 名台詞がたくさんある!
何を学習させるの? 各キャラクターと名台詞
最終的に何をさせるの? 名台詞をIT 勉強会風に修正し どのキャラクターが言いそうな言葉か? 判定してもらう。
PG の構成 daemon.rb server 入力されたデータから学習し保存 入力されたデータから判定結果を返す mecab 形態要素解析 classi er
ベイズの定理 を利用 Classi er::Bayes json/pure
json/pure 学習用データをjson 形式で保存する drb/drb 通信した別プロセスとobject 空間を共有
PG の構成 test_inp.rb client 入力された学習データをサーバに渡す 判定用文章をサーバに渡し、判定結果を出力 drb/drb 通信した別プロセスとobject 空間を共有
まずは動かしてみる その前に ざっくりと コードを見てもらいます。 細かいところは省く
学習させるデータ構造 { キャラキター名}{ セリフ} = true
今からIT 勉強会風に修正します デモ中....
実験 学習データを少なくすると、どうなるか? 擬音は判定できるの?
まとめ 学習データは少ないと精度が悪い 単純なパターンマッチよりも精度が悪い 特殊な擬音 例 辞書に追加するなり、チューニング必須
参考文献 https://docs.ruby-lang.org/ja/latest/library/drb.html http://d.hatena.ne.jp/zariganitosh/20070712/1184230093 https://qiita.com/mhiro216/items/391ae79848129ac1cb2d
余談 classi er classi er-reborn が出ている こっちの方がいいかも? mecab natto が出ている
こっちの方がいいかも?
ガチな計算式 ベイズの定理 解りませんので、質問困る汗
ご清聴 ありがとうございました!