سایت دانلود

تحقیق ها مقاله ها و پایان نامه ها
کامپیوتر (سخت افزار و نرم افزار)

پایان نامه وب¬ کاوی در صنعت

تعداد گره ها و تعداد لایه های نهان و نحوه وصل شدن گره ها به یکدیگر معماری (توپولوژی) شبکه عصبی را مشخص می کند. کاربر یا نرم افزاری که شبکه عصبی را طراحی می کند باید تعداد نودها ، تعداد لایه های نهان ، تابع فعال سازی و محدودیت های مربوط به وزن یال ها را مشخص کند.

شكل(2-7) Wx,y وزن یال بین X و Y است.

از مهمترین انواع شبکه های عصبی Feed-Forward Backpropagation می باشد که در اینجا به اختصار آنرا توضیح می دهیم.

Feed-Forward به معنی این است که مقدار پارامتر خروجی براساس پارامترهای ورودی و یک سری وزن های اولیه تعیین می گردد. مقادیر ورودی با هم ترکیب شده و در لایه های نهان استفاده می‌شوند و مقادیر این لایه های نهان نیز برای محاسبه مقادیر خروجی ترکیب می شوند.

Backpropagation : خطای خروجی با مقایسه مقدار خروجی با مقدار مد نظر در داده های آزمایشی محاسبه می گردد و این مقدار برای تصحیح شبکه و تغییر وزن یال ها استفاده می گردد و از گره خروجی شروع شده و به عقب محاسبات ادامه می یابد.

این عمل برای هر رکورد موجود در بانک اطلاعاتی تکرار می گردد.

به هر بار اجرای این الگوریتم برای تمام داده های موجود در بانک یک دوره [1]گفته می شود. این دوره‌ها آنقدر ادامه می یابد که دیگر مقدار خطا تغییر نکند.

از آنجایی که تعداد پارامترها در شبکه های عصبی زیاد می باشد محاسبات این شبکه ها می تواند وقت گیر باشد. ولی اگر این شبکه ها به مدت کافی اجرا گردند معمولا موفقیت آمیز خواهند بود. مشکل دیگری که ممکن است به وجود بیاید Overfitting می باشد و آن بدین صورت است که که شبکه فقط روی داده ها آموزشی خوب کار می کند و برای سایر مجموعه داده ها مناسب نمی باشد. برای رفع این مشکل ما باید بدانیم چه زمانی آموزش شبکه را متوقف کنیم.یکی از راه ها این است که شبکه را علاوه بر داده های آزمایشی روی داده های تست نیز مرتبا اجرا کنیم و جریان تغییر خطا را در آنها بررسی کنیم. اگر در این داده ها به جایی رسیدیم که میزان خطا رو به افزایش بود حتی اگر خطا در داده های آزمایشی همچنان رو به کاهش باشد آموزش را متوقف کنیم.

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

یکی از مهمترین فواید شبکه های عصبی قابلیت اجرای آنها روی کامپیوترهای موازی می باشد.

2-10-2 درخت تصمیم

درخت­های تصميم روشی برای نمايش يک سری از قوانين هستند که منتهی به يک رده يا مقدار می‌شوند. برای مثال، می­خواهيم متقاضيان وام را به دارندگان ريسک اعتبار خوب و بد تقسيم کنيم. شکل يک درخت تصميم را که اين مسئله را حل می­کد نشان می­دهد و همه مؤلفه­های اساسی يک يک درخت تصميم در آن نشان داده شده است : نود تصميم، شاخه­ها و برگ­ها.

شكل(2-8) درخت تصمیم گیری

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

درخت­های تصميم از طريق جداسازی متوالی داده­ها به گروه­های مجزا ساخته می­شوند و هدف در اين فرآيند افزايش فاصله بين گروه­ها در هر جداسازی است.

يکی از تفاوت­ها بين متد­های ساخت درخت تصميم اينستکه اين فاصله چگونه اندازه­گيری می­شود. درخت­های تصميمی که برای پيش­بينی متغيرهای دسته­ای استفاده می­شوند، درخت­های دسته بندی ناميده می­شوند زيرا نمونه­ها را در دسته­ها يا رده­ها قرار می­دهند. درخت­های تصميمی که برای پيش­بينی متغيرهای پيوسته استفاده می­شوند درخت­های رگرسیون ناميده می­شوند.

