جستجو

آرشيو مطالب
👈نویسنده : ملیحه باغبان

امروزه متن کاوی شتاب بیشتری به دست آورده است و در تجزیه و تحلیل در سراسر جهان مورد استفاده قرار می گیرد.

تحلیل احساسات- پیش بینی بازار سهام و سایر کاربردهای مالی- نفوذ مشتری- تحلیل اخبار- تحلیل شبکه های اجتماعی- خدمات مشتری و میز راهنمایی

شکل زیر پیش پردازش متن معمولی:

شکل زیر:سیستم متن کاوی عمومی

مراحل: 1) پیش پردازش متن - 2) پردازش متن (کشف دانش- یافتن معانی پنهان از متن) - 3) تحلیل متن

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

فنون به کار رفته در تحلیل متن: استخراج اطلاعات-استخراج مفاهیم-دسته بندی-خوشه بندی-خلاصه سازی- مصور سازی- کشف پیوندها (concept linkage)-(topic tracking)

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

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

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

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

به دست آوردن قواعد انجمنی: ماینینگ قانون انجمن (ARM) تکنیکی است که برای کشف روابط بین مجموعه بزرگی از متغیرها در یک مجموعه داده استفاده می‌شود. که در صنعت بیشترین کاربرد را دارد.

topic tracking: مکانیزم سیستم ردیابی موضوع با نگهداری از پروفایل های کاربر و بر اساس اسنادی که کاربر مشاهده می کند، سایر اسناد مورد علاقه کاربر را حدس می زند. یاهو (www.alerts.yahoo.com) یک ابزار رایگان ردیابی موضوع را ارائه می دهد که به کاربران اجازه می دهد کلمات کلیدی را انتخاب کنند و در صورت وجود اخبار مربوط به آن موضوعات به آنها اطلاع می دهد.برخی از ابزارهای متن کاوی بهبودیافته به کاربران اجازه می‌دهند دسته‌های خاص مورد علاقه خود را انتخاب کنند یا نرم‌افزار به طور معمول حتی می‌تواند نگرانی کاربر را بر اساس تاریخچه خواندن و اطلاعات کلیک او استنباط کند.

concept linkage: ابزارهای پیوند مفهومی، اسناد مرتبط را با شناسایی ایده مشترکشان پیوند می دهند و به کاربران کمک می‌کنند اطلاعاتی را پیدا کنند که شاید با استفاده از روش‌های جستجوی مرسوم نمی‌توانستند آن‌ها را پیدا کنند. به جای جستجوی اطلاعات، مرور برای اطلاعات را ترویج می کند. پیوند مفهومی ایده ارزشمندی در متن کاوی است، به ویژه در زمینه های زیست پزشکی که مطالعات زیادی در آن انجام شده است که خواندن همه مطالب برای محققان غیرممکن است. در حالت ایده‌آل، نرم‌افزار پیوند مفهومی می‌تواند پیوندهای بین بیماری‌ها و درمان‌ها را در زمانی که انسان نمی‌تواند شناسایی کند. به عنوان مثال، یک راه حل نرم افزار متن کاوی ممکن است به راحتی پیوند بین موضوعات X و Y و Y و Z را که روابط شناخته شده ای هستند شناسایی کند. اما ابزار متن کاوی همچنین می‌تواند یک پیوند بالقوه بین X و Z را شناسایی کند، چیزی که یک محقق انسانی به دلیل حجم زیادی از اطلاعاتی که برای ایجاد ارتباط باید مرتب‌سازی کند، هنوز با آن مواجه نشده است.

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

تکنیک های بصری سازی: بررسی نقطه ای- بصری سازی فضایی- نمایش خوشه ای، نمایش شبکه ای و ...

اهداف بصری سازی: کشف داده ها- تایید فرضیه ها- بازنمون بصری

بصری سازی اطلاعات و ارائه آن به کاربر می تواند کمک کند: 

1 .کاهش میزان وقت برای درک نتایج جستجو و خوشه های احتمالی اطلاعات مرتبط. 

2.اطلاعات حیاتی که از روابط بین آیتم بیرون می آید . 

