هوش مصنوعی -الگوریتم مدل فضای برداری 4- ابراهیم خلیلی

هوش مصنوعی -الگوریتم مدل فضای برداری 4- ابراهیم خلیلی هوش مصنوعی -الگوریتم مدل فضای برداری 4- ابراهیم خلیلی

هوش مصنوعی -الگوریتم مدل فضای برداری 4- ابراهیم خلیلی

هوش مصنوعی -الگوریتم مدل فضای برداری 4- ابراهیم خلیلی

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

در جلسات قبل، مدل سازی های مختلفی رو بررسی کردیم که به وسیله اونها میشد نزدیکی مفاهیم و کلمات رو برای یک ماشین تعریف کرد و به نوعی، به ماشین بفهونیم که کلمات و مفاهیم چه رابطه ای با هم دارند؛ تا در نهایت، ماشین بتونه زبان، مفاهیم و کلمات ما را بفهمه. این امر باعث میشه تا ما هنگام کار کردن با ماشین های هوشمند، خیلی ساده بتونیم به خروجی مورد نظرمون برسیم و کار کاربران رو با این ماشین ها آسون می کنه. همچنین در اون جلسات، به برخی از کاربردهای الگوریتم مدل فضای برداری ، مانند چت بات ها اشاره ای داشتیم. در این جلسه هم ابتدا گریزی میزنیم به یکی از دیگر کاربردهای مهم این الگوریتم و بعد میریم سراغ ادامه مباحث مدل سازی زبان طبیعی در فضای برداری.

کاربرد الگوریتم در نمایه سازی و بازیابی اطلاعات  

از کاربردهای مهم الگوریتم مدل فضای برداری ، در نمایه سازی و بازیابی اطلاعات است . در گذشته و قبل از به وجود اومدن شبکه اینترنت، کتاب ها، منبع اصلی اطلاعات بودند. در اون زمان، برای دسترسی و طبقه بندی اطلاعات، ابتدا کتاب ها را در موضوعات مختلف دسته بندی می‌کردند. همچنین، در انتهای کتب، بخشی به اسم نمایه نامه وجود داشت که کلیدواژه های مهم کتاب را به همراه شماره صفحه آن نوشته میشد. کتاب هایی به نام نمایه نامه ها هم وجود داشت که در اون برای هر موضوع مختلف، کتاب های زیادی به همراه شماره صفحه آن معرفی میشد و هر کس می خواست در یک موضوع خاص اطلاعاتی کسب کنه، باید اول به این نمایه نامه ها مراجعه می کرد تا بدونه در کدوم کتاب، به اون موضوع پرداخت شده است. به فرایند نوشتن و ایجاد این نمایه نامه ها، نمایه سازی یا indexing گفته میشد و به عمل پیدا کردن اطلاعات، بازیابی اطلاعات اتلاق می گردید. اما با ظهور اینترنت، خیلی از مشکلات ما حل شده، و دیگه برای پیدا کردن اطلاعات در مورد یک موضوع، لازم نیست لای صفحات کتاب ها گم بشیم. اما جالبه بدونید که در ایجاد اینترنت و موتورهای جستجو، همین ساختار نمایه سازی مورد تقلید قرار گرفته و کلمات و مفاهیم، این بار در شبکه جهانی اینترنت نمایه سازی شده اند. اما، برخلاف گذشته، این بار نمایه سازی به صورت دستی امکان پذیر نیست؛ چون امروزه با توجه به سرعت رشد علم و فناوری، با مقوله ای به نام انفجار اطلاعات روبرو هستیم. انفجار اطلاعات به این دلیل رخ داده که هر روزه حجم بسیار زیادی از اطلاعات وارد اینترنت و رسانه ها میشه، به همین دلیل نمایه سازی این اطلاعات کار بسیار دشواری هست و با روش های سنتی، تقریبا غیر ممکن. اما خوشبختانه برنامه نویسی و الگوریتم هایی مانند الگوریتم مدل فضای برداری به کمک ما اومده. این الگوریتم از طریق مدل سازی تک تک مفاهیم در فضاهای برداری n  بعدی، نزدیکی و دوری این مفاهیم رو به عدد تبدیل می کنه و با این اعداد مقایسه می کنه که مفاهیم و کلمات چه ربطی با همدیگر دارند.

خب، در این جلسه می خواهیم یکی دیگه روش های مدل سازی مفاهیم رو در فضای برداری مورد مطالعه قرار بدیم. در این روش، از فرمول قضیه فاصله اقلیدسی برای بررسی روابط معنایی مفاهیم استفاده می گردد. 

فاصله اقلیدسی

فاصله اقلیدسی، به مبحثی در هندسه گفته می شود که در آن فاصله دو نقطه از هم را به وسیله قانون فیثاغورس محاسبه می کنند . اگر A نقطه ای به مختصات (x_1,y_1)   و B  نقطه ای به مختصات  (x_2,y_2)  باشد، بنا به قضیه فاصله اقلیدسی داریم : 

این قضیه، نه تنها در فضاهای دو بعدی، بلکه در فضاهای n   بعدی نیز صحیح می باشد. به این صورت که اگر در مختصات دکارتی n بعدی، اگر p  نقطه ای با مختصات  (p_1,p_2,…,p_n    و q  نقطه ای با مختصات    (q_1,q_2,…,q_n ) باشد، آنگاه فاصله دو نقطه p و q در این فضای برابر است با :

این قضیه در مدل سازی ما در الگوریتم مدل فضای برداری کاربرد داره که در بخش بعدی به اون اشاره می کنیم .

مدل سازی مفاهیم توسط فاصله اقلیدسی 

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

حالا، برای محاسبه فاصله این دو بردار، اونها رو یک نقطه در نظر میگیریم و سپس به استفاده از قضیه فاصله اقلیدسی، فاصله این دو نقطه رو به شرح زیر حساب می کنیم : 

که با جایگذاری مختصات نقاط در فرمول به دست می آید :

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

 

بنابراین، هر ردیف جدول را یک نقطه در میدان مختصات سه بعدی تصور کرده و فاصله آن ها را با همدیگر بدست می آوریم : 

خب، اعداد به دست آمده نشان دهنده این است که دو موضوع نوشیدنی و غذا به هم دیگر ربط بیشتری دارند. این نتیجه گیری برای هوش انسان، مطلب ساده و بدیهی است اما برای ماشین و هوش مصنوعی، توسط این محاسبات و اعداد استنباط میشه. 

معایب مدل سازی مفاهیم توسط روش فاصله اقلیدسی

مدل سازی توسط فاصله اقلیدسی، با وجود سادگی، در مواردی از مدل سازی ها کاربرد ندارد و نتیجه غلطی به ما میدهد . برای درک این موضوع، سه بردار  و   در شکل زیر در نظر بگیرید که با بردار q  مقایسه می شوند. همانطور که میبینید، اگر معیار مقایسه نزدیکی و دوری مفاهیم از همدیگر رو ، فاصله اقلیدسی در نظر بگیریم، پس دو بردار q  و   بیشترین فاصله رو از همدیگر دارند ؛ اما جالبه که بدونید این دو بردار متعلق به دو مفهومی است که نسبت به مفاهیم دو بردار دیگه، بیشتر به هم نزدیک تر هستند. پس استفاده از این روش، در برخی از موارد باعث میشه که مدل سازیمون کامل نباشه.  

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

منابع 

https://www.aparat.com/v/1sQnA?playlist=657059

https://www.youtube.com/watch?v=TjIrEYWlonE

https://medium.com/analytics-vidhya/role-of-distance-metrics-in-machine-learning-e43391a6bf2e

مقاله هشتم هوش مصنوعی

دوستان عزیزم؛ برای ارتباط با برترها و رزرو پشتیبان ویژه پیج کانون برترها را  دنبال کنید.

همچنین میتوانید با شماره 0218451 داخلی 3123 تماس بگیرید.


Menu