تحليل داده هاي ترافيکي با هدف تشخيص ازدحام با بهره گيري از الگوريتم هاي يادگيري ماشين
محورهای موضوعی : هوش مصنوعی و رباتیکناهید امانی 1 , محمدحسین عامری مهر 2 , سارا افاضاتی 3 , علی جاویدانی 4
1 - گروه مدیریت یکپارچه شبکه، پژوهشکده فناوری ارتباطات، پژوهشگاه ارتباطات و فناوری اطلاعات ، تهران، ایران
2 - گروه مدیریت یکپارچه شبکه، پژوهشکده فناوری ارتباطات، پژوهشگاه ارتباطات و فناوری اطلاعات ، تهران، ایران
3 - گروه مدیریت یکپارچه شبکه، پژوهشکده فناوری ارتباطات، پژوهشگاه ارتباطات و فناوری اطلاعات ، تهران، ایران
4 - دانشکده مهندسی برق و کامپیوتر، دانشکدگان فنی، دانشگاه تهران
کلید واژه: تشخیص ازدحام, يادگيري ماشين, XGBoost, معیارهای ارزیابی الگوریتم های یادگیری ماشین,
چکیده مقاله :
شناسايي ازدحام يکي از ارکان پايه اي در تضمين کيفيت خدمت به عنوان مهمترين معيار سنجش کارايي در شبکه هاي مخابراتي نسل جديد است. ازدحام منجر به از دست رفتن بسته هاي اطلاعاتي در شبکه مي شود که به دليل بالاتر بودن نرخ ارسال از ظرفيت در برخي از لينکهاي شبکه رخ مي دهد. براي کنترل ازدحام در شبکه گام نخست تمايز ميان از دست رفتن اطلاعات در اثر ازدحام و يا در اثر ساير موارد از جمله خرابي لينک است زيرا در صورتي که منشا از دست رفتن بسته به اشتباه ازدحام تشخيص داده شود کاهش نرخ ارسال در فرستنده کمکي به کاهش ازدحام نکرده و تنها موجب کاهش گذردهي و کيفيت سرويس مي شود. از اين رو مسئله اصلي اين مقاله شناسايي ازدحام و تفکیک آن از خطاي ناشي از لينک هاي ارتباطي در يک نمونه داده ترافيکي است. در اين مقاله براي حل مسئله مذکور از الگوريتم هاي مختلف يادگيري ماشين نظارتشده از جمله درخت تصميم، جنگل تصادفي، ماشين بردار پشتيبان، لجيستيک رگرسيون، K-نزديکترين همسايه، XGBoost، شبکه عصبي و تقويت درخت تصميم بهره گرفته شده است. الگوريتم هاي مذکور بر اساس معيارهاي مختلف از جمله دقت، درستی، F1-measure، حساسیت و AUC مورد ارزيابي قرار گرفته و با يکديگر مقايسه شده اند. اين ارزيابي بر اساس روش K-fold Cross Validation انجام شده است. نتایج شبیهسازی نشان میدهد که الگوریتم XGBoost به لحاظ تمام معیارهای ارزیابی نسبت به دیگر الگوریتمها عملکرد بهتری در زمینه تشخیص ازدحام دارد.
Congestion detection is one of the basic elements in guaranteeing the quality of service and is one of the most important measures of efficiency in new-generation telecommunication networks. Congestion leads to the loss of information packets in the network because the sending rate is higher than the capacity in some network links. To control congestion in the network, the first step is to distinguish between the loss of packets due to congestion with the packet loss introduced by other cases, including link failure. Because if the source of the loss is mistakenly identified as congestion, reducing the sending rate in the transmitter does not mitigate the congestion and only reduces throughput and quality of service. Therefore, the main problem of this paper is to identify congestion and distinguish it from the error caused by communication links in a traffic data sample. In solving this problem, various supervised machine learning algorithms including decision tree, random forest, support vector machine, logistic regression, K-nearest neighbor, XGBoost, and neural network have been used. The mentioned algorithms have been evaluated based on different criteria and compared with each other.
[1] Z. Zhang; Y. Zhou; L. Teng; W. Sun; C. Li and X.Min, "Quality-of-Experience Evaluation for Digital Twins in 6G Network Environments," in IEEE Transactions on Broadcasting, pp. 1-13, 2024.
[2] R. Prasad and A. Sunny, "QoS-Aware Scheduling in 5G Wireless Base Stations," in IEEE/ACM Transactions on Networking, vol. 32, no. 3, pp. 1999-2011, June 2024.
[3] J. P. Astudillo León, L. J. Cruz Llopis and F. J. Rico-Novella, “A machine learning based Distributed Congestion Control Protocol for multi-hop wireless networks,” in Computer Networks, vol. 231, July 2023.
[4] J. Lorincz, Z. Klarin and J. Ožegovic, “A Comprehensive Overview of TCP Congestion Control in 5G Networks: Research Challenges and Future Perspectives,” in MDPI Sensors, vol. 21, no. 13, pp. 4510, 2021.
[5] L. Machora. "A survey of transmission control protocol variants," in World Journal of Advanced Research and Reviews, vol. 21, no. 3, pp. 1828– 1853, 2024.
[6] I. Stoica, "A Comparative Analysis of TCP Tahoe, Reno, New-Reno, SACK and Vegas," University of California Berkeley, CA, 2005.
[7] Z. Tafa, Zhilbert, and V. Milutinovic. "Machine learning in congestion control: A survey on selected algorithms and a new roadmap to their implementation." arXiv preprint arXiv:2112.15522 2021.
[8] T. Zhang and S. Mao, "Machine Learning for End-to-End Congestion Control," in IEEE Communications Magazine, vol. 58, no. 6, pp. 52-57, June 2020.
[9] Huiling Jiang, Qing Li, Yong Jiang, GengBiao Shen, Richard Sinnott, Chen Tian, Mingwei Xu, “When machine learning meets congestion control: A survey and comparison”, in Computer Networks, vol. 192, pp. 1-28, 2021.
[10] M. B. M. Kamel, I. Ahmed Najm and A. Khalaf Hamoud, "Congestion Control Prediction Model for 5G Environment Based on Supervised and Unsupervised Machine Learning Approach," in IEEE Access, vol. 12, pp. 91127-91139, 2024
[11] J. Alejandrino, R. Concepcion, S. Lauguico, M. G. Palconit, A. Bandala and E. Dadios, "Congestion Detection in Wireless Sensor Networks Based on Artificial Neural Network and Support Vector Machine," in 12th International Conf. on Humanoid, Nanotechnology, Inf. Tech., Commun. and Control, Environment, and Management (HNICEM), Manila, Philippines, 2020, pp. 1-6.
[12] P.T. Kasthuribai, “Optimized support vector machine based congestion control in wireless sensor network based Internet of Things,” in Int. J. Computer Network and Application, vol. 8, no. 4, pp. 444-454, 2021.
[13] N. Kumar, and M. Raubal. "Applications of deep learning in congestion detection, prediction and alleviation: A survey." in Transportation Research Part C: Emerging Technologies vol.133 pp. 103432, 2021.
[14] G. W. Geremew, , J. Ding. "Elephant Flows Detection Using Deep Neural Network, Convolutional Neural Network, Long Short‐Term Memory, and Autoencoder." in Journal of Computer Networks and Communications, pp. 1-18, 2023.
[15] M. Labonne, C. Chatzinakis and A. Olivereau, "Predicting Bandwidth Utilization on Network Links Using Machine Learning," in European Conf. on Networks and Commun. (EuCNC), Dubrovnik, Croatia, 2020, pp. 242-247.
[16] P. Geurts, I. El Khayat and G. Leduc, "A machine learning approach to improve congestion control over wireless computer networks," in Fourth IEEE International Conf. on Data Mining (ICDM'04), Brighton, UK, 2004, pp. 383-386.
[17] I. El Khayat, P. Geurts, and G. Leduc, ‘Improving TCP in Wireless Networks with an Adaptive Machine-Learnt Classifier of Packet Loss Causes’, in NETWORKING, 2005, pp. 549–560.
[18] J. D. Kelleher, B. M. Namee and A. D. Arcy. Fundamentals of machine learning for predictive data analytics: algorithms, worked examples, and case studies. MIT press, 2020.
[19] T. K. Ho, “Random Decision Forests,” in Proceedings of the 3rd International Conf. on Document Analysis and Recognition, Montreal, QC, 14–16 Aug., 1995, pp. 278–282.
[20] J. Tolles, WJ. Meurer, “Logistic Regression: Relating Patient Characteristics to Outcomes,” in JAMA, Vol. 316, no. 5, pp. 533-534, Aug. 2016.
[21] E. Fix, J. L. Hodges, “Discriminatory Analysis. Nonparametric Discrimination: Consistency Properties,” in International Statistical Review, vol. 57, no.3, pp. 238-247, 1989.
[22] R. O. Duda and P. E. Hart, Pattern classification. John Wiley & Sons, 2006.
[23] T. Chen, "Story and Lessons behind the evolution of XGBoost,” 2016.
[24] LeCun, Y. Bengio, and G. Hinton, "Deep learning," in Nature, vol. 521, no. 7553, pp. 436-444, 2015.
[25] D. Shi, W. Ping, A. Khushnood. "A survey on deep learning and its applications," in Computer Science Review, vol. 40, pp. 100379, 2021.
[26] Y. Freund, R. E Schapire. "A Decision-Theoretic Generalization of On-Line Learning and an Application to Boosting," in J. of Computer and System Sciences, vol. 55, no. 1, pp. 119-139, 1997.
[27] C. M. Bishop, and N. M. Nasrabadi. Pattern recognition and machine learning. Vol. 4. No. 4. New York: springer, 2006.
[28] [Online]. Available: https://people.montefiore.uliege.be/geurts/Papers/Boosting-DT/BD-Fifo.dat.gz
Journal of Information and
Communication Technology
Volume 17, Issue 63-64, Spring and Summer 2025, pp. 155-165
Analysis of Traffic Data for Congestion Detection Using Machine Learning Algorithms
Nahid Amani1, Mohammad Hossein Amerimehr1, Sara Efazati11, Ali Javidani2
1 ICT Research Institute (ITRC), Tehran, Iran
2 School of Electrical and Computer Engineering, College of Engineering, University of Tehran, Tehran, Iran
Received: 01 July 2024, Revised: 20 January 2025, Accepted: 15 February 2025
Paper type: Research
Abstract
Congestion detection is one of the basic elements in guaranteeing the quality of service and is one of the most important measures of efficiency in new-generation telecommunication networks. Congestion leads to the loss of information packets in the network because the sending rate is higher than the capacity in some network links. To control congestion in the network, the first step is to distinguish between the loss of packets due to congestion with the packet loss introduced by other cases, including link failure. Because if the source of the loss is mistakenly identified as congestion, reducing the sending rate in the transmitter does not mitigate the congestion and only reduces throughput and quality of service. Therefore, the main problem of this paper is to identify congestion and distinguish it from the error caused by communication links in a traffic data sample. In solving this problem, various supervised machine learning algorithms including decision tree, random forest, support vector machine, logistic regression, K-nearest neighbor, XGBoost, and neural network have been used. The mentioned algorithms have been evaluated based on different criteria and compared with each other.
Keywords: Congestion Detection, Machine Learning, XGBoost, Evaluation Criteria of ML Algorithms.
تحليل دادههاي ترافيکي با هدف تشخيص ازدحام با بهرهگيري از الگوريتمهاي يادگيري ماشين
ناهید امانی1، محمدحسین عامریمهر1، سارا افاضاتی12، علی جاویدانی2
1 گروه مدیریت یکپارچه شبکه، پژوهشکده فناوری ارتباطات، پژوهشگاه ارتباطات و فناوری اطلاعات ، تهران، ایران
2 دانشکده مهندسی برق و کامپیوتر، دانشکدگان فنی، دانشگاه تهران، تهران، ایران
تاریخ دریافت: 11/04/1403 تاریخ بازبینی: 01/11/1403 تاریخ پذیرش: 27/11/1403
نوع مقاله: پژوهشی
چکيده
شناسايي ازدحام يکي از ارکان پايهاي در تضمين کيفيت خدمت به عنوان مهمترين معيار سنجش کارايي در شبکههاي مخابراتي نسل جديد است. ازدحام منجر به از دست رفتن بستههاي اطلاعاتي در شبکه ميشود که به دليل بالاتر بودن نرخ ارسال از ظرفيت در برخي از لينکهاي شبکه رخ ميدهد. براي کنترل ازدحام در شبکه گام نخست تمايز ميان از دست رفتن اطلاعات در اثر ازدحام و يا در اثر ساير موارد از جمله خرابي لينک است زيرا در صورتي که منشا از دست رفتن بسته به اشتباه ازدحام تشخيص داده شود کاهش نرخ ارسال در فرستنده کمکي به کاهش ازدحام نکرده و تنها موجب کاهش گذردهي و کيفيت سرويس مي شود. از اين رو مسئله اصلي اين مقاله شناسايي ازدحام و تفکیک آن از خطاي ناشي از لينکهاي ارتباطي در يک نمونه داده ترافيکي است. در اين مقاله براي حل مسئله مذکور از الگوريتمهاي مختلف يادگيري ماشين نظارتشده از جمله درخت تصميم، جنگل تصادفي، ماشين بردار پشتيبان، لجيستيک رگرسيون، K-نزديکترين همسايه، XGBoost، شبکه عصبي و تقويت درخت تصميم بهره گرفته شده است. الگوريتمهاي مذکور بر اساس معيارهاي مختلف از جمله دقت، درستی، F1-measure، حساسیت و AUC مورد ارزيابي قرار گرفته و با يکديگر مقايسه شدهاند. اين ارزيابي بر اساس روش K-fold Cross Validation انجام شده است. نتایج شبیهسازی نشان میدهد که الگوریتم XGBoost به لحاظ تمام معیارهای ارزیابی نسبت به دیگر الگوریتمها عملکرد بهتری در زمینه تشخیص ازدحام دارد.
کلیدواژگان: تشخیص ازدحام، يادگيري ماشين، XGBoost، معیارهای ارزیابی الگوریتمهای یادگیری ماشین
[1] * Corresponding Author’s email: s.efazati@itrc.ac.ir
[2] * رایانامة نويسنده مسؤول: s.efazati@itrc.ac.ir
1- مقدمه
امروزه با توسعه سريع فناوريها، تقاضا براي سرويسهاي متنوع مخابراتي با کيفيتهاي مورد انتظار متنوع به طور گستردهاي افزايش يافته است. از اين رو فراهم کردن کيفيت خدمت (QoS) و جلب رضايتمندي مشتريان از اهداف اساسي نسلهاي جديد شبکههاي مخابراتي ازجمله 5G، B5G و 6G ميباشد[1-2]. در راستاي رسيدن به هدف تضمين QoS راهکارهاي مختلفي توسط محققان ارائه و پيادهسازي شده است. يکي از راهکارهاي کليدي در تضمين QoS کنترل ازدحام در ترافيک شبکه است[3]. منظور از ازدحام شرايطي در شبکه است که بستههاي ارسالي دقيقا به علت شلوغي و ازدحام شبکه گم ميشوند. به عبارت ديگر ازدحام به حالتي گفته ميشود که نرخ ارسال در برخي از لينکهاي شبکه از ظرفيت لينک بيشتر شده که موجب از دست رفتن بسته يا تاخير زياد در ارسال بسته ميشود. در روشهاي سنتي تشخيص و کنترل ازدحام به طور ضمني از تاخير و اتلاف بسته براي تشخيص ازدحام و تغيير سايز پنجره ازدحام (CWND) استفاده ميشود. به عنوان مثال در روش TCP Tahoe در ابتداي الگوريتم CWND تا رسيدن به حد آستانه افزايش مييابد و مرتبا دو برابر ميشود [4]. سپس در گام بعد در صورتي که از دست رفتن بسته مشاهده نشود (ACK بسته دريافت شود)، CWND به اندازه يک واحد افزايش مييابد. اما در صورت اتلاف بسته حدآستانه برابر با نصف مقدارCWND فعلي قرار داده ميشود و CWND نيز به مقدار اوليه بازنشاني ميشود. در الگوريتمهاي ديگر مثل TCP Reno و TCP New Reno نيز مشابه با TCP Tahoe با توجه به از دست رفتن بسته، CWND و بالطبع نرخ ارسال تغيير ميکند تا ازدحام در شبکه کنترل شود [5-6]. در روش TCP Vegas، تغيير CWND بر اساس ميزان تاخير ارسال بسته (RTT) انجام ميشود [5].
مشکل روشهاي سنتي کنترل ازدحام آن است که نميتوانند منشا از دست رفتن بسته را تشخيص دهند و هر اتلاف بسته را ناشی از ازدحام تلقی کرده و راهکارهای کنترلی را اعمال میکنند. در حالیکه اتلاف بسته به ویژه در شبکههای بیسیم میتواند ناشی از بروز خطا در لینکهای ارتباطی به واسطه عواملی همچون نویز، محوشدگی کانال بیسیم، تداخل، تحرک کاربران و handover، قطع شدن به دلیل پوشش محدود رادیویی، تاخیر و... باشد. عدم تشخیص ازدحام از سایر عوامل از دست رفتن بسته و اعمال مکانیزمهای کنترل ازدحام مانند کاهش CWND بيمورد بوده و تنها باعث افت گذردهي و عملکرد شبکه ميشود. لذا تشخيص منشا از دست رفتن بسته و تشخیص ازدحام امری بسيار مهم و قابل توجه به شمار میرود. در روشهای سنتي، تشخيص ازدحام به طور ضمني از روي تاخير و اتلاف بسته بر اساس یک سری قوانین از پیشتعریف شده محاسبه ميشود [7]. در حالیکه روشهای مبتنی بر قانونهای از پیش تعریف شده بهینه نبوده و در شرایط واقعی ممکن است عملکرد مناسبی از خود ارائه ندهند. از این رو روشهای هوشمند مبتنی بر یادگیری ماشین در حل این مسئله مطرح میشوند.
در روش مبتني بر يادگيري ماشين از روي وضعيت شبکه تشخيص ازدحام انجام ميشود. لذا تشخيص ازدحام مبتني بر يادگيري ماشين از هوشمندي و دقت بيشتري نسبت به روشهاي سنتي تشخيص ازدحام برخوردار است [8]. در یادگیری ماشین با تجزيه و تحليل دادههايي که به عنوان ورودي دريافت مي شود فرايند يادگيري انجام شده و عملکرد سیستم به طور خودکار از طریق تجربه بهبود مییابد. از میان انواع الگوریتمهای یادگیری ماشین، الگوریتمهای یادگیری نظارتشده از دقت بالاتری در حل مسئله تشخیص ازدحام برخوردارند [9-10]. در این روش آموزش بر اساس دادههاي برچسبدار انجام ميشود و الگوريتم سعي ميکند پارامترهاي خود را بر اساس اين دادهها بروزرساني کند به نحوي که خطاي پيشبيني دادهها به حداقل برسد.
در این مقاله به حل مسئله تشخیص ازدحام و تفکیک آن از سایر عوامل از دست رفتن بسته با بهرهگیری از یادگیری ماشین نظارت شده پرداخته میشود. هدف اصلی پیداکردن الگوریتم یادگیری ماشین نظارتشدهای است که بتواند بهترین عملکرد را بر اساس معیارهای ارزیابی مختلف در حل مسئله تشخیص ازدحام ارائه دهد.
در این زمینه، [11] به بررسی تشخیص ازدحام در یک شبکه حسگری بیسیم با استفاده از یادگیری ماشین پرداخته است. در این مقاله برای تشخیص ازدحام از دو الگوریتم شبکه عصبی و ماشین بردار پشتیبان استفاده شده است. البته در این مقاله بحث تفکیک ازدحام از دیگر خطاهای ارتباطی وجود ندارد بلکه با دریافت سه پارامتر مختلف از شبکه، رخ دادن ازدحام در شبکه پیشبینی میشود.
در [12] از الگوریتمهای مبتنی بر یادگیری ماشین برای شناسایی ازدحام استفاده شده است. الگوریتم یادگیری ماشین استفاده شده در این مقاله الگوریتمی مبتنی بر الگوریتم ماشین بردار پشتیبان است که به شناسایی و کنترل ازدحام در شبکههای مبتنی بر حسگر اینترنت اشیا میپردازد.
[13] یک مرور جامع بر روی مقالاتی که با استفاده از یادگیری عمیق به شناسایی ازدحام پرداختهاند انجام داده است. [14-15] نیز از الگوریتمهای مبتنی بر یادگیری عمیق برای شناسایی ازدحام استفاده کردهاند.
در [16] به مسئله تفکیک ازدحام از دیگر خطاهای ارتباطی با استفاده از یادگیری ماشین پرداخته است. در این مقاله از الگوریتمهای یادگیری ماشین نظارتشده از قبیل درخت تصمیم، جنگل تصادفی و شبکه عصبی استفاده شده است.
همین نویسندگان در مقالهای دیگر از الگوریتم یادگیری نظارت شدهای با عنوان تقویت درخت تصمیم و همان مجموعه داده قبلی استفاده کردهاند و با نتایج مقاله قبل مقایسه کردهاند و نتایج بهتری را به دست آوردهاند [17].
در مقاله حاضر الگوریتمهای یادگیری نظارت شده متعددی در مسئله تشخیص ازدحام به کار گرفته شدهاند، از جمله درخت تصمیم، جنگل تصادفی، ماشین بردار پشتیبان، لجستیک رگرسیون، K-نزدیکترین همسایه، XGBoost، شبکه عصبی چند لایه و تقویت درخت تصمیم. نسبت به مقالات [16] و [17] که نزدیکی بیشتری با این مقاله دارند، از الگوریتمی با دقت بالاتر با نام XGBoost در حل مساله تشخیص ازدحام استفاده شده است و نشان داده شده که این الگوریتم به لحاظ تمام معیار-های ارزیابی از جمله درستی، دقت، حساسیت، F1-measure و AUC عملکردی بهتر از سایر الگوریتمهای مذکور از خود ارائه میدهد. در جدول 1 مقالات مرتبط با مقاله حاضر آورده شده است.
جدول 1. کارهای مرتبط با مقاله حاضر
مرجع | مسئله | الگوریتم مورد استفاده |
[4] | کنترل ازدحام به صورت سنتی | TCP Tahoe |
[5] ، [6] | کنترل ازدحام به صورت سنتی | TCP Tahoe TCP Reno TCP New Reno TCP Vegas |
[11] | تشخیص ازدحام با استفاده از یادگیری ماشین | Neural network SVM |
[12] | کنترل ازدحام با استفاده از یادگیری ماشین | SVM |
[16] ، [17] | تفکیک ازدحام از دیگر خطاهای ارتباطی با استفاده از یادگیری ماشین | Decision Tree, Random forest, Neural Network, Decision Tree Boosting |
مقاله حاضر | تفکیک ازدحام از دیگر خطاهای ارتباطی با استفاده از یادگیری ماشین | Logistic Regression, SVM, Random Forest, KNN, XGBoost, Decision Tree, Neural Network |
چارچوب اصلی مقاله حاضر بر اساس موارد زیر بنا شده است:
1. به کارگیری الگوریتمهای متنوع یادگیری نظارت شده شامل درخت تصمیم، جنگل تصادفی، ماشین بردار پشتیبان، لجستیک رگرسیون ، K-نزدیکترین همسایه، XGBoost، شبکه عصبی چند لایه و تقویت درخت تصمیم
2. به کارگیری معیارهای ارزیابی مختلف شامل درستی1 دقت2، F1-measure، حساسیت3 و AUC در ارزیابی الگوریتمها
3. مقایسه عملکرد الگوریتمهای مذکور بر اساس معیارهای ارزیابی و انتخاب بهترین آنها برای حل مسئله تشخیص ازدحام با یکدیگر.
ساختار مقاله در ادامه بدین شرح تنظیم شده است. در بخش دوم به معرفی اجمالی الگوریتمهای یادگیری نظارتشده پرداخته میشود. سپس شیوه مقایسه الگوریتمهای یادیگیری ماشین و معیارهای ارزیابی آنها در بخش سوم مورد بررسی قرار میگیرد. در بخش چهارم نتایج شبیهسازی ارائه شده و در نهایت در بخش پنجم جمعبندی نهایی صورت میپذیرد.
2- مرور اجمالی الگوریتمهای یادگیری ماشین نظارت شده
همانطور که قبلا اشاره شد الگوريتمهاي يادگيري ماشين نظارت شده بر اساس يک مجموعه داده برچسبدار عمل کرده و آموزش ميبينند. در این بخش به معرفی اجمالی الگوریتمهای مورد استفاده در این مقاله پرداخته میشود.
الف) الگوریتم درخت تصمیم
این الگوریتم یکی از قدیمیترین و در عین حال محبوبترین الگوریتمهای یادگیری ماشین نظارتشده در کاربردهای تصمیم-گیری و طبقهبندی است [18]. در این الگوریتم فرآیند تصمیمگیری از طریق شاخهبندی ویژگیها از مهمترین ویژگی به کماهمیتترین ویژگی انجام میشود. هر شاخه نشانگر یک تصمیم یا قانون است. ایده اصلی آن است که مجموعهای از تصمیمات متوالی برای رسیدن به یک نتیجه خاص اتخاذ میشوند. مزیت اصلی این الگوریتم در مقایسه با سایر الگوریتمها، پیچیدگی محاسباتی کم در کنار دقت بالا میباشد.
ب) الگوریتم جنگل تصادفی
الگوریتم جنگل تصادفی بر پایه الگوریتم درخت تصمیم ساخته شده است[18-19]. ایده اصلی این روش آن است که خروجی چندین درخت تصمیم را با یکدیگر ادغام کند. بنابراین به جای تکیه بر خروجی یک درخت تصمیم، نتایج چندین درخت تصمیم را جمعآوری کرده و بر اساس میانگین یا اکثریت آرا پیشبینی نهایی را ارائه میدهد.
ج) الگوریتم ماشین بردار پشتیبان
این الگوریتم برای طبقهبندی و رگرسیون استفاده میشود. مبنای کار طبقهبند SVM دستهبندی خطی دادهها است و در تقسیم خطی دادهها سعی میشود خطی انتخاب شود که حاشیه اطمینان بیشتری داشته باشد.
د) الگوریتم لجستیک رگرسیون
این الگوریتم روشی ساده و کارآمد برای مسائل طبقهبندی باینری و خطی است و به طور گسترده برای طبقهبندی در صنعت به کار گرفته میشود [20]. در این روش از یک ابر صفحه در یک فضای m بعدی برای جداسازی نقاط داده با تعداد m ویژگی در کلاسهایشان استفاده میشود.
ه) الگوریتم K-نزدیکترین همسایه
این الگوریتم که به منظور طبقهبندی و رگرسیون مورد استفاده قرار میگیرد بر این ایده استوار است که نقاط داده مشابه برچسبهای مشابه دریافت میکنند [21-22]. این تشابه بر اساس مقیاس فاصله بین نقاط داده که میتواند به عنوان مثال فاصله اقلیدسی در نظر گرفته شود تعیین میشود. عملکرد الگوریتم KNN در عین سادگی و محبوبیت در انتخاب، تحت تأثیر انتخاب پارامتر K و متریک فاصله قرار میگیرد. بنابراین تنظیم دقیق پارامتر K برای نتایج بهینه ضروری است.
و) الگوریتم XGBoost
الگوریتم XGBoost یا به عبارتی الگوریتم تقویت گرادیان حداکثر با ترکیب الگوریتم درخت تصمیم و الگوریتم تقویت گرادیان ایجاد شده است [23]. الگوریتم تقویت گرادیان یک مدل پایه طبقهبندی ایجاد میکند و سپس طی مراحلی عملکرد خود را بهبود میبخشد تا به یک مدل پیشبینی قوی برسد. به این صورت که در هر مرحله مدل جدیدی که ایجاد میشود برای رفع خطاهای مدل قبلی است. XGBoost با ترکیب پیشبینیهای چندین مدل جداگانه درختهای تصمیمگیری، یک مدل پیشبینی جدید میسازد. عملکرد مناسب، دقت بالا و انعطافپذیری این روش آن را به یکی از روشهای پرکاربرد در حوزههای مختلف تبدیل کرده است.
ز) الگوریتم شبکه عصبی
الگوریتم شبکه عصبی بر اساس رفتار بیولوژیکی نورونهای عصبی در مغز عمل میکند [24-25]. یک شبکه عصبی مصنوعی تشکیل شده است از گرههایی معادل نورونهای مصنوعی که توسط روابطی معادل سیناپسهای عصبی با یکدیگر در ارتباط هستند. این الگوریتم شامل یک لایه ورودی، چندین لایه تصمیمگیری و یک لایه خروجی است. تعداد لایهها، گرهها، روابط و حدود آستانه مشخص شده در هر گره مواردی هستند که به صورت تجربی و خاص هر مسئله تنظیم میشوند.
ح) الگوریتم تقویت درخت تصمیم
این الگوریتم در راستای تقویت عملکرد الگوریتم درخت تصمیم ساخته شده است. در این روش ابتدا یک مدل اولیه ساخته میشود و به تدریج مدل بهبود مییابد. به عبارت دقیقتر، هر مدل با استفاده از مدل قبلی و با افزایش وزن نمونههای یادگیری که در مدل قبل به اشتباه طبقهبندی شدهاند ساخته میشود. سپس پیشبینی نهایی با استفاده از مجموعه مدلهای بدست آمده و بر اساس کلاس اکثریت در بین همه کلاسها ساخته میشود [26].
3- ارزیابی و مقایسه الگوریتمهای یادگیری ماشین نظارت شده
یکی از اهداف اصلی در این مقاله ارزیابی الگوریتمهای مختلف یادگیری نظارتشده و مقایسه آنها بر اساس معیارهای متفاوت ارزیابی است. مساله مطرح شده در این مقاله تشخیص ازدحام و شناسایی و تفکیک آن از خطای ارتباطی در یک نمونه داده برچسبدار است. از آنجا که جنس این مساله از نوع طبقهبندی است از روش متداول K-fold Cross Validation جهت ارزیابی طبقهبندی انجام شده استفاده میشود [27]. روش Cross-Validation شامل دو مرحله اصلی است: تقسیم دادهها به زیر مجموعههایی به نام folds و چرخش آموزش و اعتبارسنجی میان آنها. مرحله تقسیم دادهها معمولاً ویژگیهای زیر را دربردارد:
· اندازه هر fold تقریباً یکسان است.
· دادهها را میتوان به صورت تصادفی در هر fold انتخاب کرد.
· همه fold ها، به جز یکی که برای اعتبار سنجی استفاده میشود، برای آموزش مدل استفاده میشوند. آن fold اعتبارسنجی باید چرخانده شود تا زمانی که همه fold ها یک بار و تنها یک بار به یک fold اعتبارسنجی تبدیل شوند. در این الگوریتم، عموما توصیه میشود که هر نمونه در یک و تنها یک قسمت قرار گیرد.
حرف K در نام این الگوریتم مشخصکننده آن است که مجموعه دادهها به چند قسمت تقسیم میشود. بسیاری از کتابخانههای پایتون از k=10 به عنوان یک مقدار پیشفرض استفاده میکنند که نشاندهنده این است که 90% دادهها برای آموزش و 10% از دادهها برای اعتبارسنجی استفاده خواهد شد.
چارچوب کلی مقایسه میان الگوریتمها در این مقاله بدین شرح است که در ابتدا پیشپردازشهای مورد نظر بر روی نمونه دادههای برچسبدار موجود انجام میشود. سپس دادههای پیشپردازش شده بر اساس روش k-fold به صورت تصادفی به k دسته تقسیم میشوند تا برای آموزش و اعتبارسنجی الگوریتم یادگیری مورد نظر از آنها استفاده شود. الگوریتم مورد نظر اجرا شده و بر اساس دادههای آموزشی و دادههای اعتبارسنجی که در روش k-fold به آن داده شده معیار ارزیابی مشخص شده را محاسبه میکند. در ادامه به معرفی معیارهای ارزیابی مد نظر در این مقاله پرداخته شده است.
3-1- معیارهای ارزیابی
در شناسایی الگو معیارهای ارزیابی متداول برای مسائل از جنس طبقهبندی، عموما درستی، دقت ، حساسیت ، F1-Measure و AUC هستند. معیارهایی همچون دقت، درستی و F1-measure و حساسیت که بر اساس ارزیابی تعداد نمونههای درست و نادرست در یک مجموعه داده سنجیده میشوند از ابزاری به نام ماتریس درهمریختگی در ارزیابی خود استفاده میکنند. از سوی دیگر معیار AUC که یک معیار عددی در سنجش عملکرد یک مدل یادگیری است از منحنی ROC مشتق میشود. در ادامه به شرح کامل ماتریس در همریختگی و منحنی ROC پرداخته شده و سپس معیارهای ارزیابی مستخرج از آنها مورد بررسی قرار گرفتهاند. ماتریس درهمریختگی، عملکرد یک مدل یادگیری ماشین را بر روی مجموعه ای از دادههای آزمایشی خلاصه میکند. در حقیقت این ماتریس، ابزاری برای نمایش تعداد نمونههای درست و نادرست بر اساس پیشبینیهای مدل است. از این ماتریس برای اندازهگیری عملکرد مدلهای طبقهبندی، که هدف آن پیشبینی یک برچسب طبقهبندی برای هر نمونه ورودی است، استفاده میشود. برای یک مساله طبقهبندی دو کلاسه، 4 عنصر زیر در ماتریس درهمریختگی تعریف میشوند:
· مثبت واقعی (TP): زمانی رخ میدهد که مدل به درستی، یک داده مثبت را پیشبینی کند.
· منفی واقعی (TN): زمانی رخ میدهد که مدل به درستی، یک داده منفی را پیشبینی کند.
· مثبت کاذب (FP): زمانی رخ میدهد که مدل به اشتباه، یک داده منفی را مثبت پیشبینی کند.
· منفی کاذب (FN): زمانی رخ میدهد که مدل به اشتباه، یک داده مثبت را منفی پیشبینی کند.
هنگام ارزیابی عملکرد یک مدل طبقهبندی، بررسی ماتریس درهمریختگی ضروری است. این ماتریس یک تجزیه و تحلیل کامل از پیشبینیهای مثبت واقعی، منفی واقعی، مثبت کاذب و منفی کاذب ارائه میدهد و درک عمیقتر از دقت، درستی و اثربخشی کلی مدل در تمایز طبقاتی را تسهیل میکند.
منحنی ROC نموداری است که ارزیابی یک سیستم طبقهبندی دودویی را به نمایش میگذارد. منحنی ROC توسط ترسیم نرخ مثبت واقعی یا TPR بر حسب نرخ مثبت کاذب یا FPR به دست میآید که با فرمولهای زیر قابل محاسبه هستند.
(1) |
|
(2) |
|
(3) |
|
(4) |
|
(5) |
|
(6) |
|
[1] Accuracy
[2] Precision
[3] Recall
هر دو جنگل تصادفي و شبکههاي عصبي جايگزينهاي قوي براي XGBoost با نقاط قوت خود ارائه ميدهند. جنگل تصادفي، کاهش واريانس و مقاومت مناسبي را از طريق روش تجميعي ارائه ميدهد که آن را براي طبقهبندي شبکه بسيار قابل اعتماد ميکند. در واقع الگوريتم جنگل تصادفي، چندين درخت تصميم ميسازد و آنها را با هم ادغام ميکند تا پيشبيني دقيق و پايدارتري داشته باشد. شبکههاي عصبي انعطافپذيري و قابليت يادگيري بينظيري را به ويژه در يادگيري الگوهاي پيچيده لازم براي تمايز مؤثر در رفتار شبکه فراهم ميکنند. اين امر ناشي از قابليت مدلسازي و يادگيري روابط غيرخطي به علت ساختار معماري چندلايه و وجود توابع فعالسازي ميباشد. بررسي نتايج شکل 9 نشان ميدهد که به لحاظ معيارهاي مختلف ارزيابي، الگوريتم جنگل تصادفي پس از الگوريتم XGBoost در رتبه دوم قرار دارد. همچنين الگوريتم شبکه عصبي نيز در تمام معيارها در رتبه سوم قرار دارد (به جز معیار حساسیت که اختلاف کمی با الگوریتم لجستیک رگرسیون دارد). قرار گرفتن اين دو الگوريتم در رتبههاي دوم و سوم نشاندهنده کارايي آنها در مديريت پيچيدگيها و پويايي دادههاي ترافيک شبکه است. همچنين با توجه به نتايج شبيهسازي در شکل 9 مقايسه بين الگوريتم XGBoost و الگوريتم تقويت درخت تصميم نشان ميدهد که به لحاظ تمام معيارهاي ارزيابي XGBoost عملکرد بهتري را ارائه مي دهد. به عنوان مثال به لحاظ معيار ارزيابي درستی، الگوريتم XGBoost داراي درستی 96 درصد در تفکيک کلاس ازدحام از کلاس خطاهاي ارتباطي است در حالي که اين عدد براي الگوريتم تقويت درخت تصميم 91 درصد ميباشد.
5- نتيجهگيري
هدف اصلی این مقاله تشخیص ازدحام با دقت بالا با بهرهگیری از الگوریتمهای یادگیری ماشین نظارت شده بود و مسئله اصلی با عنوان شناسایی ازدحام و تفکیک آن از خطای ناشی از لینکهای ارتباطی مورد بررسی قرار گرفت. برای حل مسئله مذکور از الگوریتمهای یادگیری ماشین نظارت شدهی متعدد از جمله درخت تصمیم، جنگل تصادفی، ماشین بردار پشتیبان، لجیستیک رگرسیون، K-نزدیکترین همسایه، XGBoost، شبکه عصبی و تقویت درخت تصمیم استفاده گردید. در راستای یافتن بهترین روش حل مساله از میان روشهای مذکور عملکرد این الگوریتمها با کمک معیارهای مختلف از جمله دقت، درستی، F1-measure، حساسیت و AUC ارزیابی و با یکدیگر مقایسه شد. نتایج شبیهسازی نشان داد که الگوریتم XGBoost توانسته است بر اساس همه معیارهای ارزیابی از سایر الگوریتمها عملکرد بهتری ارائه دهد و الگوریتمهای جنگل تصادفی و شبکه عصبی در جایگاههای بعدی قرار گرفتند. همچنین مقایسه بین الگوریتم XGBoost و الگوریتم تقویت درخت تصمیم ارائه شده در [17] بیانگر عملکرد بهتر الگوریتم XGBoost بر اساس تمام معیارهای ارزیابی است. به عنوان مثال به لحاظ معيار ارزيابي درستی، الگوريتم XGBoost داراي درستی 96 درصد در تفکيک کلاس ازدحام از کلاس خطاهاي ارتباطي است اما درستی الگوريتم تقويت درخت تصميم 91 درصد ميباشد. لذا الگوریتم XGBoost به عنوان یک روش کارامد برای حل مسئله تشخیص ازدحام در شبکه میتواند مورد بهره برداری قرار گیرد.
در ادامه فعالیتهای انجام شده در این مقاله به شبیهسازی محیطهای پیچیدهتر، از قبیل شبکه با فرضیاتی نظیر تحرک کاربران یا وجود فیدینگ در کانال به منظور واقعی تر شدن مسئله، با استفاده از شبیهساز شبکه NS3 پرداخته و مسئله شناسایی ازدحام را در آن محیطها مورد بررسی قرار خواهیم داد. همچنین استفاده از انواع الگوریتمهای شبکه عصبی عمیق از جمله LSTM برای پیشبینی ازدحام از دیگر مطالعاتی است که در ادامه مطالعه حاضر انجام خواهد شد.
مراجع
[1] Z. Zhang; Y. Zhou; L. Teng; W. Sun; C. Li and X.Min, "Quality-of-Experience Evaluation for Digital Twins in 6G Network Environments," in IEEE Transactions on Broadcasting, pp. 1-13, 2024.
[2] R. Prasad and A. Sunny, "QoS-Aware Scheduling in 5G Wireless Base Stations," in IEEE/ACM Transactions on Networking, vol. 32, no. 3, pp. 1999-2011, June 2024.
[3] J. P. Astudillo León, L. J. Cruz Llopis and F. J. Rico-Novella, “A machine learning based Distributed Congestion Control Protocol for multi-hop wireless networks,” in Computer Networks, vol. 231, July 2023.
[4] J. Lorincz, Z. Klarin and J. Ožegovic, “A Comprehensive Overview of TCP Congestion Control in 5G Networks: Research Challenges and Future Perspectives,” in MDPI Sensors, vol. 21, no. 13, pp. 4510, 2021.
[5] L. Machora. "A survey of transmission control protocol variants," in World Journal of Advanced Research and Reviews, vol. 21, no. 3, pp. 1828– 1853, 2024.
[6] I. Stoica, "A Comparative Analysis of TCP Tahoe, Reno, New-Reno, SACK and Vegas," University of California Berkeley, CA, 2005.
[7] Z. Tafa, Zhilbert, and V. Milutinovic. "Machine learning in congestion control: A survey on selected algorithms and a new roadmap to their implementation." arXiv preprint arXiv:2112.15522 2021.
[8] T. Zhang and S. Mao, "Machine Learning for End-to-End Congestion Control," in IEEE Communications Magazine, vol. 58, no. 6, pp. 52-57, June 2020.
[9] Huiling Jiang, Qing Li, Yong Jiang, GengBiao Shen, Richard Sinnott, Chen Tian, Mingwei Xu, “When machine learning meets congestion control: A survey and comparison”, in Computer Networks, vol. 192, pp. 1-28, 2021.
[10] M. B. M. Kamel, I. Ahmed Najm and A. Khalaf Hamoud, "Congestion Control Prediction Model for 5G Environment Based on Supervised and Unsupervised Machine Learning Approach," in IEEE Access, vol. 12, pp. 91127-91139, 2024
[11] J. Alejandrino, R. Concepcion, S. Lauguico, M. G. Palconit, A. Bandala and E. Dadios, "Congestion Detection in Wireless Sensor Networks Based on Artificial Neural Network and Support Vector Machine," in 12th International Conf. on Humanoid, Nanotechnology, Inf. Tech., Commun. and Control, Environment, and Management (HNICEM), Manila, Philippines, 2020, pp. 1-6.
[12] P.T. Kasthuribai, “Optimized support vector machine based congestion control in wireless sensor network based Internet of Things,” in Int. J. Computer Network and Application, vol. 8, no. 4, pp. 444-454, 2021.
[13] N. Kumar, and M. Raubal. "Applications of deep learning in congestion detection, prediction and alleviation: A survey." in Transportation Research Part C: Emerging Technologies vol.133 pp. 103432, 2021.
[14] G. W. Geremew, , J. Ding. "Elephant Flows Detection Using Deep Neural Network, Convolutional Neural Network, Long Short‐Term Memory, and Autoencoder." in Journal of Computer Networks and Communications, pp. 1-18, 2023.
[15] M. Labonne, C. Chatzinakis and A. Olivereau, "Predicting Bandwidth Utilization on Network Links Using Machine Learning," in European Conf. on Networks and Commun. (EuCNC), Dubrovnik, Croatia, 2020, pp. 242-247.
[16] P. Geurts, I. El Khayat and G. Leduc, "A machine learning approach to improve congestion control over wireless computer networks," in Fourth IEEE International Conf. on Data Mining (ICDM'04), Brighton, UK, 2004, pp. 383-386.
[17] I. El Khayat, P. Geurts, and G. Leduc, ‘Improving TCP in Wireless Networks with an Adaptive Machine-Learnt Classifier of Packet Loss Causes’, in NETWORKING, 2005, pp. 549–560.
[18] J. D. Kelleher, B. M. Namee and A. D. Arcy. Fundamentals of machine learning for predictive data analytics: algorithms, worked examples, and case studies. MIT press, 2020.
[19] T. K. Ho, “Random Decision Forests,” in Proceedings of the 3rd International Conf. on Document Analysis and Recognition, Montreal, QC, 14–16 Aug., 1995, pp. 278–282.
[20] J. Tolles, WJ. Meurer, “Logistic Regression: Relating Patient Characteristics to Outcomes,” in JAMA, Vol. 316, no. 5, pp. 533-534, Aug. 2016.
[21] E. Fix, J. L. Hodges, “Discriminatory Analysis. Nonparametric Discrimination: Consistency Properties,” in International Statistical Review, vol. 57, no.3, pp. 238-247, 1989.
[22] R. O. Duda and P. E. Hart, Pattern classification. John Wiley & Sons, 2006.
[23] T. Chen, "Story and Lessons behind the evolution of XGBoost,” 2016.
[24] LeCun, Y. Bengio, and G. Hinton, "Deep learning," in Nature, vol. 521, no. 7553, pp. 436-444, 2015.
[25] D. Shi, W. Ping, A. Khushnood. "A survey on deep learning and its applications," in Computer Science Review, vol. 40, pp. 100379, 2021.
[26] Y. Freund, R. E Schapire. "A Decision-Theoretic Generalization of On-Line Learning and an Application to Boosting," in J. of Computer and System Sciences, vol. 55, no. 1, pp. 119-139, 1997.
[27] C. M. Bishop, and N. M. Nasrabadi. Pattern recognition and machine learning. Vol. 4. No. 4. New York: springer, 2006.
[28] [Online]. Available: https://people.montefiore.uliege.be/geurts/Papers/Boosting-DT/BD-Fifo.dat.gz