ویرگول
ورودثبت نام
کیانوش آرین
کیانوش آرین
کیانوش آرین
کیانوش آرین
خواندن ۲۲ دقیقه·۲ روز پیش

کارکرد Knowledge Graphs در بازیابی اطلاعات برای حافظه مدل های زبانی

کارکرد Knowledge Graphs در بازیابی اطلاعات برای حافظه مدل های زبانی

کیانوش آرین 404443009

 

چکیده

با پیشرفت و قدرتمند تر شدن مدل های زبانی، استفاده از آنها در حوزه های مختلف افزایش یافته است. اما این مدل های زبانی بی نقص نیستند و ممکن است پاسخ های غیرصحیح و ساختگی تولید کنند. همچنین، هزینه‌ی به روز رسانی و ساخت مجدد این مدل ها بسیار بالاست و امکان به روزرسانی داده های آنها به سادگی وجود ندارد. برای حل این مشکلات، راهکاری به نام Retrieval-Augmented Generation پیشنهاد شده که در آن LLM را به یک پایگاه داده خارجی متصل می‌کنند تا بتواند طبق نیاز خود از پایگاه داده اطلاعات بازیابی کند. این امر دسترسی مدل زبانی به اطلاعات جدید را فراهم می‌کند و به آن کمک می‌کند تا پاسخ هایش را بر اساس اطلاعات واقعی تولید کند. Knowledge Graph ها یک ساختار برای ذخیره سازی داده ها هستند که موجودیت ها و روابط میان آنها را در گراف ذخیره سازی می‌کنند و برخی عملیات از جمله جستجو، استدلال و پیمایش در اطلاعات را ساده تر می‌کنند. در این تحقیق، به بررسی نحوه استفاده از Knowledge Graph ها به عنوان منبع دانش برای استفاده مدل های زبانی می‌پردازیم و تحقیقات موجود در این زمینه را بررسی می‌کنیم. همچنین، این روش را با روش های سنتی بازیابی اطلاعات مقایسه کرده، و نقاط ضعف و قوت آن را نسبت به این روش ها بیان می‌کنیم.

 

1  مقدمه

