مدل‌های زبان طبیعی (Natural Language Models)

مدل های زبان طبیعی (Natural Language Models)

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

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

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

مدل n-gram یکی از این مدل هاست. در این مدل، از آمار کلاسیک و احتمال بهره گرفته شده است. فرض کنید که یک سری اشیا یا نشانه ها و یا هر چیز دیگری داشته باشیم. هر کدام از این ها را به صورت یک رأس در گراف تصور کنید که می تواند به رأس دیگری یال جهت دار داشته باشد. این یال جهت دار، نشان دهنده یک نوع رابطه است که با توجه به مورد دلخواه ما می تواند معانی متفاوتی داشته باشد. مثلاً در مورد زبان، می تواند توالی دو کلمه باشد (اگر کلمه ای بعد از کلمه دیگری بیاید، یک یال از اولی به دومی وجود دارد). به یک توالی n تایی از این رأس ها، n-gram می گوییم (توالی های 3gram، 2gram و ... داریم). در این مدل، یک مجموعه داده های آماری بسیار بزرگ نیاز داریم که هر کدام مجموعه ای از این نشانه ها به همراه روابط بین آن ها است. برای مثال، در مورد یک زبان خاص، یک سری متن به آن زبان می باشد. حال، روابطی در این مدل تعریف می شود که می توان با استفاده از آن، درستی یک توالی خواص از این نشانه ها را بررسی کرد.

فرض کنید می خواهیم درستی عبارت a1→a2→a3→a4 را بررسی کنیم. در این مدل، احتمال درستی به صورت یک عدد تعیین می شود که هرچه داده های آماری ما بیشتر باشد، نتیجه مطلوب تر است. عبارت بالا را به اجزای زیر تقسیم می کنیم و تعداد تکرار هر کدام را در داده های آماری پیدا می کنیم.

a1→a2

a2→a3

a3→a4

a1→a2→a3

a2→a3→a4

a1→a2→a3→a4

حال احتمال های3gram، 2gram و ... به صورت زیر تعریف می شوند:

P2gram = P(a2|a1) P(a3|a2) ... : 2Gram

P3gram = P(a3|a1a2) P(a4|a2a3) ... : 3Gram

P4gram = P(a4|a1a2a3) : 4Gram

ص۱