تخطّ إلى المحتوى
كل الرؤى طبقة البيانات المالية

مراقبة جودة البيانات (data quality observability) لأنظمة الذكاء الاصطناعي المالية

تدفّق بيانات معطوب يظهر على شكل إجابة خاطئة على بُعد ثلاث طبقات لاحقة. إليك مراقبة الحداثة والحجم والمخطّط (schema) التي نفرضها على البيانات المالية.

4 دقائق قراءة #مراقبة البيانات#جودة البيانات#الرصد
متخصصون في القطاع المالي يعملون على مبادرة للذكاء الاصطناعي

مراقبة جودة البيانات (data quality observability) لأنظمة الذكاء الاصطناعي المالية هي التتبّع المستمر (telemetry) الذي تفرضه على البيانات التي تُغذّي النموذج، بحيث يُلتقط أي مدخل معطوب عند مصدره لا أن يُستنتج من إجابة خاطئة على بُعد طبقات لاحقة. عمليًا يعني ذلك مراقبة أربعة أمور على كل جدول يقرأه النموذج: الحداثة، والحجم، والمخطّط (schema)، وتوزيع القيم نفسها. الهدف هو أن يفشل النظام بصوت عالٍ عند الإدخال (ingestion) بدلًا من أن يفشل بصمت عند الاستدلال (inference).

نمط الفشل الذي يوقع الناس في الفخّ ليس خطّ المعالجة الذي يتعطّل. المهمّة المتعطّلة تُنبّه أحدهم فورًا. الخطير هو خطّ المعالجة الذي يواصل العمل على تدفّق توقّف عن التحديث، أو بدّل عملة بصمت، أو صار يرسل قيمة فارغة (null) حيث كان يرسل صفرًا. لا شيء يُطلق خطأً. الجداول تمتلئ. والنموذج يُصدر درجاته. وعلى بُعد ثلاث طبقات لاحقة، يكون رقم المخاطر منحرفًا بمعامل لا تستطيع تفسيره في مراجعة نهاية الربع، وتجد نفسك تقرأ سجلّات الالتزام (commit logs) بالعكس بحثًا عن الموضع الذي انحرف فيه الرقم.

الحداثة هي أوّل ما يتعطّل وآخر ما يتفقّده الناس

معظم البيانات المالية لها نبضة قلب. ملف أسعار من مورّد يصل في وقت معلوم. ومستخرج من دفتر الأستاذ (ledger) يعمل وفق جدول. ومزوّد اعرف عميلك (KYC) يدفع التحديثات وفق وتيرته هو، لا وتيرتك أنت. وحين تتخطّى تلك النبضة، لا تختفي البيانات؛ بل تتقادم، وهذا أسوأ، لأنّ البيانات القديمة تبدو تمامًا كالبيانات الحديثة أمام كل ما يقع بعدها.

نضع ميزانية حداثة لكل مصدر، ونضبطها وفق السلوك الفعلي للمصدر لا وفق رقم مستدير أعجب أحدهم. فإن كان مورّد ما ينشر أسعار نهاية اليوم عند الساعة 18:05 بتوقيت نيويورك في أيام العمل، يعرف الفحص المنطقة الزمنية، ويعرف رزنامة العطلات، ويعرف ألّا يتوقّع ملفًا في عطلة سوق. يُطلق التنبيه حين يصبح أحدث تقسيم (partition) أقدم ممّا تسمح به الميزانية، والمهمّة اللاحقة التي تستهلكه تتوقّف عند هذا الفحص بدلًا من المضيّ قُدُمًا.

  • اربط اتفاقية مستوى الخدمة (SLA) بوتيرة النشر الحقيقية، لا بلحظة تشغيل مهمّتك صدفةً.
  • مرِّر المنطقة الزمنية للمصدر عبر الفحص. “الأمس” لحظة مختلفة في ثلاثة مراكز بيانات.
  • ميّز بين “المتأخّر” و”المفقود”. ملف متأخّر عشرين دقيقة تحذير. أمّا ملف لم يصل قط قبل الموعد النهائي للنموذج فهو توقّف قاطع.
  • راقِب هنا أيضًا صحّة اللحظة الزمنية (point-in-time correctness). التدفّق الذي يملأ صفوفًا تاريخية بأثر رجعي سيعيد بصمت كتابة ما كان النموذج ليراه في تاريخ سابق، وهكذا يتسلّل التسريب (leakage) إلى الاختبار الخلفي (backtest).

الحجم والمخطّط يلتقطان الأعطال التي تجتاز مع ذلك كل فحص للنوع

عدد الصفوف أداة فجّة، وهو من أوثق الإشارات التي بحوزتك. حين يصل جدول يستقبل مليوني صف يوميًا بستّين ألف صف فقط، فقد اقتُطع شيء أعلى السلسلة، ولن يخبرك أي تحقّق على مستوى الصف بذلك، لأنّ كلًّا من هذه الصفوف الستّين ألفًا صحيح بمفرده. لذا نتتبّع الحجم المتوقّع كنطاق يراعي الشكل الأسبوعي والشهري للنشاط. حجم التسوية (settlement) ليس مسطّحًا عبر الأسبوع. والتقارير ترتفع بحدّة عند نهاية الربع. العتبة الثابتة إمّا تصرخ كل يوم اثنين أو تفوّت هبوطًا حقيقيًا، لذا يجب أن يعرف النطاق الرزنامة.

المخطّط (schema) هو القاتل الصامت الآخر. يعيد مورّد تسمية عمود، أو يغيّر مقياس عدد عشري، أو يرقّي حقلًا تعدادِيًّا (enum) إلى نصّ حرّ، وإن كنت تقرأ حسب الموضع أو تحوّل الأنواع بتساهل، امتصّ خطّ المعالجة ذلك ومضى. نحن نثبّت المخطّطات صراحةً ونتعامل مع أي انحراف كحدث يتطلّب قرارًا بشريًا، لأنّ تغيير المخطّط كثيرًا ما يكون تغييرًا في عقد البيانات (data contract) لم يخبرك به أحد.

  • النوع وقابلية القيمة الفارغة (nullability) لكل عمود، مفحوصان عند الوصول، لا مفترضين.
  • الأصالة (cardinality) في الحقول التصنيفية. عمود عملة يحمل فجأةً أربعين قيمة متمايزة بدل اثنتي عشرة يعني دمجًا (merge) خاطئًا أو فشلًا في حلّ الكيانات (entity resolution) أعلى السلسلة.
  • الوحدات والمقياس. نقاط الأساس (basis points) مقابل النسبة المئوية، السنتات مقابل الدولارات. هذه تجتاز كل فحص للنوع وتدمّر كل عملية حساب.
  • تفرّد المفتاح الأساسي (primary key) والتكامل المرجعي (referential integrity)، كي لا يضاعف مفتاح ربط مكرّر مركزًا (position).

مراقبة التوزيع هي حيث تجد المشكلات التي لم يكتب أحد قاعدة لها

الحداثة والحجم والمخطّط تلتقط الأعطال البنيوية. لكنّها لا تلتقط التدفّق الذي يصل في وقته، ممتلئًا، صحيح الشكل، وخاطئًا. لأجل ذلك عليك مراقبة الشكل الإحصائي للقيم والتنبيه حين يتحرّك.

هذا قريب من مراقبة انحراف الميزات (feature drift monitoring)، لكنّه يجلس أبكر، على المدخلات الخام لا الميزات المهندَسة. نضع خطًّا مرجعيًا (baseline) لتوزيع كل عمود عددي وترددات كل عمود تصنيفي عبر نافذة زمنية متحرّكة، ثم نقارن البيانات الواردة بذلك الخطّ المرجعي. حين يزيح توزيع مبالغ المعاملات متوسّطه، أو يتغيّر مزيج حقل رمز الدولة بين ليلة وضحاها، يُبلّغ الكاشف عنه للمراجعة قبل أن ينتشر إلى مخزن الميزات (feature store) ومنه إلى كل نموذج يقرأ تلك الميزات.

الجزء الصعب ليس الكشف. بل ميزانية الإيجابيات الكاذبة (false positives). البيانات المالية غير ثابتة إحصائيًا (non-stationary) بحقّ: الأسعار تتحرّك، والأحجام تتأرجح موسميًا، وحدث سوقي حقيقي سيبدو تمامًا كشذوذ ليوم واحد. طبقة مراقبة تُنبّه عند كل إزاحة مشروعة تُكتم خلال أسبوع، والتنبيه المكتوم يعادل انعدام التنبيه. لذا تُضبط العتبات وفق السلسلة، وتُنمذَج الموسمية بدل محاربتها، وتوثَّق الأحداث المعروفة كي لا يعيد النظام تعلّمها كشذوذ في كل مرّة.