هر مسير در درخت تصميم تا يک برگ معمولا قابل فهم است. از اين لحاظ يک درخت تصميم می‌تواند پيش­بينی­های خود را توضيح دهد، که يک مزيت مهم است. با اين حال اين وضوح ممکن است گمراه­کننده باشد. برای مثال، جداسازی های سخت در درخت­های تصميم دقتی را نشان می‌دهند که کمتر در واقعيت نمود دارند. (چرا بايد کسی که حقوق او 400001 است از نظر ريسک اعتبار خوب باشد درحاليکه کسی که حقوقش 40000 است بد باشد. بعلاوه، از آنجاکه چندين درخت می­توانند داده­های مشابه­ای را با دقت مشابه نشان دهند، چه تفسيری ممکن است از قوانين شود؟

درخت­های تصميم تعداد دفعات کمی از داده­ها گذر می­کنند(برای هر سطح درخت حداکثر يک مرتبه) و با متغيرهای پيش­بينی­کننده زياد بخوبی کار می­کنند. درنتيجه، مدلها بسرعت ساخته می­شوند، که آنها را برای مجموعه­داده های بسيار مناسب می­سازد. اگر به درخت اجازه دهيم بدون محدوديت رشد کند زمان ساخت بيشتری صرف می­­شود که غيرهوشمندانه است، اما مسئله مهمتر اينستکه با داده­ها overfit می­شوند. اندازه درخت­ها را می­توان از طريق قوانين توقف کنترل کرد. يک قانون معمول توقف محدود کردن عمق رشد درخت است.

راه ديگر برای توقف هرس کردن درخت است. درخت می­تواند تا اندازه نهايی گسترش يابد، سپس با استفاده از روش­های اکتشافی توکار يا با مداخله کاربر، درخت به کوچکترين اندازه­ای که دقت در آن از دست نرود کاهش می­يابد.

يک اشکال معمول درخت­های تصميم اينستکه آنها تقسيم­کردن را براساس يک الگوريتم حريصانه انجام می­دهند که در آن تصميم­گيری اينکه براساس کدام متغير تقسيم انجام شود، اثرات اين تقسيم در تقسيم­های آينده را درنظر نمی­گيرد.

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

2-10-3 Multivariate Adaptive Regression Splines(MARS)

در ميانه­های دهه 80 يکی از مخترعين CART ، ـJerome H. Friedman، متدی را برای برطرف­کردن اين کاستی­ها توسعه داد.

کاستی­های اساسی که او قصد برطرف­ کردن آنها را داشت عبارتند از:

  • پيش­بينی ­های غيرپيوسته( تقسيم سخت)
  • وابستگی همه تقسيم­ها به تقسيم­های قبلی

به اين دليل او الگوريتم MARS را توسعه داد. ايده اصلی MARS نسبتا ساده است، درحاليکه خود الگوريتم نسبتا پيچيده است. بسيار ساده ايده عبارت است از :

  • جايگزينی انشعاب­های غيرپيوسته با گذر های پيوسته که توسط يک جفت از خط­های مستقيم مدل می­شوند. در انتهای فرآيند ساخت مدل، خطوط مستقيم در هر نود با يک تابع بسيار هموار که spline ناميده می­شود جايگزين می­شوند.
  • عدم نياز به اينکه تقسيم­های جديد وابسته به تقسيم­های قديمی باشند.

متأسفانه اين به معنی اينست که MARS ساختار درختی CART را ندارد و نمی­تواند قوانينی را ايجاد کند. از طرف ديگر، MARS به صورت خودکار مهم­ترين متغيرهای پيش­بينی کننده و همچنين تعامل ميان آنها را می­يابد. MARS همچنين وابستگی ميان پاسخ و هر پيش­بينی کننده را معين می­کند. نتيجه ابزار رگرسيون اتوماتيک، خودکار و step-wise است.

MARS، مانند بيشتر الگوريتم­های شبکه­های عصبی و درخت تصميم، تمايل به overfit شدن برای داده­های آموزش­دهنده دارد. که می­توان آنرا به دو طريق درست کرد. اول اينکه، cross validation بصورت دستی انجام شود و الگوريتم برای توليد پيش­بينی خوب روی مجوعه تست تنظيم شود. دوم اينکه، پارامترهای تنظيم متفاوتی در خود الگوريتم وجود دارد که cross validation درونی را هدايت می­کند.

2-10-4 Rule induction

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

2-10-5 K-nearest neibour and memory-based reansoning(MBR)

هنگام تلاش برای حل مسائل جديد، افراد معمولا به راه­حل های مسائل مشابه که قبلا حل شده­اند مراجعه می­کنند. K-nearest neighbor(k-NN) يک تکنيک دسته­بندی است که از نسخه­ای از اين متد استفاده می­کند. در اين روش تصميم­گيری اينکه يک مورد جديد در کدام دسته قرار گيرد با بررسی تعدادی(k) از شبيه­ترين موارد يا همسايه­ها انجام می­شود. تعداد موارد برای هر کلاس شمرده می­شوند، و مورد جديد به دسته­ای که تعداد بيشتری از همسايه­ها به آن تعلق دارند نسبت داده می‌شود.

شكل(2-9( روش MBR

محدوده همسایگی (بیستر همسایه ها در دسته X قرار گرفته اند)

اولين مورد برای بکاربردن k-NN يافتن معياری برای فاصله بين صفات در داده­ها و محاسبه آن است. در حاليکه اين عمل برای داده­های عددی آسان است، متغيرهای دسته­ای نياز به برخورد خاصی دارند. هنگامیکه فاصله بين مواد مختلف را توانستيم اندازه گيريم، می­توانيم از مجموعه مواردی که قبلا دسته­بندی شده­اند را بعنوان پايه دسته­بندی موارد جديد استفاده کنيم، فاصله همسايگی را تعيين کنيم، و تعيين کينم که خود همسايه­ها را چگونه بشماريم.

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

فهم مدلهای K-NN هنگاميکه تعداد متغيرهای پيش­بينی کننده کم است بسيار ساده است. آنها همچنين برای ساخت مدلهای شامل انواع داده غير استاندارد هستند، مانند متن بسيار مفيدند. تنها نياز برای انواع داده جديد وجود معيار مناسب است.

2-10-6 رگرسیون منطقی

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

[1]Epoch

متن کامل این پایان نامه :داده کاوی در صنعت

منبع : سایت تخصصی پایان نامه

دسته پایان نامه های رشته کامپیوتر

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *