پردازش زبان طبیعی چگونه از محاسبات شناختی استفاده می‌کند؟

پردازش زبان طبیعی

پردازش زبان طبیعی


زمان تخمینی مطالعه: 17 دقیقه 

پردازش زبان طبیعی (Natural Language Processing یا NLP) از محاسبات شناختی به عنوان یکی از رویکردهای اصلی استفاده می‌کند. به بیان دقیق‌تر، محاسبات شناختی در پردازش زبان طبیعی برای مدل‌سازی فرآیندهای شناختی زبانی انسان استفاده می‌شود و به کمک آن، سعی می‌شود سطح بالاتری از درک و تولید زبان طبیعی توسط سیستم‌های کامپیوتری به‌دست آید.

محاسبات شناختی چیست؟

محاسبات شناختی (Cognitive Computing) یک زمینه در علوم کامپیوتر و هوش مصنوعی است که به ساخت و تدوین سیستم‌ها و مدل‌هایی متمرکز بر تفکر و فرآیندهای شناختی انسانی می‌پردازد. هدف اصلی محاسبات شناختی، شبیه‌سازی قدرت‌ها و عملکرد مغز انسان در ماشین‌ها و کامپیوترها است. محاسبات شناختی بر اساس مدلی از شناخت انسانی مبتنی بر پردازش اطلاعات و تفکر است که شامل مراحل مختلفی است. اولین مورد درک است. در این مرحله، سیستم می‌کوشد تا اطلاعات را درک کند و مفاهیم را استخراج کند. این فرآیند شامل مراحلی مثل تحلیل و تفسیر داده‌ها، شناسایی الگوها و تشخیص ویژگی‌های مهم در داده‌ها است. مرحله بعد یادگیری است. سیستم در این مرحله توانایی یادگیری و بهبود عملکرد خود را دارد. برای این منظور از روش‌هایی مانند یادگیری ماشین، شبکه‌های عصبی و الگوریتم‌های یادگیری تقویتی برای این منظور استفاده می‌شود. سیستم می‌تواند با تحلیل داده‌های جدید و تعامل با محیط، دانش و تجربه را افزایش دهد. مرحله بعد استنتاج است. در این مرحله، سیستم قادر است از اطلاعاتی که دریافت کرده است، نتیجه‌گیری کند و استنتاج کند. این فرآیند شامل استفاده از قوانین منطقی، الگوریتم‌های استنتاج و روش‌های استدلال مبتنی بر قاعده می‌شود.

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

تفاوت محاسبات شناختی با هوش مصنوعی چیست؟

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

کاربرد محاسبات شناختی در پردازش زبان طبیعی

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

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

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

Natural language processing

مدل‌های NLP چگونه از مکانیزم توجه برای تمرکز بر مولفه‌های مهم جمله استفاده می‌کنند؟

مدل‌های پردازش زبان طبیعی (NLP) با استفاده از مکانیزم توجه (Attention Mechanism) قادرند بر مولفه‌های مهم جمله تمرکز کنند. مکانیزم توجه یک مکانیزم قدرتمند است که به مدل‌ها امکان می‌دهد تا در هر مرحله از فرآیند پردازش، توجه خود را به بخش‌های مهم و معنادار داده‌ها متمرکز کنند. وقتی مدل‌های NLP از مکانیزم توجه استفاده می‌کنند، آن‌ها می‌توانند به صورت دقیق‌تر و جزیی‌تر به اجزای مختلف جمله توجه کنند. این اجزا می‌توانند کلمات، عبارات یا جملاتی باشند که در فهم و ترجمه جمله مورد نظر مهم هستند. به عنوان مثال، در ترجمه یک جمله از زبان مبدا به زبان مقصد، مدل می‌تواند با استفاده از مکانیزم توجه، تمرکز خود را بر روی کلمات کلیدی یا عبارات مهم در جمله مبدا متمرکز کند و بر اساس آن‌ها ترجمه را انجام دهد. این روش به مدل امکان می‌دهد تا معنای جمله را بهتر درک کند و ترجمه دقیق‌تری انجام دهد.

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

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

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

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

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

محاسبه وزن‌ها: در این مرحله، بر اساس ویژگی‌های ورودی و وضعیت داخلی مدل، وزن‌ها محاسبه می‌شوند. این وزن‌ها می‌توانند به صورت تابعی از مقادیر ویژگی‌های ورودی محاسبه شوند، مانند محصول داخلی بین ویژگی‌های ورودی و بردار وزن.

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