3 .انجام اقدامات ساده است که توابع جستجو اطلاعات پیچیده را تولید می کند.

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

پردازش می تواند در چهار سطح صورت پذیرد:

1. سطح حروف و روابط بین آن ها

2.سطح واژگان از طریق matching (تطبیق واژه)

3.سطح اصطلاحات و بدست آوردن رابطه ها از طریق تزاروس ها

4. سطح مفهوم: پیوند متن به آنتولوژی منتسب به آن

لینک منابع: منبع اول، منبع دوم، منبع سوم

Feldman, Ronen, and James Sanger. 2007. The Text Mining Handbook: Advanced Approaches in Analyzing Unstructured Data. Cambridge University Press.

Thilagavathi, K., & Shanmuga, V. (2014). A survey on text mining techniques. International Journal of Advanced Research in Computer Science and Robotics, ISSN2320(7345), 41-50.

مدرس: ملیحه باغبان، دانشجوی دکتری علم اطلاعات ودانش شناسی/ بازیابی اطلاعات و دانش

این مبحث برای دانشجویان علم اطلاعات و دانش شناسی گردآوری و ارائه می گردد


دوشنبه 15 آذر 1400
ادامه مطلب
👈نویسنده : ملیحه باغبان

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

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

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

تکنیک های نظارت شده و بدون نظارت (supervised and unsupervised techniques)

تکنیک های نظارت شده یا پیش بینی. روش‌های نظارت شده روش‌هایی هستند که سعی می‌کنند رابطه بین ویژگی‌های ورودی (که گاهی متغیرهای مستقل نامیده می‌شوند) و یک ویژگی هدف (گاهی اوقات به عنوان متغیر وابسته شناخته می‌شوند) را کشف کنند. رابطه کشف شده در ساختاری که به عنوان مدل نامیده می شود نشان داده می شود.

معمولاً مدل‌ها پدیده‌هایی را توصیف و توضیح می‌دهند که در مجموعه داده پنهان هستند و می‌توانند برای پیش‌بینی مقدار ویژگی هدف با دانستن مقادیر ویژگی‌های ورودی استفاده شوند. روش‌های نظارت شده را می‌توان در حوزه‌های مختلفی مانند بازاریابی، مالی و تولید پیاده‌سازی کرد.

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

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

نکته: این مدل ماشین با استفاده از داده های برچسب گذاری شده و داشتن جواب های درست یاد می گیرند که در لاتین به آن Supervised learning می گویند.

مثال های مختلفی از یادگیری ماشین با نظارت:

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

نمونه دیگری از این دست یادگیری می توان زد پیشبینی مقدار عددی می باشد، به عنوان مثال قیمت یک ماشین با مجموعه ویژگی هایی مثل (مسافت طی شده، برند، سن ماشین و ...). از این دست مثال ها با عنوان regression نامیده می شوند.

برای آموزش سیستم، شما باید تعداد زیادی نمونه یا به عبارتی داده، در اختیار سیستم بگذارید که شامل label و predictor ها باشد.

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

طبقه بندی - Classification

طبقه بندی به جای تخمین کمیت های پیوسته، با تخصیص مشاهدات به دسته های مجزا سر و کار دارد. در ساده ترین حالت، دو دسته ممکن وجود دارد. این مورد به عنوان طبقه بندی باینری شناخته می شود. بسیاری از سوالات مهم را می توان در قالب طبقه بندی باینری قرار داد. آیا یک مشتری معین ما را به خاطر یک رقیب ترک می کند؟

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

به عنوان مثال، یک راه حل ساده برای مشکل تشخیص دست خط، آموزش یک دسته از طبقه بندی کننده های باینری است: یک آشکارساز 0، یک آشکارساز 1، یک آشکارساز 2، و غیره، که اطمینان آنها را به دست می دهد که تصویر مربوط به آنهاست. رقم مربوطه طبقه‌بندی‌کننده فقط رقمی را که طبقه‌بندی‌کننده آن بالاترین اطمینان را دارد، خروجی می‌دهد.

