
يعتبر تصنيف البيانات على أساس المحتوى مهمة مفتوحة. تعمل أنظمة منع فقدان البيانات التقليدية (DLP) على حل هذه المشكلة عن طريق أخذ بصمات البيانات ذات الصلة ومراقبة نقاط نهاية بصمات الأصابع. نظرًا للعدد الكبير من أصول البيانات المتغيرة باستمرار على Facebook ، فإن هذا النهج لا يفشل في التوسع فحسب ، بل إنه غير فعال في تحديد مكان البيانات. تتناول هذه المقالة نظامًا شاملاً تم إنشاؤه لاكتشاف الأنواع الدلالية الحساسة على Facebook على نطاق واسع وفرض التخزين والتحكم في الوصول تلقائيًا.
النهج الموضح هنا هو أول نظام خصوصية شامل لدينا يحاول معالجة هذه المشكلة من خلال دمج إشارات البيانات والتعلم الآلي وتقنيات البصمات التقليدية لعرض وتصنيف جميع البيانات على Facebook. يتم تشغيل النظام الموصوف في بيئة إنتاج ، حيث يصل متوسط درجة F2 إلى 0.9+ لفئات الخصوصية المختلفة أثناء معالجة كمية كبيرة من موارد البيانات في عشرات المستودعات. تقديم ترجمة منشور ArXiv على Facebook حول تصنيف البيانات القابل للتطوير للأمان والخصوصية بناءً على التعلم الآلي.
المقدمة
تقوم المؤسسات اليوم بجمع وتخزين كميات كبيرة من البيانات بتنسيقات ومواقع مختلفة [1] ، ثم يتم استهلاك البيانات في العديد من الأماكن ، وأحيانًا يتم نسخها أو تخزينها مؤقتًا عدة مرات ، مما يؤدي إلى انتشار معلومات العمل القيمة والحساسة عبر العديد من مستودعات بيانات الشركة. عندما يُطلب من منظمة الامتثال لبعض المتطلبات القانونية أو التنظيمية ، على سبيل المثال ، للامتثال للوائح في الإجراءات المدنية ، يصبح من الضروري جمع موقع البيانات ذات الصلة. عندما ينص بيان الخصوصية على أنه يجب على المنظمة إخفاء جميع أرقام الضمان الاجتماعي (SSN) عند مشاركة المعلومات الشخصية مع كيانات غير مصرح لها ، فإن الخطوة الأولى الطبيعية هي البحث عن جميع أرقام الضمان الاجتماعي في مخازن البيانات على مستوى المؤسسة.في مثل هذه الظروف ، يصبح تصنيف البيانات أمرًا بالغ الأهمية [1]. سيمكن نظام التصنيف المؤسسات من فرض سياسات الخصوصية والأمان تلقائيًا مثل تمكين سياسات التحكم في الوصول والاحتفاظ بالبيانات. يقدم Facebook نظامًا أنشأناه في Facebook يستخدم مجموعة متنوعة من إشارات البيانات ، وهيكل نظام قابل للتطوير ، وتعلم آلي لاكتشاف أنواع البيانات الدلالية الحساسة.بنية نظام قابلة للتطوير والتعلم الآلي لاكتشاف أنواع البيانات الدلالية الحساسة.بنية نظام قابلة للتطوير والتعلم الآلي لاكتشاف أنواع البيانات الدلالية الحساسة.
البحث عن البيانات وتصنيفها هو العثور عليها وتصنيفها بحيث يمكنك استرداد المعلومات ذات الصلة بسرعة وكفاءة عند الحاجة. العملية الحالية هي أكثر يدوية بطبيعتها وتتألف من فحص القوانين أو اللوائح ذات الصلة ، وتحديد أنواع المعلومات التي يجب اعتبارها حساسة ومستويات الحساسية المختلفة ، ثم في سياسة بناء التصنيف والتصنيف المناسبة [1]. بعد أنظمة منع فقدان البيانات (DLP) ، يتم أخذ بصمات الأصابع ومراقبة نقاط النهاية في اتجاه المصب بحثًا عن بصمات الأصابع. عند التعامل مع مستودع به الكثير من الأصول وبيتابايت من البيانات ، فإن هذا النهج ببساطة لا يتسع.
هدفنا هو بناء نظام تصنيف البيانات الذي يتسع لكل من بيانات المستخدم المستمرة والمتقلبة ، دون أي قيود إضافية على نوع البيانات أو تنسيقها. هذا هدف طموح ومليء بالصعوبات بطبيعة الحال. يمكن أن يتكون أي سجل بيانات من آلاف الأحرف.