هناك ممارستان تُبقيان الإشارة نزيهة. أولًا، يحمل كل تنبيه سلالته (lineage)، فيرى مهندس المناوبة أيّ مصدر أعلى السلسلة وأيّ تحويل أنتج الجدول الشاذّ، فلا يقضي عشرين دقيقة بحثًا عنه. ثانيًا، يُعاد كتابة كل حادثة كمثال موسوم، وتصبح تلك المجموعة من الأعطال الحقيقية المؤكّدة مقابل الإزاحات الحميدة هي مجموعة التقييم (eval set) التي تضبط عليها الكواشف. من دونها تكون تخمّن العتبات وتسمّي التخمين سياسةً.

لا شيء من هذا يحلّ محلّ المطابقة (reconciliation) والضوابط التي تديرها الوظيفة المالية أصلًا. بل يجلس أمامها، بحيث حين يصل رقم إلى نموذج أو تقرير أو قرار آليّ متكامل (straight-through)، تكون البيانات خلفه قد اجتازت أصلًا الفحوص التي ما كانت لتُجرى إلّا بعد أن يلاحظ أحدهم أنّ الإجابة تبدو خاطئة. عندئذٍ يُظهر أثر التدقيق (audit trail) ليس فقط ما قرّره النموذج، بل أنّ المدخلات التي قرّر بناءً عليها كانت حديثة وكاملة وصحيحة الشكل وداخل توزيعها المتوقّع في لحظة القرار.

الأسئلة الشائعة

ما الفرق بين جودة البيانات ومراقبة البيانات (data observability)؟

جودة البيانات تعني هل قيمة معيّنة صحيحة بالمقارنة مع قاعدة كتبتها مسبقًا. أمّا المراقبة فهي التتبّع المستمر (telemetry) لخطوط معالجة بياناتك: الحداثة والحجم والمخطّط (schema) والتوزيع، وتراقَب باستمرار كي تلتقط الأعطال التي لم تتوقّعها.

كيف تكتشف تدفّقًا قديمًا (stale feed) قبل أن يصل إلى النموذج؟

حدّد اتفاقية مستوى خدمة (SLA) للحداثة لكل مصدر مربوطة بوتيرة نشره الفعلية ومنطقته الزمنية، ثم أطلق تنبيهًا عندما يصبح آخر تقسيم (partition) أقدم من تلك الميزانية. أوقِف المهام اللاحقة اعتمادًا على هذا الفحص بدلًا من تركها تعمل على بيانات الأمس.

لماذا لا نكتفي بإضافة المزيد من قواعد التحقّق (validation rules) إلى خطّ المعالجة؟

القواعد تلتقط الأعطال التي تصوّرتها أصلًا. ومعظم حوادث الإنتاج تأتي من تلك التي لم تتصوّرها، لذا تحتاج أيضًا إلى مراقبة التوزيع التي تُبلّغ عندما تتغيّر بنية عمود ما رغم أنّ كل صف لا يزال يجتاز فحص نوعه (type check).

قراءات ذات صلة

#هندسة البيانات

عقود البيانات (data contracts) لخطوط أنابيب الذكاء الاصطناعي المالي

تغيير صامت في المخطط (schema) عند المصدر يُعطّل نموذجًا في المصبّ. إليك كيف نستخدم عقود البيانات (data contracts) لجعل التغذيات المالية آمنة لبناء الذكاء الاصطناعي عليها.

#البيانات

جودة بيانات السوق مشكلة نموذج لا مشكلة بنية تحتية

الفجوات والأسعار المتجمدة وتصحيحات المزوّدين لا تُعطّل نظام ذكاء اصطناعي، بل تجعله مخطئًا بثقة. إليك كيف نلتقط مشكلات الجودة قبل أن يتعلّمها النموذج.

#الانزياح

مراقبة انزياح الخصائص (feature drift) قبل أن يتعطّل النموذج

تفشل النماذج بصمت حين تتحرّك مدخلاتها. إليك مراقبة الانزياح على مستوى الخاصية (feature-level drift) التي نربطها كي تكتشف المشكلة قبل أن يخرج الناتج خاطئًا.

#البيانات المرجعية

إدارة البيانات المرجعية لأنظمة الذكاء الاصطناعي في التمويل

العملات والتقاويم والأدوات والرموز هي العمود الفقري الصامت لكل نموذج. إليك كيف ندير البيانات المرجعية حتى لا ينحرف شيء في صمت.

تعمل على شيء مشابه؟

أخبِرنا عن بياناتك وسير العمل المحيط بها، وسنعطيك رأياً صريحاً.

احجز مكالمة تعريفية مدتها 30 دقيقة