شجرة الغطاء
شجرة التغطية هي نوع من هياكل البيانات في علوم الحاسوب ، مصممة خصيصًا لتسريع عملية البحث عن أقرب جار . وهي تطوير لهيكل بيانات شبكة الملاحة، وترتبط بمجموعة متنوعة من هياكل البيانات الأخرى المصممة لفهرسة البيانات منخفضة الأبعاد بطبيعتها. [ 1 ]
يمكن اعتبار الشجرة بمثابة تسلسل هرمي من المستويات، حيث يحتوي المستوى الأعلى على نقطة الجذر ، بينما يحتوي المستوى الأدنى على جميع النقاط في الفضاء المتري. يرتبط كل مستوى C بقيمة عددية صحيحة i تتناقص بمقدار واحد كلما اتجهنا لأسفل الشجرة. لكل مستوى C في شجرة الغطاء ثلاث خصائص مهمة:
- التعشيش:
- التغطية: لكل نقطةتوجد نقطةبحيث تكون المسافة منلأقل من أو يساويوواحدة من هذا القبيل بالضبطهو أحد والدي.
- الفصل: لجميع النقاطالمسافة منلأكبر من.
تعقيد
يجد
على غرار أشجار القياس الأخرى ، تسمح شجرة الغطاء بإجراء عمليات بحث عن أقرب الجيران فيأينهو ثابت مرتبط بأبعاد مجموعة البيانات، و n هو عدد عناصرها. للمقارنة، يتطلب البحث الخطي الأساسيوهذا يُعدّ اعتماداً أسوأ بكثير علىومع ذلك، في الفضاءات المترية عالية الأبعادالثابت ليس تافهاً، مما يعني أنه لا يمكن تجاهله في تحليل التعقيد. على عكس أشجار القياس الأخرى، فإن لشجرة الغطاء حداً نظرياً لثابتها يعتمد على ثابت التوسع أو ثابت المضاعفة لمجموعة البيانات (في حالة استرجاع أقرب جار تقريبي). الحد الأقصى لوقت البحث هوأينهو ثابت التوسع لمجموعة البيانات.
أدخل
على الرغم من أن أشجار التغطية توفر عمليات بحث أسرع من الطريقة البسيطة، إلا أنه يجب موازنة هذه الميزة مع التكلفة الإضافية لصيانة بنية البيانات. في الطريقة البسيطة، تُعد إضافة نقطة جديدة إلى مجموعة البيانات أمرًا بسيطًا لأن الترتيب ليس ضروريًا، بينما في شجرة التغطية قد يستغرق الأمر وقتًا أطول.الوقت. ومع ذلك، فهذا حد أقصى، وقد تم تطبيق بعض التقنيات التي يبدو أنها تحسن الأداء عمليًا. [ 2 ]
فضاء
تستخدم شجرة التغطية تمثيلاً ضمنياً لتتبع النقاط المتكررة. وبالتالي، فهي لا تتطلب سوى مساحة O(n).
انظر أيضاً
مراجع
- ملحوظات
- ↑ كينيث كلاركسون. البحث عن أقرب جار وأبعاد الفضاء المتري. في: جي. شاخناروفيتش، تي. داريل، وبي . إنديك ، المحررون، أساليب أقرب جار للتعلم والرؤية: النظرية والتطبيق، الصفحات 15-59. مطبعة معهد ماساتشوستس للتكنولوجيا، 2006.
- ↑ "شجرة الغطاء" .
- فهرس
- ألينا بيجيلزيمر، وشام كاكادي، وجون لانغفورد. أشجار التغطية لأقرب جار. في وقائع المؤتمر الدولي للتعلم الآلي (ICML)، 2006.
- صفحة JL's Cover Tree . تحتوي صفحة جون لانغفورد على روابط للأوراق والبرمجيات.
- تطبيق شجرة التغطية بلغة C++ على GitHub .
- تطبيق شجرة التغطية في لغة جافا.
- الأشجار (هياكل البيانات)