الشكل 1. تدفقات التنبؤ عبر الإنترنت وخارجه
لذلك ، يجب علينا تمثيلها بشكل فعال باستخدام مجموعة مشتركة من الميزات ، والتي يمكن بعد ذلك دمجها ونقلها بسهولة. لا يجب أن توفر هذه الميزات تصنيفًا دقيقًا فحسب ، بل توفر أيضًا المرونة والقابلية للتوسعة لإضافة واكتشاف أنواع بيانات جديدة بسهولة في المستقبل. ثانيًا ، تحتاج إلى التعامل مع طاولات كبيرة قائمة بذاتها. يمكن تخزين البيانات الثابتة في جداول يزيد حجمها عن بيتابايت. يمكن أن يؤدي هذا إلى سرعات مسح أبطأ. ثالثًا ، يجب أن نلتزم بتصنيف صارم لاتفاقية مستوى الخدمة (SLA) للبيانات المتقلبة. هذا يجعل النظام عالي الكفاءة وسريع ودقيق. أخيرًا ، نحتاج إلى توفير تصنيف بيانات بزمن انتقال منخفض للبيانات المتقلبة من أجل إجراء التصنيف في الوقت الفعلي ، وكذلك لحالات استخدام الإنترنت.
توضح هذه المقالة كيف تعاملنا مع المشكلات المذكورة أعلاه وتقدم نظام تصنيف سريع وقابل للتوسع يصنف عناصر البيانات من جميع الأنواع والتنسيقات والمصادر بناءً على مجموعة مشتركة من الميزات. لقد قمنا بتوسيع بنية النظام وبنينا نموذجًا مخصصًا للتعلم الآلي لتصنيف البيانات المتصلة بالإنترنت وغير المتصلة بسرعة. تم تنظيم هذه المقالة على النحو التالي: يقدم القسم 2 التصميم العام للنظام. يناقش القسم 3 أجزاء نظام التعلم الآلي. يصف القسمان 4 و 5 الأعمال ذات الصلة ويحددان الاتجاه المستقبلي للعمل.
هندسة معمارية
للتعامل مع البيانات المستمرة على نطاق Facebook ومشكلات البيانات عبر الإنترنت ، يحتوي نظام التصنيف على دفقين منفصلين ، سنناقشهما بالتفصيل.
البيانات المستمرة
في البداية ، يحتاج النظام إلى التعرف على مجموعة متنوعة من أصول معلومات Facebook. بالنسبة لكل مستودع ، يتم جمع بعض المعلومات الأساسية ، مثل مركز البيانات الذي يحتوي على تلك البيانات ، والنظام الذي يحتوي على تلك البيانات ، والأصول الموجودة في مستودع بيانات معين. يشكل هذا فهرسًا للبيانات الوصفية ، مما يسمح للنظام باسترداد البيانات بكفاءة دون تحميل العملاء والموارد التي يستخدمها مهندسون آخرون.
يوفر كتالوج البيانات الوصفية هذا مصدرًا موثوقًا به لجميع الأصول الممسوحة ضوئيًا ويسمح لك بتتبع سلامة الأصول المختلفة. تُستخدم هذه المعلومات لتحديد أولويات الجدولة بناءً على البيانات المجمعة والمعلومات الداخلية من النظام ، مثل وقت آخر فحص ناجح للأصل ووقت إنشائه ، بالإضافة إلى متطلبات الذاكرة والمعالج السابقة لهذا الأصل إذا تم مسحه ضوئيًا مسبقًا. بعد ذلك ، بالنسبة لكل مورد بيانات (عند توفر الموارد) ، يتم استدعاء مهمة الفحص الفعلية للمورد.
كل وظيفة عبارة عن ثنائي مجمع يقوم بتشغيل عينة برنولي على أحدث البيانات المتاحة لكل أصل. يتم تقسيم الأصل إلى أعمدة منفصلة ، حيث تتم معالجة نتيجة التصنيف لكل عمود بشكل مستقل. بالإضافة إلى ذلك ، يقوم النظام بمسح أي بيانات غنية داخل الأعمدة. يتم فحص JSON والمصفوفات والهياكل المشفرة وعناوين URL والبيانات المتسلسلة الأساسية 64 والمزيد. يمكن أن يؤدي ذلك إلى زيادة وقت تنفيذ الفحص بشكل كبير ، حيث يمكن أن يحتوي الجدول الفردي على آلاف الأعمدة المتداخلة في blob
json.
لكل صف يتم تحديده في أصل البيانات ، يستخرج نظام التصنيف كائنات عائمة ونصية من المحتوى ويربط كل كائن بالعمود الذي تم أخذها منه. نتيجة خطوة استخراج المعالم هي خريطة لجميع المعالم لكل عمود موجود في أصل البيانات.
ما هي علامات؟
مفهوم السمات هو المفتاح. بدلاً من السمات العائمة والنصية ، يمكننا تمرير أنماط السلسلة الأولية التي يتم جلبها مباشرةً من كل مورد بيانات. بالإضافة إلى ذلك ، يمكن تدريب نماذج التعلم الآلي مباشرة على كل عينة ، بدلاً من مئات حسابات الميزات التي تحاول فقط تقريب العينة. هناك عدة أسباب لذلك:
- : , , . , . , , .
- : . . , , .
- : , . .
ثم يتم إرسال الميزات إلى خدمة التنبؤ حيث نستخدم التصنيف المستند إلى القواعد والتعلم الآلي للتنبؤ بتسميات البيانات لكل عمود. تعتمد الخدمة على كل من مصنّفات القواعد والتعلم الآلي وتختار أفضل توقع معطى من كل كائن توقع.
مُصنِّفات القواعد هي استدلالات يدوية تستخدم الحسابات والمعاملات لتطبيع كائن في النطاق من 0 إلى 100. بمجرد إنشاء هذه النتيجة الأولية لكل نوع بيانات واسم عمود مرتبط بهذه البيانات ، لا يتم تضمينها في أي "قوائم رفض" ، يقوم مُصنِّف القاعدة باختيار أعلى درجة تم تسويتها بين جميع أنواع البيانات.
نظرًا لتعقيد التصنيف ، يؤدي استخدام الاستدلال اليدوي البحت إلى انخفاض دقة التصنيف ، خاصة بالنسبة للبيانات غير المنظمة. لهذا السبب ، قمنا بتطوير نظام التعلم الآلي للعمل مع تصنيف البيانات غير المهيكلة مثل المحتوى الذي ينشئه المستخدم والعنوان. سمح لنا التعلم الآلي بالبدء في الابتعاد عن الاستدلال اليدوي وتطبيق إشارات بيانات إضافية (مثل أسماء الأعمدة وأصول البيانات) ، مما أدى إلى تحسين دقة الكشف بشكل كبير. سنغوص بعمق في بنية التعلم الآلي الخاصة بنا لاحقًا.
تخزن خدمة التنبؤ النتائج لكل عمود مع البيانات الوصفية حول وقت الفحص وحالته. يمكن لأي مستهلكين وعمليات نقل تعتمد على هذه البيانات قراءتها من مجموعة البيانات المنشورة يوميًا. تجمع هذه المجموعة نتائج كل مهام المسح هذه ، أو واجهة برمجة التطبيقات في الوقت الفعلي لكتالوج البيانات. التنبؤات المنشورة هي أساس التطبيق التلقائي لسياسات الخصوصية والأمان.
أخيرًا ، بعد أن تكتب خدمة التنبؤ جميع البيانات ويتم حفظ جميع التوقعات ، يمكن لواجهة برمجة تطبيقات كتالوج البيانات الخاصة بنا إرجاع جميع تنبؤات نوع البيانات لمورد ما في الوقت الفعلي. كل يوم ، ينشر النظام مجموعة بيانات تحتوي على أحدث التوقعات لكل أصل.
بيانات متقلبة
على الرغم من أن العملية المذكورة أعلاه مصممة للأصول الدائمة ، إلا أن حركة البيانات غير المستمرة تعتبر أيضًا جزءًا من بيانات المنظمة ويمكن أن تكون مهمة. لهذا السبب ، يوفر النظام واجهة برمجة تطبيقات عبر الإنترنت لإنشاء تنبؤات تصنيف في الوقت الفعلي لأي حركة مرور متقلبة. يُستخدم التنبؤ في الوقت الفعلي على نطاق واسع لتصنيف حركة المرور الصادرة وحركة المرور الواردة في نماذج التعلم الآلي وبيانات المعلنين.
تأخذ API وسيطتين رئيسيتين هنا: مفتاح التجميع والبيانات الأولية التي يجب توقعها. تؤدي الخدمة نفس عملية استرداد الكائن كما هو موضح أعلاه وتقوم بتجميع الكائنات معًا لنفس المفتاح. يتم دعم هذه الأعراض أيضًا في ذاكرة التخزين المؤقت الدائمة لتجاوز الفشل. لكل مفتاح تجميع ، تضمن الخدمة أنها شاهدت عينات كافية قبل استدعاء خدمة التنبؤ ، باتباع العملية الموضحة أعلاه.
الاقوي
نستخدم المكتبات وتقنيات تحسين قراءة التخزين الساخن [2] لفحص بعض المستودعات والتأكد من عدم حدوث أي انقطاع من المستخدمين الآخرين الذين يصلون إلى نفس المستودع.
بالنسبة للجداول الكبيرة للغاية (أكثر من 50 بيتابايت) ، على الرغم من كل التحسينات وكفاءة الذاكرة ، يعمل النظام على مسح كل شيء وحسابه قبل نفاد الذاكرة. بعد كل شيء ، يتم حساب المسح بالكامل في الذاكرة ولا يتم تخزينه أثناء الفحص. إذا كانت الجداول الكبيرة تحتوي على آلاف الأعمدة مع أجزاء غير منظمة من البيانات ، فقد تفشل المهمة بسبب عدم كفاية موارد الذاكرة عند عمل تنبؤات للجدول بأكمله. هذا سوف يقلل من التغطية. لمكافحة هذا ، قمنا بتحسين النظام لاستخدام سرعة المسح كوسيط في كيفية تعامل النظام مع الحمل الحالي. نحن نستخدم السرعة كآلية تنبؤية لمعرفة مشاكل الذاكرة وحساب خرائط الميزات بشكل استباقي.ومع ذلك ، فإننا نستخدم بيانات أقل من المعتاد.
إشارات البيانات
نظام التصنيف جيد فقط مثل الإشارات الواردة من البيانات. هنا سوف نلقي نظرة على جميع الإشارات التي يستخدمها نظام التصنيف.
- يعتمد على المحتوى: بالطبع ، الإشارة الأولى والأكثر أهمية هي المحتوى. يتم أخذ عينة برنولي لكل أصل بيانات نقوم بمسحها ضوئيًا وميزة الاستخراج بواسطة محتوى البيانات. العديد من العلامات تأتي من المحتوى. أي عدد من العوامات ممكنة ، والتي تمثل حسابات عدد المرات التي شوهد فيها نوع معين من الأنماط. على سبيل المثال ، قد يكون لدينا علامات فموية لعدد رسائل البريد الإلكتروني التي تمت مشاهدتها في عينة ، أو مؤشرات على عدد الرموز التي تمت رؤيتها في العينة. يمكن تسوية حسابات الميزات هذه وتجميعها عبر عمليات مسح مختلفة.
- : , , . — . , , . , .
- : , . . , .
- — , , . , , , , . , . , .
عنصر مهم هو منهجية صارمة لقياس المقاييس. المقاييس الرئيسية لتكرار تحسين التصنيف هي دقة كل تسمية واسترجاعها ، حيث تكون درجة F2 هي الأكثر أهمية.
يتطلب حساب هذه المقاييس منهجية مستقلة لتصنيف أصول البيانات المستقلة عن النظام نفسه ، ولكن يمكن استخدامها للمقارنة مباشرة معها. أدناه ، نصف كيف نجمع الحقيقة الأساسية من Facebook ونستخدمها لتدريب نظام التصنيف لدينا.
جمع بيانات موثوقة
نقوم بتجميع بيانات موثوقة من كل مصدر مدرج أدناه في الجدول الخاص به. كل جدول مسؤول عن تجميع أحدث القيم التي تمت ملاحظتها من هذا المصدر المحدد. يحتوي كل مصدر على فحص جودة البيانات للتأكد من أن القيم المرصودة لكل مصدر ذات جودة عالية وتحتوي على أحدث تسميات أنواع البيانات.
- تكوينات منصة التسجيل: تمتلئ حقول معينة في جداول خلية النحل ببيانات تنتمي إلى نوع معين. يعد استخدام ونشر هذه البيانات بمثابة مصدر موثوق للبيانات الموثوقة.
- : , , . , , .
- , .
- : Facebook . , , , . .
- : , , , , . , .
- : , . , , GPS.
- : , , . .
نحن نجمع كل مصدر رئيسي للبيانات الصالحة في مجموعة واحدة مع كل هذه البيانات. أكبر مشكلة تتعلق بالدقة هي التأكد من أنها تمثل مخزن البيانات. خلاف ذلك ، يمكن أن تزداد محركات التصنيف. في الكفاح ضد هذا ، يتم استخدام جميع المصادر المذكورة أعلاه لتوفير التوازن عند تدريب النماذج أو حساب المقاييس. بالإضافة إلى ذلك ، يختار المسوقون البشريون بالتساوي أعمدة مختلفة في المتجر ويقومون بتسمية البيانات بشكل مناسب للحفاظ على جمع القيم الصالحة غير متحيز.
التكامل المستمر
لضمان التكرار والتحسين السريع ، من المهم دائمًا قياس أداء النظام في الوقت الفعلي. يمكننا قياس كل تحسن في التصنيف مقارنة بالنظام اليوم ، بحيث يمكننا استهداف البيانات من الناحية التكتيكية لمزيد من التحسينات. هنا نلقي نظرة على كيفية إكمال النظام لحلقة الملاحظات المزودة ببيانات صحيحة.
عندما يواجه نظام الجدولة أصلًا تم تمييزه من مصدر موثوق ، نقوم بجدولة مهمتين. الأول يستخدم ماسحنا للتصنيع وبالتالي قدراتنا التصنيعية. تستخدم المهمة الثانية أحدث ماسح ضوئي للبناء مع أحدث العلامات. تكتب كل مهمة مخرجاتها إلى جدولها الخاص ، مع وضع علامة على الإصدارات جنبًا إلى جنب مع نتائج التصنيف.
هذه هي الطريقة التي نقارن بها نتائج تصنيف مرشح الإصدار ونموذج الإنتاج في الوقت الفعلي.
بينما تقارن مجموعات البيانات بين ميزات RC و PROD ، يتم تسجيل العديد من الاختلافات في محرك تصنيف ML الخاص بخدمة التنبؤ. أحدث نموذج للتعلم الآلي المبني ، ونموذج الإنتاج الحالي وأي نماذج تجريبية. يسمح لنا نفس الأسلوب "بتقسيم" إصدارات مختلفة من النموذج (لا أدري لمصنفات القواعد لدينا) ومقارنة المقاييس في الوقت الفعلي. من السهل جدًا معرفة متى تكون تجربة ML جاهزة لبدء الإنتاج.
كل ليلة ، يتم إرسال RCs المحسوبة لذلك اليوم إلى خط أنابيب تدريب ML ، حيث يتم تدريب النموذج على أحدث RCs ويقيم أدائه مقابل مجموعة بيانات صالحة.
يكمل النموذج التدريب كل صباح ويتم نشره تلقائيًا كتجربة. يتم تضمينه تلقائيًا في القائمة التجريبية.
بعض النتائج
تم تمييز أكثر من 100 نوع مختلف من البيانات بدقة عالية. يتم تصنيف الأنواع جيدة التنظيم مثل رسائل البريد الإلكتروني وأرقام الهواتف بدرجة f2 تزيد عن 0.95. تعمل أنواع البيانات السائبة مثل المحتوى المخصص والاسم أيضًا بشكل جيد للغاية ، حيث تزيد درجات F2 عن 0.85.
يتم تصنيف عدد كبير من الأعمدة المنفصلة للبيانات الدائمة والمتقلبة يوميًا في جميع المتاجر. يتم فحص أكثر من 500 تيرابايت يوميًا في أكثر من 10 مخازن بيانات. معظم هذه المستودعات لها تغطية تزيد عن 98٪.
أصبح التصنيف فعالًا للغاية بمرور الوقت حيث تستغرق وظائف التصنيف في دفق مستمر دون اتصال في المتوسط 35 ثانية من مسح أحد الأصول إلى حساب التنبؤات لكل عمود.

