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

۱. مقدمه

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

توضیح تصویر

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

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

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

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

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

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

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

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

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

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

۳. آزمایش‌ها

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

۵. مراجع

[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)

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


  1. Black list

  2. Rule-Based

  3. Header

  4. content based

  5. Text classification

  6. Collaborative Filters

  7. end user

  8. Bayesian Spanning Tree

محسن ایمانی

در این فاز از پروژه لازم بود که شما شناختی از نوع مسئله و دسته بندی انواع روش‌های آن داشته باشید و به نسبت به این هدف دست پیدا کرده‌اید.
اما چند نکته در متن پروژه شما وجود دارد که در فازهای آینده باید به آن دقت داشته باشید:

  • لازم است بلافاصله بعد از هر کدام از تعریف‌ها، دسته‌بندی‌ها، آمار‌ها و نمودارهایی که در متن پژوهش‌نامه خود می‌آورید، مشخص کنید که از کدام مرجع برداشته شده است تا پژوهشگری که آن را مطالعه می‌کند بتواند در صورت نیاز به مرجع مربوطه رجوع داشته باشد. پس لازم است که ارجاعات به مراجع را در متن پژوهش‌نامه خود مشخص کنید.

  • شما در روش‌های بدون یادگیری انواع و دسته‌های مختلفی را به خوبی و به صورت مختصر و مفید معرفی نمودید تا خواننده دید مناسبی از انواع این روش‌ها داشته باشد. اما در روش‌های با یادگیری شما تنها به معرفی یک روش‌(درخت پوشای بیزین) پرداختید و مانند قبل انواع و دسته‌های روش‌های یادگیری ماشین برای تشخیص هرزنامه را معرفی نکردید.

  • عنوان «درخت پوشای بیزین» که در مقدمه آوردید مشخص نیست زیرمجموعه چه عنوانی در مقدمه آمده و ساختار پژوهش‌نامه شما را به هم زده است. بهتر بود عنوانی مثلا با نام «روش‌های مبتنی بر یادگیری ماشین» داشته و سپس در زیرمجموعه آن زیرعنوان‌های دسته‌های مختلف این روش‌ها که یکی از آن‌ها «درخت پوشای بیزین» است را وارد عنوان می‌نمودید.

  • توضیح شما در کارهای مرتبط کاملا ناقص و ابتر است بهتر بود یا آن را به طور کامل می‌آوردید و یا اصلا جزء این فاز قرار نمی‌دادید.