كيف تعرف الشيء من لمسات قليلة بلا ترتيب؟
في مخزن مسرح شبه معتم، أمسكت قطعة ديكور مليئة بنتوءات صغيرة. لم أستطع رؤيتها، فمررت أصابعي فوق النتوءات بعشوائية. كل لمسة أعطت تلميحا، وفي النهاية بقيت في ذهني اللمسات التي كانت أقوى من غيرها. الفكرة نفسها مع نقاط الشكل الثلاثي الأبعاد: ترتيبها لا يهم.
زمان كانوا يخافون من هذه النقاط لأنها تبدو مثل غبار مبعثر. فيحوّلونها إلى مكعبات مرتبة أو صور من زوايا قليلة، كأنني أُجبر على رسم القطعة على ورق مربعات قبل أن ألمسها. هذه اللفة قد تضيع تفاصيل دقيقة وتزيد الشغل بلا حاجة.
هنا جاءت فكرة اسمها PointNet. تتعامل مع كل نقطة وحدها بنفس الفحص الصغير، مثل أنني أكرر حركة الإصبع نفسها على كل نتوء. كل نقطة تترك إشارات قصيرة: هذا يشبه حافة، هذا يشبه زاوية، هذا يبدو مسطحا.
بعدها تجمع PointNet كل الإشارات بطريقة لا تهتم بالترتيب. لكل نوع من الإشارة، تحتفظ بأقوى قيمة ظهرت بين كل النقاط، مثل أنني أسجل أقوى تلميح عن الحافة وأقوى تلميح عن الزاوية. لو بدّلت ترتيب النقاط، النتيجة تبقى نفسها.
بس لحظة، القطعة قد تكون ملتفة في يدي. PointNet تحاول أولا أن تعدّل الاتجاه، كأنني ألف القطعة حتى تصبح في وضع مألوف. وهناك قيد يمنع اللفة من أن تعصر الشكل أو تمده، حتى لا تبدو أشياء مختلفة كأنها متشابهة.
الغريب أن خطوة "أقوى تلميح" تجعل عددا قليلا من النقاط هو الذي يحسم القرار. هذه النقاط الفائزة تشبه اللمسات القليلة التي أقنعتني. لو ضاعت نقاط كثيرة، غالبا لا يتغير الوصف العام. ولو دخلت نقاط مشوشة لا تتفوق على الأقوى، لا يحدث شيء.
بعد أن تحصل PointNet على وصف عام للقطعة، يمكنها أن تسمي الشيء كله، أو تميّز أجزائه نقطة بنقطة. عندها فهمت الفرق: لست مضطرا لترتيب النتوءات في شبكة مثالية ولا للمسها بترتيب ثابت. حفنة لمسات قوية تكفي لتعرف الشكل حتى لو كانت الصورة ناقصة.