할 일의 우선순위를 매기기: 스팸(Spam) 분류 예

Slides:



Advertisements
Similar presentations
김수연 Capstone Design Realization Cost Reduction through Deep Artificial Neural Network Analysis.
Advertisements

인공지능 소개 부산대학교 인공지능연구실. 인공 + 지능 인공지능이란 ? 2.
A SMALL TRUTH TO MAKE LIFE 100% IfABCDEFGHIJKLMNOPQRSTUVWXYZ is equal to
WEEK 1 DAY 1 COURSE INTRODUCTION
연관규칙기법과 분류모형을 결합한 상품 추천 시스템:
재료수치해석 HW # 박재혁.
Hamming Code 이근용. 2 Error Control Error Detection Parity Check CRC Check Error Correction Hamming Code.
Lecture 9 프로그램 실행의 비용 computation cost – 시간 time, 메모리 memory – tractable vs intractable problems.
Regularization 과적합(overfitting) 문제 Machine Learning.
Fifth theme : Writing Class Superhero powers
Machine Learning to Deep Learning_2
Multiple features Linear Regression with multiple variables (다변량 선형회귀)
(Classification – Advanced Techniques)
정 의 학습의 일반적 정의 기계학습(Machine Learning)의 정의
LISTEN AND UNDERSTAND LISTEN AND SING
A SMALL TRUTH TO MAKE LIFE 100%
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
제4장 자연언어처리, 인공지능, 기계학습.
7장 : 캐시와 메모리.
EPS Based Motion Recognition algorithm Comparison
신제품 출시 - EliA PR3S.
Numerical Analysis - preliminaries -
화학기기종합설계 2014_2 FAKE OIL DETECTOR FOD™ 김기훈 이경석.
Fifth theme Superhero powers
Genetic Algorithm 신희성.
Ch. 10 Algorithm Efficiency & Sorting
제 14 장 거시경제학의 개관 PowerPoint® Slides by Can Erbil
제 3 장 신경회로망 (Neural Networks)
Cluster Analysis (군집 분석)
숭실대학교 마이닝연구실 김완섭 2009년 2월 8일 아이디어  - 상관분석에 대한 연구
Semi-supervised Document classification (probabilistic model and EM)
A SMALL TRUTH TO MAKE LIFE 100%
머신 러닝 2 ㈜ 퀀트랩.
보고서 #5(제출기한: 10/14) 다음 문제를 해결하시오.
VistA Internationalization Phase 2 – Menu System l10n
- 나는 내 마음의 주인공 – 집단상담프로그램 인제대학교 교육대학원 상담심리전공 하 정 선
Medical Instrumentation
Parallel software Lab. 박 창 규
PCA Lecture 9 주성분 분석 (PCA)
모형 선택과 적합도 지수.
Data Mining Final Project
정보 추출기술 (Data Mining Techniques ) : An Overview
Progress Seminar 신희안.
약속 November 9th, 2012.
정보처리학회논문지 B 제10-B권 제1호(2003.2) 김만선, 이상용
Problem description and pipeline
01 로그의 정의 ⑴ 일 때, 양수 에 대하여 을 만족시키는 실수 는 오직 하나 존재한다. 이때 를
알고리즘 알고리즘이란 무엇인가?.
Internet Computing KUT Youn-Hee Han
바넘효과 [Barnum effect] 사람들이 보편적으로 가지고 있는 성격이나 심리적 특징을 자신만의 특성으로 여기는 심리적 경향. 19세기 말 곡예단에서 사람들의 성격과 특징 등을 알아 내는 일을 하던 바넘(P.T. Barnum)에서 유래하였다. 1940년대 말 심리학자인.
7. Quicksort.
Word2Vec.
Support Vector Machine
점화와 응용 (Recurrence and Its Applications)
Practical English 2 Grading Policy
1.예수 거룩한 주 예수 생명의 11.예수 권능의 주 예수 19.그 누구도 그 누구도 21.It's all about you.
Can Automatic Calculating Machines Be Said To Think?
제 3장. Regular Languages 와 Regular Grammars
.Net FrameWork for Web2.0 한석수
DNA Implementation of Version Space Learning
Progress Seminar 선석규.
[CPA340] Algorithms and Practice Youn-Hee Han
A SMALL TRUTH TO MAKE LIFE 100%
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
교착 상태 해결 : 교착 상태 탐지 교착 상태 탐지(Deadlock Detection)
Progress Seminar 신희안.
Python 라이브러리 딥러닝 강의소개 정성훈 연락처 : 이메일 :
Deep Learning Basics Junghwan Goh (Kyung Hee University)
Progress Seminar 권순빈.
Model representation Linear regression with one variable
Presentation transcript:

할 일의 우선순위를 매기기: 스팸(Spam) 분류 예 Machine learning system design 할 일의 우선순위를 매기기: 스팸(Spam) 분류 예 Machine Learning

스팸(spam) 분류기 구축하기 Deal of the week! Buy now! Hey Andrew, From: cheapsales@buystufffromme.com To: ang@cs.stanford.edu Subject: Buy now! Deal of the week! Buy now! Rolex w4tchs - $100 Med1cine (any kind) - $50 Also low cost M0rgages available. From: Alfred Ng To: ang@cs.stanford.edu Subject: Christmas dates? Hey Andrew, Was talking to Mom about plans for Xmas. When do you get off work. Meet Dec 22? Alf

스팸(spam) 분류기 구축하기 감독(supervised) 학습. features of email. spam (1) or not spam (0). 특징 : 스팸/스팸아님을 나타내는 100 단어들을 선택한다. From: cheapsales@buystufffromme.com To: ang@cs.stanford.edu Subject: Buy now! Deal of the week! Buy now! 주의: 실제로는, 손으로 100 단어들을 선택하기 보다는, 훈련자료에서 가장 자주 나오는 단어들을 (10,000 ~ 50,000) 선택한다.

E.g. “honeypot” 프로젝트. 스팸(spam) 분류기 구축하기 낮은 오류를 갖게 하기 위해 당신의 시간을 어떻게 사용하는가? 많은 자료를 수집 E.g. “honeypot” 프로젝트. (이메일 해더로부터) 이메일 라우팅(routing) 정보에 기초한 정교한 특징을 개발. 메시지 내용에 대한 정교한 특징 개발, e.g. “discount” 와 “discounts” 를 같은 단어로 취급할 것인가? “deal” 과 “Dealer”는 어떻게 ? 구두점(punctuation)에 대한 특징은? 오타감지를 위한 정교한 특징을 개발 (e.g. m0rtgage, med1cine, w4tches.)

Machine learning system design 오류 분석 Machine Learning

추천 접근법 당신이 빨리 구현할 수 있는 간단한 알고리즘을 갖고 시작하시오. 그것을 구현하고, 상호-검증 자료에 대하여 시험하시오. 더 많은 자료 또는 더 많은 특징 등이 도움이 될 지를 알 수 있도록 학습커브를 그려보시오. 오류분석(Error analysis): 당신의 알고리즘이 오류를 생성한 (상호검증자료에서의) 예들을 수동으로 검토한다. 오류가 생성되는 어떤 유형의 예에서 어떤 체계적인 경향을 발견할 수 있는 지를 본다.

500 examples in cross validation set 오류분석(Error Analysis) 500 examples in cross validation set 알고리즘이 100 이메일을 오분류하였다. 수동으로 100 오류를 검토하고, 다음에 기초하여 분류한다: 어떤 유형의 이메일 인가? 당신은 어떤 단서(특징)가 분류기가 그들을 정확히 분류하는데 도움이 된다고 생각하는가? Pharma: Replica/fake: Steal passwords: Other: 의도적 철자 오기: (m0rgage, med1cine, etc.) 흔치 않은 이메일 라우팅(routing): 흔치 않은 (spamming) 구두점:

수치평가(numerical evaluation)의 중요성 discount/discounts/discounted/discounting 들을 같은 단어로 취급해야 하는가? “stemming” software (E.g. “Porter stemmer”)를 사용할 수 있다. universe/university. 오류 분석이 이들이 성능을 개선할 수 있다고 결정하는데 도움이 되지 않을 것이다. 유일한 해결법은 시도해보고 작동되는지 보는 것이다. 알고리즘의 stemming 사용과 무사용의 성능에 대한 수치검증 (e.g., cross validation error) 이 필요한다. Without stemming: With stemming: Distinguish upper vs. lower case (Mom/mom):

편향된(skewed) 클래스에 대한 오류 행렬 Machine learning system design 편향된(skewed) 클래스에 대한 오류 행렬 Machine Learning

Cancer classification example 로지스틱 회귀모델 을 훈련. ( if cancer, otherwise) 시험 자료에 대하여 당신은 1% 오류 (99% 정확한 진단)를 얻었다. 단지 환자의 0.50% 만 암을 갖고 있다. function y = predictCancer(x) y = 0; %ignore x! return

정확도(Precision)/재현율(Recall) :우리가 감지하기를 원하는 흔치 않은 클래스가 존재 정확도 (우리가 이라고 예측한 모든 환자들 중에서, 어느 비율이 실제로 암을 갖고 있는가?) 재현율 (실제로 암을 갖고 있는 모든 환자들 중에서, 어느 비율로 암을 갖고 있다고 정확히 감지했는가?)

Trading off precision and recall Machine learning system design Trading off precision and recall Machine Learning

no. of predicted positive true positives 정확도와 재현율 상충관계 precision = no. of predicted positive Logistic regression: Predict 1 if Predict 0 if true positives recall = no. of actual positive 우리가 매우 확신할 경우에만 (cancer) 라고 예측하기를 원한다면. 1 0.5 Recall Precision 우리가 암의 경우를 놓치기를 피하고 싶다면 (avoid false negatives). More generally: Predict 1 if threshold.

precision/recall 값을 어떻게 비교하는가? F1 Score (F score) precision/recall 값을 어떻게 비교하는가? Precision(P) Recall (R) Average F1 Score Algorithm 1 0.5 0.4 0.45 0.444 Algorithm 2 0.7 0.1 0.175 Algorithm 3 0.02 1.0 0.51 0.0392 Average: F1 Score:

Data for machine learning Machine learning system design Data for machine learning Machine Learning

Designing a high accuracy learning system Training set size (millions) Accuracy E.g. Classify between confusable words. {to, two, too}, {then, than} For breakfast I ate _____ eggs. Algorithms Perceptron (Logistic regression) Winnow Memory-based Naïve Bayes “It’s not who has the best algorithm that wins. It’s who has the most data.” [Banko and Brill, 2001]

예 : For breakfast I ate _____ eggs. 큰 자료 근거 특징 이 를 정확히 예측할 수 있을 만큼 충분한 정보를 가진다. 예 : For breakfast I ate _____ eggs. 반대 예: Predict housing price from only size (feet2) and no other features. 유용한 시험 : Given the input , can a human expert confidently predict ?

큰 자료 근거 Use a learning algorithm with many parameters (e.g. logistic regression/linear regression with many features; neural network with many hidden units). Use a very large training set (unlikely to overfit)