چکیده
شبکه پیچیده یکی از انواع شبکههاست که به کمک ساختار گرافی میتوان موجودیتها و تعاملات بین آنها را نمایش داد. یکی از انواع شبکههای پیچیده، شبکه زمانی است که پویایی دارد و به کمک آن میتوان زمان را هم در شبکههای پیچیده در نظر گرفت. در واقع شبکه زمانی نوعی شبکه پیچیده است که در طول زمان تغییر کرده و یا تکامل مییابد. از انواع شبکههای زمانی میتوان به شبکه مغز، شبکه ترافیک و ... اشاره کرد. به دلیل ویژگی زمانی و تکامل آن، نحوه تولید و بررسی شبکههای زمانی با سایر انواع شبکه متفاوت است. بنابراین نیاز به ارائه روشهای خاصی در این زمینه است که بتوان با استفاده از ویژگیهای زمانی تحلیل و بررسی این شبکهها را انجام داد. در این نوشتار به مرور برخی از کارهای انجام شده در حوزه شبکه زمانی پرداخته شده است و هدف از انجام این مطالعه، بررسی مطالعات شبکههای زمانی به ویژه با رویکرد مدلهای یادگیری عمیق است.
کلمات کلیدی: شبکه پیچیده، شبکه زمانی، مدل تولید گراف
1- مقدمه
شبکههای زمانی یکی از انواع شبکههای پیچیدهاند که پویایی دارند. به عبارت دیگر هر یال در این شبکه در زمان خاصی وجود داشته و فعال است. مثالهای زیادی از این نوع شبکه در دنیای واقعی وجود دارد که شامل شبکه انتشار (بیماری، اطلاعات، ویروس کامپیوتری و ...)، شبکه مغز، شبکه حمل و نقل (به خصوص شبکه ترافیکی) و ... هستند. در واقع میتوان گفت که این شبکهها در طول زمان تکامل یافته یا تغییر میکنند. برای مثال میتوان از این شبکه برای پیشبینی وضعیت آینده ترافیک یا احتمال ابتلای فرد به آلزایمر و ... استفاده کرد. پس مطالعه شبکههای زمانی از اهمیت بالایی برخوردار است.
به صورت کلی کارهای انجام شده در حوزه شبکه پیچیده را میتوان در دو گروه یادگیری توزیع شبکه و تولید آن یا تحلیل و پیشبینی الگوها در شبکه تقسیمبندی کرد. تحلیل و پیشبینی الگوهای شبکه بسیاری از حوزههای تحقیقاتی از جمله ردهبندی گره، ردهبندی یال، ردهبندی گراف و پیشبینی یال، تشخیص انجمنها و ... را پوشش میدهد.
یکی دیگر از مسائل موجود در رابطه با شبکههای پیچیده، مدلی برای تولید آنهاست. به علت اینکه اطلاعات بسیاری از شبکههای موجود در دسترس نیستند، نیاز به سنتز و تولید شبکههای مصنوعی است تا بتوان از آنها در شبیهسازی، ارزیابی و حل مسائل موجود استفاده کرد. از آنجایی که هدف اصلی این پروژه مطالعه شبکههای زمانی است، به بررسی روشهایی برای تحلیل و پیشبینی و مدلهایی برای تولید شبکههای پیچیده زمانی پرداخته خواهد شد.
2- ادبیات پژوهشی
2- 1- شبکه زمانی
شبکههای پویا که با نام شبکه زمانی هم شناخته میشوند، شبکههایی هستند که در طول زمان تغییر میکنند. پویایی شبکهها را میتوان از نظر تغییر ساختار شبکه (اضافه یا حذف شدن یالها یا گرهها) یا تغییر ویژگیهای گرهها و یالها در طول زمان بررسی کرد. در واقع میتوان شبکه زمانی را معادل با یک سری زمانی در نظر گرفت که سیر تغییرات ساختاری شبکه را نشان میدهد [1].
از نظر زمانی، دو نوع شبکه پویا وجود دارد. اگر شبکه زمان گسسته باشد، میتوان آن را به صورت دنبالهای از شبکههای ایستا با برچسب زمانی t و به صورت زیر نمایش داد که Vt و Et به ترتیب گرهها، یالها در زمان t مشخص میکنند. در صورتی که شبکه زمان پیوسته باشد، مبتنی بر رویداد است و بر اساس تغییراتی از قبیل حذف یا اضافه شدن یالها و گرهها توصیف میشود [1].
2- 2- انجمن
بسیاری از شبکههای پیچیده قابل تقسیم به گروهها و انجمنهایی هستند که بیشترین ارتباطات بین موجودیتهای داخل انجمن نسبت به ارتباطات با خارج انجمن است. در برخی موارد ممکن است یک گره عضو بیش از یک انجمن باشد که در این صورت انجمنها با یکدیگر همپوشانی خواهند داشت. در الگوریتمهای مربوط به شناسایی انجمنها، برای ارزیابی عملکرد روش از معیاری به نام پیمانگی استفاده میشود. این معیار در واقع تعداد یالهای بین گرهها در یک انجمن را با تعداد یالهایی که انتظار میرود در یک شبکه تصادفی بین این گرهها وجود داشته باشد، مقایسه میکند. معیار پیمانگی کیفیت تقسیمبندی را نشان میدهد و عددی بین 1- تا 1 است. طبق محاساباتی که انجام شده است، معیار پیمانگی بیش از 0.3 در شبکههای واقعی مناسب است.
2- 3- مدلهای تولید شبکه
در بسیاری از کاربردها و برای آزمایش فرضیات، نیاز به وجود شبکههایی است که از آنها برای شبیهسازی و آزمون استفاده شود. اما از آنجایی که اغلب دسترسی به اطلاعات شبکههای واقعی ناممکن است، روشهایی برای تولید شبکههای مصنوعی ارائه شده تا بتوان با استفاده از ویژگیهای شبکه مد نظر، نمونه مصنوعی آن را ساخت. مدلهای تولید گراف الگوریتمهایی هستند که گرافهایی با ویژگیهای مشخص را از روی شبکههای واقعی تولید میکنند. این مدلها فرایندی مشابه شبکه واقعی برای مدلسازی را طی میکنند و از این رو تحلیل شبکههای پیچیده به کمک آنها امکان پذیر میشود [2].
به دلیل کاربردهای فراوان حوزه تولید گراف، مدلهای مولد مختلفی برای شبکهها ارائه شدند که از جمله این موارد میتوان به مدلهای معروفی مانند گرافهای تصادفی، مدلهای دنیای کوچک و ... اشاره کرد. این مدلهای تولید گراف بر اساس یک نوع خاص از شبکههای واقعی ارائه شدند و تنها قادر به مدلسازی گراف با چند ویژگی آماری هستند. در واقع از آنجایی که شبکههای واقعی بسیار متنوع هستند، در بسیاری از موارد ویژگیهای شبکه و قوانین ساخت آن ناشناخته است. برای رفع این مشکل مدلهای ترکیبی و مدلهای مبتنی بر یادگیری ماشین ارائه شد که قادر بودند به صورت خاصتر شبکههای مد نظر را تولید کنند. با کاربرد گسترده حوزه یادگیری عمیق و مدلهای مولد عمیق، روشهای دیگری هم برای ساخت شبکههای مصنوعی ارائه شد [3]. در ادامه به توضیح مختصری از هر یک از این روشها پرداخته شده است.
در مدلهای سنتی تولید گراف، با بررسی ساختار نوع خاصی از شبکههای دنیای واقعی قوانینی برای ساخت شبکههای مصنوعی ارائه میشود. از آنجایی که در بسیاری از حوزهها، ویژگیهای شبکه و قوانین تولید آن ناشناخته هستند (مانند تفسیر مکانیسمهای بیماریهای روانی در شبکههای مغزی، انتشار بدافزارها و ...)، نمیتوان از این مدلها به صورت گسترده استفاده کرد [3].
به دلیل عدم وجود مدل کاملی برای تولید همه انواع شبکهها، روشهای قبلی در تولید اغلب ساختارهای شبکه موفق نبودند. به همین دلیل به سراغ روشهای ترکیبی و استفاده از یادگیری ماشین برای برازش مدل ارائه شد. در این روشها مدل یادگیری ماشین بر اساس انواع مختلف روشهای سنتی آموزش داده شده و سپس بهترین روش ساخت شبکه بر اساس برخی از ویژگیهای مد نظر شبکه هدف انتخاب میشود. گامهای برازش مدل شامل انتخاب مدل مناسب و تنظیم پارامترهای آن است.
نسل فعلی روشهای تولید شبکه از یادگیری عمیق و شبکه عصبی برای ساخت مدل استفاده میکنند. تفاوت این روشها با مدلهای یادگیری ماشین در مرحله استخراج ویژگی است. در مدل یادگیری عمیق، این توانایی در مدل وجود دارد تا ویژگیها را استخراج کرده و بر حسب اهمیت هر ویژگی ضریب متناسب با آن را بدهد.
3- مطالعات انجام شده
در این بخش به توضیح مختصر برخی از منابع مرتبط با شبکههای زمانی پرداخته شده است. علاوه بر این موارد، یکی از کارهای مطرح در حوزه شبکه و گراف، یادگیری بازنمایی است. در ادامه این بخش به مطالعات انجام شده در حوزه یادگیری بازنمایی هم پرداخته خواهد شد.
3- 1- یادگیری بازنمایی
یادگیری بازنمایی گراف به فرایند یادگیری بازنماییهای برداری و با ابعاد کم از گرهها و یالها در یک گراف اشاره دارد. این بازنماییها اطلاعات ساختاری و ارتباطی موجود در گراف را به خوبی نمایش داده و امکان انجام کارهای حوزه یادگیری ماشین را فراهیم میکنند. در واقع با استفاده از بازنمایی، شبکهها به نمایش قابل استفاده برای مدلهای یادگیری ماشین تبدیل میشوند.
ژو و همکارن در مطالعهای به مرور روشهای بازنمایی عمیق پرداختند. علت انجام این پژوهش این بود که روشهای سنتی بازنمایی، مانند «قدم زدن تصادفی» ظرفیت محدودی داشته و متکی بر یادگیری بدون نظارت هستند. روشهای سنتی بازنمایی شامل ماتریس مجاورت و کاهش ابعاد آن، «قدم زدن تصادفی» و روشهایی غیر از GNNهستند. روش «قدم زدن تصادفی» به این صورت است که یک گره تصادفی در شبکه انتخاب شده و سپس با استفاده از پیمایش تصادفی از این گره به یکی از گرههای همسایه رفته تا به محدودیت مشخصی برسد. برای مثال طول مسیر به اندازه مشخصی برسد. در این تجربه تصادفی برخی از اطلاعات ثبت شده تا با کمک آن بازنمایی انجام شود. در واقع به جای خود گراف از تعدادی مسیر آن به عنوان نماینده استفاده میشود. در مطالعات مربوط به مدلهای تولید شبکه مانند TagGen و TIGGER، از مفهوم «قدم زدن تصادفی» با در نظر گرفتن ویژگی زمانی استفاده شده است. در این مدلها، علاوه بر در نظر گرفتن هر مسیر که حاصل از «قدم زدن تصادفی» است، برچسب زمانی هم لحاظ میشود. زیرا در شبکه زمانی در هر لحظه تعدادی از یالها وجود دارند.
در ادامه به توضیح روشهای مبتنی بر یادگیری عمیق پرداخته شده است. برای مثال یکی از روشهای یادگیری بازنمایی میتواند با استفاده از شبکههای کانولوشن گرافی باشد. به صورت کلی شبکههای عصبی کانولوشنی برای دادههایی مانند تصاویر مناسب هستند. به همین در حوزه شبکه کارایی آنها بسیار نامطلوب بوده است. روش دیگر استفاده از جمعآوری گراف است. در حالت سراسری با این روش بازنمایی، از تعبیه گرهها استفاده شده و با تجمیع آنها بازنمایی کل گراف به دست میآید. طبق نتایج این مطالعه، روش جمعآوری برای گرافها با ویژگیهای ساده مناسب بوده اما اگر شبکه زمانی و پویا باشد، عملکرد مطلوبی نخواهد داشت. در این مطالعه بررسیهایی در زمینه کارهای انجام شده برای یادگیری ساختار گراف و کاربردهای بازنمایی اشاره شده است و مروری بر مزایا و معایب هر یک انجام شده است [4].
روشهای بازنمایی موجود اغلب برای حوزه شبکههای ایستا ارائه شدند و به خاطر پیچیدگی و داشتن عامل زمان در شبکههای پویا و زمانی مدل مناسبی برای یادگیری بازنمایی عمیق ارائه نشده است. به همین دلیل ضرورت دارد، روشهایی ارائه شود که عامل زمان را هم در نظر میگیرد. شبکههای پویا را میتوان با سه روش توصیف کرد. در روش اول، شبکه زمان گسسته است. یعنی برچسب زمانی آن، مضربی از یک زمان خاص است. در این حالت، شبکه زمانی با استفاده از تعدادی شبکه ایستا بازنمایی میشود. به این روش توصیف، روش مبتنی بر تصویر لحظهای گفته میشود. در روش دوم، شبکه زمان پیوسته است. یعنی برچسب زمانی هر عددی میتواند داشته باشد. در این حالت برای توصیف شبکه از رویدادها استفاده میشود. در واقع هر تغییری یک رویداد است که در جایی به نام «صندوق پستی» قرار گرفته و به ترتیب پردازش میشود. در روش سوم، شبکه معادل ایستا از روی شبکه زمانی ساخته شده و از الگوریتمها و روشهای بازنمایی در حالت ایستا استفاده خواهد شد [5].
یکی از معایب مدلهای موجود در حوزه بازنمایی همچنین روشهای موجود مقایسپذیر نبوده و اغلب برای شبکهها کوچک مناسب هستند. در حالی که شبکههای واقعی تعداد بسیار زیادی گره دارند. همچنین سربار محاسباتی روشهای موجود بسیار زیاد بوده و کارایی مناسبی ندارند [5].
3- 2- بررسی شبکههای حمل و نقل
یکی از انواع شبکههای زمانی، شبکه حمل و نقل است. شبکه حمل و نقل نشان دهنده مکانها و مسیرهای ارتباطی مانند خیابانها، بزرگرهها و ... بین آنهاست. برای مثال شبکه جادهای یا در محیطهای شهری را میتوان از این نوع شبکهها در نظر گرفت. در این شبکه، اغلب محل گرهها و یالها ثابت است و ساختار شبکه در بازههای زمانی نسبتا طولانی، تقریبا ثابت است. آنچه با زمان تغییر میکند، ویژگی گرهها و یالهاست. برای مثال نرخ عبور و مرور از یک گذرگاه، سرعت عبور، تعداد وسایل حمل و نقلی که از آن مکان عبور کردند و ... را میتوان جز ویژگیهای این شبکه در نظر گرفت. شبکه حمل و نقل علاوه بر ویژگی زمانی، دارای ویژگیهای مکانی هم بوده و به همین دلیل از انواع شبکههای زمانی-مکانی در نظر گرفته میشود.
ترافیک در شبکههای حمل و نقل یکی از مواردی است که در سالهای اخیر بسیار مورد توجه قرار گرفته و پژوهشهای زیادی در این حوزه انجام شده است. پژوهشهای این حوزه شامل پیشبینیهایی درباره سرعت ترافیک، جریان ترافیک یا تقاضای ترافیک است. روشهای مختلفی برای این کار وجود دارد که شامل روشهای سادهای مانند رگرسیون خطی تا روشهای پیچیدهتری مانند شبکههای عصبی، مدلهای بازنمایی گراف و یادگیری عمیق هستند. این روشها با تحلیل و پردازش دادههای ترافیک، الگوهای زمانی را شناسایی کرده و بر اساس آنها پیشبینیهای دقیقی درباره آینده ترافیک ارائه میدهند. همچنین مطالعاتی درباره نحوه بازنمایی این نوع از شبکهها انجام شده است. اهمیت این موضوع از این جهت است که در شبکههای حمل و نقل علاوه بر عامل زمان، مکان هم وجود دارد. بنابراین نیاز است روشهایی برای بازنمایی و استخراج نمایش برداری از عناصر مرتبط با ترافیک، مانند تقاطعها، خیابانها، خودروها و ... ارائه شود.
جیانگ و لو به بررسی مقالات و تحقیقات انجام شده در زمینه پیشبینی ترافیک با استفاده از شبکه عصبی گرافی و مدلسازی زمانی و مکانی پرداختند. دادههای ترافیک در دسته دادههای زمانی قرار میگیرند. از آنجایی که گراف ترافیک اغلب از نظر ساختار ثابت است یعنی گرهها و یالهای آن مشخص هستند هدف آن حل حالت خاصی از مسائل شبکههای پیچیده زمانی یعنی پیشبینی ویژگی یالها یا گرهها در طول زمان است. از طرفی در اگر در یک گره از شبکه ترافیک وجود داشته باشد، این ترافیک میتواند به گرههای اطراف نیز منتقل شود. بنابراین ترافیک علاوه بر زمان به مکان نیز وابسته است [6].
طبق تعریف ارائه شده، جریان ترافیک تعداد عبور وسایل نقلیه از مکان مشخص در بازه زمانی مشخص را تعیین میکند. پیشبینی جریان ترافیک برای کنترل تراکم ترافیک و کنترل چراغهای راهنمایی و ... کمک کننده است. در این مقاله مروری بر مشکلات مختلف حوزه پیشبینی ترافیکی انجام شده است. این مشکلات مربوط به سه جریان ترافیکی جادهای، منطقهای و ایستگاههاست که پیشبینیها در رابطه با جریانهای ترافیکی، سرعت و تقاضای ترافیک است. در مشکلات جریان ترافیکی جادهای، هدف پیش بینی حجم ترافیکی است که از یک حسگر در جاده یا از یک مکان خاص در طول جاده در یک بازه زمانی مشخص عبور میکند. همچنین میتوان با در نظر گرفتن حجم ترافیک در زمان مشخص و بین دو مکان خاص، مشکلات جریان ترافیکی مبدا-مقصد را بررسی کرد. در مشکلات جریان ترافیکی منطقهای، جریان ترافیک در یک منطقه مورد بررسی قرار میگیرد. در این نوع از مشکلات، تقسیمبندی بر اساس نوع حمل و نقل (دوچرخه یا تاکسی) انجام شده است. در مشکلات جریان ترافیکی در سطح ایستگاه، حجم ترافیک در ایستگاههایی مانند ایستگاه اتوبوس یا مترو اندازهگیری و پیشبینی میشود. در این نوع از مشکلات، تقسیمبندی بر اساس نوع ایستگاه (مترو، اتوبوس، راه آهن و ...) انجام شده است [6].
یکی دیگر از شاخصهای ترافیکی مهم دیگر، سرعت ترافیک است. سرعت ترافیک برابر با میانگین سرعت وسایل نقلیه عبوری از یک مکان مشخص در یک بازه زمانی مشخص است و نشاندهنده میزان شلوغی است. پیشبینی تقاضای ترافیک در زمینه ارائه خدمات تاکسی موثر است. این پیشبینی به ارائهدهنگان خدمات تاکسیرانی کمک میکند تا منابع حمل و نقل محدود خود را به مناطق شهری با تقاضای بیشتر تخصیص دهند. سرعت ترافیک در دو سطح مسائل جادهای و منطقهای بررسی شده است. علاوه بر پیشبینی سرعت ترافیک، کارهای دیگری در زمینه پیشبینی زمان سفر هم انجام شده است [6].
علاوه بر این مقاله، جیانگ در پژوهشی دیگر روشهای یادگیری عمیق مبتنی بر گراف برای شبکههای ارتباطی را مورد مطالعه و بررسی قرار داده و روشهای ارائه شده در مقالات این حوزه را دستهبندی و مرور کرده است [7].
در حوزه پیشبینیهای ترافیکی، جین و همکارن چارچوبی برای تخمین زمان سفر مبتنی بر شبکههای عصبی گراف به نام STGNN-TTE ارائه دادند. تخمین زمان سفر در مسیرهای شهری اساس برنامهریزی برای راهها و کنترل ترافیک است. یکی از چالشهای تخمین زمان سفر، تاثیر پویاییهای زمانی و مکانی بر وضعیت ترافیک است. STGVV-TTE این چالش را با استفاده از یک چارچوب شبکه عصبی گرافی زمانی- مکانی (STGNN) رفع کرده است. در این STGNN از یک ماژول زمانی-مکانی برای ثبت شرایط واقعی ترافیک در زمان واقعی استفاده شده است. اما STGNN-TTE محدودیتهایی دارد. اول اینکه به خاطر محدودیت در منابع محاسباتی، فقط فضای کوچکی برای ارزیابی مدل استفاده شده است که منجر به کوتاه شدن مسیرها شده و دوم اینکه به دلیل عدم دسترسی به برخی از دادهها، این مدل تاثیر برخی عوامل مانند رویدادهای زمانی مکانی و ... را در تخمین زمان سفر در نظر نمیگیرد [8].
3- 3- مجموعه داده شبکه زمانی
در بررسی کارهای انجام شده در زمینه شبکههای پیچیده زمانی، هوانگ و همکاران TGB(benchmark برای گرافهای زمانی) را ارائه کردند. TGB شامل مجموعهای متنوع از شبکههای زمانی در حوزههای شبکه اجتماعی، حمل و نقل، تجارت و ... است که برای ارزیابی مدلهای یادگیری ماشین قابل استفاده است. این مجموعه داده به صورت آنلاین در اختیار پژوهشگران قرار گرفته است [9].
3- 4- تحلیل و پیشبینی الگوهای شبکه
همانطور که اشاره شد، در شبکههای زمانی به دلیل وجود فاکتور زمان و تکامل زمانی ضرورت دارد روشهایی متناسب با ساختار آنها ارائه شود تا امکان تحلیل و پیشبینی دباره شبکه زمانی فراهم شود. در این بخش به مرور چند روش در حوزه تشخیص انجمنها و پیشبینی یالها پرداخته شده است.
3- 4- 1- تشخیص انجمنها
در تعریف بسیار ساده، انجمن مجموعهای از گرههاست که با یکدیگر ارتباط منسجم و با خارج از این گروه ارتباط کمی دارند. یکی از انواع مطالعات انجام شده روی شبکهها، تشخیص این انجمنها به صورت خودکار است. این مسئله در حوزه شبکه زمانی، پیچیدگیهای بیشتری دارد. از آنجایی که در شبکه زمانی، تغییراتی در ساختار شبکه ممکن است رخ بدهد، پس نیاز است مجددا انجمنها شناسایی شوند. اما در بسیاری از مواقع این گونه نیست و میتوان با استفاده از الگوهای زمانی و بدون نیاز به تعیین انجمنها از ابتدا، این کار را انجام داد. در ادامه به مرور یکی از مطالعات این حوزه برای شبکههای زمانی متناوب پرداخته شده است.
شین و همکاران روشی ارائه دادند که با کمک در نظ رگرفتن الگوهای زمانی متناوب در شبکه، بتوان انجمنها را شناسایی کرد. تناوب پدیدهای رایج در تعاملات اجتماعی در شبکههای زمانی است. شناسایی و کشف این ارتباطات متناوب، به درک رفتارهای گروهی تکرار شونده در شبکههای زمانی کمک میکند. از مثالهای تناوب در شبکه تعاملات اجتماعی میتوان به ملاقاتهای هفتگی، دیدارهای خانوادگی، جشن تولد و ... اشاره کرد. این موارد الگوهای منظم و مهمی در شبکههای تعامل زمانی هستند که در بازههای زمانی مشخصی تکرار میشوند. شناسایی الگوهای گروههای متناوب در دو حوزه پیشبینی آینده و تشخیص رفتار کمک میکند. با داشتن الگوهای متنواب، آینده قابل پیشبینی خواهد بود، زیرا این الگوها به طور متناوب و در زمانهای مشخص تکرار خواهند شد. همچنین با داشتن الگوها میتوان حالت عادی رفتار افراد که همان گرههای شبکه هستند را به دست آورد و تغییرات غیر عادی را شناسایی کرد [10].
مدل ارائه شده از k-کلیک متناوب که انجمنهای دورهای را در شبکههای زمانی نمایش میدهند، استفاده کرده است. طبق تعریف مقاله، k-کلیک متناوب در واقع کلیکی با اندازه بزرگتر از k است که حداقل tبار به صورت متناوب در شبکه زمانی دیده شده باشد. در مطالعات قبلی شین و همکاران، نشان داده شده بود که مسئله شمارش تمام کلیکهای متناوب جزو مسائلی است NP-hardاست. برای اینکه بتوان این مشکل را حل کرد، آنها راه حلی ارائه کردند که شامل دو مرحله است. در مرحله اول، شبکه را کاهش داده و برخی از بخشهای آن را هرس میکنند. سپس در مرحله دوم، شبکه زمانی را به شبکه ایستا تبدیل میکنند. آنها اثبات کردند که شناسایی انجمنها در شبکه ایستا، معادل شناسایی انجمنهای متناوب در شبکه زمانی است. برای بررسی نتایج، از پنج مجموعه داده واقعی استفاده شده است. دو مجموعه داده برای تعاملات افراد در شبکههای زمانی هستند که یکی از آنها ارتباطات رو در روی بین دانشآموزان در یک دبیرستان را مشخص کرده شبکه دیگر، ارتباطات بین دانشآموزان و معلمان در یک دبیرستان است. دو شبکه دیگر از نوع شبکههای ارتباطی زمانی هستند که در آنها هر یال زمانی مانند uvt، ارتباط ایمیلی از کاربر uبه vدر زمان tرا نمایش میدهد. آخرین شبکه نیز DBLP است که شبکه همکاری نویسندگان مقالات را نشان داده است. نتایج نشان داده است که مدل ارائه شده قابلیت مقایسپذیری، اثربخشی و کارایی دارد [10].
3- 4- 2- پیشبینی یال
در مسائل پیشبینی یال بر اساس ساختار فعلی شبکه، احتمال وجود یک یال در آینده بررسی میشود. برای این کار به صورت سنتی از روشهای تحلیل ساختار گراف مانند تراگذری یالها، در نظر گرفتن ویژگیهای مشترک بین گرهها و پیدا کردن زیرگرافهای پرتکرار استفاده میشود. یکی از کاربردهای پیشبینی یال پیشنهاد در سیستمهای توصیهگر است.
در شبکههای استاتیک، پیشبینی یال همان پیشبینی یالهای مخفی در یک شبکه زمانی در یک دوره خاص است. علاوه بر این، هدف پیشبینی یال در شبکههای زمانی که با نام پیشبینی یال زمانی شناخته میشود، پیشبینی یالهایی از یک شبکه است که در زمان بعدی یا آینده آن شبکه ظاهر میشوند. همانطور که اشاره شد، شبکههای زمانی، رفتار تکاملی دارند. داشتن متغیر زمانی در این شبکهها سبب میشود پیشبینی یال زمانی مسئلهای چالش برانگیز باشد. همچنین یادگیری این رفتار تکاملی در شبکهها ارتباط مستقیمی با مسئله پیشبینی یال دارد، زیرا افزودن یالهای جدید یا حذف آنها در طول زمان منجر به تکامل شبکه میشود. این مسئله با ایجاد شبکههای زمانی بزرگ مانند شبکههای اجتماعی مورد توجه قرار گرفت و مطالعات زیادی در این زمینه انجام شد. دیواکاران و موهان در مطالعه مروری، به بررسی و دستهبندی روشهای موجود پرداختند. در ادامه به توضیح کارهای انجام شده در زمینه پیشبینی یال پرداخته شده است. در اکثر مطالعات انجام شده در حوزه پیشبینی یال، روشهایی ارائه شده است که ورودی آنها شبکه زمانی در قالب یک شبکه ایستا در یک لحظه خاص است. این رویکرد به عنوان یک روش کارامد برای پیشبینی یال زمانی شناخته نمیشود، زیرا پویایی این شبکهها را در نظر نمیگیرد [11].
یکی از مشکلات اصلی کارهای انجام شده در این حوزه این است که اغلب فرض میکنند نودها در همه مراحل زمانی ثابت میمانند، در حالی که یالها در طول زمان اضافه شده یا حذف میشوند. این روش منجر به از دست دادن اطلاعاتی میشود که مربوط به ایجاد یک یال جدید همزمان با اضافه شدن یکی از گرههای آن است. شکل 1 طبقهبندی از روشهای مختلف پیشبینی یال زمانی را بر اساس تکنیکهای مختلف نشان میدهد [11].
طبق بررسیهای انجام شده توسط دیواکاران و موهان، هر یک از این روشها ویژگیها و مشکلاتی دارند که در ادامه به توضیح مختصری از آنها پرداخته شده است. روشهای مبتنی بر فاکتورگیری ماتریس، ویژگیهای محلی و سراسری و الگوهای شبکههای زمانی را برای پیشبینی یال زمانی استخراج کرده و ذخیره میکنند. در این روش ماتریس به عوامل کوچکتری تقسیم میشود. روش مبتنی بر فاکتورگیری ماتریس، برای شبکههای واقعی کوچک مناسب هستند و برای شبکههای بزرگ، مقیاسپذیر نیستند. در مدلهای احتمالاتی به جای استفاده از عدد ثابت، توزیعهای احتمال ثابت استفاده میشود. در نتیجه قابلیت اندازهگیری امکان تغییر و عدم قطعیت نیز ممکن میشود. مدلهای احتمالاتی توانایی بالاتری برای بررسی الگوهای تکاملی در شبکههای پویا دارند. این مدلها با وجود عملکرد خوب برای شبکههای کوچک، برای شبکههای بزرگ هزینه محاسباتی بالایی دارند و مقیاسپذیر نیستند. در برخی از روشها از رویکردهای مبتنی بر خوشهبندی طیفی استفاده شده است که مطالعه ویژگیهای یک گراف با مقادیر ویژه و بردارهای ویژه ماتریس مجاورت یا ماتریس لاپلاسین مرتبط با گراف است. الگوریتمهای مبتنی بر خوشهبندی طیفی به طور مؤثر از تکامل شبکه استفاده میکنند اما مشابه روشهای قبلی برای شبکههای بزرگ و پیچیده مقیاسپذیر نیستند و پیچیدگی محاسباتی بالایی دارند [11].
رویکرد دیگر استفاده از سری زمانی است. در این روشها، امتیاز سری زمانی با محاسبه شباهت بین هر زوج گره در شبکه ساخته میشود. بنابراین این روش از پیشبینی امتیازهای سری زمانی آینده بر اساس امتیازهای قبلی مشاهده شده، استفاده میکند. روش سری زمانی برای مجموعهدادههایی که در طول دورهها یا فواصل زمانی خاص دچار تغییرات قابل توجهی در ویژگیهای خود میشوند، عملکرد خوبی دارند. اما اکثر روشهای مبتنی بر سری زمانی، فقط به ویژگیهای محلی میپردازند و ویژگیهای ساختاری و سراسری شبکه را نادیده میگیرند. در ادامه روشهای پیشبینی یال، از روشهای مبتنی بر تکنیکهای یادگیری عمیق استفاده شده است. روشهای مبتنی بر یادگیری عمیق برای پیشبینی یال زمانی عملکرد خوبی را برای مجموعهدادههای با خصوصیات غیرخطی و پیچیده ارائه میدهند و تقریبا چالشهای روشهای قبلی را رفع کردند [11].
3- 5- مدلهای تولید شبکه
در چند سال گذشته در حوزههای مختلف، یکی از مسائل اصلی ارائه روشهای تشخیص یا پیشبینی با استفاده از دادههای موجود بوده است. اما با پیشرفتهای زیاد در سختافزارها و افزایش توان محاسباتی، مسائلی با موضوع تولید و مدلهای مولد ارائه شد. برای مثال در حوزه پردازش تصویر، یکی از مسائل پرتکرار یادگیری و تشخیص برچسب درست تصاویر بود. اما امروزه مسئله اصلی ارائه روشهایی برای تصاویر با توجه به توصیفهای انجام شده است. مشابه این مسئله در حوزه شبکه هم وجود دارد. همانطور که در بخش دوم توضیح داده شد، ضروری است که بتوان روشهایی برای تولید شبکهها با ویژگیهای مد نظر ارائه کرد.
3- 5- 1- مدلهای عمیق تولید شبکه
نسل فعلی از مدلهای تولید شبکهها مربوط به روشهایی است که از یادگیری عمیق در آنها استفاده میشود. در روشهای عمیق تولید شبکه از شبکههای عصبی عمیق استفاده میشود. این روشها در بسیاری از حوزهها مانند پردازش تصویر، متن و ... موفق بودهاند. در این روش چندین لایه از معماری مدلها به استخراج ویژگیها مربوط است. در حالی که در روشهای سنتی یادگیری ماشین استخراج ویژگی نیاز به متخصصین دارد. در ادامه به مرور برخی از مطالعات انجام شده در این زمینه پرداخته شده است.
فائز و همکاران در سال 2021، در مرور روشهای عمیق تولید گراف، کارهای انجام شده را در پنج دسته تقسیمبندی کردند. این موارد شامل مدلهای خود-رگرسیون، مبتنی بر خود-رمزگذار، مبتنی بر یادگیری تقویتی، خصمانه و مبتنی بر جریان هستند. هدف و ضرورت انجام این مطالعه به خاطر گسترش روشهای تولید گراف مبتنی بر یادگیری عمیق در چند سال اخیر است که در حوزههای زیادی مانند کشف ساختارهای مولکولی جدید تا مدلسازی شبکههای اجتماعی به کار میروند. بنابراین، به دلیل توسعه گسترده روشهای نوین تولید گراف، که به آنها تحت عنوان مولدهای گراف عمیق اشاره میشود، و همچنین در نظر گرفتن کاربردهای آنها در حوزههای مختلف تحقیقات، نیاز به انجام مطالعاتی است که این روشها را به طور خاص بررسی کنند [12].
برای مثال یکی از دستهبندیها، مربوط به مدلهای خود رگرسیون است. در مطالعه فائز و همکاران، این روش مربوط به مدلهایی است که به صورت مرحلهای گرافها را تولید میکنند، به طوری که این فرایند در هر مرحله تحت تاثیر خروجیهای گذشته است که آنها را به روشهای بازگشتی و غیر بازگشتی تقسیمبندی کردهاند. روشهای بازگشتی تاریخچه تولید را با استفاده از واحدهای بازگشتی مانند حافظه کوتاهمدت طولانی یا واحدهای بازگشتی گیت ثبت میکنند، در حالی که روشهای غیربازگشتی تصمیمات خود را مستقیما بر اساس آخرین گراف جزئی تولید شده میگیرند [12].
مدلهای خود رگرسیون بازگشتی همانطور که اشاره شد، از LSTMیا GRUاستفاده میکنند و شامل سه حالت گره به گره، مجموعهای از گرهها و یال به یال هستند. در مولد گره به گره، اغلب روشهای خود رگرسیونی یک گره جدید را به ترتیبی و یک به یک در گراف تولید شده اضافه میکنند. آغاز فرایند با افزودن یک گره به گراف خالی است و در ادامه به تصمیمگیری تکراری میپردازد؛ یعنی برای افزودن یک گره جدید به گراف، اتصال گره اضافه شده به گرافهای پیشین را انجام میدهد یا فرایند را خاتمه میدهد. مشابه همین کار برای یالها هم قابل انجام است. به این صورت که یالها یک به یک به گراف اضافه شوند. مدلهای خود رگرسیون غیربازگشتی، تاریخچه را در نظر نمیگیرند و در اغلب مقالات این نوع، از روشهای مبتنی بر توجه استفاده شده است [12].
برخی از مدلهای مبتنی بر خود-رمزگذار هستند. این روش به بررسی مدلهایی میپردازد که از خود-رمزگذار برای تولید ساختارهای گرافی استفاده میکنند. به طور خاص، یک شیوه متداول در این روشها این است که ابتدا یک گراف ورودی را با استفاده از GNN، شبکه کانولوشنی گرافی یا نسخههای دیگری از آنها به فضای برداری رمز میکنند و سپس شروع به تولید گراف از این فضای بازنمایی میکنند. فائز و همکاران روشهای موجود را بر اساس سطح دقت تولید آنها (انتخاب یک استراتژی تولید همه با یکبار، استفاده از زیرساختارهای معتبر به عنوان بلوک سازنده یا تولید گراف به صورت گره به گره) به سه دسته تقسیم کردند [12].
در بخش چهارم، به مولدهای مبتنی بر شبکه خصمانه پرداخته شده است. این روشها اغلب از رویکرد «قدم زدن تصادفی» به جای در نظر گرفتن کل گراف استفاده میکند. در این زمینه، NetGAN اولین مدل تولیدی برای گرافها را معرفی میکند که از «قدم زدن تصادفی» بر روی یک گراف، برای تولید شبکه و یادگیری با استفاده از چارچوب WGAN استفاده میکند [12].
برای درک بهتر ردهبندیهای روشهای تولید شبکههای عمیق، در ادامه مقایسهای بین روشهای بررسی شده انجام شده است. ویژگی اصلی مدلهای خود رگرسیون این است که از یک استراتژی مرحله به مرحله برای تولید گراف استفاده کرده به طوری که در هر مرحله، تصمیمات بر اساس نتایج به دست آمده از مراحل قبلی گرفته میشود. مزیت این روشها نسبت به دستههای دیگر، ویژگی مرحله به مرحله بودن فرآیند تولید است که منجر به مقیاسپذیری بیشتر میشود. در مقابل، روشهای مبتنی بر خود-رمزگذارهایی که تا کنون پیشنهاد شدهاند، قابلیت مقیاسپذیری کافی برای استفاده در مجموعه دادههایی شامل گرافهای بزرگ را ندارند و اغلب قادر به تولید گرافهایی با کمتر از 100 گره هستند و بیشتر در حوزه شبکههای مولکولی استفاده میشوند. بخش کمی از روشها نیز مبتنی بر یادگیری تقویتی هستند و مجددا این روشها نیز در شبکههای مولکولی کوچک (با حداکثر 100 گره) قابل استفاده هستند. در سالهای اخیر نیز تعداد کمی از مولدهای گراف مبتنی بر جریان ارائه شدهاند و اغلب بر روی گرافهای نسبتا کوچک با کمتر از 100 گره مورد استفاده قرار گرفتهاند [12].
به دلیل کاربردهای فراوان حوزه تولید گراف، مدلهای مولد مختلفی برای شبکهها ارائه شدند که از جمله این موارد میتوان به مدلهای معروفی مانند گرافهای تصادفی، مدلهای دنیای کوچک و ... اشاره کرد. این مدلهای تولید گراف بر اساس یک نوع خاص از شبکههای واقعی ارائه شدند و تنها قادر به مدلسازی گراف با چند ویژگی آماری هستند. در واقع از آنجایی که شبکههای واقعی بسیار متنوع هستند، در بسیاری از موارد ویژگیهای شبکه و قوانین ساخت آن ناشناخته است. برای رفع این مشکل، مدلهای ترکیبی و مدلهای مبتنی بر یادگیری ماشین ارائه شدند که قادر هستند به صورت خاصتر شبکههای مد نظر را تولید کنند. با کاربرد گسترده حوزه یادگیری عمیق و مدلهای مولد عمیق، روشهای دیگری هم برای ساخت شبکههای مصنوعی ارائه شد [3].
گوپتا و بداتور در سال 2022 مروری بر مدلهای تولید و بازنمایی شبکه زمانی انجام دادند. در این مقاله ابتدا به تعریف شبکه زمانی پرداخته شده است. شبکه زمانی نوعی شبکه است که با گذر زمان تغییر کرده و تکامل پیدا میکنند. این شبکهها دارای دو نوع زمان گسسته و زمان پیوسته هستند. گوپتا و بداتور ابتدا روشهای بازنمایی و تولید شبکههای ایستا را بررسی کردند. به طور کلی روشهای بازنمایی شبکه ایستا شامل دو نوع «قدم زدن تصادفی» و روشهای مبتنی بر GNNهاست. کلیت روش تولید این شبکهها با در نظر گرفتن مجموعهای از گرافها شامل نمونهبرداری از توزیع احتمالاتی گرافها و یادگیری ساختار آنهاست تا در نهایت بتوانند گرافهایی با ویژگیهای ساختاری بسیار مشابه به گرافهای ورودی تولید کنند. برای مثال یکی از مدلهایی که در این مقاله بررشی شده است NetGan بوده که از روش «قدم زدن تصادفی» با طول T استفاده کرده و یک WGAN را روی نمونههای انتخابی آموزش میدهد. معماری کلی این روش نیز شامل یک مولد و یک تشخیص دهنده است [13].
در ادامه مقاله گوپتا و بداتور، به بررسی مدلهای تولید شبکه زمانی پرداخته شده است. با توجه به بررسیها ایشان، تحقیقات فعلی در زمینه مدلهای تولیدی عمیق برای گرافهای زمانی هنوز در مراحل اولیه قرار دارد و به شکل محدودی انجام شده است. در شبکههای ایستا ، مدلهایی مانند دنیای کوچک وجود دارند که به عنوان مدل معیار برای شبکههای ایستا شناخته میشوند. اما در حوزه شبکه زمانی، چنین مدلهایی وجود ندارند. در برخی از مطالعات، رویکردی ارائه شده که با تولید شبکه ایستا آغاز میشود. سپس برای هر یال در شبکه، بازه زمانی فعال و زمان آغاز آن تولید میشود. در نتیجه دنباله زمانی ایجاد شده و با ترکیب این دنباله با بازه زمانی فعال بودن هر یال، شبکه تعاملی تولید میشود. در روشی دیگر، رویکردی مبتنی بر تولید شبکههای زمانی مبتنی بر فعالیت معرفی شده است. در این حالت، هر گره با احتمال مشخصی فعال خواهد شد و با توجه به ظرفیت فعالیت هر گره، آن گره به چندین گره دیگر متصل خواهد شد. در زمان بعدی، همین فرآیند مجددا تکرار میشود [13].
3- 5- 2- مدل TagGen
گوپتا و بداتور، به بررسی مدلهای تولید شبکه زمانی پرداختهاند. با توجه به بررسیهای ایشان، تحقیقات فعلی در زمینه مدلهای تولیدی عمیق برای گرافهای زمانی هنوز در مراحل اولیه قرار دارد و به شکل محدودی انجام شده است. اما یکی از مدلهای معروف در این زمینه TagGen است. TagGen گرافهای زمانی را با تبدیل آنها به گرافهای ایستای معادل و با ادغام شناسه گرهها با تعاملات زمانی آنها (یال زمانی) تعریف میکند و فقط آن گرههایی را که شرایط همسایگی زمانی مشخص را ارضا میکنند، به یکدیگر متصل میکند. در TagGen روی گراف تبدیل شده قدم زدنهای تصادفی انجام میشود و با استفاده از روش مبتنی بر الگوریتمهای ابتکاری این قدم زدنها تغییر داده میشوند تا شبکه مطلوب تولید شود. مدل TagGen اولین تلاش برای تولید شبکههای زمانی با یادگیری مستقیم از مجموعهای از یالهای برچسبدار است که در ادامه به اختصار ساختار این مدل توضیح داده شده است [13] و [14].
ایده اصلی TagGen این است که یک مکانیزم خود-توجه به همراه یک خانواده از عملیاتهای محلی را آموزش دهد تا بتواند دنبالههای تصادفی زمانی را برای تجمیع شبکههای تعاملی زمانی مدل کند و تولید کند. چارچوب کلی مدل TagGen در شکل 2 ارائه شده است که شامل چهار مرحله اصلی است. ورودی مدل شبکه تعاملی زمانی است که توسط مجموعهای از یالهای زمانی با برچسب تعریف شده است. در مرحله اول باید اطلاعات شبکههای تعاملی زمانی با استفاده از نمونهبرداری به روش قدم زدن زمانی استخراج شود. در مرحله دوم، از فرایندی برای تولید عمیق استفاده شده که مجموعهای از عملیات ساده مانند اضافه و حذف کردن یالهای زمانی را برای تولید «قدم زدن زمانی» مصنوعی تعریف میکند. در مرحله سوم، یک متمایزگر بر روی «قدم زدنهای زمانی» نمونهبرداری شده آموزش داده میشود تا تعیین کند که آیا این موارد تولید شده مطابق با توزیعهای همان نمونههای واقعی هستند یا خیر. در نهایت، با جمعآوری «قدم زدن زمانی» مصنوعی از طریق متمایزگر، شبکه تعاملی زمانی تولید میشود. نتایج حاصل از این مدل با برخی از روشهای سنتی مانند مدلباراباشی-آلبرت و اردوش-رنی و مدل NetGAN مقایسه شده است. معیارهای اریابی، ویژگیهای ساختاری شامل میانگین درجه، تعداد مولفههای همبند، اندازه مولفههای همبند و ... بودند. این معیارهای برای شبکههای ایستا ارائه شده بودند اما در اینجا ژو و همکاران این معیارها را برای شبکههای زمانی تعمیم دادند. نتایج نشان داد که این روش عملکرد بسیار بهتری نسبت به سایر روشهای مقایسه شده از نظر معیارها بوده است [14].
3- 5- 3- مدل EvovleGCN
مدل دیگری به نام EvolveGCN توسط پارجا و همکاران ارائه شده که برای حوزه شبکههای پویا به کار میرود. اغلب مطالعات انجام شده در حوزه شبکههای ایستا است اما در عمل شبکههایی وجود دارند که به طور مداوم در حال تکامل هستند. در محیط ایستا، روشهای موجود معمولا به تعبیه گرهها میپردازند و از یک شبکه عصبی بازگشتی برای تنظیم تعبیهها و یادگیری پویاییهای زمانی استفاده میکنند. این روشها نیازمند دانشی از گره در کل طول دوره زمانی هستند و قابلیت استفاده در مواجهه با تغییر مکرر مجموعه گرهها را ندارند. EvolveGCN برای حل این چالشها ارائه شده است که مدل شبکه کانولوشن گرافی را در بعد زمانی بدون توجه به تعبیههای گره بهینه میکند. در بخش ارزیابی نیز عملکرد این مدل برای حوزههای مختلف از جمله پیشبینی یال و ... انجام شده است و نتایج نشاندهنده عملکرد بهتر EvolveGCN نسبت به سایر روشهای ارائه شده هستند [15].
3- 5- 4- مدل TIGGER
یکی دیگر از روشهایی که برای تولید شبکه زمانی در سالهای اخیر ارائه شده، TIGGER است. این مدل مبتنی بر روشهای خود رگرسیون بوده و دارای دو ویژگی کلیدی است. اول آنکه دارای مقیاسپذیری به گرافهای زمانی بزرگ بوده دوم آنکه توانایی یادگیری توزیع قوانین گرافی ورودیهای جدید که بر خلاف گراف آموزشی تکرار نمیشوند را دارد. در واقع این مدل با هدف رفع چالشهای مطرح شده توسط گوپتا و بداتور در [13] ارائه شده است. معماری و ساختار این مدل در شکل 3 آمده است.
عملکرد این مدل با توجه به سرعت اجرا و تولید گرافهایی با ویژگیهای مشابه به ورودی اما نه خود این گرافها ارزیابی میشود. در آزمایشات، این مدل عملکرد بسیار خوبی نسبت به روشهای قبلی مانند TagGen داشته است. نتایج نشان داده که سرعت TIGGER تا ۲۰۰۰ برابر سریعتر بوده، مقیاسپذیری بالا با تعداد بیشتر برچسبهای زمانی دارد و شبکههایی با دقت بالا تولید میکند [16].
3- 6- چالشها و محدودیتها
با وجود کارهای بسیاری که در حوزه تولید شبکههای مصنوعی انجام شده، اما هنوز چالشهایی وجود دارد. یکی از این موارد مشکل تفسیر پذیری است. مدلهای موجود چه در زمینه شبکههای زمانی و چه در حوزه شبکههای ایستا توانایی توصیف تحوه تصمیمگیری در تعیین خروجی را ندارند. در واقع مشخص نیست که کدام ویژگیهای شبکه ورودی در تولید خروجی تاثیر گذار هستند. مشکل دیگر مقیاسپذیری است. برخی از روشهای موجود قابلیت استفاده در شبکههای بزرگ را ندارند [17]و [18].
گوپتا و بداتور در مروری که بر روی روشهای تولید شبکه زمانی انجام دادند، محدودیتها و چالشهای این مدلها را شناسایی کردند. به صورت کلی روشهای تولید شبکه زمانی دارای محدودیتهایی است که شامل ضعف در مدلسازی زمانی، مشکل مقیاسپذیری برای شبکههای بزرگ و کمبود مدلسازی تجربی هستند. برای مثال مدل TagGen نرخ تکامل گراف را به طور صریح مدل نمیکند. این مدل محدود به شبکههایی است که که تعداد گرههای کمتر از حدود 10000 دارند. همچنین انتخاب طراحی اساسی TagGen برای تبدیل گراف زمانی به گراف ایستا، در طولانی مدت مقیاسپذیر نمیباشد زیرا تعداد گرهها در گراف ایستای نتیجه مضاعف میشود [13]
4- جمعبندی
شبکه زمانی یکی از انواع شبکههای پیچیده است که در طول زمان تغییر میکند. این تغییر در دو حالت ممکن است. اگر تغییر در ساختار شبکه باشد، و یالها و گرههای جدیدی به آن اضافه شده یا از حذف میشود. در حالت دوم ویژگی گرهها و یالهای آن تغییر میکند. در سالهای اخیر و با ظهور شبکههای بزرگی مانند شبکههای اجماعی، شبکه حمل و نقل و ...، اهمیت شبکههای زمانی افزایش یافته و تولید و تحلیل این نوع شبکهها از اهمیت بالایی برخوردار شده است. به همین دلیل مطالعات زیادی در این زمینه انجام شده است.
چالش اصلی روشهایی که برای تحلیل و بررسی شبکهها یا تولید آنها نیاز است، تکامل زمانی و عامل زمان است. به خاطر وجود تکامل زمانی این نوع شبکهها، استفاده از روشهای قبلی مناسب نبوده و به همین دلیل نیاز به ایجاد مدلهایی برای تحلیل و تولید این نوع از شبکههاست تا تاثیر زمان و تکامل زمانی نیز در نظر گرفته شود. در این نوشتار به مرور برخی از این روشها مانند مدلهای پیشبینی یال یا تشخیص انجمن و مدلهای تولید شبکه پرداخته شده است.
به صورت کلی سیر تکامل روشها چه در تحلیل و پیشبینی الگوها و چه در تولید شبکه، از روشهای سنتی بوده است. در این روشها از مشاهدات یا رویکردهای حوزه گراف استفاده میکردند. اما با پیشرفت علم شبکه و ظهور شبکههای متنوع و پیچده، این روشها کارایی مناسبی نداشتند و به همین دلیل به سراغ رویکردهای یادگیری ماشین رفتند. در نهایت به دلیل عدم امکان انتخاب ویژگی مناسب جهت آموزش مدلهای یادگیری ماشین و پیشرفتهایی که منجر به روی کار آمدن مدلهای یادگیری عمیق شد، در حوزههای مختلف از یادگیری عمیق استفاده شد. یادگیری عمیق در حوزه شبکه منجر به پیشرفتهای زیادی شد تا آنجا که از مدلهای خاص گرافی مانند شبکه عصبی گرافی (GNN) و شبکه کانولوشنی گرافی (GCN) ارائه شد که کاربرد گستردهای در حوزههای مختلف دارند. در برخی از مقالات حتی اشاره شده بود که این مدلهای یادگیری ماشین برای حوزه شبکه زمانی هم ارائه شدند تا ویژگیهای زمانی را هم در نظر بگیرند.
باوجود انجام مطالعات متعدد در حوزه تحلیل و پیشبینی شبکه، حوزه تولید شبکه زمانی نسبتا جدید است و امکان ارائه مدلهای مناسب در این زمینه وجود دارد. این درحالی است که برای روشهای یادگیری بازنمایی برای این حوزه مطالعات زیادی انجام شده و روشهای مناسبی ارائه شده است.
[1] N. Masuda and R. Lambiotte, A Guide to Temporal Networks, London: World Scientific Publishing Europe Ltd, 2020.
[2] M. Newman, Networks, New York: Oxford University Press, 2018.
[3] X. Guo and L. Zhao, "A Systematic Survey on Deep Generative Models for Graph Generation," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 45, pp. 5370-5390, 2023.
[4] W. Ju, Z. Fang, Y. Gu, Z. Liu, Q. Long, Z. Qiao, Y. Qin, J. Shen, F. Sun, Z. Xiao, J. Yang, J. Yuan, Y. Zhao, Y. Wang, X. Luo and M. Zhang, "A Comprehensive Survey on Deep Graph Representation Learning," Neural Networks, vol. 173, 2024.
[5] L. Yang, C. Chatelain and S. Adam, "Dynamic Graph Representation Learning With Neural Networks: A Survey," IEEE Access, vol. 12, pp. 43460-43484, 2024.
[6] W. Jiang and J. Luo, "Graph neural network for traffic forecasting: A survey," Expert Systems with Applications, vol. 207, pp. 163-205, 2022.
[7] W. Jiang, "Graph-based deep learning for communication networks: A survey," Computer Communications, vol. 185, pp. 40-54, 2022.
[8] G. Jin, M. Wang, J. Zhang, H. Sha and J. Huang, "STGNN-TTE: Travel time estimation via spatial–temporal graph neural network," Future Generation Computer Systems, vol. 126, pp. 70-81, 2022.
[9]
S. Huang, F. Poursafaei, J. Danovitch, M. Fey, W. Hu, E. Rossi, J. Leskovec, M. Bronstein, G. Rabusseau and R. Rabbany, "Temporal Graph Benchmark for Machine Learning on Temporal Graphs," in 37th Conference on Neural Information Processing Systems Datasets and Benchmarks Track, 2023.
[10] H. Qin, R.-H. Li, Y. Yuan, G. Wang, W. Yang and L. Qin, "Periodic Communities Mining in Temporal Networks: Concepts and Algorithms," IEEE Transactions on Knowledge and Data Engineering, vol. 34, pp. 3927-3945, 2022.
[11] A. Divakaran and A. Mohan, "Temporal Link Prediction: A Survey," New Generation Computing, vol. 38, pp. 213-258, 2020.
[12] F. Faez, Y. Ommi, M. S. Baghshah and H. R. Rabiee, "Deep graph generators: A survey," IEEE Access, vol. 0, pp. 106675-106702, 2021.
[13] S. Gupta and S. Bedathur, "A survey on temporal graph representation learning and generative modeling," arXiv preprint arXiv:2208.12126, 2022.
[14] D. Zhou, L. Zheng, J. Han and J. He, "A data-driven graph generative model for temporal interaction networks," in Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining, 2020, pp. 401-411.
[15] A. Pareja, G. Domeniconi, J. M. T. Chen, T. Suzumura, H. Kanezashi, T. Kaler, T. Schardl and C. Leiserson, "Evolvegcn: Evolving graph convolutional networks for dynamic graphs," in Proceedings of the AAAI conference on artificial intelligence, 2020, pp. 5363-5370.
[16] S. a. M. S. a. B. S. a. R. S. Gupta, "Tigger: Scalable generative modelling for temporal interaction graphs," Proceedings of the AAAI Conference on Artificial Intelligence, vol. 36, no. 6, pp. 6819-6828, 2022.
[17] A. Longa, V. Lachi, G. Santin, M. Bianchini, B. Lepri, P. Lio, F. Scarselli and A. Passerini, "Graph neural networks for temporal graphs: State of the art, open challenges, and opportunities," arXiv preprint arXiv:2302.01018, 2023.
[18] X. Guo and L. Zhao, "A Systematic Survey on Deep Generative Models for Graph Generation," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 45, pp. 5370-5390, 2023.