یکی از شکل‌های رایج مکانیزم توجه در NLP، مکانیزم دقت بر اساس نقطه‌توجه (Pointwise Attention) است. در این روش، مدل با استفاده از یک تابع امتیاز برای هر جفت ورودی و خروجی، وزن توجه را محاسبه می‌کند. این وزن‌ها نشان می‌دهند که هر جفت ورودی و خروجی به چه اندازه باید مورد توجه قرار گیرند. سپس با ترکیب وزن‌دار ورودی‌ها با استفاده از این وزن‌ها، خروجی نهایی تولید می‌شود. مکانیزم توجه می‌تواند به صورت توجه یک طرفه (Unidirectional Attention) یا توجه دوطرفه (Bidirectional Attention) عمل کند. در توجه یک طرفه، مدل فقط به جزییات جلوتر در جمله توجه می‌کند، در حالی که در توجه دوطرفه، مدل هم به جزییات جلوتر و هم به جزییات قبل‌تر در جمله توجه می‌کند. این امر به مدل کمک می‌کند تا الگوها و قواعد زبانی را بهتر درک کند و ارتباطات بین اجزای جمله را بهبود ببخشد. با استفاده از مکانیزم توجه، مدل‌های NLP قادر به تمرکز بر اجزای مهم جمله هستند و از آن‌ها برای تولید خروجی دقیق‌تر و بر اساس اولویت استفاده می‌کنند. این مکانیزم کمک می‌کند که مدل به عنوان یک “مترجم” زبانی عمل کند و توجه خود را به جزییات مهم جمله برای درک و تولید زبان طبیعی متمرکز کند.

 

مدل‌های NLP چگونه می‌توانند از داده‌های زبانی یاد بگیرند و الگوها را استخراج کنند؟

فرایند آموزش مدل‌های NLP با جمع‌آوری و پیش‌پردازش داده‌ها انجام می‌شود. ابتدا، داده‌های زبانی مورد نیاز برای آموزش مدل‌های NLP جمع‌آوری می‌شوند. این داده‌ها می‌توانند شامل متن‌ها، جملات، سند‌ها، برچسب‌ها و سایر اطلاعات زبانی مرتبط با موضوع مورد نظر باشند. سپس، داده‌ها پیش‌پردازش می‌شوند که شامل اقداماتی مانند تمیزکاری داده‌های پرت، تجزیه جملات به کلمات (توکن‌بندی)، حذف علایم نگارشی و استخراج ویژگی‌های مورد نیاز می‌شود. پس از پیش‌پردازش داده‌ها، نوبت به ساختار مدل می‌رسد. در این مرحله، معماری مدل NLP مشخص می‌شود. مدل‌های NLP شامل شبکه‌های عصبی بازگشتی (RNN)، شبکه‌های عصبی پیچشی (CNN)، شبکه‌های ترنسفورمر (Transformer) یا ترکیبی از این‌ها هستند. معماری مدل بسته به وظیفه خاصی که مدل باید انجام دهد، مثل ترجمه ماشینی، تشخیص احساس و یا پرسش و پاسخ، تعیین می‌شود. در مرحله آموزش، داده‌های پیش‌پردازش شده و مدل ساخته شده به عنوان ورودی به مدل داده می‌شوند. مدل با استفاده از الگوریتم‌های یادگیری ماشین (مانند پس‌انتشار خطا) وزن‌های خود را تنظیم می‌کند تا بهترین عملکرد را در وظیفه مورد نظر داشته باشد. در این فرایند، مدل با مشاهده مجموعه‌ آموزشی و نتایج تولید شده، الگوها، وابستگی‌ها و قواعد زبانی را یاد می‌گیرد. پس از آموزش، مدل ارزیابی می‌شود تا عملکرد آن را در ارتباط با وظیفه مورد نظر، مانند ترجمه یا پرسش و پاسخ، مشخص شود. این ارزیابی می‌تواند شامل معیارهایی مانند دقت، فراخوانی، بهره‌وری و یا سایر معیارهای مرتبط با وظیفه باشد. پس از آموزش و تنظیم، مدل قادر است بر روی داده‌های جدیدی که قبلا ندیده است، پیش‌بینی و تحلیل انجام دهد. با اعمال داده ورودی جدید به مدل، این مدل می‌تواند الگوها و وابستگی‌های زبانی را در داده‌ها شناسایی کند و نتیجه‌ مورد نظر را تولید کند. به طور کلی، مدل‌های NLP با استفاده از داده‌های زبانی آموزش می‌بینند و الگوها و قواعد زبانی را از طریق آموزش استخراج می‌کنند. این مدل‌ها قادرند در وظایف متنوعی مانند ترجمه، تولید متن، تشخیص احساس و پرسش و پاسخ عملکرد کنند.

