بخشی از مقاله

چکیده:

امروزه با فراگیر شدن اینترنت، استفاده از شبکههاي اجتماعی نیز گسترش یافته است. هدف افراد از عضویت در اینگونه شبکه ها به اشتراك گذاشتن دادهها در زمینههاي مختلف است. این شبکه ها به کاربران اجازه میدهند تا مطالب خود را در زمینه هاي گوناگون گسترش دهند. مشکل زمانی پیش میآید که کاربري بخواهد از این قابلیت سوءاستفاده کرده و مطالب اسپم ارسال نماید. ما در این مقاله شناسایی اینگونه کاربران را مد نظر قرار دادهایم. براي بررسی این موضوع از پایگاه داده یکی از این شبکه ها استفاده کردیم. در مرحله یادگیري، به کمک کاربران عضو، اسپمرها را شناسایی کرده و خصوصیاتی را که مرتبط با این گونه کاربران هستند، درنظر گرفتهایم. بر این اساس، کاربران جدید با درنظر گرفتن خصوصیاتشان و الگوریتم knn در یکی از دسته هاي اسپمر یا غیراسپمر طبقهبندي میشوند. در این روش حدود 75 درصد از اسپمرها به درستی تشخیص داده شدهاند. در مرحله بعدي، دستهبندي بر اساس مطالب کاربران انجام میشود. با این روش دقت تشخیص اسپمرها افزایش یافته و به 84 درصد میرسد.

کلید واژه:اسپم، الگوریتم knn، خصوصیات رفتاري و متنی، دستهبندي، شبکه اجتماعی

-1 مقدمه

شبکههاي اجتماعی [1] یا جامعه کاربري مجموعهاي از چندین سایت یا یک سایت است که به افراد مختلف اجازه میدهد تا مطالب و علایق خود را با یکدیگر به اشتراك بگذارند . در چند سال اخیر استفاده از اینگونه شبکهها رشد زیادي داشته است و اشخاص گوناگون با سلایق و دیدگاه هاي مشترك را به یکدیگر ارتباط داده است. یک کاربر پس از عضویت در اینگونه سایتها میتواند مطالب مورد نظر خود را منتشر سازد. ما در این مقاله یکی از شبکههاي اجتماعی فعال را در نظر گرفتهایم. در این شبکه، افراد پس از عضو شدن و ساختن حساب کاربري، میتوانند در گروه هاي مختلف سایت عضو شده، نظرات خود را منتشر کرده، افراد مختلف را به سایت دعوت کنند، به یکدیگر پیغام بفرستند و غیره.

به دلیل آسان بودن استفاده از اینگونه شبکهها، این اجازه به افراد مختلف داده میشود تا به راحتی مطالب و اخبار مورد نظر خود را گسترش دهند. از طرف دیگر، این فرصت دادن به کاربرانی است که قصد ارسال مطالب اسپم دارند.مطالب اسپم شامل محتویاتی است که اهداف تبلیغاتی براي محصولات، phishing، نشر مطالب غیراخلاقی، ویروسها،دزدیدن اطلاعات شخصی کاربران و اهداف دیگر را دارند. همچنین مطالب اینگونه کاربران ممکن است داراي لینک هایی باشند که کاربران دیگر با کلیک بر روي آنها به سایت هاي نامناسب هدایت شوندعموماً.وجه مشترك این اسپم - ها ناخواسته بودن آنهاست که میتوانند منجر به بیارزش شدن محتواي سایت و ضررهاي اقتصادي شود.

مقابله کردن با اینگونه افراد ضروري است. روشهاي مختلفی براي تشخیص اسپمرها وجود دارد .[19] این روش-ها میتوانند به صورت دستی یا خودکار باشند. فیلترینگ مبتنی بر یادگیري بهترین روش براي مقابله با آنهاست.الگوریتمهاي گوناگونی براي این روش وجود دارند که ما در این مرحله الگوریتم knn را پیادهسازي کردهایم. در قسمت اول از این مقاله روشهاي مختلف فیلترینگ توضیح داده میشود. در قسمت بعدي درباره مجموعه دادهي آموزشی توضیحاتی داده شده است. سپس درباره خصوصیات محتواي مطالب اسپم [16] و رفتارهاي کاربران انتشاردهنده آنها بررسی شده که بر پایه نتایج و خصوصیات بدست آمده، کاربران به دو دسته اسپمر و غیراسپمر تقسیم می شوند . از این نتایج، که مجموعه اولیه یادگیري خوانده می شود در الگوریتم knn استفاده شده و نتایج آن در قسمت هاي بعدي توضیح داده شده است.