الشكل: 2. رسم تخطيطي يصف التدفق المستمر للتكامل لفهم كيفية إنشاء كائنات RC وإرسالها إلى النموذج.

الشكل 3. رسم تخطيطي عالي المستوى لمكون تعلم الآلة.
مكون نظام التعلم الآلي
في القسم السابق ، تعمقنا في بنية النظام بأكمله ، مسلطين الضوء على النطاق والتحسين وتدفقات البيانات دون اتصال بالإنترنت أو عبر الإنترنت. في هذا القسم ، سنلقي نظرة على خدمة التنبؤ وسنصف نظام التعلم الآلي الذي يدعم خدمة التنبؤ.
مع وجود أكثر من 100 نوع من البيانات وبعض المحتوى غير المنظم مثل بيانات النشر والمحتوى الذي ينشئه المستخدم ، فإن استخدام الأساليب البحثية اليدوية البحتة يؤدي إلى دقة تصنيف المعلمات الفرعية ، خاصة للبيانات غير المنظمة. لهذا السبب ، قمنا أيضًا بتطوير نظام تعلم آلي للتعامل مع تعقيدات البيانات غير المهيكلة. يتيح لك استخدام التعلم الآلي البدء في الابتعاد عن الاستدلال اليدوي والعمل مع الميزات وإشارات البيانات الإضافية (على سبيل المثال ، أسماء الأعمدة وأصول البيانات) لتحسين الدقة.
يدرس النموذج المنفذ تمثيلات المتجهات [3] على أجسام كثيفة ومتفرقة بشكل منفصل. ثم يتم دمجها لتشكيل متجه يمر عبر سلسلة من تطبيع الدفعات [4] والخطوات غير الخطية لإنتاج النتيجة النهائية. النتيجة النهائية هي رقم فاصلة عائمة بين [0-1] لكل تسمية ، مما يشير إلى احتمال أن يكون المثال من نوع الحساسية المحدد. سمح لنا استخدام PyTorch للنموذج بالتحرك بشكل أسرع ، مما مكّن المطورين من خارج الفريق من إجراء التغييرات واختبارها بسرعة.
عند تصميم العمارة ، كان من المهم وضع نماذج متفرقة (على سبيل المثال نص) وكائنات كثيفة (مثل رقمية) بشكل منفصل بسبب اختلافها الجوهري. كان من المهم أيضًا للهندسة المعمارية النهائية إجراء مسح للمعلمات للعثور على القيمة المثلى لمعدل التعلم وحجم الحزمة والمعلمات الفائقة الأخرى. كان اختيار المُحسِّن أيضًا معيارًا تشعبيًا مهمًا. وجدنا أن مُحسِّن آدم الشهير غالبًا ما يؤدي إلى زيادة التجهيز ، في حين أن نموذج SGDأكثر استقرارًا. كانت هناك فروق دقيقة إضافية كان علينا تضمينها مباشرة في النموذج. على سبيل المثال ، القواعد الثابتة التي تضمن قيام النموذج بعمل تنبؤ حتمي عندما يكون للميزة قيمة معينة. يتم تحديد هذه القواعد الثابتة من قبل عملائنا. وجدنا أن تضمينها مباشرةً في النموذج أدى إلى بنية أكثر احتواءً وقوةً ، بدلاً من تنفيذ خطوة ما بعد المعالجة للتعامل مع حالات الحافة الخاصة هذه. لاحظ أيضًا أنه يتم تعطيل هذه القواعد أثناء التدريب حتى لا تتداخل مع عملية التدريب على هبوط التدرج.
مشاكل
كان جمع بيانات عالية الجودة وموثوقة أحد التحديات. يحتاج النموذج إلى صلاحية لكل فئة حتى يتمكن من معرفة الارتباطات بين الكائنات والتسميات. في القسم السابق ، ناقشنا طرق جمع البيانات لكل من قياس النظام ونماذج التدريب. أظهر التحليل أن فئات البيانات مثل بطاقات الائتمان وأرقام الحسابات المصرفية ليست شائعة جدًا في التخزين لدينا. هذا يجعل من الصعب جمع كميات كبيرة من البيانات الموثوقة لنماذج التدريب. لمعالجة هذه المشكلة ، قمنا بتطوير عمليات للحصول على بيانات تركيبية صالحة لهذه الفئات. نحن توليد مثل هذه البيانات لأنواع الحساسة، بما في ذلك SSN ، أرقام بطاقات الائتمان و IBAN-الأرقام التي لم يستطع النموذج التنبؤ بها مسبقًا. يسمح هذا الأسلوب بمعالجة أنواع البيانات الحساسة دون مخاطر الخصوصية المرتبطة بإخفاء البيانات الحساسة الحقيقية.
وبصرف النظر عن قضايا صحة البيانات، وهناك قضايا الهندسة المعمارية المفتوحة التي نعمل على، مثل عزل التغييرات و وقف في وقت مبكر.... يعد عزل التغييرات أمرًا مهمًا بحيث عند إجراء تغييرات مختلفة على أجزاء مختلفة من الشبكة ، يتم عزل التأثير عن فئات معينة وليس له تأثير واسع على أداء التنبؤ الكلي. يعد تحسين معايير التوقف المبكر أمرًا بالغ الأهمية أيضًا حتى نتمكن من إيقاف التدريب عند نقطة مستقرة لجميع الفصول ، بدلاً من نقطة حيث يتم إعادة تدريب بعض الفصول بينما لا يتم تدريب البعض الآخر.
التوقيع على الأهمية
عندما يتم تقديم ميزة جديدة في النموذج ، نريد أن نعرف تأثيرها الكلي على النموذج. نريد أيضًا التأكد من أن التنبؤات قابلة للتفسير البشري حتى نتمكن من فهم الميزات المستخدمة لكل نوع من البيانات بالضبط. لهذا ، قمنا بتطوير وتقديم فئة تلو الأخرىأهمية الميزات لنموذج PyTorch. لاحظ أن هذا يختلف عن الأهمية العامة للسمة ، والتي يتم الحفاظ عليها عادةً لأنها لا تخبرنا عن السمات المهمة لفئة معينة. نقيس أهمية كائن ما عن طريق حساب الزيادة في خطأ التنبؤ بعد إعادة ترتيب الكائن. تعتبر السمة "مهمة" عندما يؤدي تبديل القيم إلى زيادة خطأ النموذج لأنه في هذه الحالة اعتمد النموذج على السمة في التنبؤ. تكون السمة "غير مهمة" عندما يترك خلط قيمها خطأ النموذج دون تغيير ، لأنه في هذه الحالة يتجاهلها النموذج [5].
تسمح لنا أهمية الميزة لكل فئة بجعل النموذج قابلاً للتفسير حتى نتمكن من رؤية ما ينتبه النموذج عند توقع الملصق. على سبيل المثال ، عندما نقوم بتحليل ADDR، نحن نضمن أن سمة مرتبطة بالعنوان ، مثل AddressLinesCount ، تحتل مرتبة عالية في جدول أهمية السمات لكل فئة بحيث يتوافق حدسنا البشري جيدًا مع ما تعلمه النموذج.
تقدير
من المهم تحديد مقياس مشترك للنجاح. اخترنا F2 - التوازن بين الاسترجاع والدقة (تحيز الاسترجاع أكبر قليلاً). تعد التعليقات أكثر أهمية في حالة استخدام الخصوصية من الدقة لأنه من الضروري للفريق عدم تسريب أي بيانات حساسة (مع ضمان الدقة المعقولة). التقديرات الفعلية لأداء F2 لنموذجنا خارج نطاق هذه المقالة. ومع ذلك ، من خلال الضبط الدقيق ، يمكننا تحقيق درجة F2 عالية (0.9+) لأهم الفئات الحساسة.
الأعمال ذات الصلة
هناك العديد من الخوارزميات للتصنيف التلقائي للوثائق غير المهيكلة باستخدام طرق مختلفة مثل مطابقة الأنماط ، والبحث عن تشابه المستندات ، وطرق متنوعة للتعلم الآلي (Bayesian ، وأشجار القرار ، وأقرب جيران k ، وغيرها الكثير) [6]. يمكن استخدام أي من هذه كجزء من التصنيف. ومع ذلك ، فإن المشكلة هي قابلية التوسع. نهج التصنيف في هذه المقالة منحاز نحو المرونة والأداء. يتيح لنا ذلك دعم الفئات الجديدة في المستقبل والحفاظ على وقت الاستجابة منخفضًا.
هناك أيضًا الكثير من أعمال أخذ بصمات البيانات. على سبيل المثال ، وصف المؤلفون في [7] حلاً يركز على مشكلة اكتشاف تسرب البيانات السرية. الافتراض الرئيسي هو أنه من الممكن أن تتطابق بصمة البيانات مع مجموعة من البيانات الحساسة المعروفة. يصف المؤلفون في [8] مشكلة تسرب الخصوصية المماثلة ، ولكن حلهم يعتمد على بنية Android محددة ويتم تصنيفها فقط عندما تؤدي إجراءات المستخدم إلى إرسال معلومات شخصية ، أو عندما يتم تسريب بيانات المستخدم في التطبيق الأساسي. يختلف الوضع هنا قليلاً ، حيث يمكن أن تكون بيانات المستخدم غير منظمة بشكل كبير. لذلك ، نحن بحاجة إلى تقنية أكثر تعقيدًا من أخذ البصمات.
أخيرًا ، للتعامل مع نقص البيانات لبعض أنواع البيانات الحساسة ، قدمنا بيانات تركيبية. هناك قدر كبير من الأدبيات حول زيادة البيانات ، على سبيل المثال ، قام المؤلفون في [9] بالتحقيق في دور حقن الضوضاء أثناء التعلم ولاحظوا نتائج إيجابية في التعلم تحت الإشراف. يختلف نهجنا في الخصوصية لأن إدخال البيانات المشوشة يمكن أن يؤدي إلى نتائج عكسية ، وبدلاً من ذلك نركز على البيانات التركيبية عالية الجودة.
خاتمة
في هذه المقالة ، قدمنا نظامًا يمكنه تصنيف جزء من البيانات. يتيح لنا ذلك إنشاء أنظمة لضمان الامتثال لسياسات الخصوصية والأمان. لقد أظهرنا أن البنية التحتية القابلة للتطوير والتكامل المستمر والتعلم الآلي ودقة البيانات عالية الجودة هي مفتاح نجاح العديد من مبادرات الخصوصية الخاصة بنا.
هناك العديد من المجالات للعمل في المستقبل. يمكن أن يشمل تقديم الدعم للبيانات غير التخطيطية (الملفات) ، وتصنيف ليس فقط نوع البيانات ، ولكن أيضًا مستوى الحساسية ، واستخدام التعلم تحت الإشراف الذاتي مباشرة أثناء التدريب عن طريق إنشاء أمثلة تركيبية دقيقة. وهذا بدوره سيساعد النموذج على تقليل الخسائر بأكبر قدر. قد يركز العمل المستقبلي أيضًا على سير عمل التحقيق ، حيث نتجاوز الاكتشاف ونقدم تحليل السبب الجذري لانتهاكات الخصوصية المختلفة. سيساعد ذلك في حالات مثل تحليل الحساسية (أي ما إذا كانت حساسية خصوصية نوع البيانات عالية (على سبيل المثال ، عنوان IP الخاص بالمستخدم) أو منخفضة (على سبيل المثال ، عنوان IP الداخلي الخاص بـ Facebook)).
فهرس
- David Ben-David, Tamar Domany, and Abigail Tarem. Enterprise data classification using semantic web technolo- gies. In Peter F.Ï Patel-Schneider, Yue Pan, Pascal Hitzler, Peter Mika, Lei Zhang, Jeff Z. Pan, Ian Horrocks, and Birte Glimm, editors, The Semantic Web – ISWC 2010, pages 66–81, Berlin, Heidelberg, 2010. Springer Berlin Heidelberg.
- Subramanian Muralidhar, Wyatt Lloyd, Sabyasachi Roy, Cory Hill, Ernest Lin, Weiwen Liu, Satadru Pan, Shiva Shankar, Viswanath Sivakumar, Linpeng Tang, and Sanjeev Kumar. f4: Facebook’s warm BLOB storage system. In 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 14), pages 383–398, Broomfield, CO, October 2014. USENIX Association.
- Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S Corrado, and Jeff Dean. Distributed representations of words and phrases and their compositionality. In C. J. C. Burges, L. Bottou, M. Welling, Z. Ghahramani, and K. Q. Weinberger, editors, Advances in Neural Information Processing Systems 26, pages 3111–3119. Curran Associates, Inc., 2013.
- Sergey Ioffe and Christian Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. In Francis Bach and David Blei, editors, Proceedings of the 32nd International Conference on Machine Learning, volume 37 of Proceedings of Machine Learning Research, pages 448–456, Lille, France, 07–09 Jul 2015. PMLR.
- Leo Breiman. Random forests. Mach. Learn., 45(1):5–32, October 2001.
- Thair Nu Phyu. Survey of classification techniques in data mining.
- X. Shu, D. Yao, and E. Bertino. Privacy-preserving detection of sensitive data exposure. IEEE Transactions on Information Forensics and Security, 10(5):1092–1103, 2015.
- Zhemin Yang, Min Yang, Yuan Zhang, Guofei Gu, Peng Ning, and Xiaoyang Wang. Appintent: Analyzing sensitive data transmission in android for privacy leakage detection. pages 1043–1054, 11 2013.
- Qizhe Xie, Zihang Dai, Eduard H. Hovy, Minh-Thang Luong, and Quoc V. Le. Unsupervised data augmentation.
, Level Up , - SkillFactory:
- Data Science (12 )
- Machine Learning (12 )
- «Machine Learning Pro + Deep Learning» (20 )
- « Machine Learning Data Science» (20 )
E