مدل های زبانی در بسیاری از عملیات‌های مربوط به زبان عملکرد قابل توجهی از خود نشان داده اند ]9[، به طوری که امروزه، از مدل های زبانی در زمینه های مختلف از جمله حوزه های پزشکی، اقتصادی و ... استفاده می‌شود ]8[. بنابراین مطالعات در زمینه بهبود کارکرد این مدل ها از اهمیت ویژه ای برخوردار است. مدل های زبانی هنگام تولید پاسخ از مشکلاتی همچون تولید توهم، دشواری پردازش متن های طولانی، و فراموش کردن تدریجی رنج می‌برند. همانطور که انسان ها می‌توانند از ابزار های خارجی، مانند دفترچه یادداشت، کامپیوتر، و... برای بهبود عملکرد مغز خود استفاده کنند، مدل های زبانی نیز می‌توانند از افزونه های خارجی برای بهبود توانایی های شناختی خود استفاده کنند ]8[. یکی از مهم ترین این ابزار ها، RAG است که با کمک آن مدل زبانی بجای اتکای کامل به حافظه درونی و پارامتر های خود، به از یک منبع دانش خارجی استفاده می‌کند تا پاسخ های مناسب تری را تولید کند. Knowledge Graph ها به دلیل ماهیت ساختارمندشان گزینه ی مناسبی برای استفاده به عنوان یک حافظه خارجی برای LLM هستند.

در ادامه این مقاله، با ساختار فوق به بررسی  این موارد می‌پردازیم. در قسمت دوم به معرفی و توضیح Knowledge Graph ها و کاربرد های آن می‌پردازیم. در قسمت سوم به توضیح Information Retrieval و به ویژه کاربرد آن برای توانمند سازی LLM ها می‌پردازیم و به روش های استفاده شده کنونی در این زمینه می‌پردازیم. در قسمت چهارم، به بررسی کارکرد Knowledge Graph ها در بازیابی اطلاعات برای LLM پرداخته، چندین روش معرفی شده در تحقیقات بدین منظور را شرح داده و نقاط قوت و ضعف این روش در مقایسه با روش های پیشین بررسی می‌کنیم. در انتها، در قسمت پنجم به جمع‌بندی و نتیجه گیری کلی پرداخته و یافته های تحقیق در این حوزه را با تمرکز بر نقاط قوت و ضعف، بیان می‌کنیم.

 

 

2 مروری بر ادبیات  Knowledge Graph ها

Knowledge Graph گراف جهت داری است که از تعداد راس و یال تشکیل شده، به طوری که هر راس یک موجودیت در جهان واقعی را نشان می‌دهد و یال های بین رئوس، رابطه معنایی بین دو موجودیت را نشان می‌دهد [1]. بنابراین Knowledge Graph را می‌توان با یک سه تایی (موجودیت اول، رابطه، موجودیت دوم) نمایش داد. برای مثال، رابطه بین دانشجو و رشته تحصیلی‌اش را می‌تواند به صورت (کیانوش آرین، تحصیل می‌کند، مهندسی کامپیوتر) نمایش داد.

 

2.1  ساخت Knowledge Graph ها

برای ایجاد یک Knowledge Graph، ابتدا باید دانش (موجودیت ها و روابط میان آنها)، از منابع استخراج شود. این منابع می‌توانند ساختارمند (structured) یا بدون ساختار باشند [3]، برای مثال، یک صفحه کتاب منبعی بدون ساختار است، در حالی که یک فایل Excel می‌تواند حاوی اطلاعات ساختارمندی درباره یک موضوع باشد. استخراج دانش را می‌توان به روش‌ انسانی یا اتوماتیک انجام داد. روش انسانی بسیار هزینه‌بر است، در حالی که نتایج روش اتوماتیک به دلیل اجرای خودکار توسط کامپیوتر قابل اعتماد نیست و باید ارزیابی شود. چالش های ساخت Knowledge Graph عبارتند از قابل اعتماد بودن روش استخراج دانش و ارزیابی آن، محدود بودن روش های استخراج دانش به یک زبان، و ایجاد گراف های دانش چند وجهی (متن، تصویر، …) [3].

 

2.2  کارکرد ها

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

 

برخی از مهم ترین زمینه‌های تجقیقاتی مربوط به Knowledge Graph ها به شرح زیر هستند [3]:

Knowledge Graph Embeddings:

انتقال گراف به یک فضای برداری. معمولا این انتقال به گونه ای انجام می‌شود که نمایش برداری رئوس و یال ها با ساختار گراف رابطه داشته باشد.

Knowledge Acquisition:

نحوه استخراج دانش از منابع و ایجاد گراف از آن

Knowledge Graph Completion:

بهبود کیفیت گراف های موجود، پیش‌بینی رئوس و یال هایی که در گراف نمایش داده نشده اند

Knowledge Fusion:

ترکیب دانش استخراج شده از چندین منبع و استفاده از آنها برای ایجاد یک گراف واحد

Knowledge Reasoning:

استدلال بر روی گراف جهت پیدا کردن اطلاعات غلط، یا پیش‌بینی روابطی که یال های فعلی آنها را نمایش نداده است

کارکرد در سیستم های هوش مصنوعی:

مطالعه بر کارکرد Knowledge Graph ها در سیستم های پیشنهاد، پاسخ به سوال، و یا بازیابی اطلاعات

کارکرد های عملی:

استفاده در فیلد هایی از جمله آموزش، پزشکی، فضای مجازی و …

 

3 مروری بر ادبیات  بازیابی اطلاعات برای LLM ها

با پیشرفت های اخیر در توانایی مدل های زبانی، استفاده از این مدل ها در انواع کارهای روزمره و حرفه ای افزایش پیدا کرده. اما پاسخ تولید شده توسط این مدل ها همیشه قابل اعتماد نیست، و به خصوص در کاربرد های مختص دامنه های خاص که اطلاعات کمتری در آن زمینه موجود است ممکن است پاسخ های اشتباه یا نامربوط تولید کنند. به این امر، توهم گفته می‌شود [4]. علاوه بر این، قدیمی بودن داده های Train مدل های زبانی و نیاز به اطلاعات به روز، و همچنین بدون منبع بودن پاسخ های مدل زبانی از محدودیت هایی است که استفاده گسترده از مدل های زبانی را دشوار می‌کند [5].  برای بهبود این مشکلات، روش جدید معرفی شد که در آن LLM ابتدا در یک منبع داده خارجی جستجو می‌کند تا اطلاعات مربوط را بازیابی کند، و سپس با کمک اطلاعات بازیابی شده، به سوال پاسخ دهد [5]. این روش که Retrieval-Augmented Generation یا به اختصار RAG نام دارد، می‌تواند عملکرد LLM ها در انواع کار ها را بهبود بخشد، چرا که به ما اطمینان می‌بخشد خروجی های LLM بر اساس اطلاعات بازیابی شده تولید شده اند و باعث ایجاد پاسخ های دقیق تر و قابل اعتماد تر می‌شود [6]. از جمله زمینه هایی که RAG در آن کاربرد دارد می‌توان به پاسخ‌دهی به سوالات، تولید متن و خلاصه سازی، بازیابی اطلاعات، بررسی متن، تولید و نگهداری نرم‌افزار، و تصمیم گیری اشاره کرد [6].

 

3.1  نحوه بازیابی اطلاعات

بازیابی اطلاعات ممکن است از سه نوع منبع انجام شود دسته اول متن های بدون ساختار هستند، مثلا فایل text که به شکل ساده نوشته شده است. دسته دوم منبع های نیمه-ساختارمند مانند فایل PDF هستند که ترکیبی از متن و جدول ها هستند. دسته سوم منبع های کاملا ساختارمند مانند Knowledge Graph هستند که برای دستیابی به اطلاعات با دقت بالا استفاده می‌شوند [5]. برای بازیابی، مدل زبانی ابتدا یک Query تولید می‌کند، که عبارتی‌ست که میخواهیم آن را در متن جستجو کنیم، و سپس به روش های جستجوی متن مختلف مانند Embedding Search، BM25، یا روش ترکیبی، Query را در منابع جستجو می‌کند [5].

 

 

4  کارکرد Knowledge Graph در بازیابی اطلاعات برای LLM ها

استفاده از Knowledge Graph برتری های زیادی بر روش‌های Unstructured و Semi-Structured برای بازیابی اطلاعات دارد. تحقیقات نشان داده که روش های جستجوی Dense Vector Similarity مانند Embedding Search در پاسخ به سوالات پیچیده از سطح عملکرد کافی برخوردار نیستند [5]. همچنین، استفاده از Knowledge Graph ها در موقعیت هایی که توضیح و تفسیر پاسخ های داده شده از اهمیت برخوردار است ضروری می‌باشد [7]. برخی مثال های دیگر از این برتری ها عبارتند از [3]:

افزایش بازدهی جستجو: با توجه به این که رئوس و یال های گراف از منابع متنی بسیار بزرگ استخراج شده اند، Knowledge Graph ها می‌توانند فضای جستجو را نسبت به کل منابع متنی کاهش دهند و  عملیات را بهینه تر کرده و زمان جستجو را بهبود دهند.

نتایج جستجوی دقیق تر: جستجو در Knowledge Graph ها بر اساس روابط بین موجودیت های گراف انجام می‌شود، که روشی دقیق تر از صرفا پیدا کردن شباهت بین Query و Document در روش های عادی بازیابی است.

نمایش معنایی مفاهیم: در Knowledge Graph، مفاهیم به صورت مدل های Formal و متصل نمایش داده می‌شوند و قابلیت جستجوی معنایی، استدلال و گسترش Query دارند. این امر عموما سبب می‌شود موارد بیشتری بازیابی شوند و قابلیت توضیح سیستم را افزایش می‌دهد.

 

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

 

4.1.1 روش KG-RAG برای پاسخ‌دهی به پرسش ها

محققان در این تحقیق [8] با پیاده سازی مدلی به نام KG-RAG به مقایسه عملکرد Knowledge Graph و روش های سنتی RAG برای پاسخگویی مدل های زبانی به پرسش هایی در دیتاست ComplexWebQuestions پرداختند. در روش KG-RAG ابتدا با استفاده از LLM ها یک Knowledge Graph از منابع متنی بدون ساختار ایجاد می‌شود. بدین منظور، LLM رئوس و یال های گراف را از منابع متنی با روش Few-Shot Learning استخراج می‌کند و گراف به طور اتوماتیک ایجاد می‌شود. همچنین، برای نمایش روابط پیچیده، سه‌تایی های موجودیت-رابطه-موجودیت خودشان می‌توانند به عنوان رئوس گراف در نظر گرفته شوند و با یک رابطه به رئوس دیگر متصل شوند. پس از ایجاد گراف، embedding های تمامی رئوس و یال های گراف محاسبه شده و در دیتابیس ذخیره می‌شود. این تحقیق، برای بازیابی اطلاعات روشی نوین به نام Chain of Explorations معرفی می‌کند که روش اجرای آن به طور فوق است:

ابتدا به کمک Embedding Search، تعدادی از رئوس مشابه با Query را پیدا می‌کنیم و روابط متصل به آنها را بازیابی می‌کنیم. سپس، هر کدام را ارزیابی کرده و با کمک LLM تصمیم می‌گیریم که آیا تا این مرحله به پاسخ مورد نظر رسیده ایم یا نه. اگر به پاسخ رسیده بودیم، اطلاعات کسب شده را باز گردانده و پاسخ نهایی را تولید می‌کنیم. در صورتی که هنوز به پاسخ نرسیده بودیم، دوباره یال ها و رئوس را در سطح بعدی بازیابی کرده و عملیات را بر روی روابط جدید تکرار می‌کنیم.

 

4.1.2 مقایسه نتایج روش KG-RAG برای پاسخ‌دهی به پرسش ها با روش های پیشین

نتیجه ی تست این پیاده‌سازی بر روی دیتاست ComplexWebQuestions نشان می‌دهد که استفاده از Knowledge Graph برای پاسخ‌دهی به سوالات به مقدار F1-Score 25% منجر می‌شود در حالی که استفاده از  embedding-rag عادی مقدار F1-Score 37% به ما می‌دهد. همچنین، مقدار توهم های تولید شده توسط Knowledge Graph مقدار %15 می‌باشد، در حالی که روش embedding-rag عادی %30 توهم تولید می‌کند. این امر نشان‌دهنده آن است که با وجود این که Knowledge Graph عملکرد ضعیف تری در بازگرداندن پاسخ صحیح سوالات دارد، اما اطلاعات غلط بسیار کمتری نیز تولید می‌کند. این امر می‌تواند در کارکرد های خاصی که به شدت به پاسخ های غلط حساس هستند، مفید باشد. همچنین، نویسنده مقاله محدودیت توان پردازشی را مانعی در راه ایجاد Knowledge Graph از دیتاست به شکل کامل و همچنین تست تمام نمونه های دیتاست بیان می‌کند.

 

 

4.2.1 روش KRAGEN برای حل مسائل پیچیده و پاسخ‌دهی در حوزه پزشکی

محققان در این روش [10] برای کاهش توهم ها و اطمینان از صحت پاسخ های مدل زبانی در حوزه پزشکی، از Knowledge Graph ها برای بازیابی اطلاعات و از Graph of Thoughts برای تحلیل و استدلال بهره گرفته اند. هدف این تحقیق این بود که ببینند آیا افزودن Graph of Thoughts به فرایند بازیابی اطلاعات با Knowledge Graph ها سبب بهبود آن می‌شود یا نه. در این روش مسئله‌ای که مدل سعی در حل آن را دارد به تعدادی زیر مسئله مستقل شکسته شده و ارتباطات میان آنها (وابستگی های اطلاعاتی و پیش نیاز ها) به شکل یک گراف جهت دار نمایش داده می‌شوند (Graph of Thoughts). سپس، اطلاعات مورد نیاز برای هریک از زیر مسئله های داخل گراف با بازیابی اطلاعات از پایگاه داده استخراج می‌شود. بدین منظور، یک دیتاست با ساختار Knowledge Graph از اطلاعات پزشکی (بیماری ها، دارو ها، ویروس ها و ...) را انتخاب کرده، و آنرا به Embeddings تبدیل کرده، و در آن به صورت هیبرد Keyword Search و Embedding Search کردند. انجام Keyword Search به این دلیل اهمیت دارد که در حوزه پزشکی، اصطلاحات کمیاب و خاص بیشتر وجود دارد و Embedding Search به تنهایی، برای این نوع اطلاعات عملکرد ضعیف تری دارد. سپس، مدل با استفاده از پاسخ هر زیر مسئله و با توجه ارتباط زیر مسائل مختلف در گراف برای رسیدن به جواب صحیح استدلال کرده و جواب نهایی مسئله را تولید می‌کند.

 

4.2.2 نتایج روش KRAGEN

نویسندگان برای ارزیابی تاثیر این روش، آنرا بر روی دیتاست Alzheimer's Knowledge Graph پیاده سازی کرده و نتایج دو حالت زیر را مقایسه کردند:

در حالت اول مطابق شرح بالا، از Graph of Thoughts به همراه بازیابی اطلاعات از Knowledge Graph استفاده شد.

در حالت دوم، بدون استفاده از Graph of Thoughts و تنها با بازیابی اطلاعات به همراه Knowledge Graph به سوالات پاسخ داده شد.

نتایج آزمایش نشان داد که افزودن Graph of Thoughts به بازیابی اطلاعات سبب بهبود نتایج در پاسخ‌دهی به سوالات چهار گزینه‌ای و صحیح / غلط می‌شود. در سوالات چند گزینه ای تک مرحله ای (یک بار بازیابی از Knowledge Graph) عملکرد از 56.6% به 70.4% بهبود یافته و در سوالات دو مرحله ای (دو بار بازیابی از Knowledge graph) عملکرد از 53.1% به 71.8% بهبود می‌یابد. در سوالات صحیح / غلط تک مرحله ای، accuracy از 68.6% به 80.3% و در سوالات دو مرحله ای، از 62.4% به 62.9% بهبود یافتند. بنابراین، نتایج نشان می‌دهند که افزودن Graph of Thoughts به بازیابی اطلاعات توسط Knowledge Graph ها سبب بهبود قابل توجه در نتایج این روش می‌شود.

 

 

4.3.1 LLAMAREC، سیستم پیشنهاد فیلم با کمک LLM و Knowledge Graph

نویسندگان این تحقیق [11] در ابتدا بیان می‌کنند که روش های سنتی RAG که برای سیستم های توصیه استفاده می‌شوند تنها بر پایه شباهت معنایی کلمات بازیابی را انجام می‌دهد و ارتباطات ساختاری میان سلیقه کاربر و آیتم های توصیه شده را در نظر نمی‌گیرند. برای مثال، برای پیشنهاد فیلم سینمایی به کاربران عوامل زیادی از جمله کارگردان، بازیگران، ژانر، خلاصه، سال انتشار، و ... می‌تواند در تصمیم‌گیری موثر باشند که بسیاری از این ارتباطات در جستجوی معنایی از دست می‌روند. بنابراین، نویسندگان یک Knowledge Graph از فیلم ها ایجاد کرده، و می‌کوشند با یافتن ارتباطات میان فیلم های مورد علاقه کاربران با فیلم های کاندید برای معرفی، فیلم های کاندید را بر حسب علایق کاربران اولویت بندی کنند. بدین منظور، ابتدا با یک مدل سبک وزن مانند LRURec تعدادی کاندید برای پیشنهاد به کاربر استخراج می‌شود. سپس، زیر گرافی شامل فیلم های مورد علاقه کاربر به همراه کاندید های پیشنهادی برای بررسی بیشتر از Knowledge Graph استخراج می‌شود. در این مرحله، Knowledge Graph به یک شبکه عصبی داده می‌شود تا به کمک آن، مهم ترین عوامل در علایق کاربر (کارگردان، ژانر، ...) پیدا شده و قوی ترین ارتباطات میان علایق و فیلم های پیشنهادی کاندیدا یافت شود. خروجی این مرحله، این ارتباطات هستند که به شکل زیر نمایش داده می‌شوند.

Alex -> Likes -> Christopher Nolan -> Directed -> Dunkirk

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

 

4.3.2 مقایسه نتایج LLAMAREC به همراه Knowledge Graph

برای ارزیابی این روش، نویسندگان مدل LLAMAREC را در دو حالت با استفاده از Knowledge Graph و شبکه عصبی و بدون استفاده از آنها بر روی دو دیتاست فیلم ها و محصولات آرایشی آمازون مقایسه کرده اند.

نتایح مقایسه در دیتاست فیلم ها بهبود قابل توجه 22.5% در پیشنهاد اولویت اول (NDCG@1)، و بهبود 7% در 5 اولویت اول (NDCG@5) را نشان می‌دهد، در حالی که در دیتاست محصولات آرایشی آمازون بهبود کمتر 5% در پیشنهاد اولویت اول و بدون بهبود در 5 اولویت اول دیده می‌شود. نویسندگان بهبود کمتر در پیشنهاد لوازم آرایشی را به دلیل sparse تر بودن گراف محصولات آرایشی و ارتباطات کمتر میان آیتم ها در این گراف می‌دانند.

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

 

 

4.4.1 KRGAR-SC، انتقال معنایی و بازسازی پیام در محیط های با پهنای باند کم و نویز بالا به کمک Knowledge Graph ها

در این مقاله، سیستم ارتباطی ای با بازدهی بالا به کمک Knowledge Graph ها و LLM ها طراحی شده است تا در محیط هایی که به دلیل نویز و یا محدودیت های مختلف از جمله پهنای باند امکان ارسال پیام های طولانی موجود نیست، بتوان با حداقل انتقال اطلاعات و رساندن مفهوم، ارتباط برقرار کرد. بدین منظور، لازم است که فرستنده و گیرنده هر دو یک Knowledge Graph یکسان از entity ها و relation های میان آنها و توضیحات برای هر entity ای که در پیام مورد بحث قرار می‌گیرد را در اختیار داشته باشند. عملکرد این مدل بدین صورت است که ابتدا پیام اصلی که احتمالا طول بلندی دارد در نظر گرفته می‌شود و با Named Entity Recognition، رئوس گراف مرتبط با مفاهیم موجود در پیام، به همراه ارتباط این مفاهیم (یال های گراف) از پیام استخراج می‌شوند. کامیونیتی های داخل Knowledge Graph اصلی، به جهت پیدا کردن Entity های مناسب تر با مفاهیم داخل پیام جستجو می‌شوند و Entity های استخراج شده توسط یک LLM بررسی می‌شوند. سپس، بجای این که کل پیام برای مقصد ارسال شود، یک زیرگراف مینیمم از Knowledge Graph اصلی که از پیام استخراج شده برای مقصد ارسال می‌شود که به عنوان استخوان بندی اصلی پیام در نظر گرفته می‌شود. هنگام ارسال، به Entity های مرکزی تر (Centrality) اولویت بالاتری داده می‌شود و هنگام ارسال برای آنها سیستم پیشگیری از خطای بیشتری در نظر گرفته می‌شود تا اگر نویز محیط ارسال را خراب کرد، نود های مهم تر با احتمال کمتری خراب شوند. در نهایت، گیرنده Entity های گراف را دریافت کرده، توضیحات این نود ها را از گراف استخراج کرده و به LLM می‌دهد تا با توجه به روابط گراف، پیام را بازسازی کند.

 

4.4.2 مقایسه عملکرد KGRAG-SC با روش های پیشین از جمله Huffman Coding

برای بررسی عملکرد این روش، نویسندگان از دیتاست WebNLG استفاده کرده و معیار ارزیابی صحت انتقال پیام ها را Semantic Similarity میان پیام ارسال شده و دریافت شده با استفاده از مدل AllMiniLM-L6-v2 در نظر گرفته اند. نتایج ارزیابی نشان می‌دهد که در شرایط نویز بسیار بالا، روش KGRAG-SC بهبود قابل توجه‌ی نشان می‌دهد، به طوری که در نویز 4db، شباهت معنایی این روش 0.78 است در حالی که روش Huffman شباهت 0.285 به ما می‌دهد. در نویز بالاتر از 8db، روش Huffman به عملکرد تقریبا بی نقص 0.997 می‌رسند که کمی بیشتر از روش ابداعی این تحقیق در 0.882 است. بنابراین نتیجه این آزمایش به ما نشان می‌دهد که روش KGRAG-SC در شرایط محیطی با نویز بسیار بالا، به ما بهبود قابل توجهی در انتقال پیام می‌دهد در حالی که با بهبود شرایط و کاهش نویز، روش های سنتی برای انتقال پیام عملکرد بهتری از خود نشان می‌دهند.

 

 

4.4.1 روش Graph-RAG برای پاسخ‌دهی به کوئری های سطح بالا

بازیابی اطلاعات به روش های سنتی مانند embedding search تنها تعداد محدودی از قطعات اطلاعات متن اصلی را به ما می‌دهند درحالی که برای برخی تسک ها مانند خلاصه سازی متنهای طولانی و استخراج مفهوم از متن، به کل متن نیاز داریم و قطعات محدود بازیابی شده توسط روش های سنتی کافی نیستند. بنابراین، نویسندگان این تحیق [13] یک فریمورک سطح بالا برای فهم تمامی محتوای متن پیشنهاد کرده اند که حتی برای متن های بسیار طولانی با بازدهی مناسبی عمل می‌کند. این فریمورک، ابتدا با استخراج Entity ها و Relation ها از متن اصلی، یک Knowledge Graph ایجاد کرده و سپس با الگوریتم Leiden بر روی آن Community Detection انجام می‌دهد. Community های ایجاد شده در سه سطح Top-Level، Sub-Communities و Leaf-Level ایجاد می‌شوند. سپس، برای هر Community یک خلاصه توسط LLM تولید می‌شود. این خلاصه برای کامیونیتی های سطح برگ توسط رئوس و یال های گراف ایجاد شده، و ای کامیونیتی های سطح بالا تر توسط خلاصه های کامیونیتی های سطح پایین زیرمجموعه شان تولید می‌شود. در این مرحله، آماده سازی داده ها به پایان می‌رسد. هر بار که از مدل زبانی پرسشی درباره متن صورت بگیرد، مدل پاسخ را بر حسب خلاصه هر یک از Community ها تولید کرده، و در نهایت ترکیب این پاسخ ها به پاسخ کلی مسئله می‌رسد.

 

4.4.2 نتایج ارزیابی روش KG-RAG

برای ارزیابی، مدل پیشنهادی با دو مدل Vector RAG (بازیابی اطلاعات سنتی) و Source Text Summarization (خلاصه سازی مستقیم متن توسط LLM) مقایسه شده و معیار های Comprehensiveness و Diversity پاسخ های تولید شده ارزیابی می‌شود. در مقالات خبری، روش Vector RAG عملکرد 25.23 (تعداد فکت هایی از مقالات خبری مختلف استخراج شده) داشت در حالی که روش Graph RAG با مقدار 34.18 فکت، عملکرد بهتری در پاسخگویی به سوالات نشان داد. روش Text Summarization عملکرد کمی ضعیف تر از مدل Graph RAG داشته، اما مصرف توکن آن 26% تا 97% بیشتر از آن بوده. این نتایج نشان می‌دهند که GraphRAG، هم از لحاظ بهینه بودن در استفاده از منابع و هم از لحاظ عملکرد، بر روش های پیشین برتری دارد و می‌تواند بهتر به Query های جامع پاسخ دهد. همچنین، عملکرد پاسخ‌دهی GraphRAG با استفاده از سطوح مختلف Community ها مقایسه شده و نتایج نشان دادند که سطوح پایین تر Community ها (ریز دانه تر)، عملکرد بهتری نسبت به سطوح بالا دارند اما توکن بیشتری نیز برای تولید جواب استفاده می‌کنند

 

 

5  نتیجه گیری و جمع‌بندی

LLM ها با وجود توانایی قابل توجه در انجام عملیات های مربوط به زبان طبیعی، از مشکلاتی همچون توهم، دشواری استدلال و فراموش کردن رنج می‌برند. استفاده از Knowledge Graph برای بازیابی اطلاعات می‌تواند به بهبود این مشکلات کمک کند. Knowledge Graph ها با ارائه اطلاعات به صورت ساختارمند، امکان بازیابی دانش مورد نیاز را فراهم می‌کنند تا LLM ها بتوانند پاسخ هایی مناسب تر با نیاز کاربر تولید کنند. در این مقاله، نحوه پیاده سازی بازیابی اطلاعات با کمک Knowledge Graph ها به این منظور شرح داده شد و همچنین برتری های آنها بر روش های سنتی بازیابی اطلاعات ذکر شد. همچنین، چند مثال از پیاده سازی های موردی Knowledge Graph برای بازیابی اطلاعات شرح و بررسی شد. نتایج تحقیقات به ما نشان دادند که استفاده از Knowledge Graph ها نسبت به روش های بازیابی اطلاعات سنتی، می‌تواند منجر به کاهش توهمات مدل های زبانی شود ]8[. این درحالی‌ست که دیگر تحقیقات نشان می‌دهند چگالی روابط داخل Knowledge Graph می‌تواند بر کیفیت پیشنهاد‌ها در سیستم های پیشنهاد کننده به کمک LLM تاثیر مستقیم بگذارد و هر چقدر روابط کامل تر باشند، پیشنهادات بهتری دریافت می‌کنیم ]11[. این گراف ها با وجود این که در برخی موارد در عین بهبود عملکرد استفاده از منابع را برای پاسخ‌گویی کاهش می‌دهند ]13[، اما به نیروی اولیه ای برای ساخت گراف نیاز دارند که ممکن است در نهایت سبب هزینه بیشتری شود. همچنین، این گراف ها ما را در خلاصه سازی و استخراج معنا از پیام های بلند یاری می‌کنند و به ویژه در محیط های با نویز بالا، امکان ارتباط سبک وزن را به کمک LLM ها را برای ما فراهم می‌کنند. همچنین، چندین مورد از تحقیقات بررسی شده از الگوریتم های Community Detection برای بهبود بازیابی اطلاعات از این گراف ها استفاده کرده اند که نشانگر اهمیت مفهوم Community ها در این حوزه می‌باشد.

 

 

6  منابع

[1]  Bordes A, Weston J, Collobert R et al (2011) Learning structured embeddings of knowledge bases. In: Twenty-fifth AAAI conference on artificial intelligence

[2] Zou X (2020) A survey on application of knowledge graph. JPhCS 1487(1):012016

[3] Peng, C., Xia, F., Naseriparsa, M. et al. Knowledge Graphs: Opportunities and Challenges. Artif Intell Rev 56, 13071–13102 (2023).

[4] Kandpal, N., Deng, H., Roberts, A., Wallace, E., & Raffel, C. (2023). “Large language models struggle to learn long-tail knowledge,” In International Conference on Machine Learning. PMLR: 5696-15707.

[5] Gao, Y., Xiong, Y., Gao, X., Jia, K., Pan, J., Bi, Y., ... & Wang, H. (2023). “Retrieval-augmented generation for large language models: A survey,” arXiv preprint arXiv:2312.10997.

[6] Arslan, M., Ghanem, H., Munawar, S., & Cruz, C. (2024). “A survey on RAG with LLMs,” Procedia Computer Science, 246, 3781–3790.

[7] Jiaoyan Chen, Freddy Lecue, Jeff Z. Pan, Ian Hor rocks, and Huajun Chen. Knowledge-based Transfer Learning Explanation. In KR, pages 349–358, 2018.

[8] Sanmartin, D. (2024). “KG-RAG: Bridging the Gap Between Knowledge and Creativity,” arXiv preprint arXiv:2405.12035.

[9] Pan, J. Z., Razniewski, S., Kalo, J.-C., Singhania, S., Chen, J., Dietze, S., Jabeen, H., Omeliyanenko, J., Zhang, W., Lissandrini, M., Biswas, R., de Melo, G., Bonifati, A., Vakaj, E., Dragoni, M., & Graux, D. (2023). Large language models and knowledge graphs: Opportunities and challenges. Transactions on Graph Data and Knowledge, 1(1), 2:1–2:38.

[10] Matsumoto N, Moran J, Choi H, Hernandez ME, Venkatesan M, Wang P, Moore JH. KRAGEN: a knowledge graph-enhanced RAG framework for biomedical problem solving using large language models. Bioinformatics. 2024 Jun 3;40(6):btae353. doi: 10.1093/bioinformatics/btae353. PMID: 38830083; PMCID: PMC11164829.

[11] Azizi, V., & Koochaki, F. (2025). LlamaRec-LKG-RAG: A Single-Pass, Learnable Knowledge Graph-RAG Framework for LLM-Based Ranking. arXiv preprint arXiv:2506.07449.

[12] Fan, D., Meng, R., Gao, S., & Xu, X. (2025). KGRAG-SC: Knowledge Graph RAG-Assisted Semantic Communication. 2025 lEEE International Conference on Cloud Computing Technology and Science (CloudCom), 1-7.

[13] Edge, D., Trinh, H., Cheng, N., Bradley, J., Chao, A., Mody, A.N., Truitt, S., & Larson, J. (2024). From Local to Global: A Graph RAG Approach to Query-Focused Summarization. ArXiv, abs/2404.16130.

 

 

 

بازیابی اطلاعاتمدل‌های زبانی
۱
۰
کیانوش آرین
کیانوش آرین
شاید از این پست‌ها خوشتان بیاید