رده:برچسب‌زن نقش معنایی کلمات

از دانشنامه فناوری وب
پرش به: ناوبری، جستجو

برچسب زن نقش معنایی کلمات

برچسب ‌‌‌زنی معنایی کلمات مشابه برچسب گذاری اجزای واژگانی کلام بوده با این تفاوت که عمیق ‌‌‌تر و پیچیده تر از آن می ‌‌‌باشد. برچسب ‌‌‌زنی معنایی وظیفه استخراج نقش ‌‌‌های معنایی جملات نظیر فاعل، مفعول مستقیم، مفعول غیر مستقیم، فعل و ... را بر عهده دارد. برچسب زنی معنایی کلمات هم عملی اساسی برای بسیاری از حوزه های دیگر پردازش زبان طبیعی (NLP) از قبیل ترجمه ماشینی، خطایاب و شباهت معنایی می باشد. در شکل زیر یک مجموعه برچسب معرفی شده است.
Shekle 1.8.jpg
به عبارت دیگر نقش معنایی کلمات به روابط همنشینی اولیه بین فعل اصلی، عبارت و سایر اجزاء نحوی عبارت اشاره دارد. افعال نقشهای معنایی به اجزاء گوناگون عبارت مانند فاعل، مفعول مستقیم و غیر مستقیم، عبارت حرف اضافه و موارد دیگر نسبت می‌دهند. بعنوان مثال روابط حالتی بین اجزاء عبارت « علی کتاب را از کتابفروشی خرید» در زیر نشان داده شده است:

« علی (فاعل) agent+ کتابفروشی(منبع)source  + کتاب(مفعول) patient»

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

کارهای انجام شده در آزمایشگاه فناوری وب

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

تولید فریم‌‌نت
همانطور که به طور مفصل ذکر گردید فریم‌‌نت شبکه‌‌ای از قالب‌‌های اجزای جملات می‌‌باشد که بر اساس ظرفیت افعال تولید می‌‌گردد. در راستای تولید فریم‌‌نت برای زبان فارسی، از پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی استفاده شده است. فرهنگ ظرفیت نحوی افعال فارسی مجموعه‌ای حاوی اطلاعات مربوط به ظرفیت نحوی بیش از ۴۵۰۰ فعل در زبان فارسی است که ظرفیت افعال را با قالب‌بندی بن ماضی، بن مضارع، پیشوند، فعل‌یار و حرف اضافه فعلی عرضه نموده است. حال بایستی روالی را برای استخراج قالب‌‌های جملات زبان فارسی در قالب عبارات منظم طراحی کرده و از این روال برای تولید فریم‌‌نت زبان فارسی استفاده نماییم.
قالب پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی
جهت استخراج فریم‌‌ها از پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی لازم است که به طور کامل قالب بیان ظرفیت افعال درک گردیده و بر این اساس به تولید فریم‌‌های مورد نظر با توجه به ساختار افعال بپردازیم. در پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی، افعال با قالب زیر معرفی می‌‌گردند:
Kadre bone mazi mozare.jpg

در واقع قالب فوق بمنزله‌‌ی کلید برای شناسایی افعال مورد استفاده قرار می‌‌گیرد و در ادامه، ظرفیت فعل برای تولید جملات بدون ذکر فعل در یک قالب تعریف شده توسط تیم تولید کننده‌‌ی پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی ذکر گردیده است.
در این پیکره عبارت و نمادهای متعددی بکار رفته است که برخی از آنها را ادامه آورده‌‌ایم.
Kadre namayandeye yek sakhte zarfiati.jpg

