PDA

مشاهده نسخه کامل : آموزش يادگيري اعداد با شبكه ي عصبي



ravegoat
08-09-11, 17:18
يكي از كاربرد هاي جالب شبكه ي عصبي تشخيص دست خط (OCR) است. ما مي توانيم با ارايه ي نمونه هايي از دست خط هاي مختلف به همراه متن OCR مربوط به هر يك از آن دست خط ها، شبكه را آموزش دهيم (يادگيري Supervised).

در اين تاپيك سورس VB.NET 2008 اي قرار داده شده كه رايانه را قادر مي سازد كه خواندن اعداد 0 تا 9 را فرا بگيرد. كاربر مي تواند با تعيين يكي از اعداد 0 تا 9 توسط LED ها و ComboBox و فشردن دكمه ي Learn ، آموزش را شروع كند. هرچه تعداد مراحل اجراي فرمان Learn بيش تر باشد، همگرايي شبكه بهتر خواهد بود.
پس از آموزش شبكه مي توان عددي دلخواه را با LED ها تعيين كرد و با كليك كردن روي دكمه ي Think شبكه بر اساس تجربه هاي پيشين، سعي مي كند عدد صحيح را در ComboBox مشخص كند.

در واقع در اين سورس، LED ها نقش پيكسل را ايفا مي كنند. از طرفي چون يك دست خط تصويري از تعداد زيادي پيكسل تشكيل شده، مي توان با تعميم اين سورس و اندكي تغيير يك نرم افزار OCR ساده را طراحي كرد.
بايد توجه داشت كه شبكه ي مورد استفاده در اين برنامه شبكه ي Perceptron بوده كه تابع تحريك آن Sigmoid Bipolar است. در نتيجه سرعت همگرايي شبكه براي كاربرد هاي OCR تقريبا" پايين خواهد بود. همچنين از به كارگيري Threshold در نرون ها پرهيز شده است.


5816



در صورت داشتن هرگونه سوال در مورد سورس برنامه بنده در خدمتم.
آرمين :love:

ravegoat
02-02-12, 10:20
سورس MATLAB این برنامه نیز پیوست شد.

برنامه در محیط GUIDE نوشته نشده بلکه شامل چهار عدد MFile است:

learning برای یادگیری شبکه
resetNet برای ریست کردن شبکه
testNet برای تست شبکه
thinking تابع تفکر شبکه