هرزنامه‌ها که معمولا تبلیغاتی هستند، ویژگی‌های مشابهی دارند. مثلا آنهایی که محصولی را تبلیغ می‌کنند از قیمت آن حرف می‌زنند و یا می‌گویند که فرصت‌تان چقدر استثنایی است. حتی رنگارنگ بودن بخش‌های نوشته می‌تواند نشان از بی‌ارزش بودن آن باشد. از آنجایی که این نشانه‌های قطعی نیستند و ما هم در ایمیل‌هایی که برای هم می‌فرستیم ممکن است مثلا از قیمت حرف بزنیم، نمی‌توانیم با چند قانون ساده هرزنامه‌ها را جدا کنیم. این‌جور مواقع سعی می‌کنیم از روی مجموعه هرزنامه‌های موجود یاد بگیریم که هرزنامه‌ها چه ویژگی‌هایی دارند.

۱. مقدمه

امروزه ایمیل به یکی از رایج ترین ابزارهای ارتباطی در زندگی روز مره بشر تبدیل شده است. این ارتباط میتواند یک مکالمه ساده دوستانه باشد ویا یک موضوع مهم تجاری. ایمیل متدی سریع و ارزان قیمت برای برقراری این ارتباط است متاسفانه همین عمومیت و سادگی استفاده ازایمیل باعث شده تا موردسوء استفاده هرزنامه نویسان و کلاهبرداران اینترنتی قرار بگیرد ، [7] مسئله ای که روزی کم اهمیت جلوه می نمود ، امروزه به معضلی جدی برای میلیون ها کاربر ایمیل بدل شده است و استفاده از ابزار ومتدهایی برای شناسایی و فیلترهرزنامه ها ضرورتی غیراقبل انکار است . نمودار زیر موضوعات اصلی هرزنامه ها را نشان می دهد .

توضیح تصویر

تاکنون فیلترهای ضدهرزنامه مختلفی عرضه شده اند که اکثر آنها براساس تطبیق قوانین ثابت عمل میکنند .قوانین این سامانه ها به صورت دستی توسط کاربر تعیین می شوند و شامل ویژگی ها و مشخصات ثابت نامه های الکترونیکی نامعتبر یا هرزنامه هستند و عمل حذف هرزنامه براساس آنها انجام می شود مثلاً فیلترهای استفاده شده در یاهو که کاربر نشانی هایی را به عنوان فرستنده هرزنامه معرفی کرده و سرویس دهنده نامه های الکترونیکی براساس نشانی های معرفی شده ، هر نامه الکترونیکی دریافتی از آنها را جداگانه ذخیره یا حذف می کند.
روشهای دیگر استفاده از فهرست های سیاه 1 یا سفید ، استفاده از واژه های کلیدی ، فیلترهای قانون-پایه 2 و غیره هستند. اغلب این این روش ها با استفاده از ویژگی های موجود در سرپیام نامه های الکترونیکی ، هرزنامه ها را شناسایی و فیلتر می کنند .این روش ها بدون نیاز نرم افزار فیلترکردن ، توسط سرویس دهندگان پست الکترونیکی استفاده می شوند.
اشکال چنین روشهایی این است که قوانین آنها ثابت بوده و باید توسط کاربر تعیین شود و فرستندگان هرزنامه نیز می توانند با ترفند های مختلفی این فیلترها را فریب داده و هرزنامه های خویش را از آنها عبور دهند.
برخی برای فیلتر کردن هرزنامه ها به صورت کارا ، تنها از یک روش استفاده نمی کنند ، بلکه تعدادی از روش ها با هم ترکیب می شوند تا به دقت بیشتری دست پیدا کنند . برای مثال spam assassin که یک فیلتر متن باز است ، از روشهای تحلیلی سرپیام3 ، فهرست سیاه ، فیلتر بیزین و فیلتر های مشارکتی به طور همزمان بهره می برد .

روش های فیلتر کردن هرزنامه