چگونگی تولید عبارات منظم در فریم‌‌ها در پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی، پس از بیان هر فعل و ویژگی‌‌های آن نظیر بن ماضی، بن مضارع، پیشوند، فعل‌‌یار و حرف اضافه فعلی، ظرفیت فعل برای تشکیل جملات بیان گردیده است که برای تولید فریم‌‌نت بایستی ظرفیت بیان شده به درستی درک گردیده و در قالب یک عبارت منظم برای تولید فریم‌‌نت و بکارگیری در سایر ابزارهای پردازش متن از جمله ابزار برچسب‌‌زنی نقش‌‌های معنایی متون فارسی بیان گردد.
برای تولید عبارت منظم با توجه به ظرفیت هر فعل لازم به بیان معنی برخی از عبارات بکار رفته در پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی و فریم‌‌نت تولید شده می‌‌باشد که در ادامه به ذکر این موارد می‌‌پردازیم.
Kadre fael.jpg
از آنجاییکه افعال در پیکره‌‌ی ظرفیت نحوی افعال زبان فارسی هر کدام در یک خط بیان گردیده‌‌اند، الگوریتمی را طراحی نموده‌‌ایم که متن این پیکره را خط به خط خوانده و مورد تجزیه و تحلیل قرار می‌‌دهد. همانطور که قبلا ذکر گردید در هر خط از این پیکره پس از بیان هر فعل و ویژگی‌‌های آن نظیر بن ماضی، بن مضارع، پیشوند، فعل‌‌یار و حرف اضافه فعلی، ظرفیت فعل برای تشکیل جملات بیان گردیده است که بایستی به یک عبارت منظم قابل استفاده در طراحی ابزار SRL تبدیل گردد.
در ابتدا دو نماد ">" و "<" از دو طرف عبارت حذف می‌‌شود. سپس به جای "،" کاراکتر فاصله در عبارت جایگزین می‌‌گردد. حروف اضافه تکی یا چندتایی در قالب یک پرانتز به قبل از مفعول حرف اضافه‌‌ای منتقل می‌‌شوند و با توجه به اجباری یا اختیاری بودن گروه قیدی یا حروف اضافه‌‌ای، حروف اضافه و مفعول حرف اضافه‌‌ای در نماد "(…)" یا "(…)*" قرار می‌‌گیرند. عبارت بیان شده در بین نماد "[]" در پیکره نیز بیانگر یک سری ویژگی‌‌ها و قیدهای خاص در مورد ساختار جمله هستند که نیازی به حضور در عبارت منظم ندارند و به همین دلیل از ساختار ظرفیت فعل حذف می‌‌گردند. عبارتی نظیر [را+/-] هم بیانگر وجود اختیاری یا اجباری نشانگر مفعولی "را" و یا حتی عدم حضور آن در جملات می‌‌باشد که در قالب عبارات منظم به صورت "(را )*" یا "(را )" و یا "]را[^" بیان می‌‌گردد.
در پایان پس از تکمیل عبارت منظم برای برچسب‌‌های نقش‌‌های معنایی برای جملات، به ازای هر کدام از نقش‌‌های موجود، لغت "کلمه" در عبارت منظم قرار گرفته و جهت تطبیق با جملات مورد بررسی در قالب یک عبارت منظم دیگر ذخیره می‌‌گردد. همچنین عبارت فعلی در انتهای هر دو بخش فریم به صورت زیر اضافه می‌‌گردد:
Kadre harfe ezafeye feli.jpg

تبدیل ظرفیت افعال به عبارت منظم در قالب چند مثال بیان می‌گردد.
Kadre oftad.jpg

عبارت منظم برای فعل فوق به صورت زیر درخواهد آمد: Kadre kalame az kalame.jpg
مثال دوم:
Kadre oftad mesale2.jpg
عبارت منظم تولید شده:
Kadre baraye kalame.jpg
مثال سوم:
Kadre kard.jpg
عبارت منظم تولید شده:
Kadre kalame az.jpg
مثال چهارم:
Kadre gozid.jpg
عبارت منظم تولید شده:
Kadre kalame kalame ra.jpg
نحوه ذخیره‌‌‌سازی فریم‌‌‌ها
پس از تشکیل عبارت منظم برای هر کدام از افعال موجود در پیکره‌‌‌ی فرهنگ ظرفیت نحوی افعال فارسی بایستی آنها را با ساختاری مناسب در پیکره‌‌‌ای دیگر که در واقع فریم‌‌‌نت زبان فارسی می‌‌‌باشد، ذخیره نماییم. برای ذخیره‌‌‌سازی فریم‌‌‌های تولیدی، همان ساختار ویژگی‌‌‌های استخراجی فعل را به صورت کلید هر ردیف فریم در نظر می‌‌‌گیریم. در واقع کلید هر ردیف فریم به صورت زیر درنظر گرفته شده و در مقابل آن فریم‌‌‌های موجود برای این فعل درج خواهند گردید.
Kadre bone mazi boe mkzoare.jpg
پس از بیان کلید هر فریم، فریم منطبق با آن فعل به صورت زیر در ادامه آن کلید درج می‌گردد.
Kadre ebarate monazam.jpg
با توجه به ظرفیت هر فعل، آن فعل ممکن است دارای یک یا چندین قالب فریم با ساختارهای متفاوت باشد که بایستی به نحوی مناسب قالب‌‌‌بندی و ذخیره‌‌‌سازی گردد که در الگوریتم تشخیص برچسب معنایی متون براحتی قابل استفاده باشد.
Kadrhaye kelid frame.jpg
برای تخصیص فریم‌‌‌‌های متفاوت موجود برای یک ساختار یکسان از فعل در ابتدا از یک ساختار درهم (Hash) برای ذخیره‌‌‌‌سازی فریم‌‌‌‌ها استفاده می‌‌‌‌گردد که کلید آن کلید فریم و عناصر آن لیستی شامل فریم‌‌‌‌های منطبق با ظرفیت فعل می‌‌‌‌باشند. در انتها با خواندن تمامی عناصر موجود در جدول درهم کلیه کلیدها و فریم‌‌‌‌های آنها استخراج و در قالب یک فایل متنی ذخیره می‌گردد.
بسط فریم‌‌‌‌ها و فریم‌‌‌‌های با کلید یکسان
همانطور که قبلا ذکرگردید در پیکره فرهنگ ظرفیت نحوی افعال فارسی پس از بیان هر فعل و ویژگی‌‌‌‌های آن نظیر بن ماضی، بن مضارع، پیشوند، فعل‌‌‌‌یار و حرف اضافه فعلی، ظرفیت فعل برای تشکیل جملات بیان گردیده است که بایستی به عبارت منظم قابل استفاده در طراحی ابزار SRL تبدیل گردد. یک عبارت منظم برای تطبیق جملات ورودی با ساختار فریم و یک عبارت منظم حاوی برچسب‌‌‌‌های معنایی برای تخصیص برچسب نقش‌‌‌‌های معنایی به کلمات موجود در جمله‌‌‌‌ی وردی تطبیق یافته با فریم مورد نیاز می‌‌‌‌باشد. گفته شد که با توجه به ظرفیت هر فعل، آن فعل ممکن است دارای یک یا چندین قالب فریم با ساختارهای متفاوت باشد.
فرض اولیه در طراحی فریم‌‌‌‌نت و برچسب‌‌‌‌زنی معنایی متون بر این بود که اجزای فعل به درستی تشخیص داده شوند و براحتی فعل موجود در جمله با کلید یکی از ساختارهای موجود در فریم-نت منطبق گردد. این درحالیست که در بسیاری از اوقات با توجه به وجود ضمایر متصل و منفصل و یا سایر لغات بین حروف اضافه فعلی و همچنین فعل‌‌‌‌یار با هسته‌‌‌‌ی اصلی فعل، اجزای فعل یعنی حروف اضافه فعلی و همچنین فعل‌‌‌‌یار گاها به درستی تشخیص داده نمی‌‌‌‌شود و در اینصورت ساختار جمله با هیچ کدام از فریم‌‌‌‌ها منطبق نگردیده و جمله برچسب معنایی نمی‌خورد.
برای رفع این مشکل، هر کدام از کلیدهای فریم‌‌‌‌ها یک بار در شکل خود و یک بار دیگر هم با ساختاری که دارای فعل‌‌‌‌یار و حرف اضافه‌‌‌‌ی فعلی نیستند، ذخیره می‌‌‌‌گردد تا در مواردیکه در روال پردازش جمله ورودی پس از شناسایی عبارت فعلی، اجزای فعل یعنی حروف اضافه فعلی و فعل‌‌‌‌یار به درستی تشخیص داده نشدند باز هم با کلیدی در فریم‌‌‌‌نت منطبق گردیده و در بین فریم‌‌‌‌های موجود در آن فعل با یک فریم تطابق یافته و برچسب‌‌‌‌های متناظر با آن جمله به لغات تشکیل دهنده‌‌‌‌ی آن جمله، تخصیص یابد. یعنی در واقع به ازای هر فعل یک بار آن فعل به صورت زیر بدون حروف اضافه فعلی و فعل‌‌‌‌یار هم در فریم‌‌‌‌نت ذخیره می‌‌‌‌گردد.
Kadre bone mazi mozare pishvand.jpg
لازم به ذکر است در مواردیکه فعل دارای پیشوند، حرف اضافه فعلی یا فعل‌‌‌‌‌یار نباشد، نماد ‘-’ به جای آن قرار می‌‌‌‌‌گیرد.
بدین ترتیب فریم‌‌‌‌‌های موجود برای هر فعل با اجزای آن بسط پیدا کرده و در دو قالب مجزا در فریم‌‌‌‌‌نت ذخیره می‌‌‌‌‌گردد. در صورتیکه در روال برچسب‌‌‌‌‌زنی معنایی متون، اجزای فعل به درستی تشخیص داده شود، مستقیما به فریم منطبق با آن رفته و برچسب‌‌‌‌‌های معنایی متناظر با آن جمله را به کلمات آن جمله تخصیص می‌‌‌‌‌دهیم؛ ولی درصورتیکه اجزای فعل به درستی تشخیص داده نشود، بایستی در لیستی از فریم‌‌‌‌‌های منطبق با بن فعل جستجو کرده تا به فریم منطبق با آن رسیده و برچسب‌‌‌‌‌های معنایی متناظر با آن جمله را به کلمات آن جمله تخصیص می‌‌‌‌‌دهیم که روالی طولانی‌‌‌‌‌تر می‌‌‌‌‌باشد.
مثال مرتبط با این موضوع را می‌‌‌‌‌توانید در سه فریم زیر و بسط آنها بدون اجزای فعل مشاهده نمایید:
Kadre kard kon moshahede.jpg
برچسب‌‌‌‌‌‌زنی نقش‌‌‌‌‌‌های معنایی متون
در روند هرگونه پردازش روی متن‌‌‌‌‌‌های زبان طبیعی انجام یک سری عملیات پیش‌‌‌‌‌‌پردازش، امری اجتناب‌‌‌‌‌‌ناپذیر است. بطوریکه دقت این پیش‌‌‌‌‌‌پردازش‌ها تاثیر بسزایی بر نتایج اعمال الگوریتم‌‌‌‌‌‌ها در فازهای بعدی دارد. هرچقدر که دقت این پیش‌‌‌‌‌‌پردازش‌‌‌‌‌‌ها بیشتر باشد، الگوریتم‌‌‌‌‌‌ها به نتایج واقعی خود نزدیک‌‌‌‌‌‌تر خواهند شد.
شمای کلی روش
در این بخش شمای کلی روش پیشنهاد شده برای پردازش متون و اعمال الگوریتم‌های مورد نظر برای برچسب‌زنی نقش‌های معنایی متون فارسی آورده شده است. مراحل کلی این روش در شکل زیر نشان داده شده است.

Shekle 1.9.jpg

این رده در حال حاضر حاوی هیچ صفحه یا پرونده‌ای نیست.