آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
مشکل عدم دسترسی خریداران پیشین به برخی آموزش ها برطرف شد
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

شبکه عصبی مصنوعی چیست و چه کاربردی در GIS (سیستم های اطلاعات جغرافیایی/مکانی) دارد؟

Will  9 سال پیش  9 سال پیش
+8 0

 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
Will  9 سال پیش
+9 0

س : شبکه عصبی مصنوعی چیه ؟
ج : شبکه عصبی مصنوعی یا Artificial Neural Network (مخففش میشه ANN) یکی از روش های یادگیری ماشین (Machine Learning) هست که اگه اشتباه نکنم از دهه 1980 رایج شده و در حال حاضر هم بسیار بسیار کاربرد داره.

س : یادگیری ماشین یعنی چی ؟
ج : اولا ماشین در اینجا به معنی کامپیوتر هست و به هر چیزی که داخلش پردازنده کامپیوتری قرار گرفته باشه میگیم ماشین. میتونه موبایل باشه، میتونه ساعت دیجیتالی باشه، میتونه یک ربات باشه یا حتی میتونه ماشین لباسشویی، هواپیما، اتومبیل و ... باشه. یادگیری ماشین یعنی به جای اینکه به کامپیوتر یاد بدیم چطور یک مساله خاص رو حل کنه (برنامه نویسی) به کامپیوتر یاد بدیم چطور مسائل مختلف رو بفهمه و خودش راه حلشون رو پیدا کنه.
اگه یک وسیله دیجیتال که داخلش پردازنده کامپیوتری هست به نحوی برنامه ریزی شده باشه که بتونه برای مسائل مختلف در حوزه عملکردیش راه حل پیدا کنه میتونیم بگیم که اون وسیله دارای هوشمندی مصنوعی (Artificial Intelligence) هست و قابلیت یادگیری داشته.

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

س : هوشمندی یعنی چی؟ میشه یک مثال بزنید؟
ج : چرا که نه !!
فرض کنید از شما خواستند که یک برنامه کامپیوتری تحت ویندوز بنویسید که فایل عکس یک میوه رو دریافت می کنه و قراره به شما اسم میوه رو بگه. چطور می خواهید چنین برنامه ای بنویسید؟ برنامه شما باید بدون هیچ محدودیتی کار کنه. مثلا اگه از یک گلابی از بالا عکس گرفتید و به برنامه دادید بفهمه گلابیه. یا اگه توی نور روشن و تاریک عکس گرفتید فرقی برای برنامتون نداشته باشه و باز هم بفهمه که عکس گلابیه. اگه گلابی کال بود یا کج و کوله بود یا اصلا کرم زده بود باز هم بفهمه که گلابیه. نوشتن چنین برنامه ای جز با روش های هوش مصنوعی امکان پذیر نیست و اگه برنامه شما تونست این کار ها رو انجام بده برنامه شما دارای هوش مصنوعیه.

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

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

س : آیا این روش از روی مغز انسان پیاده سازی شده و برای همین اسمش رو گذاشتند شبکه عصبی؟ چون مغز از سلول های عصبی تشکیل شده این اسم رو برای این روش انتخاب کردند؟
ج : کاملا صحیحه ! مغز ما از میلیارد ها سلول عصبی تشکیل شده. زیست شناس ها اسم سلول های عصبی رو گذاشتند نورون (Neuron).

تصویر شماتیک از یک سلول عصبی یا یک Neuron

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

در مغز ما و مغز هر جاندار دیگری میلیارد ها از این اتصالات وجود داره و در حقیقت بافت مغز به صورت تصاویر بالاست.