به طور کلی روش های موجود برای فیلتر کردن هرزنامه می توانند دارای قابلیت یادگیری و یا بدون این قابلیت باشند. فیلترهایی که بدون قابلیت یادگیری هستند ، عموما بر اساس تطبیق قوانین ثابت عمل میکنند .که این قوانین اکثراً به صورت دستی و توسط کاربر تعیین می شوند .ولی روش های مبتنی بر قابلیت یادگیری ، با یادگیری ویژگی های هرزنامه ها ، سعی در فیلتر کردن آنها می کنند .از جمله شیوه های محبوب در سالهای اخیر ، شناسایی بر اساس محتوای4 هرزنامه است ، که می توان آن را نوعی دسته بندی متن5 به حساب آورد.
در نتیجه روش های موجود برای فیلتر کردن هرزنامه ها را میتوان به سه دسته زیر تقسیم کرد که در هر دسته ، این امکان وجود دارد تا بتوان فیلتری با قابلیت یادگیری و یا بدون این قابلیت طراحی نمود.

  1. فیلتر درسطح شبکه :
    اغلب این روش ها با استفاده از از ویژگی های موجود در سرپیام نامه های الکترونیکی ، هرزنامه ها را شناسایی و فیلتر میکنند . این روش ها بدون نیاز به نرم افزار فیلتر کردن ، توسط بسیاری از سرویس دهندگان پست الکترونیکی ، استفاده می شوند . در این سطح فیلتر های بسیاری طراحی شده اند که مهمترین آن ها فهرست سیاه و سفید است .

  2. فیلتر در سطح سرور:
    این گونه فیلتر ها با شناسایی هرزنامه ها و فیلتر کردن آن ها ، باعث صرفه جویی در اتلاف پهنای باند می شوند . همچنین چون هرزنامه ها به تعداد زیادی از کاربران فرستاده می شوند ، مسدود کردن آن ها می تواند کاهش زیادی در حجم هرزنامه نامه هایی که باید ذخیره و تحویل شوند ، داشته باشد . در این سطح هم فیلترهای بیشماری طراحی شده اند، مانند فیلتر های گروهی 6 .

  3. فیلتر در سطح کاربر نهایی7 :
    فیلترهای موجود در این سطح برخلاف روش های قبلی مبتنی بر دانش هستند و باید در یک مرحله تحت عنوان فراگیری ، قوانین لازم برای فیلتر کردن نامه ها را استخراج کنند . از مهمترین روش های موجود در این بخش ، فیلتر های مبتنی بر محتوا است . فیلتر های مبتنی بر محتوا سعی می کنند که با استفاده از محتوای متنی نامه تشخیص دهند که آیا یک نامه هرزنامه هست یا نه . فیلتر های مبتنی بر محتوا به دو گروه فیلتر های مبتنی بر قانون و فیلترهای مبتنی بر یادگیری ماشین تقسیم می شوند .

۲. کارهای مرتبط

در بخش کارهای مرتبط تمرکز خود را بر روی روش های مبتنی بر یادگیری ماشین قرار میدهیم و به بررسی چند نمونه از این روش ها در مقالات مختلف می پردازیم.

درخت پوشای بیزین8 :
درخت پوشای مینیمم یک نوع درخت است که در آن به غیر از گره ریشه تمامی گره ها حداکثر دارای دو والد می باشند .[3] این نکته حائز اهمیت است که ما از تکرار کلمات در مجموعه ایمیل ها به عنوان یک ویژگی در مساله طبقه بندی استفاده می کنیم و برای اینکه ما بهترین کارایی را داشته باشیم از انتخاب زیر مجموعه ای از خصوصیات مناسب استفاده می نماییم که به عنوان انتخاب کلمات مرتبط یاد می شود. در فیلترینگ ایمیل ها این بدین معنا است که ما می خواهیم یک زیر مجموعه ای از کلمات که در شناسایی تفاوت بین ایمیل های اسپم و غیر اسپم کمک می کند را مشخص کنیم .[10]

فرایند شناسایی ایمیل های اسپم مبتنی بر شبکه بیزین

فرآیند شناسایی ایمیلهای اسپم مبتنی بر شبکه بیزین از چندین مرحله تشکیل شده است. ما آن را به سه مرحله تقسیم نموده ایم, پیش پردازش, ساخت درخت پوشای مینیمم, و در نهایت ارزیابی و نتیجه گیری. در مرحله پیش پردازش, ما تمام کلماتی اضافه که زیاد استفاده می شوند( مانند the, as, a , ...) را خارج می کنیم, کلمات را ریشه یابی کرده و تگ های HTML را قبل از پیش پردازش خارج می نماییم.
درخت پوشای بیزین ، شکل ساده تری از شبکه های بیزین است . درسختار شبکه، کنار هر ریشه ، هر راس در نهایت می تواند دو والد داشته باشد[3]
نمونه ای از درخت پوشای بیزین