طبقه بندی نوعی الگوریتم یادگیری ماشینی تحت نظارت است. برای هر ورودی داده شده، الگوریتم های طبقه بندی به پیش بینی کلاس متغیر خروجی کمک می کنند. 

برخی از پرکاربردترین الگوریتم های طبقه بندی

نزدیکترین همسایه K—Nearest Neighbor

درختان تصمیم Decision Trees

بیز ساده Naive Bayes

ماشین‌های بردار پشتیبانی Support Vector Machines

نزدیکترین همسایه ها:

فرض کنید شما یک فروشگاهِ مواد غذایی و دو دسته مشتری دارید، مشتریانِ دسته اول، کسانی هستند که بیشتر از ۱۰۰ هزار تومان در هر بار مراجعه از شما خریداری می‌کنند و دسته‌ی دوم مشتریانی هستند که در هر مراجعه معمولاً کمتر از ۱۰ هزار تومان خرید می‌کنند. شما که فروشنده‌ی با تجربه‌ای هستید، به سبب چند سالی که در این مغازه فعالیت دارید می‌دانید که مشتریان دسته‌ی اول خانم‌هایی هستند که سن بالای ۴۰ سال دارند و با اتومبیل به فروشگاه شما می‌آیند (مثلاً در مراجعه‌ی آن‌ها به این الگو دقت کرده‌اید). و دسته‌ی دوم، یعنی همان مشتریانی که کمتر از ۱۰ هزار تومان از شما خریداری می کنند. معمولاً آقایانی هستند که سن زیر ۲۵ سال دارند و بدون اتومبیل به فروشگاه می‌آیند. حال فرض کنید، یک مشتری جدید به فروشگاه آمده است. این شخص یک خانم ۴۵ ساله است که با اتومبیلِ خود به فروشگاه آمده. شما این مشتری جدید را در کدام دسته (با توجه به مشتریان قبلی) قرار میدهید؟ انتظار دارید که این شخص چقدر از شما خرید کند؟قطعاً بدون فکر کردن، دسته‌ی اول را برای پاسخ به سوالِ بالا انتخاب می‌کنید. دلیل آن بسیار ساده است. این خانم ۴۵ ساله با اتومبیل، بسیار نزدیک‌تر به مشتریانِ دسته‌ی اول است تا مشتریانِ دسته‌ی دوم (دسته‌ی دوم، آقایانی بودند که زیر ۲۵ سال سن داشتند و بدون اتومبیل به فروشگاه می‌آمدند). واژه نزدیک‌تر، در واقع پایه‌ی عملیاتِ طبقه‌بندیِ K نزدیک‌ترین همسایه می‌باشد. در این الگوریتم، هر کدام از نمونه‌های جدید (مثلاً مشتری‌های جدید) با تمامی نمونه‌های قبلی مقایسه می‌شوند و به هر کدام از نمونه‌های قبلی که نزدیک‌تر باشند، به آن دسته از نمونه‌ها تعلق می گیرند. این دقیقاً همان کاری است که در مثال اول توسط فروشنده‌ی با تجربه‌ی فروشگاه مواد غذایی انجام شد.

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

اجزای اصلی درخت تصمیم

برگ (Leaf Nodes): گره­‌هایی که تقسیم‌­های متوالی در آنجا پایان می‌­یابد. برگ‌­ها با یک کلاس مشخص می­‌شوند.

ریشه (Root Node): منظور از ریشه، گره آغازین درخت است.

شاخه (Branches): در هر گره داخلی به تعداد جواب‌­های ممکن شاخه ایجاد می‌­شود.

