استخراج عبارات کلیدی (KeyPhrase) از متن با روش Ngram

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

استخراج عبارات کلیدی
استخراج عبارات کلیدی

روش استخراج عبارات کلیدی

بعد از نرمال سازی و تمیز سازی داده میبایست مراحل زیر برای استخراج عبارات انجام شود. روش‌های استخراج عبارات کلیدی را به‌صورت کلی به دسته‌های زیر تقسیم می‌شوند. که در این مبحث یک روش مبتنی بر قوانین مورد یررسی قرار میگیرد.

  • روش های میتنی بر قوانین و روش‌های آماری ساده
  • روش‌های استفاده از پیکره دادگان
  • روش‌های زبان‌شناسی
  • روش‌های یادگیری ماشین

کاربردهای استخراج عبارات کلیدی

عبارتهای کلیدی نشان‌دهندة مفاهیم و موضوع متون بوده، می‌توانند در موارد زیر مورد استفاده قرار گیرند:

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

  2. عبارتهای کلیدی می‌توانند به عنوان قسمتی از نتایج جستجو همراه با سایر مشخصه‌های متن بازیابی شده (همانند عنوان، قسمتهایی از متن، URL و …) یا به جای آنها نمایش داده شوند. موتور های جستجوی وب که استفاده از آن ها برای یافتن نتایج مطلوب مورد استفاده قرار میگیرند بر اساس کلمات کلیدی متن را ارزیابی و طبقه بندی میکنند و با توجه به اینکه رقابت بر سر نتایج برتر موتور های جستجو بسیار زیاد است و هر کسی سعی دارد جزو نتایج برتر باشد تا بهتر و بیشتر خود و یا هدف خود را به مخاطبان برساند که به این امر اصطلاحا سئو (Search Engine optimization) گفته میشود.

  3. در مواردی که به مشخصه‌هایی بیش از نامگذاری صرف به منظور درک سریعتر متن نیاز داریم، عبارتهای کلیدی می‌توانند مفید باشند. به عنوان مثال، اگر نام یک فایل یا نامه الکترونیکی به عنوان برچسب با عبارتهای کلیدی ادغام گردند، حالت بهتری را ایجاد می‌کنند. در این حالت، مشاهده عبارتهای کلیدی همراه با عنوان، به فهم محتوای نامه کمک بیشتری می‌کند.

  4. برجسته‌کردن عبارتهای کلیدی در متون الکترونیکی می‌تواند به مرور سریع و اجمالی متن کمک کند.

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

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

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

  8. حضور عبارتهای کلیدی در نتایج جستجو می‌تواند به اصلاح و تعریف مجدد فرمول جستجو و حتی تغییر دیدگاه کاربران از ساختار موجود در یک زمینه خاص کمک کند؛ یعنی کاربران می‌توانند با افزودن، حذف واژگان دامنه جستجو را محدودتر کرده، ضریب دقت را بالاتر ببرند. در نتیجه، بالابردن ضریب دقت یا با گسترده‌ترکردن دامنه جستجو و در نتیجه به بالابردن ضریب بازیابی کمک می‌کند. بنابراین می‌توان عبارتهای کلیدی را به عنوان جزئی لازم برای سیستمهای بازیابی اطلاعات معرفی کرد.

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

روش های استخراج کلمات کلیدی

روشهای پیشنهاد شده برای استخراج کلمات کلیدی ، به راهکار کلی طبقه بندی میشوند:

  1. روشهای آماری مبتنی بر تحلیل فراوانی کلمات.

  2. روشهای نحوی مبتنی بر تجزیه زبانی و انطباق الگو.

  3. روشهای ساختاری: بررسی عنوان و رئوس کلی مطالب سند.

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

 

مراحل استخراج عبارات کلیدی با روش های آماری

  • خرد کردن متن با کارکترهای نشانه یا punchation:

ابتدا متن را با استفاده از  punchation ها مثل نقطه، کاما، دو نقطه باید تکه تکه نمود. البته بعضي از اين حروف مهم‌اند مانند “–” چرا که ممکن است با کلمه‌هاي مجاورش تشکيل عبارت دهد مانند “استقلال-پرسپلیس”.

پس در اين مرحله تمامي متن با توجه به حروف جداکننده (به جز تعداد محدودي) به تکه جمله‌هايي (به عبارت ديگر به جمله‌هاي ناقص) تبديل مي‌شوند.

  • تکه تکه باکلمه‌هاي زائد:

در اين قسمت خروجي مرحله‌ي قبل دريافت شده و دوباره با توجه به کلمه‌هاي زائد تکه تکه مي‌شوند. چون هدف استخراج عبارت است پس وقتي دو کلمه‌ي کنار هم با يک حرف زائد (مانند : يا ،را،که) جدا مي‌شوند تشکيل عبارت نمي‌دهند. در اين مرحله نيز کلمه‌هاي زائد استثنا هم وجود دارند که بايد حذف نشوند. چند نمونه از اين کلمه‌ها در زير آمده‌اند:

  • از: شکایت از شهرداری
  • ي، ها، هاي: کالاهای چینی
  • تا: حرم تا حرم
  • در: ریزگردها در خوزستان
  • و: آمریکا و رژیم صهیونیست
  • با: همکاری با آژانس
  • بدست آوردن Ngramهای دوتايي و سه‌تايي و چهارتایی: در اين مرحله از تکه جمله‌هاي ناقص مرحله‌ي قبل، عبارت‌هاي دوتايي و سه‌تايي استخراج مي‌شود. نکته‌ي مورد توجه در اين قسمت اين است که دو کلمه‌ي مجاور حروف جداکننده‌ي خاص يا کلمه‌هاي زائد خاص به عنوان عبارت با طول يک نيز در نظر گرفته مي‌شوند. در زير چند نمونه تکه جمله و عبارت‌هاي استخراج شده از آن آمده است:
  • “… نتیجه مسابقه استقلال-پرسپلیس …”:
    • نتیجه مسابقه ، نتیجه مسابقه استقلال ، نتیجه مسابقه استقلال-پرسپلیس ، مسابقات استقلال ، مسابقه استقلال-پرسپلیس ، استقلال-پرسپلیس.
  • “… زلزله ديروز سیستان موجب شد تا …”:
    • زلزله ديروز، زلزله ديروز سیستان ، ديروز سیستان ، ديروز سیستان موجب ، سیستان موجب ، سیستان موجب شد، موجب شد، موجب شد تا.
  • امتیاز دهی به عبارات استخراج شده:

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

اصلاح کیقیت عبارات کیفیت استخراج شده

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

  • ابتدا کلمات ناکارآمدي که به اشتباه به عنوان عبارت استخراج شده­ اند حذف می‌شوند. سپس عباراتی که شامل تنها یک کلمه هستند ولی این کلمه در لیست کلمات کلیدی متن وجود ندارد را حذف می‌کنیم. زیرا کلمه ­ای که کلیدی نباشد را نمی­توان بعنوان عبارت ­کلیدی در نظر گرفت.
  • فیلتر بعدی، عباراتی هستند که تنها یک بار در متن ظاهر شده­اند. اگر یک عبارت تنها یک بار در متن آمده باشد، ممکن است هنگام استخراج همه عبارات، به اشتباه استخراج شده باشد و از مجموعه عبارات کلیدی حذف می‌شوند.
  • اگر یک عبارت کلیدی وجود داشته باشد که زيرمجموعه یک عبارت کلیدی دیگر باشد و نسبت به آن وزن کمتري داشته باشد، عبارت زیر مجموعه­، از لیست عبارات کلیدی حذف شده و عبارت بزرگتر به عنوان عبارت کلیدی در نظر گرفته می‌شود.
  • در مرحله بعدی همه عبارات به حالت ریشه ­ای برده می‌شوند. اگر کلمات دو عبارت با هم یکسان شدند، عبارات با یکدیگر ادغام می‌شوند و حالت اصلی عبارت پرتکرار­تر به عنوان عبارت کلیدی نگهداری می‌شود.
  • در نهایت برای عبارات کلیدی‌ای که به اشتباه با یک کلمه پر تکرار تمام می‌شوند، کلمه پر تکرار را حذف کرده و عبارات را به لیست عبارات کلیدی برمی­گردانیم.

 

آدرس کانال تلگرام سایت بیگ دیتا:

t.me/bigdata_channel

آدرس کانال سروش ما:
https://sapp.ir/bigdata_channel

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

همچنین ببینید

قطعه بندی متون

قطعه بندی متون فارسی (tokenize) با استفاده از جی هضم (Jhazm)

قطعه بندی متن (Tokenizer) در بخش های قبلی به روش های تشخیص زبان در متون …

دیدگاهتان را بنویسید