کنترل تغییر مفهوم با استفاده از خوشه بندی ترتیبی9 :
منظور از تغییر مفهوم ، تغییرات ایجاد شده در مفهوم هدف به دلیل تغییر در توصیف نمادین مفاهیم هدف ، ایجاد مفاهیم هدف جدید و تغییر مفهوم هدف نمونه ها می باشد. در این روش با استفاده از خوشه بندی و یک معیار شباهت جدید ، نمونه های آموزشی به زیر مجموعه های مجزا تقسیم می شود .[11] سپس با استفاده از الگوریتم ژنتیک و یک تابع تناسب جدید ، ویژگی های مناسب از بردار نماینده هر زیر مجموعه استخراج می شوند .
با ورود ایمیل جدید ، شباهت آن با زیر مجموعه ها سنجیده می شود و دسته بندی نزدیکترین زیر مجموعه به عنوان برچسب ایمیل جدید انتخاب می شود . نتایج آزمایشها نشان می دهد که این روش دارای کارایی و انعطاف پذیری بهتری نسبت به روش های موجود است و قادر است تا تغییر مفهوم را شناسایی و سیستم یادگیری را با این تغییرات به روز رسانی کند .

شناسایی هرزنامه با استفاده از یک شبکه عصبی مصنوعی 10 :
در این روش یک دیتاست را دسته بندی 11می کنیم و روش های مختلف هرزنامه نویسان 12 را بررسی کرده و با استفاده از یک پرسپترون چندلایه 13 متداول آموزش میدهیم 14 .یکی از محاسن این روش سهولت استفاده برای تمام ورودی و خروجی ها می باشد و از معایب آن میتوان به کند بودن و نیز تعداد زیاد نمونه ها اشاره نمود .[12]
همچنین از روش یادگیری log-sigmoid استفاده می شود که مقدار پیوسته ای 15بین صفر و یک به ما میدهد. که هرچه به صفر نزدیک می شویم عدم هرزنامه 16 و به یک نزدیک میشویم ، هرزنامه بودن را به ما نشان میدهد.[13]

۳. آزمایش‌ها

۴. کارهای آینده

۵. مراجع

[1] Liu, Bing, and Lei Zhang. "A survey of opinion mining and sentiment analysis." Mining Text Data. Springer US, 2012. 415-463.
[2] Blanzieri, Enrico, and Anton Bryl. "A survey of learning-based techniques of email spam filtering." Artificial Intelligence Review 29.1 (2008): 63-92.
[3] Hui-Fang Shi ,Tie-GanG Fan ,Guo-Li Zhang “Documents Categorization Based on Bayesian Spanning Tree”, Proceedings of the fifth International Conference on Machine Learning and Cyberneticsm,Dalian , pp 1072-1075 (2006)
[4] W. W . Cohen , “ Learning Rules that Classify e-mails”,In Spring Symposium on Machine Learning in Information Access , Stanford , California (1996)
[5] Karl-Michael Schneider,“A Comparison of Event Model For naïve Bayes Anti-Spam E-Mail Filtering”, In Proceedings of the 10th conference of the European Chapter of Association for Computational Linguistics,Budapest,Hungary, pp 307-314 (April 2003)
[6] Aleksander Kolez and Joshua Alspector, “ SVM-based filtering of e-mails spam with content-specific missclassification costs”,In proceeding of the TextDM'01 Workshop on Text Mining -helad at the 2001 IEEE International Conference on Data Mining (2001)
[7] I. Androutsopoulos et al. , “Learning to Filter Spam E-mail : A Comparison of naïve bayesian and a Memory-based Approach ”,In proceeding of the Workshop on Machine Learning and Textual Information Access”, Pages :1-13 (2000)
[8] Georgios Sakkis , Ion Androutosopoulos , Georgios Paliouras , Vangelis Karkaletsis,Constantine D. Spyropoulos and Panagiotis Stamatopoulos, “Stacking classifiers for anti-spam filtering of e-mail ”,In proceeding of 6th Conference on Emprical Methods in Natural Language Processing (EMNLP 2001),pages :44-50 (2001)
[9] Mehran Sahami,Susan Dumais,David Heckerman and Eric Horvitz,”A bayesian approach to filtering junk e-mail”,In learning for text categorization : papers from the 1998 workshop ,Madison,Wisconsin (1998)
[10] Geiger d. ,”An entropy-bases learning algorithm of bayesian conditional trees”,In proceeding of the conference of uncertainty in artificial intelligence,pages:92-97 (1993)
[11] F. Fdez-Riverola, E.L. Iglesias, F. Diaz, J.R. Mendez, J.M. Corchado. Applying lazy learning algorithms to tackle concept drift. Expert Systems with Applications, Vol. 33,pp. 36–48, 2007.
[12] D. Puniškis ,R. Laurutis , R. Dirmeikis-An Artificial Neural Nets for Spam e-mail Recognition - ELECTRONICS AND ELECTRICAL ENGINEERING - ISSN 1392 – 1215 2006. Nr. 5(69) -ELEKTRONIKA IR ELEKTROTECHNIKA
[13] Principe C. J., Euliano R. N., Neural and Adaptive Systems: Fundamentals Through Simulations // John Wiley and Sons, 2000. – USA. – P. 350-400.