بیزساده: فرض کنید در حال قدم‌زدن در یک پارک هستید و جسمی قرمز در مقابل خود مشاهده می‌کنید. این جسم قرمز می‌تواند چوب‌دستی، خرگوش یا توپ باشد. شما قطعاً فرض می‌کنید که آن جسم یک توپ است. چرا؟بیایید تصور کنیم که در حال ساخت ماشینی هستیم که وظیفه‌اش طبقه‌بندی یک جسم میان سه گروه چوب‌دستی، توپ و خرگوش است. در ابتدا احتمالاً به این فکر می‌کنیم که ماشینی که می‌سازیم بتواند ویژگی‌های جسم را شناسایی کند و سپس آن را با یکی از گروه‌هایی که می‌خواهیم در آن‌ها طبقه‌بندی کنیم مطابقت دهد.به‌طوری که مثلاً اگر جسم دایره‌ای شکل باشد، پیش‌بینی کند که یک توپ است یا اگر آن جسم یک موجود زنده باشد، آن‌گاه پیش‌بینی ماشین ما خرگوش باشد، یا در مثالی که داشتیم، اگر جسم قرمز باشد، به‌احتمال زیاد آن را توپ در نظر بگیرد. چرا؟ زیرا از دوره‌ی کودکی ما توپ‌های قرمز زیادی دیده‌ایم، اما یک خرگوش قرمز یا یک چوب‌دستی قرمز در نظر ما بسیار بعید است. بنابراین در مثالی که داریم ویژگی ما رنگ قرمز است که آن را با هر سه گروه مطابقت می‌دهیم و می‌بینیم که احتمال اینکه این جسم یک توپ باشد خیلی بیشتر است.این تعریف ساده الگوریتم بیز ساده (Naïve Bayes)‌ است.الگوریتم بیز ساده (Naive Bayes) بیشتر در تجزیه‌وتحلیل احساسات (Sentiment Analysis)، فیلتر هرزنامه‌ها (Spam Filtering)، سیستم‌های توصیه‌گر (Recommendation Systems) و غیره استفاده می‌شود. پیاده‌سازی آن سریع و آسان است، اما بزرگ‌ترین عیب آن نیاز به مستقل‌بودن پیش‌بینی‌کننده‌ها یا همان ویژگی‌هاست؛ در دنیای واقعی ویژگی‌ها معمولاً به‌هم‌وابسته هستند که این عملکرد طبقه‌بندی‌کننده ضعیف می‌کند.

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

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

رویکرد دوم: من می‌توانم از یک الگوریتم یادگیری ماشین نظارت شده استفاده کنم.

قدم اول: به تعدادی ایمیل نیاز دارم.(هرچه بیشتر بهتر)

قدم دوم: عنوان ایمیل‌های قدم اول رو می‌خوانم و آن‌ها را در یکی از دو گروه «شکایت است» و یا «شکایت نیست» طبقه‌بندی می‌کنم. اینجوری می‌توانم ایمیل‌ها را برچسب ‌گذاری کنم.

قدم سوم: روی این مجموعه داده، مدلی را آموزش می‌دهم.

قدم چهارم: کیفیت یا صحت پیش‌بینی های مدل آموزش داده‌شده را ارزیابی می‌کنم.(با استفاده از روش Cross Validation)

قدم پنجم: از این مدل برای پیش‌بینی این که ایمیل‌های جدیدی که رسیده‌اند، شکایت هستند یا نه، استفاده می‌کنم.

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

موارد کاربرد یادگیری با نظارت Supervised ML به شرح زیر است:

بیوانفورماتیک (Bioinformatics)

ساختار کمی (Quantitative Structure)

بازاریابی بانک اطلاعاتی (Database Marketing)

تشخیص دست خط(Handwriting Recognition)

بازیابی اطلاعات (Information Retrieval)

یادگیری درجه‌­‌بندی (Learning to Rank)

استخراج اطلاعات (Information Extraction)

تشخیص اشیاء در دید رایانه‌‌­ای (Object Recognition In Computer Vision)

تشخیص نوری کاراکترها (Optical Character Recognition)

تشخیص اسپم (Spam Detection)

تشخیص الگو (Pattern Recognition)

و ….

لینک منابع: منبع اول، منبع دوم، منبع سوم, منبع چهارم، منبع پنجم، منبع ششم، منبع هفتم، منبع هشتم، منبع نهم، منبع دهم، منبع یازدهم، منبع دوازدهم، منبع سیزدهم

Martín, L., Baena, L., Garach, L., López, G., & De Oña, J. (2014). Using data mining techniques to road safety improvement in Spanish roads. Procedia-social and behavioral sciences160, 607-614.

