دیباچه

در سال‌های اخیر شناخت زبان با هوش مصنوعی، روش‌های نوین یادگیری ماشین مانند یادگیری عمیق و معیارهایی همراه با تفسیرهای غنی، به میزان قابل توجهی پیشرفت کرده است. با این حال، تحقیقات برای زبان‌های با منابع‌کم، هنوز به درک زبان رسمی (صوری) محدود است. بنابراین یک نقص قابل‌توجه در توصیف زبان محاوره‌ای بخصوص برای زبان‌های با منابع کم مانند فارسی (پارسی) وجود دارد. به منظور اصلاح این نقص برای زبان‌های کم‌منبع، ما یک "مجموعه دادهٔ بزرگ فارسی محاوره‌ای" پیشنهاد کرده‌ایم. این پیکره به صورت سلسله مراتبی سازماندهی شده‌است که بر درک زبان فارسی غیررسمی به عنوان یک مسأله چند وظیفه‌ای جامع تمرکز دارد. این مجموعه، برای شناخت چندین جنبه معنایی در جملات طبیعی است که از میلیون‌ها جمله در دنیای واقعی استخراج شده است. ما معتقدیم تحقیقات و قدرت پردازشی بیشتر و همچنین استفاده از الگوریتم‌ها و روش‌های جدید می‌تواند باعث تقویت درک و شناخت بیشتر زبان‌های با منابع کم شود. پیکرهٔ پیشنهادی شامل ۱۲۰ میلیون جمله فارسی محاوره‌ای از ۲۷ میلیون توئیت است که با درخت اشتقاق، برچسب‌گذاری دستوری (جزء کلام)، قطبیت احساسات و ترجمه هر جمله در زبان انگلیسی، آلمانی، چکی، ایتالیایی و هندی همراه شده است.

قالب استناد

@InProceedings{abdikhojasteh:2020:LREC,
author = {Abdi Khojasteh, Hadi and Ansari, Ebrahim and Bohlouli, Mahdi},
title = {LSCP: Enhanced Large Scale Colloquial Persian Language Understanding},
booktitle = {Proceedings of the Twelfth International Conference on Language Resources and Evaluation (LREC 2020)},
year = {2020}
address = {Marseille, France},
publisher = {European Language Resources Association}
pages = {6323--6327},
url = {https://www.aclweb.org/anthology/2020.lrec-1.776}
}

 

  تصویر کوچک مقاله

۱ دانشگاه تحصیلات تکمیلی علوم پایه زنجان، دانشکدهٔ علوم رایانه و فناوری اطلاعات، ایران
۲ دانشگاه چارلز در پراگ، دانشکدهٔ ریاضی و فیزیک، گروه علوم کامپیوتر،
    پژوهشگاه زبان‌شناسی صوری و کاربردی (ÚFAL)، جمهوری چک
۳ شرکت پتانوکس، بخش تحقیقات و نوآوری، آلمان
* نویسندهٔ مسئول
  ایمیل: ansari at iasbs dot ac dot ir
نمونه‌ای از جملهٔ استخراج‌شده با روابط وابستگی در تفسیر نحوی، برچسب رده جزء کلام، قطبیت احساسی و ترجمه‌های جمله در زبا‌های مختلف.
درک زبان توسط ماشین یک مسأله جامع است که شامل شناخت چندین جنبه معنایی و روابط بین واحدهای زبانی مختلف و ترکیب‌ها از جمله واژه‌های هم‌نام، هم‌آوا، هم‌معنا، نقیض، شُمول، جزءواژگی، کنایه و هم‌ریختی است. از طرف دیگر، پیکره‌های زبانی در مقیاس بزرگ یکی از منابع کلیدی در پردازش زبان‌های طبیعی می‌باشند. علی رغم اهمیت این موضوع در بسیاری از کاربردهای زبانی، با توجه به مشکلات موجود در ایجاد آن و کار متمرکز مورد نیاز به دلیل کم بودن منابع، به ویژه در زبان محاوره‌ای، تاکنون هیچ گونه پیکره بزرگ فارسی در دسترس قرار نگرفته است.

ما یک پیکره فارسی برای زبان‌شناسی رایانشی پیشنهاد کرده‌ایم که به صورت سلسله مراتبی سازماندهی شده‌است که بر درک زبان فارسی غیررسمی به عنوان یک مسأله چند وظیفه‌ای جامع تمرکز دارد. این مجموعه، برای شناخت چندین جنبه معنایی در جملات فارسی است که از میلیون‌ها جمله در دنیای واقعی استخراج شده است.
پیکرهٔ پیشنهادی شامل ۱۲۰ میلیون جمله فارسی محاوره‌ای از ۲۷ میلیون توئیت است که با درخت اشتقاق، برچسب‌گذاری دستوری (جزء کلام)، قطبیت احساسات و ترجمه هر جمله در پنج زبان انگلیسی، آلمانی، چکی، ایتالیایی و هندی همراه شده است.

دانلود و آماده‌سازی

این پیکرهٔ زبانی تحت اجازه‌نامهٔ مشترکات خلاقانه با ارجاع، غیرتجاری و غیراشتقاقی چهار از طریق لیندت/کلارین در دسترس عموم قرار گرفته است.

اسکریپت زیر مجموعهٔ کامل (~2.5 گیگابایت) را از مخزن داده دانلود می‌کند و همهٔ فایل‌ها (~20 گیگابایت) را از حالت فشرده خارج می‌کند:

curl --remote-name-all https://lindat.mff.cuni.cz/repository/xmlui/bitstream/handle/11234/1-3195{/README.md,/lscp-0.5-fa.7z,/lscp-0.5-fa-normalized.7z,/lscp-0.5-fa-derivation-tree.7z,/lscp-0.5-fa-cs.7z,/lscp-0.5-fa-en.7z,/lscp-0.5-fa-de.7z,/lscp-0.5-fa-it.7z,/lscp-0.5-fa-hi.7z}
7z -y e "lscp-0.5-*.7z"

همچنین شما می‌توانید به طور دستی فایل‌ها را از http://hdl.handle.net/11234/1-3195 دانلود کنید.

از اینجا شروع کنید!

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

یک فرآیند سادهٔ پردازش در یک نوت‌بوک کولب در دسترس است:

نگاهی به زبان گفتاری فارسی

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

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

علاوه بر تفاوت‌های کلی بین انواع گفتاری و نوشتاری یک زبان، زبان فارسی گسترهٔ وسیعی از تنوع دارد که این شکاف را بیشتر نشان می‌دهد. درکنار چندین کلمه غیررسمی که برای یک زبان رسمی (صوری) یا زبان معیار قابل‌استفاده نیستند، تفاوت برجسته‌ای در تلفظ کلمات وجود دارد. برای مثال واژه "کتابخانه" در زبان گفتاری به "کتابخونه" تبدیل می‌شود. این تغییر کاملاً رایج است اما هیچ قاعده‌ای ندارد، بنابراین تنها در بعضی از کلمات، صاحب‌سخن می‌تواند این تغییر را انجام دهد. بدیهی است که توئیت‌های فارسی شامل بخش زیادی از ویژگی‌های ذکر شده در شکل گفتاری زبان فارسی است.

گردآوری و تفسیر

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

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

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

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