چکیده
در این مقاله، مدلهای گروهی برای دقت پیشبینی قابلیت اطمینان نرمافزار توسعه یافته است. روشهای آماری (رگرسیون خطی چندگانه و رگرسیون خطی چند متغیره) و تکنیکهای هوشمند (شبکه عصبی آموزش دیده پس انتشار، سیستم استنتاج عصبی-فازی پویا و TreeNet) گروهها را ارائه میدهند. سه گروه خطی و یک گروه غیرخطی طراحی و تست شده است. براساس آزمایش روی قابلیت اطمینان دادههای بدست آمده از نرمافزار، مشاهده شده است که مجموعه گروههای غیرخطی عملکرد بهتری نسبت به گروههای دیگر و همچنین روشهای آماری و هوشمند دارند.
معرفی
قابلیت اطمینان نرمافزار بهعنوان احتمال خطای عملیات نرمافزار برای یک دوره مشخص از زمان در یک محیط مشخص شده است (تعریف ANSI). مدلسازی قابلیت اطمینان نرمافزار اهمیت بسیاری در سالهای اخیر بهدست آورده است. بحران نرمافزار در بسیاری از برنامههای کاربردی حاضر رو به افزایش است. کاربرد شبکههای شبکه هوشمند و هیبرید عصبی بهجای روشهای آماری سنتی بهبود قابل توجهی در پیشبینی قابلیت اطمینان نرمافزار در سالهای اخیر نشان داده است. در میان روشهای هوشمند و آماری شناسایی بهترین آسان است زیرا عملکرد آنها با تغییر در داده متفاوت است.
در این مقاله، یک رویکرد مبتنی بر گروه برای پیشبینی قابلیت اطمینان نرمافزار تشریح شده است. بهطورخاص، شبکه عصبی غیرخطی پس انتشار با استفاده از گروه آموزش دیده (BPNN) ارائه شده است. روش پیشنهادی تمام قابلیتهای تکنیک پیشبینی را به سمت داده و اختصاص مناسب وزن به هر از تکنیکهای مبتنی بر عملکرد آنها برده است.
کارهای گذشته
در سالهای اخیر بسیاری از مطالعات تحقیقاتی انجام شده در این زمینه در مورد مدلسازی قابلیت اطمینان نرمافزار و پیشبینی آن است. که شامل استفاده از شبکههای عصبی، مدل منطق فازی؛ الگوریتم ژنتیک (GA) براساس شبکههای عصبی، شبکههای عصبی راجعه، شبکههای عصبی بیزی و ماشین بردار پشتیبان (SVM) بر اساس تکنیکهایی، بهنام Cai و همکارانش (1991) برای حمایت از توسعهی مدل قابلیت اطمینان نرمافزار فازی بهجای مدل قابلیت اطمینان نرمافزار احتمالاتی (PSRMs) بود.
بررسی اجمالی تکنیکهای بهکار گرفته
روش های زیر برای پیشبینی قابلیت اطمینان نرمافزار بهکار میروند (1) شبکه عصبی پسانتشار (BPNN)، (2) شبکههای عصبی مبتنی بر آستانه-پذیرش-(TANN) (Ravi و Zimmermann، 2001)، (3) شبکه پی-سیگما (PSN)، (4) رگرسیون خطی چندمتغیره (MARS)، (5) رگرسیون تعمیم شبکه عصبی (GRNN)، (6) رگرسیون چند خطی (MLR)، (7) سیستم استنتاج فازی عصبی پویا (DENFIS) و (8) TreeNet. بنابهاینکه BPNN و MLR بسیار محبوب هستند، در اینجا مورد بحث قرار نگرفتند. همه اجزای باقی مانده از گروه بهطور خلاصه در زیر بخشهای بعدی توضیح داده شده است.
شبکههای عصبی مبتنیبر آستانه پذیرش
آستانهی پذیرش (TA)، در اصل توسط Dueck و Scheuer(1990) پیشنهاد شد که یک نوع سریعتر از الگوریتم اصلی ژنتیک بود که در آن پذیرش یک حرکت جدید یا راهحل توسط یک تعیین معیار قطعی بهجای یک مقدار احتمالی انجام میگرفت. جنبه غالب TA این است که هر راهحل جدیدی را که خیلی بدتر از جریان فعلی نیست میپذیرد. مسئلهی دشوار در مواجه با الگوریتم آموزش براساس TA (Ravi و Zimmermann ، 2001، 2003؛ Ravi و همکارانش، 2005) برای شبکه عصبی رو به جلو این است که "پاس رو به جلو" از الگوریتم انتشار به عقب توزیع نشده است. اما، در پاس رو به عقب، که تمام وزنها بهروز میشود، TA بهجای شدیدترین الگوریتمی در خطای پسانتشار استفاده میشود. در این زمینه، مجموعه وزنهای شبکه عصبی (هر دو گره ورودی به پنهان و پنهان به خروجی) به بردار متغیرهای تصمیمگیری تبدیل میشوند. نویسنده دوم با TANN کدگذاری شده است.
مدلهای پیشبینی گروه
ایدهی پشت سیستم گروه، بهره برداری از ویژگیهای منحصربهفرد برای تشکیل الگوهای مختلف است که در مجموعه داده وجود داشته باشد. هر دو نتایج نظری و تجربی نشان میدهد که میتواند یک راه موثر و کارآمد بهمنظور بهبود دقت باشد. Bates و Granger (1969) در کار خود نشان دادند که ترکیب خطی تکنیکهای مختلف خطای واریانس کوچکتری از هر تکنیک در حالت مستقل دارد. از آن به بعد، بسیاری از محققان بر روی گروه و یا پیشبینی ترکیب کار میکنند. Makridakis و همکارانش (1982) ترکیب چندین مدل رایج در بهبود دقت پیشبینی را ارائه کردند. سپس، Pelikan و همکارانش (1992) ترکیب چند شبکهی عصبی رو به جلو بهمنظور بهبود دقت زمان پیشبینی و صحت پیشنهاد کردند. برخی از تکنیکهای گروه برای پیشبینی مشکلات با متغیر وابسته شامل گروه خطی (بهعنوان مثال، میانگین ساده؛ Benediktsson و همکارانش، 1997)، وزن متوسط (Perrone و Cooper، 1993) و رگرسیون انباشته (Breiman، 1996) و گروه غیرخطی (بهعنوان مثال، شبکه عصبی مبتنی بر گروه غیرخطی (Yu و همکارانش، 2005)) هستند.
گروه خطی براساس میانگین
برای هر مشاهده، مقادیر خروجی از مولفههای فردی بهعنوان ورودی برای مجموعه گرفته میشود و میانگین این مقادیر توسط این گروهها بهعنوان خروجی تولید میشود. این سادهترین نوع گروه برای تصور کردن است.
طراحی تجربی
از آنجا که پیشبینی قابلیت اطمینان نرمافزار تنها یک متغیر وابسته است و متغیرهای توضیحی در معنای دقیق ندارد و از آنجایی که ما یک سری زمانی داریم، بهدنبال مدل پیشبینی سری زمانی در انجام آزمایشها هستیم که در فرم زیر نشانداده شده است (همانطور که در معادله 1 نشان داده شده است) که در آن X بردار متغیرهای lag، است. ازاینرو کلید برای پیدا کردن راهحلی برای پیشبینی مشکلات تقریب تابع f است. این مسئله میتواند توسط تکرار تنظیم وزن در مدلسازی روند انجام شود.
یک تصویر از چگونگی آموزش الگو میتواند در فرایند مدلسازی شبکههای عصبی ارائه شده در شکل 3 طراحی شود (Xu و همکارانش (2003)). در این شکل،P نشاندهندهی تعداد متغیرهای عقب مانده و(t-p) نشاندهندهی تعداد کل آموزش نمونه است. در این نمایش،X مجموعهای از بردارهای (t-p) P بُعدی وY یک بردار (t-p) بُعدی است. بنابراین، در مجموعه داده تبدیل شده، X وY نشاندهندهی بردار متغیرهای توضیحی و متغیر وابسته هستند.
نتایج و بحث
برای هر یک از روشها، پارامترهای مناسب مشخص شده توسط الگوریتم، برای دریافت مطلوبترین نتایج بهینهسازی میشود. جدول2 مقادیر مختلف NRMSE را از اطلاعات بهدست آمده از تکنیکهای مختلف نشان میدهد. پارامترهای بهینهسازی تا حداقل مقدار NRMSE با استفاده از معادله (2) محاسبه میشود و بهترین مقادیر در جدول 2 رای تاخیر داده شده ارائه شده است، نتایج آزمون بهدست آمده از این تکنیکهای فردی به گروههای مختلف ارائه شده است. مقادیر NRMSE بهدست آمده از گروه برای تأخیر در جدول 3 ارائه شده است.
نرمافزار مدلسازی ریسک عملیاتی در بانک ها
مدیریت ریسک یک عملکرد مهم در سازمان و حتی بیشتر در مورد بانکها است. ازاینرو، نیاز فوری به مدیریت بهتر وجود دارد چون عواقب بسیار جدی برای تبدیل شدن بانک به ورشکسته وجود دارد. این امر میتواند برای گروه مدیریت خطر آسانتر باشد در صورتی که اطلاعات بیشتری در فرمت قابل استفاده در دست داشته باشند، که میتواند با یک توصیف مدل خطرات مرتبط، احتمال بروز آنها و تاثیر آنها بر وقوع بهبود یابد. بهعنوان بخشی از کار ما در حال تلاش برای بدست آوردن مدلی هستیم که میتواند برای مدیریت ریسک در یک بانک مفید واقع شود. درسالهای اخیر استفاده از نرمافزار در برنامههای بانکی بهطور چشمگیری افزایش یافته است. بنابراین، داشتن نرمافزار قابلاعتماد برای کار موثر در بانک ها بسیار ضروری است. خطر شکست نرمافزار، با توجه به BIS (2001)، تحت ریسک عملیاتی برای بانکها است.
نتیجه گیری
در این مقاله، مدل گروه برای پیشبینی کارآمد قابلیت اطمینان نرمافزار توسعه یافت. سه گروه خطی و یک گروه غیرخطی برای پیشبینی قابلیت اطمینان نرمافزار توسعه یافته و مورد آزمایش قرار گرفت. تکنیکهای آماری مختلف و هوشمند، گروهها را تشکیل میدهند. آنها رگرسیون خطی چندگانه (MLR) و رگرسیون خطی چندمتغیره (MARS)؛ شبکه عصبی آموزش پس انتشار (BPNN)، سیستم استنتاج عصبی-فازی پویا (ANFIS) و TreeNetهستند. بر اساس آزمایشهای عددی ما در قابلیت اطمینان نرمافزار که از اطلاعات کارهای قبلی بدست آمده متوجه شدیم که گروه غیرخطی عملکرد بهتری نسبت به همه گروههای دیگر و همچنین از روشهای آماری و هوشمند دارد. علاوهبراین، متوجه شدیم که گروههای خطی نیز عملکرد بهتری نسبت به تکنیکهای تشکیل دهنده از lag3 به بعد دارند. که در نتیجه، گروه توسعه یافته میتواند بهعنوان جایگزین مناسب برای روشهای موجود در پیشبینی قابلیت اطمینان نرمافزار دارد.
این مقاله ISI در سال 2008 در نشریه الزویر و در مجله سیستم ها و نرم افزار، توسط موسسه توسعه و تحقیقات در فناوری بانکی منتشر شده و در سایت ای ترجمه جهت دانلود ارائه شده است. در صورت نیاز به دانلود رایگان اصل مقاله انگلیسی و ترجمه آن می توانید به پست دانلود ترجمه مقاله قابلیت اطمینان نرم افزار با به کارگیری روش محاسبات نرم در سایت ای ترجمه مراجعه نمایید.