مدل‌های NLP چگونه می‌توانند فرآیندهای تصمیم گیری و استنتاج درک زبانی و ارتباط بین جملات را مدل کنند؟

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

  1. شبکه‌های عصبی بازگشتی (RNN): این نوع از شبکه‌های عصبی اطلاعات زمانی را در داده‌ها در نظر می‌گیرند. با استفاده از شبکه‌هایی مثل LSTM سرنام (Long Short-Term Memory) یا GRU سرنام (Gated Recurrent Unit) مدل‌های پردازش زبان طبیعی قادر به درک وابستگی‌های زمانی در جملات هستند. این شبکه‌ها توانایی حفظ اطلاعات قبلی و تصمیم‌گیری آتی را دارند.
  2. شبکه‌های عصبی پیچشی (CNN): این نوع از شبکه‌های عصبی اصطلاحا برای پردازش تصاویر طراحی شده‌اند، اما در حوزه NLP نیز کاربرد دارند. با استفاده از لایه‌های پیچشی، مدل‌های NLP می‌توانند الگوها و ویژگی‌های مختلف زبانی را استخراج کنند. این الگوها می‌توانند شامل ترتیب کلمات، ترتیب جملات، وابستگی‌های معنایی و ساختاری و سایر الگوهای مرتبط با زبان باشند.
  3. شبکه‌های ترنسفورمر (Transformer): این نوع شبکه‌ها برای مدل کردن ارتباطات طولانی‌مدت در جملات استفاده می‌شوند. با استفاده از مکانیزم توجه (attention)، شبکه‌های ترنسفورمر قادر به تمرکز بر بخش‌های مهم جمله و برقراری ارتباطات بین کلمات و جملات است. این شبکه‌ها معمولا در وظایفی مانند ترجمه ماشینی و پرسش و پاسخ عملکرد بسیار خوبی دارند.
  4. حاشیه‌نویسی (Annotation): برخی مدل‌های NLP برای استنتاج و درک زبانی از حاشیه‌نویسی استفاده می‌کنند. در این روش، داده‌های زبانی با اطلاعات اضافی مانند برچسب‌ها، تگ‌ها یا اطلاعات دیگر غنی شده و مدل با استفاده از این اطلاعات اضافی، قادر به استنتاج و تصمیم‌گیری بهتر می‌شود. به طور مثال، در ترجمه ماشینی، حاشیه‌نویسی می‌تواند شامل ترجمه‌های قبلی، ترجمه‌های موازی یا اطلاعات دیگری باشد که به مدل در ترجمه بهتر کمک می‌کند. مدل‌های NLP با استفاده از این روش‌ها و ترکیب آن‌ها، قادر به مدل کردن فرآیندهای تصمیم‌گیری و استنتاج درک زبانی و ارتباط بین جملات هستند. این مدل‌ها می‌توانند در وظایفی مانند پرسش و پاسخ، تحلیل متن، ترجمه ماشینی، خلاصه‌سازی متن و سایر وظایف زبانی مورد استفاده قرار بگیرند. با آموزش بر روی مجموعه‌های داده بزرگ و تنوع‌بخش، این مدل‌ها قادر به یادگیری الگوها و قوانین زبانی پیچیده‌تر هستند و در نتیجه در فرآیندهای تصمیم‌گیری و استنتاج بهتر عمل می‌کنند.

نحوه استفاده از محاسبات شناختی در پردازش زبان طبیعی

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

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

مرحله بعد استنتاج است. در مرحله نهایی، مدل می‌تواند با استفاده از قوانین و دانش شناختی، به استنتاج‌های بیشتر درباره احساسات موجود در متن برسد. به عنوان مثال، مدل ممکن است بر اساس پیشینه‌های خود و دانش زبانی متن، به این نتیجه برسد که احساس نویسنده درباره یک موضوع خاص تغییر کرده است. برای این منظور، مدل‌های NLP مبتنی بر محاسبات شناختی می‌توانند از دانش و درک زبانی خود برای تشخیص جملات کلیدی و ایده‌های اصلی متن استفاده کنند و سپس آن‌ها را در یک خلاصه متنی جمع‌بندی کنند.

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

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

from nltk.tokenize import word_tokenize

knowledge_base = {

“ Hello, How Can I help you,

Bye, if you have any question, Im here”

}

def cognitive_chatbot(user_input):

    tokens = word_tokenize(user_input)

    for token in tokens:

        if token in knowledge_base:

            return knowledge_base[token]

    return “Sorry, I can’t help you”

user_input = input(“Please, Ask your question “)

response = cognitive_chatbot(user_input)

print(response)

در این مثال ساده، ما یک تابع به نام cognitive_chatbot ایجاد کرده‌ایم که با دریافت ورودی کاربر از قوانین و دانش شناختی برای پاسخ‌دهی استفاده می‌کند. ابتدا، ورودی کاربر را با استفاده از تابع word_tokenize از کتابخانه NLTK توکن‌بندی می‌کنیم. سپس، با استفاده از یک حلقه، هر توکن را تک به تک در دانش شناختی بررسی می‌کنیم. اگر توکن در دانش شناختی وجود داشته باشد، پاسخ متناظر را برمی‌گردانیم. در آخر، اگر هیچ توکنی با دانش شناختی تطابق نداشته باشد، یک پاسخ پیش‌فرض برمی‌گردانیم که اعلام می‌کند قادر به درک سوال نیستیم. در نهایت، برنامه از کاربر ورودی می‌گیرد و پاسخ را چاپ می‌کند. قطعه کد بالا، یک مثال ساده است که نشان می‌دهد با استفاده از قوانین و دانش شناختی، می‌توانیم یک چت‌بات ساده و مبتنی بر محاسبات شناختی بسازیم. به بیان دقیق‌تر، ما می‌توانیم یک سیستم پرسش و پاسخ ساده برای مطالعه متن‌ها بسازیم.

امتیاز شما به این مطلب

بدون دیدگاه

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *