تعداد نشریات | 418 |
تعداد شمارهها | 10,005 |
تعداد مقالات | 83,618 |
تعداد مشاهده مقاله | 78,302,985 |
تعداد دریافت فایل اصل مقاله | 55,355,952 |
کشف جوامع در شبکههای اجتماعی با استفاده از کاوش الگوی تکرارشونده | |||||||
مجله فناوری اطلاعات در طراحی مهندسی | |||||||
مقاله 9، دوره 8، پائیز و زمستان 1394، اسفند 1394، صفحه 23-41 | |||||||
نویسندگان | |||||||
سید احمد موسوی1؛ مهرداد جلالی2؛ نگین میثاقیان* 1 | |||||||
1گروه کامپیوتر | |||||||
2دانشگاه آزاد اسلامی، مشهد | |||||||
چکیده | |||||||
امروزه وب سایتهای شبکه های اجتماعی به یک منبع غنی از داده های ناهمگون مبدل شده است؛ از این رو تجزیه و تحلیل این دادهها میتواند منجر به کشف اطلاعات و روابط ناشناخته در این شبکهها شود. کشف جامعه متشکل از گره های «مشابه» یک چالش مهم در زمینه تجزیه و تحلیل داده های شبکه های اجتماعی است، و به طور گسترده ای در زمینه ساختار گرافی در این شبکهها مورد مطالعه قرار گرفته است. شبکه های اجتماعی اینترنتی علاوه بر ساختار گرافی، حاوی اطلاعات مفیدی از کاربران درون شبکه میباشند؛ که استفاده از این اطلاعات میتواند منجر به بهبود کیفت کشف جوامع گردد. در این مقاله یک روش به منظور کشف جامعه ارائه شده است که علاوه بر اطلاعات ارتباطی بین گرهها از اطلاعات محتوایی به منظور ارتقا کیفیت کشف جوامع استفاده میگردد. این روش یک رویکرد جدید مبتنی بر الگوی تکرار شونده و بر اساس عملیات کاربران در شبکه است و به طور خاص، بر روی شبکههای اجتماعی اینترنتی که در آن کاربران عملیات مورد علاقه خود را انتخاب میکنند، اجرا میشود. ابتدا، بر اساس علایق و یا فعالیت های کاربران در شبکه، تعدادی جوامع کوچک متشکل از کاربران مشابه را کشف می کنیم و سپس با استفاده از ارتباطات اجتماعی هر جامعه را گسترش می دهیم. نتایج ارزیابی F-measure بر روی دو مجموعه داده دنیای واقعی (بلاگ کاتالوگ و فلیکر) نشان میدهد که روش پیشنهادی منجر به بهبود کیفیت کشف جوامع میشود. | |||||||
کلیدواژهها | |||||||
شبکههای اجتماعی؛ کشف جامعه؛ کاوش الگوی تکرارشونده | |||||||
اصل مقاله | |||||||
1- مقدمهبیش از دو دهه است که شبکههای اجتماعی در زمینه تجزیه و تحلیل تعاملات بین بازیگران و تعیین الگوهای ساختاری مهم در ارتباطات مورد مطالعه قرار گرفتهاند [1]، شبکههای اجتماعی را میتوان در زمینههای مختلفی در نظر گرفت، سیستمهایی مانند فیسبوک[1] که به صراحت برای تعاملات اجتماعی طراحی شده است، و یا در شرایط دیگر مثل فلیکر[2] که برای سرویسهای مختلف مانند اشتراک گذاری محتوا طراحی شده و اجازه تعامل اجتماعی را در یک سطح گسترده برای کاربران خود فراهم میکند. یک شبکه اجتماعی، غالباً دریک گراف بیان میشود (شکل 1)، که در آن رأسها، بازیگران و یالها نشانگر ارتباط میان آنهاست [1-3] و میتواند در علوم گوناگون از جمله جامعه شناسی، زیست شناسی، پزشکی، شیمی، بازاریابی و علوم کامپیوتر و غیره در نظر گرفته شود. پس واضح است که مفهوم شبکههای اجتماعی به صورت خاص به شبکههای اجتماعی اینترنتی مثل فیسبوک، فلیکر، توییتر[3] و... محدود نمیشود. هدف ما در این مقاله صرفاً تجزیه و تحلیل شبکههای اجتماعی اینترنتی و کشف جوامع در این شبکهها میباشد. وب سایتهای شبکه اجتماعی، از طریق اینترنت توانایی منحصر به فردی برای برقراری ارتباطات و تعاملات افرادی که از لحاظ جغرافیایی پراکنده میباشند، را داشته، و آنها را به حالتهای مختلف با یکدیگر ارتباط داده و اجازه تعامل و اشتراک گذاری اطلاعات با افراد مختلف از جمله همکاران، آشنایان، خانواده، دوستان، طرفداران، فعالان و غیره را میدهد [4]. استفاده از شبکههای اجتماعی علاوه بر فراهمسازی ارتباطات افراد، امکان بهروز رسانی هر یک از موارد دوست داشتن، دوست نداشتن، نمایهها، به اشتراک گذاری اطلاعات شخصی و عمومی را به کاربران میدهد [5]. بنابراین گرهها در این نوع شبکهها علاوه بر ارتباطات، شامل اطلاعات دیگر از جمله فعالیتهای انجام شده توسط گره نیز هستند.
شکل 1) یک نمونه از شبکه اجتماعی
ساختار شبکههای اجتماعی، شاخص خوبی برای پیش بینی اقدامات بالقوه کاربران است. بنابراین ما در شبکههای اجتماعی اینترنتی علاوه بر ارتباطاتی که بین کاربران وجود دارد، عملیات مختلفی نیز خواهیم داشت؛ که معمولاً کاربران این عملیات را به سلیقه و تمایل خود انتخاب میکنند، و این سلایق کاربران است که ساختار تکاملی شبکه را میسازد. یکی از چالشهای اساسی در زمینه تجزیه و تحلیل شبکههای اجتماعی، کشف خودکار جوامع است [6]. جوامع به عنوان گروهها، خوشهها، زیرگروههای منسجم و یا ماژولها در زمینههای مختلف دیده میشوند؛ پیدا کردن جامعه در یک شبکه اجتماعی، شناسایی مجموعهای از گرههاست که بیشتر از دیگر گرههای درون شبکه با یکدیگر ارتباط برقرار میکنند. همزمان با توسعه سریع وب در دنیای مجازی، وب سایتهای شبکه اجتماعی در اشکال جدیدی طراحی شدهاند و مردم را به همکاری و ارتباطات با دیگران قادر میسازند. تشخیص جامعه در این وب سایتها نیز میتواند، دیگر وظایف محاسبات اجتماعی را تسهیل کند و در بسیاری از برنامه های کاربردی استفاده شود؛ به عنوان نمونه، به گروه بندی مشتریان با منافع مشابه در رسانههای اجتماعی، توصیههای کارآمد کالاها، سیستمهای پیشنهاد دهنده که در برنامههای رسانههای اجتماعی بسیار رایج است و طبقه بندی گرهها میتوان اشاره نمود. ساختار جوامع میتواند به منظور فشردهسازی شبکهها مورد استفاده قرار گیرد و به جای تحلیل گرهها به صورت منفرد، به تحلیل گرههای مشابه یا همان جوامع پرداخت. در این مقاله، یک روش به منظور کشف جامعه در وب سایتهای شبکه اجتماعی پیشنهاد میشود، این روش با تکیه بر اطلاعات دوستی بین کاربران و عملیاتی که هر کاربر در شبکه انجام میدهد به شناسایی جوامع میپردازد. بخشهای بعدی مقاله به صورت زیر سازماندهی شده است:. در بخش 2 به معرفی کارهای مرتبط میپردازیم. سپس یک چارچوب برای کشف جامعه را در بخش 3 معرفی خواهیم کرد؛ و با آزمایشات تجربی در بخش 4 نشان میدهیم رویکرد ما در زمینه کشف جامعه اینترنتی موثر میباشد؛ و در نهایت برخی از بحثها و توصیهها برای کارهای آینده و همچنین نتیجه گیری را در بخش 6 بیان میکنیم. 2- کارهای مرتبطمشکل تشخیص جامعه با توجه به اهمیت آن در شبکههای اجتماعی تاکنون به طور گسترده [7-20]، مورد مطالعه قرار گرفته است. این روشها بر اساس خوشه بندیهای مبتنی بر تراکم، پارتیشن بندی حداقل-برش، مبتنی بر آمار و استنتاج، مبتنی بر معیارهای تجزیه و تحلیل شبکههای اجتماعی، روشهای مبتنی بر کلیک و غیره جوامع را شناسایی میکنند، این روشها فقط بر روی ارتباطات و ساختار گرافی شبکههای اجتماعی تمرکز میکنند و تعاملات و علاقهمندی کاربران و تأثیر نفوذ کاربران در شبکههای اجتماعی اینترنتی را در نظر نمیگیرند. برخی از کارهای اخیر، نشان داده است که استفاده از محتوای گره یا لبه در شبکههای اجتماعی میتواند در بهبود کیفیت کشف جوامع و افراد مهم در شبکه، مفید باشد [7-12, 15]. بعضی از این روشها اجازه نمیدهند کاربران در جوامع مختلف عضو باشند، و این یک مشکل به حساب میآید، البته برخی محققان نیز بر این باورند که در کاربردهایی بهتر است هر گره تنها به یک جامعه متعلق باشد، با این حال اکثر کاربردها به همپوشانی گرهها نیاز دارند. برای حل این چالش محققان در پژوهشهایی دیگر روشهای مبتنی بر مدل احتمالی بیزین را پیشنهاد دادهاند [21-23] این مدلها برای اعضای جامعه اجازه همپوشانی را میدهند ولی در این روشها بیش از حد به ساختار گراف شبکه برای کشف جامعه تکیه دارند. برخی کارها نیز با بهره گیری از عملیات کاربران به کشف افراد با نفوذ در شبکههای اجتماعی اینترنتی پرداختهاند [7, 8, 12]. در این مقاله روشی ارائه میشود که به منظور کشف جامعه، علاوه بر ساختار گرافی از محتوای شبکههای اجتماعی نیز استفاده میکند، همچنین اجازه همپوشانی به جوامع در این روش داده میشود. در این روش ابتدا گرههای مهم شبکه استخراج میشوند سپس حول این گرهها جوامع شکل میگیرند. در ادامه به برخی از کارهای مرتبط با روش پیشنهادی اشاره مینماییم. گویال[4] و همکاران، یک الگوریتم برای استخراج رهبران با استفاده از تأثیرگذاری گرهها روی یکدیگر، با فرض اینکه یک شبکه اجتماعی شامل یک گراف و یک جدول عملیات میباشد، ارائه دادهاند؛ که گراف، ارتباط دوستی بین کاربران را نشان میدهد و جدول عملیات نشان دهنده عملیات انجام شده توسط هر کاربر میباشد. در این روش با استفاده از الگوریتم الگوی تکرار شونده SWF جدول عملیات پویش شده و در یک ماتریس نگاشت میشود، و در نهایت افراد مهم شبکه (رهبران) استخراج میشوند. در این روش رهبران، در یک عمل خاص به عنوان رهبر شناسایی میشوند و افرادی هستند که آن عمل خاص را زودتر از دوستان خود انجام دادهاند؛ مفهوم گراف انتشار اولین بار در این روش ارائه شد که با ایجاد این گراف برای هر عمل در شبکه، کاربری به عنوان رهبر شناسایی میشود. دو حد آستانه اطمینان[5] و صحت[6] برای تشخیص یک رهبر واقعی از یک رهبر غیرواقعی در نظر گرفته شده است [8]. عدنان[7] و همکاران با استفاده از مفهوم الگوی تکرار شونده بسته، به شناسایی جوامع در شبکههای اجتماعی میپردازند. با فرض اینکه یک مجموعه E داریم که شامل n گره است، هر گره با یک مجموعه داده در ارتباط است که عملیات مربوط به این موجودیت را نشان میدهد، بنابراین برای هر موجودیت یک مجموعه داده تراکنشی وجود دارد. با استفاده از الگوی تکرار شونده بسته، میتوان این مجموعه داده را به یک بردار ویژگی تبدیل نمود، حال این بردار ویژگی میتواند به عنوان یک نماینده مؤثر برای عملیات انجام شده توسط گره مربوطه در نظر گرفته شود. شباهت بردارهای ویژگی که نشان دهنده عملیات گرهها میباشد، توسط روشهای اندازه گیری شباهت مثل دات پروداکت[8] محاسبه میشود. هنگامی که اندازه گیری فاصله و شباهت را داشته باشیم میتوانیم با بسیاری از روشهای استاندارد خوشه بندی، جوامع را شناسایی کنیم [7]. برخی تحقیقات انجام شده نیز ابتدا به کشف رهبران در شبکه میپردازند و سپس حول این رهبران جوامع را گسترش میدهند. به عنوان نمونه کاناویتی[9] در مقاله ای به منظور کشف جامعه، ابتدا K رهبر را با استفاده از متریکهای مرکزیت استخراج میکند؛ که در این مقاله از درجه نزدیکی، بینابینی و درجه مرکزیت استفاده شده است. سپس همسایگان مرتبط با هر رهبر، یک جامعه کوچک را تشکیل میدهد. به این صورت که گرههای معمولی (پیرو)، به نزدیکترین رهبر منتسب میشوند، و جامعه مربوط به آنها مشخص میگردد[11]. ربانی خراسگانی[10] و همکاران نیز در روش خود ابتدا رهبران و افراد معتبر را بر اساس متریکهای تحلیل شبکههای اجتماعی، بدست میآورند. متریکهای مورد استفاده در این مقاله درجه مرکزیت و بینابینی میباشند. حال برای هر گره غیر رهبر بررسی میکند که چقدر عضویت (شباهت) به هر رهبر دارد، پس هر گره نسبت به هر رهبر دارای یک وزن میباشد. حال یک رای گیری بین گرههای همسایه گره مربوطه میشود و در نهایت آن گره به یک رهبر اختصاص داده میشود. بنابراین یک جامعه خواهیم داشت که رهبر مشخصی دارد؛ رهبر در این جامعه دوباره با استفاده از متریکهای مذکور به دست میآید و هر گره دوباره برای تعیین رهبر بررسی میگردد. این مراحل را تا زمانی که به یک همگرایی (رهبر در هر مرحله تغییر نکند) برسیم، ادامه میدهیم. از الگوریتم K-means در خوشه بندی، به منظور ارائه این روش الهام گرفته شده است. برای تخمین مقدار K روشهایی نیز در این مقاله ارائه شدهاند[10]. دونگ یوان لو[11] و همکاران [12]، پژوهشی روی شبکه اجتماعی فلیکر و شبکه های همانند آن که سرویس اشتراک گذاری فایلهاست، انجام دادهاند و با استفاده از چند عامل حجم طرفدار[12]، پوشش طرفدار[13] و به هنگام بودن طرفدار[14]، افراد معتبر (رهبر) را شناسایی میکنند. حجم طرفدار، به تعداد عکسهای پسندیده شده توسط دیگر اعضا برای عضو مورد نظر گفته میشود. پوشش طرفدار، نشان دهنده چگونگی گستردگی یک عضو تایید شده است، این تنها تعداد طرفداران یک عضو نمیباشد؛ بلکه درجه نفوذ اولیه این طرفداران را در نظر میگیرد. به عنوان مکمل حجم طرفدار، برای جلوگیری از تعصب ناشی از طرفداران، که به عکسهای یک عضو خاص دارند؛ این عامل در نظر گرفته میشود. افرادی که طرفدارانی بانفوذ (طرفداران پر طرفدار)، دارند وزن بیشتری از این عامل خواهند داشت. به هنگام بودن طرفدار، به حساسیت زمانی اقدامات طرفداران یک عضو اشاره میکند. یک عضو با حجم طرفدار بالا، پوشش طرفدار بالا و دریافت بیشتر طرفداران اخیر به احتمال زیاد مهارت و اعتبار بیشتری در شبکه خواهد داشت. همچنین در این تحقیق چالش تغییرات شبکه های اجتماعی که به تبع آن افراد معتبر و جوامع تغییر میکنند، را مدنظر قرار داده و برای آن راه حلی ارائه میدهد. این روشها تنها روی کشف افراد معتبر تمرکز نمودهاند؛ یا در آنها به محتوای شبکه اجتماعی برای کشف جامعه اهمیت داده نشده است، به عنوان مثال در روش کاناویتی رهبر با استفاده از درجه نزدیکی و بینابینی کشف میشود، سپس همسایگان مرتبط با هر رهبر، یک جامعه کوچک را تشکیل میدهد. روش پیشنهادی نیز مشابه این روشها عمل میکند با این تفاوت که گروهی از رهبران مشابه (از نظر محتوا) و نزدیک به هم (از نظر ساختار گراف) را کشف مینماییم سپس حول هر گروه جوامع را شناسایی میکنیم و در نهایت با آزمایشات تجربی نشان میدهیم با در نظر گرفتن دو عامل ارتباطات بین کاربران (روابط دوستی)، و عملیات انجام شده توسط کاربران (سلایق کاربران) در این روش، دقت جوامع کشف شده در دنیای واقعی ارتقا داده خواهد شد. 3- روش پیشنهادیما یک رویکرد جدید به منظور کشف جامعه، با استفاده از اجرای الگوریتم کاوش الگوی تکرار شونده [28] روی مجموعه عملیات کاربران و اجرای الگوریتم طبقه بندی روی مجموعه ارتباطات بین کاربران، ارائه میدهیم. روش ارائه شده به طور خاص روی وب سایتهای شبکههای اجتماعی اجرا میشود. ما فرض میکنیم که جامعه از تعدادی رهبر و تعدادی پیرو (در تشریح مراحل توضیح داده خواهند شد) تشکیل شده است. به طور خلاصه در این روش سعی میشود که ابتدا گروههای کوچکی از کاربران استخراج شوند، به طوری که کاربران عضو هر گروه از نظر عملکرد در شبکه مشابه باشند؛ سپس کاربرانی که در همسایگی این گروهها قرار دارند به عنوان پیروان این گروهها شناسایی شوند. در ادامه خلاصهای از مراحل روش پیشنهادی را بیان خواهیم کرد. این روش به منظور کشف جامعه در شبکههای اجتماعی، از چهار مرحله اصلی تشکیل شده است (شکل 2) که عبارتند از:
شکل 2: مراحل کشف جامعه در روش پیشنهادی
در روش ارائه شده، ابتدا کاربرانی که از نظر انجام عملیات در شبکه مشابه هستند به عنوان یک گروه همگن شناسایی میشوند، اگر اعضای این گروه از نظر ارتباطات تا حدودی به هم مرتبط باشند، به عنوان یک جامعه کوچک تایید میشوند (کشف رهبر). هر جامعه کوچک به دلیل داشتن گرههای مشابه و نزدیک به هم، میتواند به عنوان هسته یک جامعه در نظر گرفته شود؛ همچنین از آنجا که ممکن است کاربران تحت تأثیر عملیات همسایگان خود قرار گیرند، بنابراین در مرحله پایانی، جوامع حول این هستهها تشکیل میشوند (کشف جوامع). از شرح مختصر مراحل روش پیشنهادی، میتوان دریافت که جوامع کشف شده در نهایت، شامل کاربرانی خواهند بود که علاوه بر شباهتهای رفتاری، در گراف اجتماعی نیز به یکدیگر نزدیک میباشند. در ادامه، این مراحل با جزییات و به تفصیل شرح داده میشوند. 3-1- مرحله اول: پیش پردازش دادههابه عنوان ورودی روش پیشنهادی به یک جدول عملیات-کاربر و یک جدول همسایگی (گراف) نیاز خواهیم داشت. جدول عملیات-کاربر، عملیات انجام شده توسط کاربران به ازای هر عمل ممکن در شبکه را نشان میدهد، و جدول همسایگی حاوی ارتباطات دوستی بین کاربران است. معمولاً این جدول را به صورت یک گراف (شکل 3) نمایش میدهیم.
شکل 3: روابط دوستی بین کاربران
چارچوب ارائه شده در این مقاله بر روی وب سایتهای شبکههای اجتماعی متمرکز شده است، معمولاً در این وب سایتها، مجموعه عملیات مجازی وجود دارد که هر کدام از کاربران میتوانند به انتخاب و سلیقه خود برخی یا همه آنها را انجام دهند. به عنوان نمونه در شبکه اجتماعی دلیشز[18] کاربران روی منابع مختلف موجود در شبکه برچسبهای مختلف میزنند، در این شبکه اجتماعی، برچسبهای مختلف یا منابع میتواند به عنوان عملیات مجاز در شبکه قلمداد شود. به عنوان مثالی دیگر یک شبکه اجتماعی کتاب، مثل گودریدز[19] را در نظر بگیرید. کاربران در این شبکه، کتاب یا کتابهای مورد علاقه خود را انتخاب و مطالعه میکنند و به آن امتیاز میدهند، در اینجا نیز مجموعه کتابهای موجود در شبکه همان عملیات مجاز برای کاربران خواهد بود. به عنوان مثال سوم، در شبکه اجتماعی موسیقی همانند لست اف ام[20] کاربران، هنرمند مورد علاقه خود را انتخاب مینمایند یا روی موسیقیهای ارائه شده از هنرمندان مختلف برچسب میزنند، در اینجا مجموعه هنرمندان میتواند به عنوان مجموعه عملیات شبکه باشد. در شبکههایی همچون فیسبوک، توییتر، یوتیوب و... نیز میتوان از دیدگاههای مختلف عملیات مجاز در شبکه را در نظر گرفت. نکتهای که در رابطه با عملیات مجاز حائز اهمیت میباشد این است که بایستی عملیاتی در شبکه انتخاب شود که کاربران در انجام آن مختار باشند، به عنوان مثال عملیاتی همچون ورود[21] یا خروج[22] نمیتواند به عنوان عملیات در جدول عملیات-کاربر قرار بگیرد، چرا که همه کاربران این عملیات را انجام خواهند داد. شکل 4، فایل عملیات را که معمولاً به صورت یک سه تایی (کاربر، عمل، زمان) میباشد را نشان میدهد که برای ساخت جدول عملیات-کاربر تنها از ستون کاربر و عمل استفاده میشود.
شکل 4: ایجاد جدول عملیات-کاربر از فایل عملیات
ü آماده سازی جدول همسایگی (معمولاً نیاز به پیش پردازش ندارد) ü آماده سازی جدول عملیات-کاربر ü علاوه بر آماده سازی ورودی روش پیشنهادی، مقادیر حد آستانه α، β و ¥ نیز در این مرحله تخمین زده میشوند، بهتر است این حد آستانهها توسط یک متخصص و با توجه به اندازه شبکه اجتماعی، تعداد گرهها، تعداد لبهها و تعداد عملیات درون شبکه تخمین زده شود. هر کدام از این حد آستانهها در مراحل مربوطه شرح داده میشوند. 3-2- مرحله دوم: کاوش الگوی تکرار شونده کاربریبه طور کلی الگوی تکرار شونده به الگویی از دادهها اشاره دارد که به نظر میرسد به طور متوالی در یک مجموعه داده خاص تکرار میشود. کاوش این الگوها کاربردهای زیادی دارد و الگوریتمهای متعددی به منظور کاوش این الگوها از مجموعههای دادهای ارائه شده است و هر الگوریتم، مزایا و معایب خاص خود را دارد. بعد از آماده سازی ورودی در مرحله اول، به اجرای الگوریتم الگوی تکرار شونده روی جدول عملیات-کاربر در این مرحله میرسیم. مطلوب است به منظور کاهش پیچیدگی زمانی در این مرحله، از الگوریتمهای موازی شده کاوش الگوی تکرار شونده یا برخی الگوریتمهای مبتنی بر درخت پیشوندی استفاده نماییم.
فرض کنید الگوریتم کاوش الگوی تکرار شونده، روی جدول عملیات-کاربر اجرا شود (شکل 4). خروجی، دنبالهای از کاربران خواهد بود که در عملیات مشابهی با یکدیگر دیده شدهاند (به تعداد حد آستانه یا بیشتر). با توجه به حد آستانه پشتیبان ¥، الگوریتم کاوش الگوی تکرار شونده روی این جدول اجرا خواهد شد و “الگوهای حداکثر” [35] کاوش میشوند. دقت داشته باشید الگوهای حداکثرِ تک قلمی هرس میشوند. الگوی حداکثر در شکل 4 در صورتی که باشد، خواهد بود و نشان میدهد این دو کاربر در انجام 2 یا بیشتر از 2 عمل در شبکه شباهت داشتهاند. میتوان از الگوریتمهای تکرار شونده شناخته شدهای همچون Apriori [29] بهره جست.
شکل 5: اجرای الگوریتم الگوی تکرار شونده روی جدول عملیات-کاربر
حد آستانه ¥: هر الگوریتم کاوش الگوی تکرار شونده نیازمند یک حد آستانه پشتیبان است، که طبق این پارامتر، الگویی تکرار شونده است که تعداد تکرارش در مجموعه داده، بزرگتر یا مساوی حداقل پشتیبان باشد. در اینجا نیز این حد آستانه مشخص میکند، کاربران با چه تعداد عمل مشابه به عنوان یک الگو کاوش شوند. بهتر است این حد آستانه را متخصص شبکه اجتماعی با توجه به تعداد عملیات در شبکه تخمین بزند، چرا که تأثیر مستقیم روی تعداد جوامع کشف شده خواهد داشت.
ü خروجی این مرحله پس از اجرای الگوریتم کاوش الگوی تکرار شونده، دنبالههایی از کاربران است؛ هر دنباله را یک گروه همگن مینامیم. هر گروه همگن شامل دو یا چند کاربر است، و نشان میدهد که کاربران عضو آن به تعداد حد آستانه ¥ یا بیشتر از آن عملیات مشابه انجام دادهاند؛ بنابراین میتوان گفت کاربران درون هر گروه از نظر انجام عملیات هم سلیقه و همسو میباشند.
3-3- مرحله سوم: تایید جوامع کوچکهمان طور که مشخص است هر گروه همگن، شامل کاربرانی است که از نظر انجام عملیات به یکدیگر شباهت دارند؛ اما ممکن است این کاربران در گراف اجتماعی درجه جدایی زیادی داشته باشند، به عبارت دیگر کاربران درون هر گروه نامتراکم و پراکنده باشند. مناسب است اعضای هر گروه تا حدودی در گراف اجتماعی به هم مرتبط و نزدیک باشند، تا به عنوان یک گروه منسجم تایید شوند. هدف از این مرحله نیز شکستن گروههای نامتراکم به چند گروه یا حذف آنها و تایید گروههای منسجم است. منظور از گروه منسجم و متراکم گروهی است که کاربران درون آن به هم مرتبط باشند. البته این ارتباط در همه شبکهها الزاماً به معنای اتصال مستقیم (وجود لبه) بین گرهها نیست، بلکه ارتباط با گرههای واسط تا یک حد آستانه، نیز مورد قبول میباشد؛ تعداد مجاز این واسطها را حد آستانه β مشخص میکند. حد آستانه β: این حد آستانه تعیین میکند که بین دو گره در گراف اجتماعی، حداکثر چند لبه باشد تا آن دو گره را مرتبط بنامیم؛ مقدار حد آستانه β را یک متخصص تعیین میکند. این مقدار ثابت در نظر گرفته نشده است چرا که شبکهها با اندازههای مختلفی وجود دارند. با این حال با اجرای روش پیشنهادی روی چندین مجموعه داده واقعی و آزمون- خطا، مناسبترین مقدار β را کوچکتر یا مساوی3 ( ) یافتیم. در این مرحله اگر کاربران درون هر دنباله استخراج شده از مرحله قبل، با حد آستانه β به هم مرتبط شوند به عنوان یک جامعه کوچک تایید میشوند؛ در غیر این صورت گروه هرس میشود یا به چند گروه کوچکتر تبدیل میگردد. خروجی این مرحله گروههایی از کاربران را نشان میدهد که کاربران درون هر کدام از آنها علاوه بر اینکه به تعداد ¥ یا بیشتر از آن خصوصیات مشابه دارند، در گراف اجتماعی شبکه نیز، حداکثر به تعداد β از هم فاصله داشتهاند؛ ما هر یک از این گروهها را یک “جامعه کوچک” مینامیم. سؤالی که در اینجا پیش میآید این است که این تئوری، چگونه با کمترین پیچیدگی زمانی قابل پیاده سازی میباشد؟ چرا که بین دو گره در یک گراف، ممکن است چندین مسیر وجود داشته باشد. برای تحقق هدف این مرحله باید همه مسیرهای بین دو گره، به منظور یافتن کوتاهترین مسیر بررسی شود و در صورتی که فاصله کوتاهترین مسیر بین دو گره کمتر یا مساوی β باشد، گروه تایید خواهد شد. این در حالی است که الگوی تولید شده از مرحله دوم میتواند به تعداد گرههای درون شبکه نیز باشد، و هیچ محدودیتی در طول دنبالههای استخراج شده در الگوریتمهای کاوش الگوی تکرار شونده نخواهد بود. از سوی دیگر هدف ما یافتن کوتاهترین مسیر بین چندین گره، در یک گرافِ بدون وزن است که پیچیدگی زمانی کمی داشته باشد.
راه حلی که در این قسمت ارائه شده است، علاوه بر سادگی و پیچیدگی زمانی پایین، قادر است، صحت یا عدم صحت ارتباط چندین گره را با یک بار اجرا بررسی کند. این روش گرههای واسط (مسیر طی شده) را ذخیره نمیکند، که البته ما در این مرحله نیز، تنها به صحت یا عدم صحت پیوند گرهها با توجه به حد آستانه β نیاز خواهیم داشت. به منظور درک پیاده سازی به ادامه مراحل در (شکل 6) توجه کنید.
شکل 6: مرحله تایید گروه همگن به عنوان یک جامعه منسجم
در این مثال قصد داریم با توجه به حد آستانه β، صحت ارتباط بین گره 2 و گره 5 را بررسی کنیم (که در مرحله قبل به عنوان یک گروه همگن استخراج شدند). اگر حد آستانه β را در این مثال 2 فرض کنیم (=2β)، در صورتی این دو گره به عنوان یک گروه در این مرحله تایید میشوند که بین کوتاهترین مسیر ارتباطی آنها، حداکثر دو گره واسط وجود داشته باشد. در گام اول هر گره عضو گروه، نام خود را در حافظه خود ذخیره میکند؛ حافظه دیگر گرهها در گام اول خالی میباشد. در گام دوم همه گرههای عضو گروه، حافظه خود را برای همسایگانشان ارسال میکنند. همسایگان پیامها را دریافت و با حافظه خود ادغام میکنند. در اینجا متغیری به نام step خواهیم داشت که به ازای هر گامِ ارسال، یک واحد به آن اضافه میشود. حداکثر مقدار مجاز برای step برابر مقدار حد آستانه β میباشد. پس از اینکه step به این مقدار رسید حافظه گرهها بررسی میشود و در صورتی که حافظه تنها یک گره، حاوی نام گرههای درون گروه بود (در اینجا 2 و 5 اعضای گروه هستند)، این گرهها با حد آستانه β با هم مرتبط هستند. پس در گام دوم مقدار step برابر 1 میشود، با بررسی حافظه گرهها در گام سوم، صحت ارتباط دو گره با حد آستانه 2 تایید میشود. اگر در حافظه هیچ یک از گرهها، دنباله کامل نبود، گروه حذف خواهد شد. به عنوان مثال در اینجا در صورتی که =1β باشد گروه متشکل از گرههای 2 و 5 هرس میشوند. برای دیگر جوامع کوچک کشف شده (در اینجا گرههای 1 و 6) این مراحل را انجام میدهیم. برای بهینه سازی الگوریتم فوق نیز بهتر است پس از هر ارسال حافظهها بررسی شود، در صورتی که دنباله کامل را یافتیم، بدین معنی است که گرهها با هم پیوند دارند و ارتباط بین گرهها با واسطهای کمتر از حد آستانه β بوده است. بنابراین به منظور جلوگیری از سربار پردازشی از ادامه اجرا جلوگیری میکنیم. از سوی دیگر با هر ارسال، منطقی نیست حافظه همه گرهها حتی گرههایی که حافظه خالی دارند بررسی شود، بنابراین با یک نقشه بیتی و یک کردن بیت مربوط به گرههایی که حافظه آنها تغییر کرده است، قادر خواهیم بود تنها گرههای درگیر را بررسی کنیم و در اینجا نیز از سربار پردازشی زیادی جلوگیری کنیم. به طور کلی الگوریتم دو شرط خاتمه دارد، یا دنباله کامل در حافظه گره ای پیدا شود، یا مقدار step برابر با مقدار حد آستانه β شود.
ü هر گروه دو یا چندکاربره به منظور صحت ارتباط بین اعضایش، با توجه به حد آستانه β مورد بررسی قرار میگیرند. در صورت صحت ارتباط بین اعضا، گروه، بدون تغییر به مرحله بعد ارسال میشود، در غیر این صورت حذف میگردد. ü خروجی این مرحله گروههایی از کاربران را نشان میدهد که کاربران درون هر گروه، به تعداد ¥ یا بیشتر از آن خصوصیات مشابه در شبکه دارند، و در گراف اجتماعی شبکه حداکثر به تعداد β از هم فاصله داشتهاند، ما این گروهها را جوامع کوچک مینامیم. 3-4- مرحله چهارم: گسترش جوامع کوچکهر جامعه کوچک را میتوان مجموعهای از رهبرانی (افرادی که معمولاً مهارت بیشتری در زمینه خاصی دارند، و یا در یک شبکه اجتماعی افراد تحت تأثیر آنها قرار میگیرند، به عنوان رهبر شناخته میشوند [30] ) دانست که در برخی عملیات شبکه میتوانند به عنوان انتشار دهنده آن عملیات ایفای نقش کنند. کاربرانی که در همسایگی یک جامعه کوچک هستند، به دلیل روابط نزدیکی که با افراد درون جامعه دارند، با احتمال بیشتری به آنها شباهت خواهند داشت؛ افراد به طور مستقیم تحت تأثیر همسایگان خود هستند. به عنوان مثال فرض کنید یک کاربر در یک شبکه اجتماعی اینترنتی عملی را انجام میدهد، حال دوستان این فرد قادر خواهند بود، انجام آن عمل خاص توسط این کاربر را مشاهده کنند؛ این شانسی است که آنها نیز به شخصه بتوانند آن عمل را انجام دهند. حال فرض کنید از این افراد، تعدادی این عمل را انجام میدهند؛ دوستان مشترک این افراد با تودهای از کاربران در ارتباط هستند که یک عمل خاص را انجام دادهاند، بنابراین برای انجام آن عمل وسوسهی بیشتری خواهند داشت[31]. این انتشار انجام عمل، پایه و اساس بازاریابی ویروسی در اینترنت میباشد. حال کل عملیات مجاز در شبکه را در نظر بگیرید، و افراد هم سلیقهای که تعداد زیادی عملیات مشابه در شبکه انجام دادهاند؛ بنابراین تودهای از افراد را تشکیل میدهند که انتشار دهنده این عملیات مشابه هستند. بنابراین میتوان گفت با گسترش جوامع کوچک، افرادی مشابه و یا افرادی که احتمالاً در آینده در یک سمت و سو حرکت میکنند، شناسایی خواهند شد. ما فرض میکنیم همسایگان هر جامعه کوچک، از پیروان آن جامعه خواهد بود؛ از این رو جوامع استخراج شده از مرحله قبل را توسعه داده و متناسب با حد آستانه α به جوامع با اندازههای مورد قبول میرسیم. برای این کار، از الگوریتمی مشابه الگوریتمهای طبقه بندی استفاده میکنیم. گرههایی که جامعه مشخصی ندارند به عنوان پیروان جوامع، به نزدیکترین جامعه کوچک انتساب داده میشوند، به عبارت دیگر هر گره غیر رهبر به جامعه ای منتسب میشود که رای بیشتری را از آن جامعه داشته باشد. در ادامه به روش پیشنهاد شده به منظور گسترش جوامع اشاره میشود.
پس از اجرای مرحله سوم، گروههای کوچکی از کاربران استخراج میشوند که از آنها به عنوان جوامع کوچک یاد میشود. هر جامعه کوچک شامل گرههایی (کاربرانی) است که از نظر انجام عملیات در شبکه به یکدیگر مشابه بودهاند. همان طور که گفته شد افراد ممکن است تحت تأثیر همسایگان خود قرار گیرند، حال آنکه اگر تعداد همسایگان بیشتری از یک گره، عملیات مشابهی را انجام دهند این تأثیر گذاری بیشتر خواهد شد. این روش از دو حد آستانه α و µ به منظور گسترش گروههای استخراج شده، استفاده میکند. حد آستانه µ: این حد آستانه در این الگوریتم تعیین میکند که چه تعداد همسایگان یک گره، عضو یک جامعه باشند تا گره مذکور عضو آن جامعه شناسایی گردد. مقدار این حد آستانه یک عدد بین 0 تا 1 خواهد بود. حد آستانه α: این حد آستانه نشان میدهد که افراد عضو یک جامعه تا چه سطحی از همسایگان خود را به عنوان پیروان خود بپذیرند. هر چه مقدار این حد آستانه بزرگتر باشد تعداد افراد عضو جوامع پس از مرحله گسترش، بیشتر خواهد بود. ü پیاده سازی در این روش گرههای معمولی (گرههای غیر رهبر)، به جامعهای منتسب میشود که همسایگان بیشتری از گرههای عضو آن جامعه خاص، داشته باشند بنابراین ممکن است جوامع همپوشانی داشته باشند، همچنین برخی گرهها که پس از رای گیری به جامعه خاصی منتسب نمیشوند Outlier شناخته میشوند. برای درک بهتر این الگوریتم، دو جامعه کوچک و را در گراف اجتماعی شکل 7 در نظر بگیرید، هر دو جامعه از دو عضو در گراف تشکیل شدهاند.
شکل 7: روش رای گیری
اگر حد آستانه =0.6 µ باشد بدین معنی است که هر کاربر برای عضویت در هر یک از جوامع یا به همسایگی 60 درصد از گرههای این جوامع یعنی هر دو گره در هر گام نیاز دارند، چرا که این دو جامعه در گام اول تنها از دو گره تشکیل شده است (شکل 8). ü در گام اول که α=1 است، گرههای 7 و 9 به گروه و گره 2 به گروه میپیوندند. ü در گام دوم α=2 است و گره 3 به گروه میپیوندد (در اینجا 60 درصد همسایگی برای جامعه G1 که از 3 گره تشکیل شده است، همسایگی 2 گره خواهد بود)؛ گروه بدون تغییر باقی خواهد ماند، چرا که هیچ گره ای با 60 درصد از گروه در ارتباط نیست. ü در گام سوم α=3 است ولی گره 4 به گروه نمیپیوندد، چرا که گره 4 با 60 درصد از گرههای گروه در ارتباط نیست؛ بنابراین هر دو گروه بدون تغییر باقی خواهند ماند.
شکل 8: پیاده سازی روش رای گیری و گسترش جوامع
به طور کلی روش پیشنهاد شده به منظور کشف یک جامعه سعی دارد ابتدا تعدادی از گرههای مشابه را به عنوان هسته (رهبران) جامعه، شناسایی کند و سپس این هسته را در گراف اجتماعی، با استفاده از ارتباطات، گسترش داده (پیروان)، و تعداد بیشتری از گرهها را به عنوان جامعه پوشش دهد (شکل 9)
شکل 9: چگونگی ایجاد جوامع در روش پیشنهادی
ü در این مرحله به هدف اصلی روش پیشنهادی، یعنی استخراج جوامع میرسیم. این جوامع شامل گرههایی هستند، که از نظر عملیات مشابه و تا حدودی مرتبط هستند. 4- ارزیابیروشهای متعدد کشف ساختار جامعه ، ارزیابی این روشها را به یک چالش مهم در این زمینه تبدیل کرده است. ارزیابی الگوریتم، اساساً بدین معناست که الگوریتم مورد نظر به منظور حل یک مشکل خاص نسبت به دیگر روشها در آن مشکل خاص تایید شود. در این مورد یعنی”کشف جامعه“ در ساختار شبکههای اجتماعی، مسئله کاملاً روشن است و هدف نهایی همه الگوریتمها در این زمینه شناسایی گرههای مشابه به عنوان جامعه میباشد. یکی از دلایل اصلی که ارزیابی روشهای استخراج جامعه را با مشکل مواجه نموده است، این است که یک تعریف واضح و روشن از ساختار جامعه در یک شبکه دنیای واقعی وجود ندارد و ممکن است هر الگوریتم نسبت به کاربرد استفاده شده شباهت بین گرهها را محاسبه کند. یکی از مهمترین ارزیابیها استفاده از گرافهای استاندارد Benchmark میباشد، این گرافها به روشهای مختلف به صورت استاندارد به منظور ارزیابی کشف جوامع ایجاد میشوند و در اختیار محققین در این زمینه قرار داده میشود. گرههای موجود در این گرافها دارای برچسب کلاس میباشند، بدین معنی که گرهها به صورت ایده آل گروه بندی شدهاند و محققان میتوانند کار خود را با این گرافها مورد ارزیابی قرار دهند. برخی از این گرافها با استفاده از روشهای استاندارد توسط کامپیوتر تولید میشوند، برخی گرافها نیز از شبکههای اجتماعی در دنیای واقعی جمع آوری شدهاند. 4-1- معیارهای ارزیابی:متخصصان حوزه شبکههای اجتماعی برخی معیارهای ارزیابی استاندارد را معرفی نمودهاند که میتوان به منظور ارزیابی از آنها بهره جست. یکی از این معیارها معیار F-measure میباشد که به منظور ارزیابی روش پیشنهادی از آن استفاده میشود. این معیار شامل دو فاکتور اصلی دقت[23] و فراخواندن[24] است که از رابطه زیر بدست میآید [32].
1)
2)
3)
4-2- مجموعه دادهبه منظور ارزیابی روش پیشنهادی از مجموعه داده شبکه اجتماعی فلیکر وبلاگ کاتالوگ[25] استفاده شده است.
4-2-1- مجموعه داده فلیکر[26] فلیکر[27] یکی از بزرگترین سایتهای اشتراک گذاری تصویر و ویدئو، خدمات وب و جوامع اینترنتی میباشد، که توسط لادیکارپ[28] در سال ۲۰۰۴ ایجاد شد و در سال ۲۰۰۵ توسط یاهو خریداری گردید. هر کاربر در این شبکه اجتماعی میتواند تصاویر خود را به اشتراک بگذارد و عضو گروههای مختلف شود. گروه فلیکر را هر عضو از این سایت میتواند بسازد. سازندهی یک گروه فلیکر، توانایی نظارت و تعیین محدودیتهای گروه را دارد. گروهها یک راه برقراری ارتباط بین اعضای فلیکر پیرامون عکس و فیلم است. با انتخاب گروه، گاهی اوقات هنگام ورود به سامانه پیامی خصوصی به کاربر ارسال میشود. کاربران میتوانند روی تصاویر و فایلهای به اشتراک گذاشته شده دیگر کاربران برچسب بزنند. مجموعه دادههای زیادی از این شبکه انتشار یافته است، مجموعه داده ای که در این مقاله استفاده میشود در سال 2012 ارائه شده است و شامل بیش از 35000 کاربر است. این مجموعه داده به دلیل وجود فایل گروه بندی شده کاربران (برچسب کلاس)، مناسب ارزیابی الگوریتمهای کشف جامعه و طبقه بندی میباشد و اطلاعات زیر را شامل میشود:
4-2-2- مجموعه داده بلاگ کاتالوگ[29] بلاگ کاتالوگ یک شبکه اجتماعی و یکی از بهترین مکانها برای پیدا کردن وبلاگها و وبلاگ نویسان میباشد، که در آن کاربران قادر خواهند بود که وبلاگهای خود را معرفی نمایند، و یادداشتهای روزانه عمومی و خصوصی خود را در آن ذخیره کنند. همچنین این کاربران میتوانند دوستان خود را در این شبکه داشته باشند. مجموعه داده ای که در این پژوهش از این شبکه مورد استفاده قرار گرفته است، شامل 90000 کاربر است. از آنجا که این مجموعه داده شامل اطلاعات گروه بندی کاربران است، مناسب برای ارزیابی الگوریتمهای کشف جامعه و طبقه بندی خواهد بود. این مجموعه داده شامل اطلاعات زیر است:
4-3- نتایجبا اجرای روشهای مختلف کشف جامعه روی دو مجموعه داده فلیکر و بلاگ کاتالوگ جوامع را شناسایی نمودیم، نتایج در نمودارهای شکل 11و شکل 13(به ترتیب نتایج مجموعه داده فلیکر و بلاگ کاتالوگ) ارائه شده است. در این نمودارها میانگین مقادیر سه پارامتر دقت، فراخواندن و معیار F نشان داده شده است. هر یک از این میلهها نشان دهنده یک روش کشف جامعه میباشد، سه میله اول روش پیشنهاد شده با مقادیر مختلف Alpha را نشان میدهد. میله چهارم یک روش کشف جوامع مبتنی بر پیمانهای [33] ، میله پنجم مبتنی بر خوشه بندی [34] و میله ششم و هفتم دو روش مبتنی بر رهبر-پیرو [35,10] را نشان میدهد. دلیل انتخاب دو روش مبتنی بر پیمانه ای و مبتنی بر خوشه بندی به منظور مقایسه با روش پیشنهادی این بود که نشان دهیم استفاده از محتوا در کشف جوامع در روش پیشنهادی به چه میزان موثر بوده است، چرا که در این دو روش تنها از ساختار گرافی شبکه به منظور کشف جوامع استفاده میشود. اما دو روش مبتنی بر رهبر و پیرو (میله ششم و هفتم) که میتوان گفت مشابه روش پیشنهادی عمل میکنند (ابتدا گرههای رهبر بر اساس معیارهای شبکه شناسایی میشوند سپس حول هر رهبر جوامع استخراج میشوند)، با این تفاوت که در روش پیشنهاد شده مجموعه ای از کاربران مشابه از نظر عملکرد در شبکه به عنوان رهبران یک جامعه شناسایی میشوند در حالی که در دو روش مذکور رهبران بر اساس ساختار گرافی شبکه شناسایی میشوند (هر جامعه تنها یک رهبر خواهد داشت) سپس حول این رهبران جوامع استخراج میشوند. نمودار میلهای دو بعدی شکل 10 میانگین تعداد افراد درون جوامع در روشهای مختلف را روی مجموعه داده فلیکر نشان میدهد. میله هشتم میانگین تعداد افراد درون جامعه در گروه بندی ایده آل (Ground Truth) است (همان طور که در بخش معرفی این مجموعه داده گفته شد، این مجموعه داده شامل اطلاعات گروه بندی کاربران (جامعه) نیز میباشد. در این گروه بندی 201 گروه مجزا مشخص شده است که به طور میانگین در هر گروه 3688 کاربر عضو میباشد).
شکل 10) میانگین تعداد افراد درون جوامع در روشهای مختلف کشف جامعه روی مجموعه داده فلیکر
همان طور که در شکل 10 مشخص است هر چه مقدار α در روش پیشنهادی بیشتر شده است، میانگین تعداد افراد درون جامعه نیز افزایش مییابد.
شکل 11) میانگین معیار F-measure در روشهای مختلف کشف جامعه روی مجموعه داده فلیکر
خلاصهی نتایج روی مجموعه داده فلیکر (شکل 11)، نشان میدهد، روش پیشنهادی نسبت به دیگر روشها از انعطاف پذیری بیشتری برخوردار است، چرا که با مقادیر مختلف حد آستانه α، مقادیر متفاوتی برای سه معیار دقت، فراخوانی و معیار F بدست آمده است. در اجرای روش پیشنهادی با مقدار 1=α، دقت شناسایی جوامع بیشتر از اجرای روش پیشنهادی با دیگر مقادیر برای α بوده است، اما در این صورت تعداد افراد درون جوامع کمتر از 2=α و 3=α خواهد بود. شکل 10 و شکل 11 به خوبی نشان میدهد که مقادیر دقت و فراخوانی رابطه مستقیم با میانگین تعداد افراد درون جوامع خواهد داشت. هر چه تعداد افراد درون جامعه افزایش یابد، مقدار α افزایش مییابد؛ که اگر مقدار دقت کاهش چشم گیری نداشته باشد؛ متعاقباً مقدار معیار F نیز افزایش مییابد. همان طور که مشاهده میکنید، اجرای روش پیشنهادی روی این مجموعه داده، در مقدار معیار F، نسبت به دیگر روشها (جز یک روش)، به مراتب بهتر بوده است. در ادامه همین مقایسه روی مجموعه داده بلاگ کاتالوگ اجرا شده است. همان طور که در بخش معرفی این مجموعه داده گفته شد، این مجموعه داده نیز شامل اطلاعات گروه بندی کاربران میباشد. در این گروه بندی، 319 گروه مجزا مشخص شده است که به طور میانگین در هر گروه 842 کاربر عضو میباشد (البته گروههایی که حداقل بیش از 10 کاربر دارند)
شکل 12) میانگین تعداد افراد درون جوامع در روشهای مختلف کشف جامعه روی مجموعه داده بلاگ کاتالوگ
شکل 13) میانگین معیار F-measure در روشهای مختلف کشف جامعه روی مجموعه داده بلاگ کاتالوگ
با ارائه نتایج ارزیابی روی مجموعه داده بلاگ کاتالوگ، علاوه بر اینکه انعطاف پذیری روش پیشنهادی ثابت شده است، نشان دادیم که این روش، دقت شناسایی جوامع را به طور قابل ملاحظه ای در برخی شبکه های اجتماعی افزایش میدهد. از سوی دیگر همان طور که مشاهده میکنید، اجرای روش پیشنهادی روی این مجموعه داده، در مقدار معیار F نیز نسبت به دیگر روشها (جز یک روش)، به مراتب بهتر بوده است. به طور کلی میتوان گفت که روش پیشنهادی با توجه به پارامتر های ورودی نتایج مختلفی روی مجموعه دادهها خواهد داشت، با این حال با ارائه نتایج روی دو مجموعه داده نشان دادیم که روش پیشنهادی علاوه بر انعطاف پذیری (تنظیم پارامترها با توجه به نیاز در کاربردها)، به طور نسبی کیفیت جوامع (معیار F شامل دقت و فراخوانی) را نیز افزایش میدهد. 5- مقایسه پیچیدگی زمانی روش پیشنهادیدر این بخش پیچیدگی زمانی روش پیشنهادی و تعدادی از روشهای دیگر، محاسبه گردیده است. در جدول 1 نمادهای مورد استفاده لیست شدهاند.جدول 1: نمادهای مورد استفاده
در جدول 2 نتایج حاصل از محاسبه پیچیدگی زمانی و سایر پارامترهای مقایسه نشان داده شده است. با توجه به نتایج میتوان دریافت که روش پیشنهادی پیچیدگی زمانی بالایی نسبت به دیگر روش ها دارد چرا که در این روش علاوه بر ساختار گراف از محتویات(عملیات کاربران) نیز استفاده می شود تا دقت جوامع کشف شده افزایش یابد. به عنوان کارهای آینده می توان با استفاده از هرس نمودن گرهها و الگوریتم های مختلف کاوش الگوی تکرار شونده پیچیدگی زمانی و زمان اجرایی این روش را بهینه نمود. جدول 2: مقایسه پیچیدگی زمانی
6- نتیجهگیریافزایش در دسترس بودن دادههای شبکههای اجتماعی، باعث انگیزه پژوهشهای محاسباتی در تجزیه و تحلیل شبکههای اجتماعی میشود. اخیراً کشف جامعه در شبکههای اجتماعی به یکی از چالشهای مهم در شبکههای اجتماعی مبدل شده است. در این مقاله، روش جدیدی برای کشف جامعه بر اساس محتویات منافع شخصی کاربران و روابط اجتماعی آنها ارائه نمودیم. دو نوع روش کلی در زمینه کشف جامعه در شبکههای اجتماعی وجود دارد؛ روشهایی که بر اساس روابط میان کاربران شبکه به کشف جامعه میپردازند (روشهای مبتنی بر ساختار گراف) و روشهایی که بر اساس منافع مشترک کاربران در شبکه به حل این مسئله پرداختهاند (روشهای مبتنی بر محتوا)؛ روشهای نوع دوم شباهت منافع کاربران در شبکههای اجتماعی را اندازه گیری میکنند. اغلب روشهای کشف جامعه فقط یکی از این جنبهها را در نظر میگیرند. در واقع، هم ارتباطات و هم محتوا برای استخراج جوامع در شبکههای اجتماعی از اهمیت بالایی برخوردار است. روش پیشنهادی یک روش ترکیبی است، که هم محتوا و هم ساختار گراف را به منظور استخراج جوامع در نظر میگیرد. با ارزیابی روش پیشنهادی بر روی دو مجموعه داده واقعی نشان دادیم، که استفاده از روش پیشنهادی نسبت به روشهای موجود کشف جامعه در شبکههای خاص مناسبتر است و انعطاف پذیری بیشتری نسبت به روشهای دیگر دارد. به طور کلی یک رویکرد جدید در تجزیه و تحلیل شبکههای اجتماعی معرفی شد، که بر اساس وظایف داده کاوی و علایق کاربران به مسئله کشف جوامع میپردازد، روش پیشنهادی کیفیت جوامع را به منظور استفاده در کاربردهایی نظیر پیشنهاد دوست، تقسیم بندی مشتری و تجزیه و تحلیل تأثیر گذاری در شبکههای خاص ارتقا میدهد. همه روشهای کشف جوامع دارای مزایا و معایب خاص خود هستند. از مزایا روش پیشنهادی میتوان به بهبود دقت و کیفیت نسبی جوامع، کشف رهبر و جامعه، تنظیم پارامترها به منظور کشف جوامع مناسب در کاربردهای خاص، امکان تشخیص همپوشانی و گرههای Outlier و رویکردی نو در کشف جامعه اشاره نمود. همچنین روش پیشنهادی با برخی چالشها و معایب مواجه میباشد از جمله پیچیدگی زمانی (به دلیل استفاده از الگوریتمهای کاوش الگوی تکرار شونده) و مشکل تعیین پارامترها (روش وابسته به پارامتر) اشاره کرد. با این حال امید است که این روش راهی نو در روشهای کشف جامعه مبتنی بر ساختار-محتوا باشد. از کارهای آتی میتوان به استفاده از الگوریتمهای نگهداری الگوی تکرار شونده به جای الگوریتمهای کاوش الگوی تکرار شونده از جمله الگوریتمهای CAN و CAT [35] که میتواند جایگزین مناسبی برای الگوریتمهایی همچون Apriori، Fp-Growth در مجموعه دادههای پویا (برخط) باشد، اشاره کرد، این گام باعث میشود روش پیشنهاد شده حداقل در مورد کشف رهبران در مقابل دادههای افزایشی انعطاف پذیر گردد. همچنین ممکن است با جایگزین نمودن یک روش رای گیری مناسبتر در مرحله چهارم، کیفیت نتایج را بهبود بخشید. به منظور کاهش پیچیدگی زمانی نیز میتوان از روشهای موازی سازی استفاده نمود. [1]Facebook [2]Flickr [3]Tweeter [4] Amit Goyal [5] Confidence [6] Genuineness [7] Muhaimenul Adnan [8] Dot-Product [9] Rushed Kanawati [10] Reihaneh Rabbany Khorasgani [11] Dongyuan Lu [12] favor volume [13] Favor Coverage [14] Favor timeliness [15] Maximal Pattern [16] Homogeneous group [17] Minimum Support [18] http://del.icio.us/ [20] LastFm.com [21] Login [22] Logout [23] Precision [24] Recall [25] Blogcatalog [26] http://dmml.asu.edu/users/xufei/datasets.html [27] www.flicker.com [28] Ludicorp [29] http://dmml.asu.edu/users/xufei/datasets.html | |||||||
مراجع | |||||||
[1] C. Charu and R. Aggarwal, " Social Network Data Analytic," Springer Science+Business Media, 2011. [2] S. Wasserman and K. Faust, "Social Network Analysis in the Social and Behavioral Sciences," Social Network Analysis: Methods and Applications, 1994. [3] M. Coscia, F. Giannott, and D. Pedreschi, "REVIEW A Classification for Community Discovery Methods in Complex Networks," Published online in Wiley Online Library, 2011. [4] A. E. Mislove, "Online Social Networks: Measurement, Analysis, and Applications to Distributed Information System," Houston, Texa, 2009. [5] M. Sachan, D. Contractor, A. Faruquie, and L. Venkata, "Using Content and Interactions for Discovering Communities in Social Networks," presented at the International World Wide Web Conference Committee, 2012. [6] D. Ganley and C. Lampe, "The ties that bind: social network principles in online communities," Decision Support Systems vol. 47, pp. 266-274, 2009. [7] M. Muhaimenul Adnan, R. Alhaji, and J. Rokne, " Identifying Social Communities by Frequent Pattern Mining," presented at the 13th International Conference Information Visualisation, 2009. [8] A. Goyal, B. Francesco, and L. Laks V. S, "Discovering Leaders from Community Actions," presented at the CIKM, 2008. [9] H. Zhuge, "Communities and Emerging Semantics in Semantic Link Network," IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING 2009. [10] R. Khorasgani, J. Chen, and O. R. Zaïane, "Top Leaders Community Detection in Information Network," ACM Transactions on Knowledge Discovery from Data, 2010. [11] R. Kanawati, " Leaders Identification For Community Detection in Complex Network," presented at the IEEE International Conference on Social Computing, 2011. [12] D. Lu, Q. Li, and S. S. Liao, "A graph-based action network framework to identify prestigious members through member's prestige evolution," Elsevier, 2011. [13] N. Pathak, C. DeLong, A. Banerjee, and K. Erickson, "Social topics models for community extraction," in 2nd SNA-KDD Workshop, 2008. [14] D. Zhou, E. Manavoglu, L. Li, C. L. Giles, and H. Zha, " Probabilistic models for discovering e-communities," in International Conference on World Wide Web, 2006. [15] G. J. Qi, C. C. Aggarwal, and T. Thomas Huang, "Community Detection with Edge Content in Social Media Networks," presented at the 28th International Conference on Data Engineering (ICDE), 2012. [16] M. Franz, T. Ward, J. S. McCarley, and W. J. Zhu, "Unsupervised and supervised clustering for topic tracking," presented at the ACM SIGIR Conference, 2001. [17] A. Clauset, M. E. J. Newman, and Moore.C, "Finding community structure in very large networks," In Phys. Rev. E 70, 066111, 2004. [18] R. Kumar, P. Raghavan, S. Rajagopalan, and A. Tomkins, "Trawling the web for emerging cyber-communities," presented at the WWW, 1999. [19] J. Leskovec, K. J. Lang, A. Dasgupta, and M. W. Mahoney, "Statistical properties of community structure in large social and information networks," presented at the WWW, 2008. [20] V. Satulouri and S. Parthasarathy, "Scalable graph clustering using stochastic flows: Applications to community discovery," presented at the KDD Conference, 2009. [21] T. Eliassi-Rad, K. Henderson, S. Papadimitriou, and C. Faloutsos, "A hybrid community discovery framework for complex networks,," presented at the SIAM Conference on Data Mining, 2010. [22] J. M. Hofman and C. H. Wiggins, "A bayesian approach to network modularity," Phys Rev Lett 100, 2008. [23] A. Clauset, C. Moore, and M. E. J. Newman, "Hierarchical structure and the prediction of missing links in networks.," Nature vol. 453, pp. 98-101, 2008. [24] S. Borgatti, "Identifying sets of key players in a network," Comput Math Organ Theory, vol. 12, pp. 21-34, 2006. [25] X. Zhang and D. Dong, "Ways of Identifying the Opinion Leaders in Virtual Communities," International Journal of Business and Management, vol. 3, 2008. [26] D. Arroyo, "Discovering Sets of Key Players in Social Networks," in Computational Social Networks Analysis, Trends, Tools and Research Advances, ed Computer and Communication Networks Series.: Springer, 2010. [27] L. C. Freeman, Centrality in Social Networks Conceptual Clarification. Printed in the Netherlands: Elsevier Sequoia S.A., Lausanne, 1978. [28] W. Jiinlong, X. Conglfu, C. Weidong, and P. Yunhe, "Survey of the Study on Frequent Pattern Mining in Data," presented at the IEEE International Conference on Systems, 2004. [29] R. Agrawal, "Fast algorithm for mining association rules in large databases," in 20th International Conference on Very Large Data Bases,VLDB, Santiago, Chile, 1994, pp. 487-499. [30] D. Lu, Q. Li, and S. S. Liao, "A graph-based action network framework to identify prestigious members through member's prestige evolution," DECISION SUPPORT SYSTEMS, 2011. [31] A. Goyal, B. Francesco, and L. Laks V. S, "Discovering Leaders from Community Actions," in CIKM, 2008. [32] H. I. Witten and E. Frank, Data Mining:Practical Machine Learning Tools and Techniques (second edition) 2005. [33] A. Clauset, M. E. J. Newman, and C. Moore, "Finding community structure in very large networks," in Phys. Rev., 2004. [34] M. Newman and M. Girvan, "Community structure in social and biological networks," Proceedings of the National Academy of Sciences, 2002. [35] M. Feng, J. Li, G. Dong, and L. Wong, "Maintenance of Frequent Patterns," Data Mining and Knowledge Discovery, 2009.
| |||||||
آمار تعداد مشاهده مقاله: 5,836 |