-2 روشهاي فیلترینگ

براي فیلترینگ روشهاي متداولی وجود دارد روشها به سه دسته تقسیم می شوند :[2]

الف - براساس متن: در این روش بر اساس محتواي مطالبی که به عنوان اسپم برچسب خوردهاند قوانینی ساخته می میشود. مثلا دیده شده است که اکثر مطالب اسپم داراي کلمه "فروش فوق العاده" هستند، بر این اساس متنهایی که داراي کلمه فوق باشند به عنوان اسپم درنظر گرفته می شوند. اشکال این روش این است که ممکن است متنهاي غیر اسپم و عادي نیز داراي این کلمه باشند و بر این اساس اشتباهاً به عنوانمطالب نامناسب برچسب بخورند.

ب - بر اساس لیست مجاز: این لیست شامل کاربرانی است که مجاز هستند و اجازه فعالیت در سایت را دارند. براي ساختن این لیست، در هنگام ثبت نام کاربران، به ایمیل آن-ها لینک فعالسازي ارسال میشود. کاربران تنها زمانی فعال میشوند که بر روي این لینک کلیک نمایند. این روش از دقت بالایی برخوردار نیست و اسپمرها می توانند از آن عبور کنند.

ج - بر اساس لیست کاربران غیر مجاز: این لیست شامل کاربرانی است که در دسته اسپم طبقهبندي شدهاند و مطالب آنها منتشر نمیشود. هرچه تعداد کاربران بیشتر شود، کنترل کردن آنها بر این اساس سختتر شده و همچنین نیاز به حضور یک نیروي انسانی همیشگی است تا بتواند فعالیتهاي کاربران را در نظر گرفته و آنها را طبقه بندي نماید.

به دلیل زیاد بودن کاربران، ما نیازمند روشی هستیم که کاربران را به صورت خودکار دستهبندي کند تا نیاز به دخالت انسان به کمترین حد ممکن برسد.عموماًدسته بندي براساس محتواي مطالب انجام میشود. مطالب به دو دسته مجاز و غیر مجاز تقسیم میشوند. چون تقسیمبندي براساس محتواي مطالب صورت میگیرد، میتوان از الگوریتمهاي دستهبندي متن استفاده کرد. این الگوریتمها به دو دستهي بر پایه قانون و بر پایه محتوا تقسیم بندي می گردند. فیلتر مبتنی بر قانون، بر اساس قانونهاي وزنی کار میکند .[12] به هر ویژگی متن یک وزن نسبت داده می - شود، متن مورد نظر براساس هر یک از این قانونها بررسی میشود، با هر کدام از قوانین که مطابقت داشت، آن ویژگی مقدارش مثبت درنظر گرفته شده و در انتهاي ارزیابی، کل امتیازها براي آن متن محاسبه میگردد.

اگر این امتیاز ازمقدار آستانه در نظر گرفته شده بیشتر بود، متن در رده اسپم قرار میگیرد. روش دیگر، فیلترهاي  مبتنی بر متن هستند که بر پایهي یادگیري ماشین قرار دارند. در این روش از سندهاي نمونه استفاده میشود. این سندها به کلاسهایی تقسیم بندي شدهاند. در این مورد، کلاسها اسپم و غیر اسپم هستند.نمونههاي الگوریتم در این دسته [6] naive Bayesian،SVM[5]، [7] k-nearest neighbor - knn - ، decision Tree [8] و [9] neural network است.مزیت این classifierها بر الگوریتمهاي مبتنی بر قانون این است که دخالت انسان براي دستهبندي کمتر و مجموعه قوانین به صورت خودکار پردازش و پیاده سازي میشوند. در این مرحله ما از الگوریتم KNN استفاده کردهایم.

-3 مجموعه داده

