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 Learning and Sentiment Classification i...
Search
Matt D.
May 30, 2011
Programming
1k
1
Share
Machine Learning and Sentiment Classification in Ruby
Matt D.
May 30, 2011
Other Decks in Programming
See All in Programming
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
240
Java 21/25 Virtual Threads 소개
debop
0
350
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
170
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.9k
Exploring RuboCop with MCP
koic
0
340
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
780
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
890
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
2
290
ファインチューニングせずメインコンペを解く方法
pokutuna
0
300
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
200
KagglerがMixSeekを触ってみた
morim
0
380
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
880
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Building Adaptive Systems
keathley
44
3k
What's in a price? How to price your products and services
michaelherold
247
13k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Raft: Consensus for Rubyists
vanstee
141
7.4k
sira's awesome portfolio website redesign presentation
elsirapls
0
210
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Transcript
.BDIJOF -FBSOJOH BOE 4FOUJNFOU $MBTTJGJDBUJPO JO 3VCZ by Matt Drozdzynski
@matid
None
.BDIJOF -FBSOJOH … or how to teach your computer to
do back flips for you.
4FOUJNFOU $MBTTJGJDBUJPO … or how to quantify people’s opinions.
#euruko is definitely the most amazing Ruby conference ever!
I’ve been to many dreadful conferences, but #euruko is certainly
not one of them.
Ruby is a true delight compared to how horrendous Java
can be.
d JO 3VCZ
None
None
%BUB (BUIFSJOH
None
None
-BOHVBHF "DDVSBDZ 0% 25% 50% 75% 100% 2007 English Spanish
German Italian Polish
"OOPUBUJPOT … or I have the tweets—now what?
%BUB $MFBOJOH … or how to separate wheat from the
chaff.
'FBUVSF 3FEVDUJPO … or Matt’s crash course in selective ignorance.
$MBTTJGJDBUJPO … and the ‘not so rocket’ science behind it
all.
/BJWF #BZFT Simple and robust Assumes independence of features Scalable!
require "ankusa" require "ankusa/memory_storage" storage = Ankusa::MemoryStorage.new classifier = Ankusa::NaiveBayesClassifier.new(storage)
training.each do |tweet| classifier.train tweet.sentiment, tweet.to_s end sentiment = classifier.classify tweet.to_s
.BYJNVN &OUSPQZ No independence assumptions Suffers from overfitting Substantially slower
than Naive Bayes
require "maxent_string_classifier" classifier = MaxentStringClassifier::Loader.train(Classifier.root + "max_ent" + "data") classification
= classifier.classify tweet.to_s
4VQQPSU 7FDUPS .BDIJOFT Non-probabilistic binary linear classifier Only directly applicable
to two-class problems “Works by constructing a set of hyperplanes in a high or infinite dimensional space”—what?
None
require "eluka" classifier = Eluka::Model.new training.each do |tweet| classifier.add(tweet.features, tweet.sentiment)
end classifier.build sentiment = classifier.classify tweet.features
$PODMVTJPOT … or is the whole thing worth the hassle?
2VFTUJPOT
@matid spkr8.com/t/7678 bit.ly/matid-dissertation bit.ly/matid-dissertation-pdf 5IBOLT