۶. پیوندهای مفید


  1. Black list

  2. Rule-Based

  3. Header

  4. content based

  5. Text classification

  6. Collaborative Filters

  7. end user

  8. Bayesian Spanning Tree

  9. control of change concepts using

  10. Artificial Neural Nets

  11. Classify

  12. Spammer

  13. Multi Layer Perceptrons

  14. Training

  15. Continuos Range

  16. non spam

تایید شده

با سلام و عرض خسته نباشید
در کل می تونم بگم بد نبود ولی خوب هم نبود.
۱- جمله‌ی زیر رو دوبار نوشته بودید تو دو جای مختلف یه جا گفتید درخت پوشای بیزین یه جا گفتید درخت پوشای مینیمم:
«درخت پوشای مینیمم یک نوع درخت است که در آن به غیر از گره ریشه تمامی گره ها حداکثر دارای دو والد می باشند .[3]»
«درخت پوشای بیزین ، شکل ساده تری از شبکه های بیزین است . درسختار شبکه، کنار هر ریشه ، هر راس در نهایت می تواند دو والد داشته باشد[3]»
کنار هر ریشه؟؟؟؟!!
۲- کنترل تغییر مفهوم با استفاده از خوشه بندی ترتیبی هم ترجمه‌ی خوبی نیست به نظرم در ضمنی که توی پاورقی هم کامل انگلیسیش نبود
۳- این دو جمله به نظر من در تناقص هستند نسبت به هم دیگه؟
«به طور کلی روش های موجود برای فیلتر کردن هرزنامه می توانند دارای قابلیت یادگیری و یا بدون این قابلیت باشند. فیلترهایی که بدون قابلیت یادگیری هستند ، عموما بر اساس تطبیق قوانین ثابت عمل میکنند .که این قوانین اکثراً به صورت دستی و توسط کاربر تعیین می شوند .ولی روش های مبتنی بر قابلیت یادگیری ، با یادگیری ویژگی های هرزنامه ها ، سعی در فیلتر کردن آنها می کنند.از جمله شیوه های محبوب در سالهای اخیر ، شناسایی بر اساس محتوای هرزنامه است »
«فیلتر های مبتنی بر محتوا به دو گروه فیلتر های مبتنی بر قانون و فیلترهای مبتنی بر یادگیری ماشین تقسیم می شوند .»
۴- برای کلمه‌ی «دیتاست» ترجمه‌ی بهتری نبود؟
۵- به نظرم جزییات بیشتری باید ذکر می‌کردید تا راحت‌تر به پیاده‌سازی میرسیدید. مثلا می تونستید TF-IDF را یکم توضیح بدید یا در مورد معیارهای مشابهت یا اینکه پیش‌پردازش زبان فارسی چطوری هست .اصلا مجموعه‌ داده‌ی شما فارسی هست یا انگلیسی؟؟ از توی پیوندهای مفیدتون می‌تونستید این مطالب رو بیشتر توضیح بدید.

محسن ایمانی

شما در بخش کارهای مرتبط، می‌توانستید کارهای مرتبط بسیار بیشتری را معرفی کنید و سه روش معرفی شده به طور کامل نمی‌تواند بیان‌گر بخش قابل قبولی از روش‌های حل این مسئله باشد.
به عنوان نمونه در زمینه استخراج خصیصه از ایمیل برای یادگیری و رده‌بندی اسپم‌ها، در روش‌های مختلف مجموعه خصیصه‌های متنوعی از header ایمیل، یا از عکس‌های موجود در آن و یا از کلمات آن استخراج می‌‌شود، و روش‌های فراوانی که ترکیبی از این خصیصه‌ها را آموزش می‌بینند، که شما در کل به این بخش، یعنی استخراج خصیصه‌ها، هیچ اشاره‌ای نکرده‌اید.
همچنین در روش‌های یادگیری ماشین مدل‌های یادگیری بسیار متنوع‌تری نظی مدل بیز ساده، مدل نزدیک‌ترین همسایه، مدل‌های ماشین بردار پشتیبان(SVM) و ... وجود دارد که لازم بود حداقل اشاره‌ای به این مدل‌ها صورت می‌گرفت.
در واقع شما هدف مربوط به این فاز که ارائه یک فضای کلی از روش‌های حل مسئله می‌باشد را به صورت کامل محقق ننمودید.