براي پیاده سازي ما نیاز به مجموعه اولیهاي از کاربران را داریم که به عنوان اسپمر و غیراسپمر طبقهبندي شدهاند. در ابتداي کارکرد سایت، چنین مجموعهاي وجود ندارد، پس نیاز به ساخت اولیه آن است. براي شروع ما بر روي کاربرانی تمرکز میکنیم که به طور مثال پیامها و کامنتهاي ارسالی بیشتر از حد متوسط را داشتهاند و یا تعداد افراد زیادي را به مجموعه دوستان خود اضافه کردهاند - در بعضی از اسپمرها این رفتار مشاهده نشده است - . همچنین زمان ارسال مطالب و بازههاي زمانی ارسال را نیز براي اینگونه کاربران درنظر میگیریم - مثلا 10 پیام در دقیقه - . کاربرانی که بیشترین ارسال را در کمترین زمان داشتهاند نیز مورد توجه هستند.

براي بالاتر رفتن دقت، کاربران سایت را نیز در این امر دخالت دادهایم یعنی در هر مطلب و یا کامنت این اختیار به کاربر داده شده است که در صورت نامناسب بودن محتوا و اسپم بودن، آن را به ادمین سایت گزارش نمایند و همچنین بتوانند کاربري را در صورت تشخیص بلاك کنند. مطالب گزارش شده در قسمت ادمین قابل دسترس هستند. دو کاربر ادمین را اختصاص دادهایم تا صحت مطالب گزارش شده را بررسی نمایند. در صورت مثبت بودن مطلب گزارش شده به عنوان اسپم، کاربر ارسال کننده مطلب امتیازش به عنوان کاربر نامناسب و اسپمر افزایش مییابد. اگر این امتیاز از مقدار آستانه بیشتر بود، کاربر در رده اسپمرها قرار می-گیرد. درمجموع650 کاربر بررسی شدهاند که 592 نفر از آنها به عنوان کاربر مجاز و 58 نفر به عنوان اسپم برچسب خوردهاند.

-4 در نظر گرفتن خصوصیات کاربران

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

-1-4 بررسی محتواي متنی کاربران

در این قسمت محتویات متنی کاربرانی که به عنوان اسپمر برچسب خوردهاند بررسی میشود و سعی شده خصوصیات متنی این کاربران که آنها را از بقیه کاربران متمایز میکند، بدست آید. این خصوصیات شامل تعداد کلمات در هر مطلب ارسالی، تعداد لینکهایی که در هر مطلب به کار رفته است، تعداد کاراکترهاي موجود در متن، وجود اعداد در مطلب، وجود متنهایی که به دو زبان نوشته شدهاند، داشتن تاریخ و ساعت، وجود حداقل دو یا سه کلمه از کلمات متعارفی که در متنهاي اسپم وجود دارند [4] و دیگر موارد. درمجموع 15 خصوصیت در نظر گرفته شده است. در شکل 1، نسبت معکوس تعداد لینکها در مطالب کاربران اسپمر و غیراسپمر نشان داده شده است. کاربران اسپمر به نسبت کاربران عادي از تعداد لینکها و کلمات اسپم بیشتري در مطالب خود استفاده میکنند.

-2-4 بررسی رفتارهاي کاربران

در این قسمت خصوصیات رفتاري کاربران اسپمر در نظر گرفته میشود .[10] به طور مثال چند خصوصیت معمول شامل این موارد است: بررسی تعداد افرادي که در شبکه دوستی این افراد هستند عموماً - تعداد دوستان این افراد زیاد است - ، مدت زمانی که از عمر حساب کاربري آنها می گذرد، تعداد نظرات و پیامهایی که براي دیگران ارسال میکنند، تعداد پیامهایی که از دیگر کاربران دریافت کرده-اند، تعداد افرادي که این کاربر را بلاك کردهاند، کامل بودن پروفایل کاربر و دیگر موارد. در مجموع 18 مورد جمعآوري شده است. در شکل 2 عمر حساب کاربران اسپم نشان داده شده است که به طور کلی عمر این حسابهاي کاربري کم است، چون عموماً زود شناسایی و بلاك میشوند و کاربر مجبور به ثبت نام مجدد در سایت است.

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