استخراج کلمات کلیدی از متن فارسی با روش های آماری TF-IDF
بعد از مراحل نرمال سازی، حذف کلمات ایستا، تکه کردن کلمات درون متن و ریشه یابی کردن واژه ها، یکی از مهمترین مراحل در پردازش متن استخراج کلمات کلیدی میباشد. در ابتدا به تعاریفی از کلمات کلیدی یا Key word ها پرداخته میشود. کلمات کلیدی مجموعهای از لغات مهم در یک سند هستند که توصیفی از محتوای سند را فراهم میآورند و برای اهداف مختلفی مورداستفاده قرار میگیرند. کلمات کلیدی اطلاعات نحوی مفیدی را برای بسیاری از کارهای پردازش متن فراهم میکند، به عبارتی استخراج کلمات کلیدی، فرآیند شناسایی خودکار اصطلاحات به کار رفته در یک سند است.
عناوين مطالب: '
کاربرد کلمات کلیدی
با یافتن کلمات کلیدی میتوان راحتتر و در زمانی کوتاهتر به مفهوم یک متن، خبر یا مقاله پی برد. یکی از عملیاتهای مهم در فرآیندهای خوشه بندی، طبقه بندی، استخراج اطلاعات و مشخص کردن موضوع مورد بحث در یک سند، تشخیص کلمات کلیدی متن است. استخراج کلمات کلیدی به معنای انتخاب تعدادی کلمه (عبارت) از متن است بهگونهای که بتواند معنای متن را توصیف کند و هدف از متن را نمایش دهد
برای انتخاب کلمات کاندید به عنوان کلمات کلیدی، بایستی تمام کلمات، عبارات، اصطلاحات و مفاهیمی که میتوانند به طور بالقوه کلمات کلیدی باشند را استخراج میکنیم. سپس با استفاده از تکنیکهای پردازش متن و یادگیری ماشین، خواص هر کاندید محاسبه و یک نمره یا آستانه احتمالی به آن اختصاص مییابد. سپس تمام کاندیداها را میتوان به وسیله ترکیب خواص، برای انتخاب مجموعه نهایی کلمات کلیدی یک سند ارزیابی کرد. به عنوان مثال، یک عبارت کاندید در عنوان یک کتاب، به احتمال بسیار زیاد یک کلمه کلیدی است.
استخراج کلمات کلیدی
استخراج کلمات کلیدی معمولا به کمک الگوریتمهای متنوع و با استفاده از ویژگیهای آماری اسناد، کلمات و عبارات کلیدی متون انجام میشود. و این پروسه معمولاً در سه مرحله انجام میگیرد. ابتدا مجموعهای از کلمات و عبارات بهعنوان کاندید انتخاب میشوند و سپس برای هر کاندید ویژگیهایی که باعث میشوند آن کلمه یا عبارت بهعنوان کلمات کلیدی در نظر گرفته شود محاسبه میشوند.
مثلاً کلمه کاندیدی که در عنوان نیز وجود دارد احتمالاً کلمه کلیدی است و یا ویژگیهای دیگری نظیر طول و تعداد رخداد کلمات کلیدی در متن، محل حضور کلمه کلیدی در متن، میزان شباهت با دیگر کاندیدها…محاسبه میشوند. در مرحلهی آخر نیز تمامی کاندیدها با ترکیب کردن ویژگیها در یک فرمول و یا با استفاده از فنهای یادگیری ماشین امتیازبندی شده و کلمات و عبارات با بیشترین امتیاز بهعنوان کلمات کلیدی انتخاب میشوند.
به طور کلی سه روش متداول برای استخراج کلمات کلیدی وجود دارد:
- روش TF-IDF
- روش مبتنی بر یادگیری ماشین
که در ادامه به دو روش آماری پرکاربرد میپردازیم
روش TF
روش Term Frecuancy یک روش ابتدایی و خیلی پر کاربرد برای استخراج کلمات کلیدی ازمتن است. که در شکل زیر مراحل آن مشخص است.
- ایجاد وکتوری از واژگان درون سند یا متن
- دادن امتیاز به هر واژه بر اساس تکرار آن کلیمه
- مرتب کردن امتیاز های بصورت نزولی
- انتخاب تعداد کلمات کلیدی با امتیاز بیشتر (برای تصمیم گرفتن در مورد تعداد کلمات منتخب روش محاسبه تعداد کلمات کلیدی (key word) در اسناد متنی را مطالعه کنید)
کد جاوا مربوط به روش TF در ادامه آورده شده است.
/** * @param doc list of strings * @param term String represents a term * @return term frequency of term in document */ private double tf(List<String> doc, String term) { double result = 0; for (String word : doc) { if (term.equalsIgnoreCase(word)) result++; } return result / doc.size(); }
TF-IDF برای پیدا کردن کلمات کلیدی:
روش TF/IDF یک شاخص اندازه گیری در حوزه پردازش زبان وگفتار میباشد. هدف این شاخص تعیین میزان اهمیت یک لغت در متن است که این امر را با اعطای امتیاز کمتر به لغات کمتر تکرار و امتیاز بیشتر به لغات پر تکرار انجام میدهد. این روش تطابق نیازمند آن است که میزان تکرار تمامی ویژگیهایی که برای ما اهمیت دارند را استخراج نماییم. برای مثال در زمان وارد کردن یک آدرس احتمال آن وجود دارد که به جای کلمه کوچه، کوی ثبت شود. از این رو معیار تطابق کلماتی را که کمتر اهمیت دارند نظیر کوچه، کوی و خیابان را نادیده گرفته و به کلمات پر اهمیت تر متن توجه میکند.
روش TF-IDF : در این روش میزان تکرار یک کلمه در یک مستند را در مقابل تعداد تکرا آن در مجموعه کلیه مستندات در نظر می گیریم.
در روش TF-IDF وزن دهی کلمات تابعی از توزیع کلمات مختلف در مستندات است.
برای پیاده سازی این روش ابتدا یک مجموعه اسناد (برای مثال مجموعه اسناد همشهری) را در نظر می گیریم. به ازای تمام کلماتی که در پیکره وجود دارد ، بررسی می کنیم که هر کلمه در چه تعداد از سندها تکرار شده است و آن را ذخیره می کنیم .
سپس یک سند به عنوان ورودی دریافت می شود. هدف یافتن کلمات کلیدیِ سند دریافت شده است.
برای این منظور ابتدا بررسی می کنیم که هر یک از کلمات سند ورودی ، چند بار در همان سند استفاده شده است.
سپس به ازای تمام کلمات سند ورودی بررسی می کنیم که هر کلمه در چه تعداد از اسناد پیکره اصلی (برای مثال همشهری) وجود دارد.
بعد از طی کردن این مراحل به حساب کردن وزن کلمات می پردازیم :
تعیین وزن کلمات با استفاده از دو معیار term frequency و inverse document frequency انجام می شود که به شرح زیر محاسبه خواهند شد :
که در آن :
تعداد تکرار کلمه t در سند d (سند هدف) است و
تعداد پر تکرارترین کلمه در سند d می باشد
و
که در آن N تعداد کل اسناد موجود در پیکره است و
بیانگر تعداد اسنادی است که کلمه t در آنها وجود دارد.
در نهایت وزن هر کلمه به صورت زیر محاسبه خواهد می شود :
آدرس کانال تلگرام سایت بیگ دیتا:
آدرس کانال سروش ما:
https://sapp.ir/bigdata_channel
جهت دیدن سرفصل های دوره های آموزشی بر روی اینجا کلیک کنید.
جهت ثبت نام در دوره های آموزشی بر روی اینجا کلیک کنید.
Views: 6375
برچسبkeyword Term Frecuancy TF TF/IDF TFIDF استخراج کلمات کلیدی تشخیص کلمات کلیدی جاوا فارسی کلمات کلیدی
همچنین ببینید
آموزش فارسی اسپرینگ بوت (Spring Boot) به صورت کاربردی
در این مبحث قصد دارم به صورت خلاصه به آموزش کاربردی اسپرینگ بوت بپردازم. برای …
نحوه اتصال به کاساندرا با جاوا (قسمت دوم برنامه نمونه)
در قسمت اول با درایور یا راه اندازهای کاساندرا نسخه 3 برای اتصال به جاوا …
یک دیدگاه
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.
با سلام و عرض احترام فراوان،
وبگاه زیبا و مفیدتان را دیدم و برای تحقیقاتم به برنامه های شما نیازمندم. سپاسگزارتان می شوم اگر به درخواستم که در کانال تلگرام شما گذاشتم، پاسخ دهید.
سپاس