پرش به محتوای اصلی

AnoLLM: تنظیم دقیق مدل‌های زبانی بزرگ (LLM) برای شناسایی ناهنجاری‌های جدولی در داده‌های مالی

· زمان مطالعه 7 دقیقه
Mike Thrift
Mike Thrift
Marketing Manager

مقاله‌ی شناسایی ناهنجاری LLM به صورت صفر-شات (zero-shot) که دو روز پیش خواندم (arXiv:2406.16308) نشان داد که GPT-4 می‌تواند بدون هیچ آموزشی، موارد پرت جدولی را شناسایی کرده و با معیارهای کلاسیک مانند ECOD در بنچمارک ODDS رقابت کند. اما این روش یک ضعف آشکار داشت: درخواست از مدل برای خروجی دادن لیستی از شاخص‌های ردیف‌های ناهنجار بسیار شکننده است — مدل‌های متن‌باز معمولاً در تولید شاخص‌ها دچار توهم می‌شوند، از محدوده خارج می‌شوند یا هر ردیف را مشکوک اعلام می‌کنند. AnoLLM که در ICLR 2025 توسط چه‌پینگ تسای، گانیو تنگ، فیلیپ والیس و وی دینگ از آمازون منتشر شده، این شکنندگی را برطرف کرده و در عین حال در مجموعه‌داده‌های با نوع ترکیبی (mixed-type)، جایی که روش‌های عددی خالص دچار چالش می‌شوند، پیشرفت ایجاد می‌کند.

مقاله

2026-06-24-anollm-llm-fine-tuning-tabular-anomaly-detection

AnoLLM شناسایی ناهنجاری‌های جدولی را به جای یک مسئله طبقه‌بندی مبتنی بر پرامپت، به عنوان تخمین چگالی مدل زبانی بازتعریف می‌کند. به جای اینکه از LLM خواسته شود نام ردیف‌های مشکوک را بگوید، نویسندگان یک مدل زبانی پیش‌آموزش‌دیده را روی ردیف‌های آموزشی سریالی‌سازی شده‌ی درون-توزیعی (نرمال) تنظیم دقیق (fine-tune) می‌کنند، سپس به هر ردیف آزمایشی بر اساس لگاریتم احتمال منفی (Negative Log-Likelihood یا NLL) تحت آن توزیع آموخته شده، امتیاز می‌دهند. ردیفی که اصلاً شبیه توزیع آموزشی نباشد، NLL بالایی دریافت می‌کند — که همان امتیاز ناهنجاری است. دیگر خبری از فرمت شاخص، پارس کردن خروجی یا استخراج شکننده‌ی Regex نیست.

سریالی‌سازی، هر ردیف جدول را به یک رشته زبان طبیعی شامل نام ویژگی‌ها و مقادیر آن‌ها تبدیل می‌کند. برای ستون‌های با مقدار متنی، NLL به ازای هر ستون نرمال‌سازی می‌شود تا از سوگیری طول جلوگیری شود، چرا که در غیر این صورت توضیحات طولانی‌تر به طور مکانیکی هزینه‌های احتمال بالاتری را انباشته می‌کردند. برای ستون‌های عددی و طبقه‌بندی‌شده، NLL خام در سطح توکن در کل فیلد جمع زده می‌شود. مدل در یک محیط نیمه‌نظارتی — که فقط ردیف‌های با برچسب نرمال وارد آموزش می‌شوند — تا ۲۰۰۰ مرحله با استفاده از آموزش توزیع‌شده روی GPU تنظیم دقیق می‌شود.

ایده‌های کلیدی

  • مشکل قالب خروجی: رویکردهای قبلی پیش‌بینی شاخص، از LLM می‌خواستند که شاخص‌های ردیف‌های ناهنجار را از یک دسته (batch) به طور قابل اعتماد خروجی دهد. مدل‌های خانواده Llama مکرراً شاخص‌های اشتباه را با مقادیر جفت می‌کنند، شاخص‌هایی فراتر از اندازه دسته تولید می‌کنند یا صرفاً همه چیز را به عنوان ناهنجار لیست می‌کنند. NLL این مشکل را کاملاً دور می‌زند.
  • AnoLLM بهترین عملکرد را در شش مجموعه‌داده بنچمارک با انواع ویژگی‌های ترکیبی، از جمله شناسایی تقلب در بیمه خودرو و مجموعه‌داده‌های تقلب تجارت الکترونیک از Kaggle به دست می‌آورد.
  • در ۳۰ مجموعه‌داده بنچمارک ODDS که عمدتاً عددی هستند، AnoLLM هم‌تراز با بهترین روش‌های کلاسیک عمل می‌کند — نه لزوماً بهتر، بلکه صرفاً رقابتی.
  • نرمال‌سازی NLL به ازای هر ستون برای ویژگی‌های متنی، یک تصمیم مهندسی کوچک اما حیاتی است: بدون آن، توضیحات یک تراکنش با سی توکن، امتیاز را نسبت به یک مبلغ دو رقمی تحت‌الشعاع قرار می‌دهد که یک سوگیری استقرایی اشتباه است.
  • زمینه مبنای آموزش: رویکرد صفر-شات GPT-4 (arXiv:2406.16308) به متوسط AUROC معادل ۷۴.۱ در ODDS دست می‌یابد که با ECOD (۷۵.۵) و KNN (۷۰.۷) قابل مقایسه است. مزیت AnoLLM به طور خاص در مجموعه‌داده‌هایی ظاهر می‌شود که ویژگی‌های متنی و طبقه‌بندی‌شده حامل سیگنال‌های ناهنجاری معناداری هستند.