مدرس: ملیحه باغبان، دانشجوی دکتری علم اطلاعات ودانش شناسی/ بازیابی اطلاعات و دانش

این مبحث برای دانشجویان علم اطلاعات و دانش شناسی گردآوری و ارائه می گردد


چهارشنبه 19 آبان 1400
ادامه مطلب
👈نویسنده : ملیحه باغبان

یادگیری بی نظارت Unsupervised ML چیست؟

در یادگیری نظارت نشده (Unsupervised ML)، الگوریتم بدون دادن یک خروجی واضح و روشن، تنها در داده‌­های ورودی، به دنبال الگوها، شباهت‌­ها و تفاوت‌­‌ها می‌­گردد. مانند بررسی دیتای دموگرافیکِ (جمعیت شناختی) مشتری‌­ها مثل سن، جنسیت و موقعیت مکانی و… تا الگوها را بشناسد.

چه زمانی از یادگیری نظارت نشده Unsupervised ML استفاده کنیم؟

از یادگیری بی نظارت Unsupervised ML، زمانی که نمی‌­دانید چطور دیتا را طبقه­‌بندی کنید و می‌­خواهید الگوریتم برای شما الگوها و دسته­‌بندی دیتا را انجام دهد، می­‌‌توانید استفاده کنید. البته ماشین باید در ابتدا برنامه‌­نویسی شود که چطور از دیتا یاد بگیرد.

مثال یادگیری بی نظارت

به عنوان مثال تصاویر موز و سیب را به همراه دیتای اولیه و ویژگی­‌هایشان به ماشین می­‌دهیم درحالیکه برچسب‌­گذاری نشده‌­اند و ماشین هم تا به حال این تصاویر را ندیده است. در این حالت ماشین بر اساس خصوصیات و شباهت‌­هایی که تصاویر با هم دارند، خودش سیب­‌ها و موزها را دسته بندی می­‌کند.

نکته: این مدل ماشین بدون استفاده از داده های برچسب گذاری شده و بدون هیچ معلمی می آموزد که در لاتین به آن Unsupervised Learning می گویند.

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

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

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

فرض کنید که خروجی ماشین شما اینگونه است. 40 درصد ملاقات کنندگان شما مردهایی عاشق کتاب های علمی تخیلی هستند و عموما پست های بلاگ شما را غروب ها می خوانند. درحالی که 20 درصد آن ها جوان هایی علاقه مند به کتاب های داستانی و رمان هستند و بلاگ شما را تنها آخر هفته ها ملاقات می کنند. حتی شما می توانید با استفاده از hierarchical clustering algorithm در هر گروه آن ها را به گروه های کوچک تری تقسیم کنید و این کار ممکن به شما کمک بیشتری کند تا به هدفتان برسید.

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

خوشه ­بندی (Clustering) در موضوعاتی استفاده می‌­شود که شما می­‌خواهید گروه­‌های اصلی در داده­‌ها را کشف کنید. مثل گروه­‌بندی مشتری­‌ها بر اساس رفتار خریدشان. کلاسترینگ، اشیاء را براساس ویژگی‌هایی که با هم دارند گروه‌بندی می‌کند. هدف اصلی در خوشه بندی تقسیم بندی اشیاء به گونه‌ای است که بیشترین شباهت در یک گروه و بیشترین تفاوت با اشیاء گروه‌های دیگر را دارا ‌باشد. بعنوان تعریف ساده‌تر می‌توان گفت که اشیاء در خوشه مخصوص خود دارای بیشترین شباهت و در برابر اشیای متعلق به خوشه‌های دیگر دارای بیشترین تفاوت هستند.

انواع الگوریتم های خوشه بندی

خوشه بندی مبتنی بر پارتیشن بندی (بخش بندی)

خوشه بندی سلسله مراتبی

خوشه بندی مبتنی بر مدل

خوشه بندی مبتنی بر تراکم

خوشه بندی فازی

خوشه بندی شبکه ­ای (Grid methods)

۱- خوشه بندی مبتنی بر پارتیشن بندی (بخش بندی)

در این نوع خوشه بندی ، الگوریتم، داده ها را به زیرمجموعه ای از k گروه، تقسیم بندی می کند. این k گروه یا خوشه باید از قبل تعریف شده باشند. این الگوریتم، داده ها را بر اساس این دو شرط تقسیم بندی می کند – اول، هر گروه باید حداقل یک نقطه (عضو) داشته باشد. دوم اینکه هر نقطه باید تنها به یک گروه تعلق داشته باشد. خوشه بندیK-Means رایج ترین نوع روش خوشه بندی مبتنی بر پارتیشن بندی است.

خوشه‌‌بندی کا-مینز نوعی از یادگیری بدون نظارت است و زمانی استفاده می‌‌شود که داده‌‌هایی بدون برچسب در اختیار داشته باشیم. هدف این خوشه‌‌بندی، پیداکردن بهترین گروه در داده است و k در آن تعداد خوشه‌‌ها را تعیین می‌‌کند. داده‌‌ها بر اساس میزان شباهت در خوشه‌‌ها قرار می‌‌گیرد. به صورتی که در نهایت داده‌‌ها با بیشترین شباهت در یک گروه قرار می‌‌گیرند و کمترین شباهت را با سایر گروه‌‌ها دارند.

همان‌‌طور که از اسم آن مشخص است k تعداد خوشه‌‌ها و means میانگین‌‌گیری را مشخص می‌‌کند. خوشه‌‌ها دارای یکسری ویژگی هستند. ویژگی اول: تمامی داده‌‌های درون یک خوشه باید بیشترین شباهت را با هم داشته باشند. ویژگی دوم: داده‌‌ها در خوشه‌‌های مختلف باید بیشترین تفاوت را باهم داشته باشند.

۲- خوشه بندی سلسله مراتبی

ایده اصلی این نوع خوشه بندی ، ایجاد سلسله ای از خوشه ها است. برخلاف خوشه بندی مبتنی بر پارتیشن بندی ، نیازی نیست داده ها از پیش تعریف شده باشند. دو روش برای انجام خوشه بندی سلسله مراتبی وجود دارد. رویکرد اول، رویکرد پایین به بالا است که به روش Agglomerative ( تجمعی ) نیز شناخته می شود و رویکرد دوم روش Divisive ( تجزیه ای ) است که سلسله ای از خوشه ها را در یک رویکرد بالا به پایین تجزیه می کند. در نتیجه این نوع خوشه بندی ، ما یک نمودار درختی به نام Dendogram به دست می آوریم.

۳- خوشه بندی مبتنی بر تراکم

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

۴- خوشه بندی مبتنی بر مدل

در این نوع روش خوشه بندی ، داده های مشاهده شده از یک توزیع متشکل از ترکیبی از دو یا چند مولفه خوشه حاصل می شود. علاوه بر این، هر خوشه مولفه، یک تابع چگالی دارد که دارای یک احتمال یا وزن در این ترکیب است.

۵- خوشه بندی فازی

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

6-خوشه بندی شبکه ای

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

کاربرد های خوشه بندی

۱- الگوریتم خوشه بندی برای شناسایی سلول های سرطانی

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

۲- الگوریتم خوشه بندی در موتورهای جستجو

هنگام جستجو برای موارد خاص در گوگل ، شما ترکیبی از نتایج مشابه با سوال اصلی خود را دریافت می کنید. این نتیجه خوشه بندی است که اشیاء (نتایج جستجو) مشابه را در یک خوشه مجزا گروه بندی می کند و آن را به شما ارائه می کند. داده ها، براساس نزدیکترین شیء مشابه، به یک خوشه مجزا اختصاص داده می شوند و مجموعه ای جامع از نتایج را به کاربر ارائه می دهند.

۳- الگوریتم خوشه بندی در شبکه های بی سیم

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

۴- خوشه بندی برای دسته بندی مشتری

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

5-بازاریابی: خوشه ­بندی می­تواند در زمینه ­های مختلف بازاریابی کاربرد داشته باشد به طور مثال از خوشه­ بندی برای توصیف و کشف رفتار مشتری، توانایی خرید مشتری و برای انجام تبلیغات بهینه از اهداف بازاریابی می­توان استفاده کرد.