س : تمام مواردی که مطرح کردید کاملا قابل فهم هست اما چطور میشه از ترکیب سلول های نورون با هم قابلیت یادگیری بوجود بیاد ؟ این خیلی عجیبه !
ج : دقیقا خیلی عجیب و جالبه !
اولا الگویی که در تصویر بالا سمت چپ هست رو در گوشه ذهنت ثبت کن تا بعدا یک چیز عجیب تر بگم.
همونطور که به درستی هم متوجه شدی هر سلول عصبی فقط و فقط چند تا کار ساده می کنه. اونها می تونند به هم متصل بشند یا اتصالاتشون رو قطع کنند و کار دیگه اینکه پیام الکتروشیمیایی رو از گیرنده هاشون دریافت و به خروجی هاشون ارجاع بدند. همین. اما مجموعه اونها با هم میشه یک مغز که قابلیت یادگیری داره. اینکه این قابلیت از کجا به این مجموعه اضافه میشه دقیقا موضوع صحبتمونه ! حالا فرض کن ما این راز رو فهمیدیم که چطور از اتصال چند سلول ساده هوش بوجود میاد. اگه بیاییم توی کامپیوترمون سلول ها رو به صورت مجازی بسازیم و پالس هایی بینشون متصل کنیم و به سلول های مجازی ای که ساختیم امکان قطع کردن و برقرار کردن اتصالات جدید بدیم ، آیا میتونیم نتیجه گیری کنیم که ما هم یک سیستم هوشمند ساختیم که می تونه یاد بگیره ؟

س : به نظر میاد که آره. قاعدتا باید این اتفاق بیفته ! بالاخره نگفتید این هوش از کجا میاد ؟
ج : برای اینکه بررسی کنیم این هوش از کجا میاد اجازه بده یک مثال ساده از شبیه سازی نورون ها در کامپیوتر مطرح کنیم تا کاملا متوجه بشی.
ما میدونیم که کامپیوتر ها می تونند از طریق مدارات الکتریکی که داخل پردازنده ها تعبیه شده عملیات ساده ریاضی مثل جمع کردن دو تا عدد رو انجام بدند. فرض کنید می خواهیم یک برنامه کامپیوتری بنویسیم که برای ما بتونه دو تا عدد رو به عنوان ورودی دریافت کنه و حاصل جمعشون رو به عنوان خروجی به ما ارائه بده. اما قرار نیست عملیات جمع کردن دو تا عدد به صورت معمولی (مدارات الکتریکی) که توی کامپیوترها حساب میشه محاسبه بشه بلکه قراره همون اتفاقی توی کامپیوتر بیفته که توی مغز ما اتفاق می افته. و خب بدیهیه که برنامه ما باید بتونه جمع هر دو عددی رو حساب کنه. برای این هدف کافیه الگوریتمی با ساختار و معماری تصویر زیر پیاده سازی کنیم.
دو تا متغیر (خانه حافظه) به عنوان ورودی (X و Y) و یک متغیر به عنوان خروجی (Z) در نظر می گیریم و بین اونها هم تعدادی متغیر دیگه مثل متغیر های B , C , D , E , F , G , H , I , J , K , L فرض می کنیم. این متغیر ها قرار هست با هم مرتبط باشند و ارتباط اونها هم از طریق مقادیر داخل اونهاست. هر فلشی که بین دو تا متغیر ترسیم شده از یک متغیر مبدا خارج و به یک متغیر مقصد وارد شده و قرار هست یک بلایی (محاسباتی) روی مقدار متغیر مبدا بیاره و مقدار جدید رو به متغیر مقصد برسونه.

با تشکر از PowerPoint

س : یعنی مثلا قرار هست مقدار داخل متغیر X تغییر کنه و مقدار تغییر یافته وارد متغیر B بشه ؟
ج : دقیقا ! به عنوان مثال فلشی که از متغیر X خارج شده و به متغیر B رفته یک تغییری در مقدار میده. مثلا مقدار رو ضربدر 2 می کنه و فلشی که از X خارج شده و به C رفته یک تغییر متفاوتی روی مقدار اولیه X انجام میده. مثلا مقدار اولیه X رو با عدد 5 جمع می کنه. در واقع هر ارتباط بین نورون ها (فلش ها) یک تابع دارند که به Activation Function شناخته میشن.

س : بسیار خوب ! این توابع بر چه اساسی تعیین میشن ؟
ج : کاملا تصادفی و Random !
ارتباط نورون ها می تونه هر تابع ریاضی ای باشه و در کل این توابع باعث می شن دو تا مقدار اولیه X و Y محاسبات جدیدی روشون صورت بگیره و در نهایت همه این محاسبات به نحوی با هم ترکیب می شن و مجموع اونها یک خروجی خواهد بود بنام Z که ما انتظار داریم Z برابر باشه با حاصل جمع دو مقدار X و Y اولیه.

س : اگه اینطور که شما میگید توابع به صورت رندم انتخاب میشن خیلی بعیده که مقدار Z درست حساب بشه. چطور قراره این محاسبات بتونند جمع دو تا عدد رو درست حساب کنند ؟
ج : بله. به احتمال صفر درصد مقدار Z برابر میشه با حاصل جمع دو مقدار X و Y . مثلا اگر به X مقدار 5 و به Y مقدار 3 رو بدیم ممکنه برای Z مقدار 12345 حساب بشه در صورتی که ما انتظار داشتیم مقدار Z برابر بشه با 8=3+5 .

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

س : چطور میشه یک شبکه عصبی رو Train کرد ؟
ج : خیلی ساده ! ما به شبکه عصبیمون دو تا عدد رو به عنوان ورودی معرفی می کنیم، مثلا عدد 1 و 2 و انتظار داریم در خروجی به ما عدد 3 رو بده اما مقدار خروجی یک عدد پرت خواهد بود مثلا 1000 رو به عنوان خروجی به ما میده. یعنی 997 واحد خطا در محاسباتش. حالا کافیه که ما برای توابعمون (ارتباط های بین نورون ها) یک ضریب در نظر بگیریم و ضرایب توابع رو جوری دستکاری کنیم که مقدار 997 واحد خطا داخل اونها سرشکن یا Adjust بشن. بعد از این کار اگه دوباره مقادیر 1 و 2 رو به شبکه عصبیمون بدیم دقیقا مقدار 3 رو در خروجی به ما خواهد داد.

س : سرشکن کردن این خطا چطور انجام میشه ؟
ج : روش های ریاضی زیادی برای سرشکنی خطا وجود داره. معمولا از ریاضیاتی بنام Least Square Adjustment یا سرشکنی بروش کمترین مربعات این کار صورت می گیره که خب البته ریاضیات ساده ای هم نیست.

س : یه سوال ؟ ما خطا رو برای عدد های 1 و 2 به عنوان ورودی سرشکن کردیم و خروجی برامون درست کار کرد. حالا اگه بجای 1 و 2 از دو تا عدد دیگه استفاده کنیم چی ؟ باز هم درست کار می کنه ؟
ج : خیر ! اگه بجای 1 و 2 دو تا عدد دیگه استفاده کنیم مثلا 3 و 4 مقداری که در خروجی به ما میده قطعا برابر با 7 نیست و به عنوان مثال مقدار 1000000 رو به ما میده. ما دوباره خطا رو از تفاضل 1000000 و 7 بدست میاریم که میشه 999993 و این خطا رو در بین ضرایب توابعمون سرشکن می کنیم. و این دفعه اگه 3 و 4 رو به شبکه بدیم مقدار 7 رو به ما میده.

س : اگه دوباره مقدار 1 و 2 رو امتحان کنیم چی ؟ عدد 3 رو میده ؟
ج : احتمال بسیار زیاد نه ! یک عدد پرت دیگه میده مثلا 542.

س : خب اینطور که نمیشه !
ج : چرا میشه ! ما به هر بار تعریف کردن مقدار صحیح برای شبکه عصبی و سرشکن کردن اوزان توابع میگیم یک سیکل (Cycle) یاد دادن به شبکه یا Train کردن شبکه. اگر ما شبکه عصبیمون رو به مقدار خیلی خیلی زیاد Train کنیم ، مثلا براش ده میلیون بار مثال بزنیم و خطاهای اون رو در اوزان توابع سرشکن کنیم اتفاقی که میفته اینه که شبکه ما در نهایت آرایشی به خودش میگیره که نتایج خروجی ما رو با دقت تقریبا خوبی می تونه محاسبه کنه. به عنوان مثال اگه ما بعد از ده میلیون بار Train کردن شبکه عدد 7 و 8 رو در شبکه به عنوان ورودی بدیم، مقدار خروجی برای ما عدد 15.1 میشه. درسته که کاملا مقدار 15 نیست اما میشه از خروجی براکت (مقدار صحیح) گرفت و در اون صورت خروجی ها برای ما کاملا دقیق کار می کنن.

س : چطور این اتفاق می افته ؟
ج : نمودار زیر رو ببین :

محور افقی نمودار تعداد دفعات آموزش داده شده شبکه عصبیه که از چپ به راست اضافه میشه و محور عمودی محور اعداد محاسبه شده است. خط قرمز رنگ مقدار صحیح یک مثال از جمع اعداد هست. به عنوان مثال ما می خواهیم دو عدد 500 و 300 رو با هم جمع کنیم که مقدار صحیحش برابر میشه با 800 بنابر این ما انتظار داریم در هر زمان شبکه ما مقدار 800 رو به ما بده پس خط قرمز در طول محور تعداد دفعات آموزش همواره ثابت می مونه. نقاط آبی رنگ مقادیری هستند که شبکه عصبی در هر دوره یادگیری اون رو به عنوان خروجی حساب کردند و فاصله نقطه آبی رنگ با خط قرمز نشانگر خطای محاسبات در شبکه عصبی ماست. همونطور که در نمودار بالا می بینید با اضافه شدن تعداد دفعات Train شبکه مقدار خطا کمتر و کمتر میشه اما هیچوقت به صفر نمیرسه.

س : همین !؟
ج : بله همین . به همین سادگی ! البته شبکه عصبی مثال ما خیلی خیلی خیلی کوچیکه. شبکه های عصبی میلیون ها متغیر دارند و میلیارد ها ارتباط و تابع بین اون ها وجود داره. به صورت کلی هر چی تعداد نورون های یک شبکه عصبی و ارتباط های بین نورون ها بیشتر باشه شبکه عصبی بهتر و زودتر مرحله یادگیری رو پشت سر میگذاره و با هوش تره.

در تصویر بالا یک شبکه عصبی مصنوعی رو میبینی که 8 تا ورودی و 4 تا خروجی داره. حتی این شبکه هم خیلی خیلی خیلی کوچیکه و انتظار خاصی ازش نمیره.

س : بسیار جالب ! من متوجه شدم چطور شبکه عصبی می تونه جمع دو تا عدد رو محاسبه کنه. و یا حتی ضرب دو تا عدد رو. اما هنوز نمی تونم بفهمم یک شبکه عصبی چطور میتونه گلابی رو از آناناس تشخیص بده ! یا شماره پلاک ماشین رو بفهمه ! یا صورت انسان و لبخند انسان رو تشخیص بده ! شبکه عصبی اونهارو چطور می فهمه ؟
ج : خب ! اون ها هم به همین صورت !
اجازه بده مثال گلابی رو بزنیم. قراره برنامه کامپیوتری ما یک تصویر دریافت کنه و در خروجی بگه گلابی هست یا نیست. پس ورودیش میشه متغیر هایی به تعداد پیکسل های تصویر و خروجیش میشه یک حالت True و False که True یعنی گلابی هست و False یعنی گلابی نیست. بین ورودی ها و خروجی ها هم یک عالمه متغیر با توابع ریاضی و ضرایب قرار میدیم و شبکه عصبی خیلی بزرگی تشکیل میدیم. مقادیری که در ورودی ها وجود داره مقادیر عددی درجه روشنایی و طیفی پیکسل های تصویر ورودی هست. حالا موقع Train کردن شبکه است. شروع می کنیم یک عکس گلابی به برناممون میدیم. اگه مقدار True داد عکس گلابی بعدی رو بهش میدیم و اگه False داد به نحوی اوزان توابع رو سرشکن می کنیم که مقدار True بده. این کار رو به تعداد خیلی خیلی زیاد انجام میدیم. مثلا 10000 عکس گلابی تهیه می کنیم از زاویه های مختلف ، در نور های مختلف و اندازه های مختلف و یادگیری رو تکمیل می کنیم. بعد از این کار هر کسی به برنامه ما عکس هر گلابی ای نشون بده برنامه ما به احتمال 99% درست جواب میده و هوشمند شده.
دقیقا به همین منوال یک شبکه عصبی می تونه صورت انسان رو تشخیص بده یا شماره پلاک اتومبیل ها رو و یا ... .

س : خیلی جالب ! مغز ما هم همینطور کار می کنه ؟!
ج : تا جایی که من میدونم دقیقا همینطور کار میکنه. اما مغز ما میلیارد ها میلیارد نورون با میلیارد ها میلیارد اتصال داره و از اونجایی که تعداد نورون ها و اتصالات مغز ما خیلی زیاده ما خیلی سریع یاد می گیریم.

س : ما توی مغز توابع ریاضی نداریم. چطور سرشکنی در مغز انجام میشه ؟
ج : درسته ! مغز ما اعداد رو از یک نورون به نورون دیگه انتقال نمی دن. در واقع مغز پالس های الکتروشیمیایی رو منتقل می کنند. مغز ما قابلیت جالبی داره و اون هم اینه که سلول های نورون قابلیت این رو دارند که اتصالاتشون رو دستکاری و تغییر بدند. این تغییر اتصالات بین نورون ها حکم سرشکنی و وزن دهی مجدد نورون ها در شبکه عصبی مصنوعی رو داره.

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

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

س : بله ! چطور ؟
ج : می خوام بزرگترین مغز جهان رو بهت معرفی کنم. اجازه بده قبلش ببینیم یک شبکه عصبی که قابلیت یادگیری داره چه شروطی لازم داره.
1 - اول باید دارای اجزایی به عنوان سلول باشه.
2 - باید اجزای اون بتونند از یک طریقی با هم ارتباط برقرار کنند.
3 - اجزای اون باید قابلیت تغییر شدت ارتباطات (سرشکنی) داشته باشند و ساکن نباشند.
البته به صورت تخصصی شروط دیگه ای هم هست اما سه تا شرط بالا کلی اند. هر مجموعه ای که در جهان سه شرط بالا رو داشت می تونیم بگیم یک مغز هست و قابلیت یادگیری داره و اگر Train شده باشه کاملا هوشمنده (یک جورهایی موجود زندست !)

س : به غیر از مغز جانداران چه چیز هایی این خصوصیت رو دارند ؟
ج : خیلی چیزها میشه پیدا کرد ! چطور میشه اگه من به شما بگم ریشه درختان یک جنگل به صورت الکتروشیمیایی با هم در ارتباط اند و چون قابلیت حرکت در خاک رو دارند می تونند شدت ارتباطاتشون رو تغییر بدند؟ چطور میشه اگه بگم کل اجرام سماوی در جهان نورون های یک مغز بزرک هستند و شدت گرانش اونها (نزدیکی و دوریشون) باعث انتقال پالس های گرانشی بینشون میشه و بدلیل شناور بودنشون در فضا و داشتن حرکت آزادانه می تونند الگو و آرایششون رو عوض کنند؟ مسلما مغزی باهوش تره که سرعت انتقال پالس هاش بالاتره. مغز ما پالس هاش به صورت الکتروشیمیاییه اما می دونیم پالس های گرانشی مستقل از زمان هستند و به محض بوجود اومدن یک پالس گرانشی در اون سوی جهان اون پالس به ما میرسه!
کمی به تعداد بی نهایت اجرام آسمان ها فکر کن !!! توی بخش Image سایت Google سرچ کن Universe Network ! بخشی تصاویر بدست اومده از کل کائنات ما به صورت عکس زیر هست :

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

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

+3 0
سلام استاد عزیز، من به شخصه بسیار لذت بردم و بسیار هم یاد گرفتم. اما یک سئوال: اگر این شبکه اشتباه یاد بگیره و مثلاً نمودار مجموع مربعات خطاها به صفر نزدیک بشه، چطور میشه این اشتباه رو حذف کرد و بهش از اول یاد داد؟ یعنی میشه مجموع مرابعات خطاها رو دوباره زیاد کرد تا به حالت خنگ تبدیل بشه و دوباره تربیتش کرد، یا اینکه میشه در همان نقطه سوئیچش کرد روی راه حل صحیح. (9 سال پیش)
+3 0
ممنون. برای اینکه شبکه بتونه درست یاد بگیره و یادگیریش همگرا بشه باید از یک تعداد حداقلی از نورون ها برخوردار باشه. مثلا 10000 تا و عملا با تعداد نورون بالا و سرشکن کردن به تعداد بالا سه حالت پیش میاد. یا یاد نمیگیره (یعنی به نتیجه درست همگرا نمی شه) یا به مقدار درست همگرا میشه یا همیشه یک خطای سیستماتیک با یک فاصله ثابت از مقدار صحیح داره مثلا همیشه 3 واحد بیشتر از مقدار درست رو نتیجه میده که می شه اون رو در آخر از نتیجه کم کرد. برای اینکه خنگ بشه هم کافیه وزن دهی هارو رندم کنیم . (9 سال پیش)
+1 0
خیلی ممنون استاد هر وقت فکر می کنم که در مورد قابلیت ها و قدرت GIS به یک شناخت نصبی رسیدم باز با یک قابلیت جدیدی مواجه می شم که شگفت زده ام می کنه. (9 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .