بخشی از پاورپوینت

اسلاید 2 :

رئوس مطالب
مروری بر پدیده اسپم
روشهای مبتنی بر یادگیری برای فیلترکردن اسپم ها
روش Naïve Bayesian برای فیلترکردن اسپم
معیارهای ارزیابی
بررسی نتایج
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian

اسلاید 3 :

Spam/junk/bulk Emails
پیغامهایی در Inbox شما هستند که شما آن ها را نخواسته و زمانی را برای بیرون انداختن آنها صرف می کنید.
در مقابل آن : نامه های الکترونیکی معتبر یا ham
75-80% از حجم نامه های الکترونیکی را اسپم ها (spam) تشکیل می دهند
باعث ایجاد ترافیک شده و فضای حافظه و قدرت محاسباتی را از بین می برد
باعث ضرر اقتصادی
هزینه ای بالغ بر 50 میلیون دلار بر اقتصاد امریکا در سال 2005 وارد ساخته
با توجه به شخص و سازمان گیرنده ایمیل، اسپم ها تعریف می گردند
ایمیل های در حوزه هنر برای شخصی که علاقه ای به هنر ندارد اسپم تلقی می شود
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
ایمیل های اسپم

اسلاید 4 :

Subject: AWARD CONFIRMATION

We wish to congratulate you over your email success in our computer BALLOTING SWEEPSTAKE held on 16th Nov, 2007. This is a millennium scientific computer game in which email addresses were used. It is a promotional program aimed at encouraging internet users; therefore you do not need to buy ticket to enter for it.
“ You have won!!!!“, you are almost winner of $.
“Your order”, your item$ have to be $hipped
“Lose your weight”, no subscription required
“Assistance required”, an amount of million 25 US$

“Download it”, free celebrity wallpapers download
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
نمونه هایی از ایمیل های اسپم

اسلاید 5 :

بیشتر به منظور اهداف اقتصادی است
تبلیغ برای یک کالای خاص، سرویس خاص و یا یک ایده خاص
فریب کاربران برای استفاده از اطلاعات محرمانه آنها  phishing
انتقال یک نرم افزار خرابکار به کامیپوتر کاربر (مثلاً ویروس)
ایجاد یک خرابی به صورت موقتی در Mail-Server
ایجاد ترافیک
پخش مطالب غیراخلاقی

اسپم ها دائما در حال تغییر محتوا و شکل هستند، برای اینکه توسط آنتی اسپم ها شناسایی نشوند.
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
برخی از اهداف ایمیل های اسپم

اسلاید 6 :

روشهای اقتصادی
دریافت وجه برای ارسال ایمیل : مانند پروتکل Zmail
روشهای قانون گذاری مانند قانون US-CAN SPAM
امن سازی بسترانتقال ایمیل
تغییر پروتکلهای انتقال ایمیل (مثل SMTP) و ارانه پروتکل های جایگزین مانند SenderId
کنترل ایمیل های خروجی در برابر کنترل ایمیل های ورودی

فیلترینگ ایمیل ها
اسپم و فیلترکردن عمومی آن با استفاده از روش Naïve Bayesian
تکنیک های مبارزه با اسپم ها و کنترل آنها
1- فیلترینگ براساس یکسری قاعده از پیش تعریف شده:
if $SENDER$ contains “schacht” $ACTION$=$INBOX$ [HAM]
if $SUBJECT$ contains “Win” $ACTION$=$DELETE$ [SPAM]
if $BODY$ contains “%%Money%%” $ACTION$=$DELETE$ [SPAM]

مشکلات: قوانین ثابت، وابستگی به زبان، چه تعداد قانون؟، چه کسی باید قوانین را تعریف
کند

2- فیلترینگ براساس لیست سیاه و سفید (Black list-white list)

3- فیلترینگ مبتنی بر یادگیری (آماری) و با استفاده از ویژگیهای پیغامها

اسلاید 7 :

در یادگیری ماشینی برای عمل دسته بندی (Classification) از نمونه داده هایی (ایمیل هایی) که از قبل فراهم شده است(داده آموزش یا training) و هر یک دسته(کلاس،برچسب) مشخص دارد، استفاده کرده و دسته(کلاس) یک نمونه جدید(تست) را تعیین می کنیم.



بردار پارامترها( ویژگی ها) θ حاصل آموزش دسته بند با استفاده از یک مجموعه داده است که قبلاً جمع آوری شده است
نیز تابع آموزش (Training) می باشد

تست داده جدید: m’ یک ایمیل جدید است و دسته آن را می خواهیم (spam or ham?)
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
فیلترینگ مبتنی بر یادگیری (آماری) و با استفاده از ویژگیهای پیغامها
مجموعه داده آموزش (training Data): M

دو نوع کلاس(برچسب) : اسپم و ایمیل معتبر (ham)

اسلاید 8 :

یادگیری Offilne
داده های آموزش با کلاس(برچسب) مشخص، قبلا جمع آوری شده است و ما در طی دسته بندی از همین داده های ثابت استفاده می کنیم
Soha! sorry cannot reach at 18:00
hi, have you thought online credit?
..
یادگیری Online
کاربر طبقه بندی هایِ غلط دسته بند را تصحیح می کند و برچسب صحیح را معین می کند؛ به این ترتیب حجم داده آموزش به تدریج افزوده می شود و دانش دسته بند افزایش می یابد
مثال: در سرویس ایمیل Yahoo! می توان بر روی “spam” و یا “not spam” کلیک کرد و بدین ترتیب Yahoo! از کاربر Feedback می گیرد
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
متدهای یادگیری

اسلاید 9 :

اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
یادگیری Online: Yahoo Mail

اسلاید 10 :

اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
شمای کلی مدل
test
training
انتخاب ویژگی Feature Selection
(x2)
classify
Evaluate
Ham?
Spam?
ویژگیهای به صورت لغت (Tokenization)
ویژگی های وابسته به دامنه
ویژگیها ی به صورت عبارات دست ساخته
استخراج ویژگی ها
Feature Extraction
دسته بند(Classifier)
test

اسلاید 11 :

مراحل:
داده های آموزش شامل ایمیل های برچسب خورده
دو کلاس مشخص: Spam و Ham
استخراج ویژگی ها

توکن بندی متن 

تشخیص کلمات 

حذف Stopwords(مثل if,and اگر، به، با،.)

ریشه یابی کلمات (Stemming) 

حذف علامات نقطه گذاری مثل ؛ ، ..

ویژگیهای به صورت لغت

عبارات دست ساخته که متمایز کننده می باشند مثل$$Money$$
ویژگی های مشخصه دامنه مثل To، From، تاریخ ارسال پیام، اندازه پیام، .

انتخاب ویژگی های برتر : Feature Selection
دسته بندی ایمیل به عنوان اسپم و یا ایمیل معتبر
دسته با احتمال بیشتر = برچسب کلاس
ارزیابی نتایج (Precision/Recall)
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
مراحل مدل

اسلاید 12 :

این ویژگی ها نشانه هایی برای دسته بندی یک پیغام به اسپم و یا ایمیل معتبر است
ویژگی های یک ایمیل
کلمات (توکن ها)
free, win, online, weight, fortune, offer ،.
عبارات
“Free”, “only$”, “order now!”،.
کاراکترهای خاص
$pecial, grea8, 4u،.
سرآیند ایمیل (وابسته به دامنه)
نام فرستنده، آدرس ایمیل فرستنده و گیرنده، نام دامنه (مثل .edu، .ir، .com)، آدرس های IP
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
ویژگی(مشخصه) های یک پیام الکترونیکی

اسلاید 13 :

اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
ماتریس بردار ویژگی ها (با مقادیر باینری)
ویژگی ها

کلمات و عبارات همان ویژگی ها هستند، اگر در آن سند/ایمیل موجود باشند ، مقدارشان برابر 1 بوده
و اگر در آن سند/ایمیل موجود نباشند مقدارشان برابر صفر خواهد بود

اسلاید 14 :

برای ما کلماتی ارزش دارد که بتوانیم با استفاده از آنها دسته ها (اسپم و ایمیل معتبر) را تشخیص دهیم

در جدول بالا ویژگی X2 خاصیت تمایز در تشخیص دسته ایجاد کرده است و وبنابراین یک ویژگی ایده آل است.
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
انتخاب ویژگی ها (Feature Selection)
ویژگی
ایمیل

اسلاید 15 :

تا حد زیادی کیفیت classification به انتخاب ویژگی ها وابسته است
الگوریتم های خوبی چون PIL و MST براساس MI ارائه شده است
انتخاب و یژگی ها با الگوریتم های ژنتیک و یا hill climbing
روش خی-2 و IG بهترین روشهایی هتند که کلمات پرمعنا را به ما می دهند.
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
انتخاب ویژگی ها (ادامه)

اسلاید 16 :

Naïve Bayesian

K- نزدیک ترین همسایه (k-NN)

SVM (Support Vector Machine)
توسط یک ابرصفحه کلاسها از هم جدا می شوند: برای وقتی که تنها دو کلاس داریم

فرکانس کلمه – فرکانس معکوس سند (TF-IDF)
Term Frequency- Inverse Document Frequency

درخت های تصمیم گیری
C4.5
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
برخی از الگوریتم های مبتنی بر یادگیری برای دسته بندی ایمیل ها

اسلاید 17 :

احتمال شرطی : P(B | A) = P(A|B) * P(B) / P(A)
X={x1, x2, x3, x4…xn} بردار ویژگی ها می باشد
مجموعه ویژگی ها: X={“online”, “credit”, “now!!!”…”Zinc”}
C={c1, c2, c3, c4…ck} مجموعه کلاسها
در اینجا دو کلاس داریم: C={“SPAM”, “LEGITIMATE”}.

ساده ترین روش برای محاسبه فرمول احتمال بیزین این است که فرض کنیم که هر ویژگی Xi بصورت شرطی مستقل از سایر ویژگی هاست
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
فیلتر کردن اسپم با استفاده از دسته بند Naïve Bayesian

اسلاید 18 :

فرض استقلال:
n= تعداد ویژگی ها

هر کلاس (اسپم و یا ایمیل معتبر) که این مقدار احتمالی به ازای آن بزرگتر باشد، برچسب آن ایمیل خواهد بود.
برای مقایسه مقدار کلاس اسپم با کلاس «ایمیل معتبر» نیازی به محاسبه مخرج کسر فوق نیست چراکه این مقدار برای هر کلاس یکسان است
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
فیلتر کردن اسپم با استفاده از دسته بند Naïve Bayesian(ادامه)

اسلاید 19 :

False Psitive شامل ایمیل هایی می شود که به اشتباه جزو اسپم ها دسته بندی می گردند. :
False Negative هم شامل ایمیل هایی می شود که به اشتباه جزو ایمیل های معتبر دسته بندی می شوند.:
!!! طبقه بندی اشتباه یک ایمیلِ معتبر به عنوان اسپم نسبت به طبقه بندی اشتباه یک اسپم به عنوان ایمیلِ درست، هزینه بدِ بیشتری در بردارد!
اگر هزینه λ بار بدتر از هزینه باشد، آنگاه زمانی یک ایمیل را جزو اسپم ها طبقه بندی می کنیم که

با فرض داریم که t برابر است با . در اینجا t برابر 0/999 گرفته شده است.
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
طبقه بندی به عنوان اسپم

اسلاید 20 :

از feature selection برای کاهش ابعاد ویژگی/داده استفاده شده است
بعضی اوقات می توان از feature transforming هم استفاده کرد
LSI & SVD
یک انبوه داده(corpus)از ایمیلهای واقعی : شامل 1578 ایمیل بیهوده و 211 ایمیل معتبر  1538 داده برای آموزش فیلتر و 251 عدد برای تست

ویژگیهای گرفته شده از توکن های متن
توکن های نادر (با رخداد کمتر از 3 در کل corpus) حذف شدند
35 ویژگی عبارتی اضافه شدند
20 ویژگی غیر متنی و وابسته به دامنه اضافه شدند
تعداد کاراکترهای غیر الفبایی در عنوان ایمیل به عنوان ویژگی مفیدی شناسایی شد
500 ویژگی برتر با استفاده از Mutual Information انتخاب شد
اسپم و فیلترکردن آن با استفاده از روش Naïve Bayesian
آزمایش

در متن اصلی پاورپوینت به هم ریختگی وجود ندارد. برای مطالعه بیشتر پاورپوینت آن را خریداری کنید