6-زیست شناسی: یکی دیگر از توانایی­ های خوشه­ بندی این است که آن را برای طبقه بندی در میان گونه ­های مختلف گیاهان و حیوانات استفاده کرد و این خود به زیست شناسان بسیار کمک می­کند.

7-کتابخانه­ ها: در خوشه بندی کتاب های مختلف بر اساس موضوعات و اطلاعات استفاده می شود و بسیار کار جست و جوی کتاب را راحت تر کرده است.

8-بیمه: برای تأیید مشتریان ، بیمه نامه های آنها و شناسایی کلاهبرداری ها به کار می رود.

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

10-مطالعات زلزله: با بررسی مناطق زلزله زده و بررسی وضعیت صفحات زمین می­توان مناطق خطرناک را تعیین کرد.

11-تقسیم بندی بازار: بخش بندي بازار، هدف گيري شرکت ها را به سمت بازارهاي مشخص تري هدايت مي کنند تا ارتباط موثرتري با مشتريان صورت پذيرد. که بدین وسیله بتوانند زمينه تصميم گيري سريع و منطبق با واقعيت را فراهم کند.

12-تحلیل شبکه اجتماعی: تشخیص انجمن­ها و خوشه­ بندی گراف در یک شبکه اجتماعی به ساده سازی و تحلیل بهتر آن کمک می‌کند. انجمنها گروه‌ هایی از نودهای شبکه هستند که ارتباط تنگاتنگی با هم دارند و با نودهای بیرون از شبکه ارتباط نسبتا کمی دارند. بعنوان مثال اگر ارتباطات اجتماعی افراد را در یک شبکه اجتماعی داشته باشیم دوستان هم کلاس در یک دانشکده از یک دانشگاه ممکن است تشکیل یک گروه با ارتباطات تنگاتنگ بدهند و در حقیقت یک انجمن در این شبکه اجتماعی باشند.

13-سیستم توصیه گر: سیستم‌های توصیه شده به منظور توصیف ایتم جدید بر اساس سلیقه کاربر طراحی شده‌اند. با استفاده از الگوریتم ­های خوشه ­بندی می­توان سیستم­ های پیشنهاد دهنده ­ای طراحی کرد که بر اساس سلیقه و ذائقه مخاطب به او کالای مورد نیاز، فیلم و یا موزیک و غیره پیشنهاد دهند. بر اساس جست و جوهای قبلی یا برای پیش‌بینی ترجیحات کاربر بر اساس ترجیحات دیگر کاربران در خوشه کاربر استفاده می‌کنند.

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

15-بخش بندی تصویر: خوشه بندی می‌تواند برای تقسیم یک تصویر دیجیتال به مناطق مشخص برای تشخیص مرز یا تشخیص شی مورد استفاده قرار گیرد.

تفاوت دسته بندی و خوشه بندی در داده کاوی:

دسته‌بندی: ایجاد و ساخت یک مدل برای پیش‌بینی دسته(برچسب) مربوط به یک داده جدید. به طور مثال یک مدل ساخته می‌شود تا بتواند با دریافت اطلاعات یک فرد مشخص کند که این مفرد مبتلا به یک بیماری مشخص هست یا نه؟

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


لینک منابع:

منبع اول، منبع دوم، منبع سوم، منبع چهارم، منبع پنجم, منبع ششم، منبع هفتم، منبع هشتم، منبع نهم، منبع دهم، منبع یازدهم، منبع دوازدهم، منبع سیزدهم، منبع چهاردهم

مدرس: ملیحه باغبان، دانشجوی دکتری علم اطلاعات ودانش شناسی/ بازیابی اطلاعات و دانش

این مبحث برای دانشجویان علم اطلاعات و دانش شناسی گردآوری و ارائه می گردد


دوشنبه 17 آبان 1400
ادامه مطلب
درباره نویسنده
ملیحه باغبان

📖  کارشناسی کتابداری
دانشگاه پیـــام نور مرکز تبریز

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

📖  دانشجوی دکتری
بازیـــابی اطـلاعــات و دانــــش
دانشگـــاه الـزهرا (س) - تهران