چه چیزی منطقی است — و چه چیزی نیست

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

آنچه مرا نگران می‌کند، شکاف هزینه-فایده است که مقاله کمتر به آن پرداخته است. AnoLLM به تنظیم دقیق و سرویس‌دهی یک LLM برای استنتاج نیاز دارد — یک تعهد زیرساختی قابل توجه در مقایسه با اجرای ECOD یا IsolationForest روی یک CPU در عرض چند ثانیه. در بنچمارک ODDS (صرفاً عددی)، AnoLLM فقط "هم‌تراز" است و نه بهتر. بنابراین توجیه استفاده از AnoLLM کاملاً در رژیم داده‌های ترکیبی است، جایی که شش مجموعه‌داده ارزیابی شده از شناسایی تقلب در Kaggle هستند. شش مجموعه‌داده، پایه تجربی ضعیفی برای یک توصیه قوی است، به ویژه از آنجا که مجموعه‌داده‌های بنچمارک Kaggle تمایل دارند طرح‌واره‌های تمیز، معنای ستون ثابت و حقایق زمینی مشخص داشته باشند — تمام چیزهایی که داده‌های دفترکل واقعی اغلب فاقد آن هستند.

مشکل ترتیب ستون‌ها نیز باز باقی مانده است. CausalTAD (arXiv:2602.07798) بلافاصله این شکاف را شناسایی کرد: AnoLLM ستون‌ها را با ترتیب دلخواه سریالی‌سازی می‌کند و روابط علی بین فیلدها را نادیده می‌گیرد. برای داده‌های ساختاریافته با زنجیره‌های علی شناخته شده — مثلاً نوع حساب بر محدوده‌های مجاز تراکنش تأثیر می‌گذارد، که خود بر طرف حساب مورد انتظار تأثیر می‌گذارد — این یک محدودیت واقعی است. CausalTAD مرتب‌سازی مجدد را به عنوان یک مسئله ترتیب‌بندی خطی مطرح می‌کند و بهبود مستمری را نسبت به AnoLLM در بیش از ۳۰ مجموعه‌داده گزارش می‌دهد. اینکه این شکاف وجود داشت و به این سرعت پیدا شد، نشان می‌دهد که طراحی سریالی‌سازی AnoLLM کاملاً سنجیده نبوده است.

همچنین یک سوال مقیاس وجود دارد که مقاله به آن پاسخ نمی‌دهد: در چه حجمی از نمونه‌های آموزشی نرمال، تنظیم دقیق یک LLM نسبت به، مثلاً، یک مدل یادگیری عمیق جدولی که مستقیماً روی ویژگی‌های عددی آموزش دیده، ارزشش را پیدا می‌کند؟ برای دفترکل‌های شخصی Beancount با چند هزار ورودی، هزینه محاسباتی ممکن است به راحتی هرگونه افزایش دقت را بی‌اثر کند.

چرا این موضوع برای هوش مصنوعی مالی اهمیت دارد

ورودی‌های دفترکل Beancount دقیقاً همان نوع داده‌های با نوع ترکیبی هستند که AnoLLM هدف قرار می‌دهد: مبالغ (عددی)، نام حساب‌ها (متن ساختاریافته)، ذینفع/توضیحات (متن آزاد)، برچسب‌ها (طبقه‌بندی‌شده) و تاریخ‌ها (ساختاریافته). یک ردیف واحد مانند 2024-03-15 * "AWS" "Cloud invoice" Assets:Checking -$2,400 اطلاعات را در تمام این انواع به طور همزمان کدگذاری می‌کند. تشخیص‌دهنده‌های ناهنجاری کلاسیک در اینجا دچار مشکل می‌شوند زیرا به مدیریت جداگانه برای هر نوع ستون نیاز دارند و همبستگی بین آن‌ها را از دست می‌دهند — الگوی مشترکی که می‌گوید فاکتورهای "AWS" باید در محدوده خاصی باشند و به حساب مشخصی برخورد کنند.

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

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

چه چیزی را در ادامه بخوانیم

  • CausalTAD (arXiv:2602.07798) — مستقیماً AnoLLM را با تزریق ترتیب علی ستون‌ها بهبود می‌بخشد؛ فوری‌ترین پیگیری برای ارزیابی.
  • AD-LLM: Benchmarking Large Language Models for Anomaly Detection (arXiv:2412.11142, ACL Findings 2025) — ارزیابی سیستماتیک چندپارادایمی را ارائه می‌دهد که در مقالات روش‌های فردی جای آن خالی است.
  • "Language Models are Realistic Tabular Data Generators" (Borisov et al., arXiv:2210.06280, ICLR 2023) — مدل BE-GREAT که AnoLLM از آن به عنوان مبنا استفاده می‌کند؛ درک آن روشن می‌کند که AnoLLM در واقع فراتر از پیش‌بینی شاخص چه چیزی را بهبود بخشیده است.