أساسيات تعلم الآلة2008متوسط9 دقيقة قراءة

تصوير البيانات باستخدام t-SNE

Visualizing Data Using t-SNE

van der Maaten, L. · Hinton, G. — JMLR

المشكلة

البيانات عالية الأبعاد — كالصور والتعبيرات الجينية وتضمينات الكلمات — تقع في فضاءات بمئات أو آلاف الأبعاد، بينما لا يستطيع الإنسان أن يرى إلا بُعدين أو ثلاثة. الأساليب الخطية (PCA) تُسقط البيانات على محاور الأعظم، لكنها لا تستطيع فرد الأسطح المنحنية واللاخطية التي تعيش عليها البيانات الحقيقية. والنتيجة أنّ العناقيد المنفصلة بوضوح في الأبعاد العالية تنسحق فوق بعضها عند الإسقاط الخطي.

الإسهام

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

الأثر

أصبح t-SNE الأداة المرجعية لتصوير البيانات عالية الأبعاد في التعلم الآلي والمعلوماتية الحيوية ومعالجة اللغة الطبيعية. أظهر بنى كامنة في تضمينات الكلمات وبيانات تسلسل RNA أحادية الخلية وتنشيطات الشبكات العصبية، وهي بنى لم يستطع أي أسلوب سابق كشفها. لاحقاً حسّن UMAP السرعة والبنية الشاملة، لكنّ t-SNE هو من أرسى المبدأ: حسِّن دالة هدف قائمة على الجوار لتحصل على خرائط يفهمها البشر.

تخيّل قاعة ضخمة فيها آلاف الأشخاص، وكل شخص يعرف أصدقاءه. المشكلة أن القاعة متعددة الأبعاد ولا يمكن تصويرها. ما يفعله تحليل المكونات الرئيسية هو أنه يُسقط ظلال الحشد على جدار — فالأصدقاء الذين كانوا في «أعماق» مختلفة يُسطَّحون فوق بعضهم.

t-SNE يتعامل مع الأمر بطريقة مختلفة: يربط كل شخص بأصدقائه بنوابض، ويضع بينه وبين الغرباء مغناطيسات تنافر، ثم يتركهم يتحركون على أرضية مسطّحة. النوابض تشدّ الأصدقاء نحو بعضهم، والمغناطيسات تدفع الغرباء بعيداً، وبعد تحرّكات كافية يصبح التوزيع على الأرضية انعكاساً لشبكة الصداقات الحقيقية.

السقف: الإسقاطات الخطية تُسطّح البنية

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

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

افتح في المختبر
يساراً: تحليل المكونات الرئيسية يُسطّح اللفافة السويسرية فيدمج نقاطاً بعيدة على السطح. يميناً: t-SNE يفرد اللفافة ويحفظ الجوار.
تستيقظ التجربة عند وصولك…

الفكرة الجوهرية: قياس الجوار بالاحتمالات

ينطلق t-SNE من سؤال بسيط: لكل نقطة xix_i في الفضاء عالي الأبعاد، ما احتمال أن تختار هذه النقطة xjx_j جاراً لها؟ يُحسب هذا الاحتمال عبر مركزها xix_i، بحيث تحصل النقاط القريبة على احتمال مرتفع، بينما تقترب النقاط البعيدة من الصفر. لكل نقطة عرض نطاق غاوسي σi\sigma_i خاص بها يُضبط تلقائياً من خلال مُعامل (سنوضّحه بالتفصيل لاحقاً).

ثم يطرح t-SNE السؤال نفسه في الخريطة ثنائية البُعد: لكل نقطة yiy_i في الفضاء المنخفض، ما احتمال أن تختار yjy_j جاراً لها؟ لكن هنا تُستخدم نواة مختلفة: توزيع ستيودنت-t بدرجة حرية واحدة (وهو ما يُعرف بتوزيع كوشي) — منحنى جرسي لكن بأذيال أثقل بكثير من الدالة الغاوسية.

هدف الخوارزمية واضح: اضبط مواضع النقاط في البُعدين حتى تتطابق احتمالات الجوار فيهما مع احتمالات الجوار في الأبعاد العالية. يُقاس الفرق بين التوزيعين عبر ، وتُحسَّن المواضع بـالانحدار التدريجي.

افتح في المختبر
حرّك النقطة المركزية وراقب كيف تُوزّع النواة الغاوسية احتمالات الجوار على النقاط المحيطة. كلما اقتربت النقطة زاد احتمالها.
تستيقظ التجربة عند وصولك…

الصياغة الرياضية: من المسافات إلى الاحتمالات

الخطوة الأولى هي تحويل كل بين زوج من النقاط في الفضاء الأصلي إلى . الفكرة ببساطة: لو أن النقطة xix_i ستختار جاراً لها باحتمال يتناسب مع دالة غاوسية مركزها هي نفسها، فما فرصة أن تقع على xjx_j؟

pji=exp ⁣(xixj2/2σi2)kiexp ⁣(xixk2/2σi2)p_{j|i} = \frac{\exp\!\bigl(-\|x_i - x_j\|^2 / 2\sigma_i^2\bigr)} {\sum_{k \neq i} \exp\!\bigl(-\|x_i - x_k\|^2 / 2\sigma_i^2\bigr)}
الاحتمال الشرطي في الأبعاد العاليةكل نقطة تمنح النقاط الأخرى احتمالات مُرجّحة بدالة غاوسية. عرض النطاق σᵢ يتكيّف مع كل نقطة على حدة: المناطق الكثيفة تحصل على دالة غاوسية ضيقة، والمناطق المتناثرة على دالة واسعة.

لجعل الاحتمالات متناظرة (pij=pjip_{ij} = p_{ji})، يأخذ t-SNE المتوسط بين الاحتمالين الشرطيين: pij=(pji+pij)/2np_{ij} = (p_{j|i} + p_{i|j}) / 2n. الفائدة من ذلك أنّ كل نقطة تُسهم إسهاماً حقيقياً في الخريطة، حتى لو كانت معزولة عن الباقي.

أما في الخريطة ثنائية البُعد، فيُحسب بين النقطتين المناظرتين yiy_i وyjy_j عبر توزيع ستيودنت-t بدرجة حرية واحدة بدلاً من الدالة الغاوسية. الذيل الثقيل لهذا التوزيع هو لبّ الابتكار — فهو يمنح النقاط ذات البُعد المتوسط مساحة كافية على الخريطة، وبذلك يحلّ مشكلة الازدحام.

qij=(1+yiyj2)1kl(1+ykyl2)1q_{ij} = \frac{(1 + \|y_i - y_j\|^2)^{-1}} {\sum_{k \neq l} (1 + \|y_k - y_l\|^2)^{-1}}
التشابه في الأبعاد المنخفضة (نواة ستيودنت-t)نواة ستيودنت-t تتلاشى ببطء أكبر بكثير من الدالة الغاوسية، مما يعني أنّ الأزواج متوسطة البُعد في الفضاء الأصلي يمكن فصلها براحة في البُعدين دون أن تدفع الخوارزمية ثمناً كبيراً.
افتح في المختبر
قارن بين النواة الغاوسية ونواة ستيودنت-t. لاحظ كيف تبقى ستيودنت-t (البرتقالي) أعلى عند المسافات الكبيرة، فتمنح النقاط البعيدة مساحة أوسع.
تستيقظ التجربة عند وصولك…

دالة الكُلفة: تباعد كولباك-لايبلر

الهدف من t-SNE أن تعكس بنية الجوار في البُعدين ما هو موجود في الأبعاد العالية. لقياس الفرق يستخدم تباعد كولباك-لايبلر — وهو مقياس أحادي الاتجاه يُخبرك بمدى اختلاف توزيعين احتماليين عن بعضهما. الهدف مباشر: اجعل التوزيع Q (الذي يصف جوار النقاط في البُعدين) أقرب ما يمكن إلى التوزيع P (الذي يصف جوارها في الأبعاد العالية).

C=KL(PQ)=ijpijlogpijqijC = KL(P \| Q) = \sum_{i \neq j} p_{ij} \log \frac{p_{ij}}{q_{ij}}
دالة كُلفة تباعد كولباك-لايبلرهذه الدالة غير متناظرة: تُعاقب بشدة على وضع نقاط قريبة في الأبعاد العالية بعيدةً في البُعدين (p كبير وq صغير)، لكنها تتسامح أكثر مع وضع نقاط بعيدة أصلاً قريبة من بعضها. هذا يعني أنّ t-SNE يُعطي الأولوية لحفظ البنية المحلية — وهو بالضبط ما يجعل العناقيد واضحة في الخريطة.

الحيرة الاحتمالية: كم جاراً نأخذ بالحسبان؟

يُختار عرض النطاق الغاوسي σi\sigma_i لكل نقطة بحيث يكون لـتوزيعها الاحتمالي حيرة احتمالية ثابتة — وهي تعبّر تقريباً عن عدد الجيران الفعّالين الذين تراهم كل نقطة. حين تكون الحيرة منخفضة (5–10)، لا تهتم كل نقطة إلا بأقرب جيرانها، فتنتج عناقيد محلية ضيقة. وحين تكون مرتفعة (30–50)، تأخذ النقطة جيراناً أكثر بالحسبان، فتنتج خرائط أكثر انسيابية وتنظيماً على المستوى الشامل.

القيمة الافتراضية الشائعة هي 30. لكنّ الحيرة ليست مُعاملاً تضبطه وتنسى، بل هي تتحكّم في مستوى التفاصيل الذي تراه. من الممارسات الجيدة تشغيل t-SNE بعدة قيم للحيرة حتى تميّز البنية الحقيقية من النتائج المُصطنعة.

افتح في المختبر
اسحب شريط الحيرة وراقب كيف تتغيّر الخريطة. الحيرة المنخفضة تُظهر عناقيد محلية صغيرة، والعالية تكشف تجمعات أوسع.
تستيقظ التجربة عند وصولك…

مشكلة الازدحام: لماذا تفشل الدوال الغاوسية في بُعدين

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

توزيع ستيودنت-t يحلّ هذه المشكلة بتوسيع نطاق «المسافة المقبولة» في البُعدين. نقطة متشابهة بدرجة متوسطة في الأبعاد العالية يمكنها أن تجلس بمسافة مريحة من نظيرتها في البُعدين دون أن تدفع الخوارزمية كلفة KL كبيرة، لأنّ قيمة qijq_{ij} تبقى معقولة حتى عند تلك المسافة. هذه هي الإضافة الجوهرية لـ t-SNE على سلفه SNE.

افتح في المختبر
في الأبعاد العالية يتّسع المكان لجيران كثيرين حول أي نقطة. في بُعدين مع نواة غاوسية ينضغطون معاً. بدِّل إلى ستيودنت-t لتراهم ينتشرون.
تستيقظ التجربة عند وصولك…

الأمثَلة: كيف تتحرك النقاط

لدالة كلفة KL بالنسبة لكل نقطة yiy_i على الخريطة يحمل تفسيراً فيزيائياً أنيقاً. كل زوج من النقاط يُمارس «قوة» على الآخر: إذا كان pij>qijp_{ij} > q_{ij} (أي أنّ النقطتين يجب أن تكونا أقرب مما هما عليه)، يظهر نابض جذب يشدّهما نحو بعضهما. وإذا كان pij<qijp_{ij} < q_{ij} (أي أنهما أقرب مما ينبغي)، تظهر قوة تنافر تدفعهما بعيداً. العامل (1+yiyj2)1(1 + \|y_i - y_j\|^2)^{-1} يجعل النقاط القريبة تُمارس تأثيراً أقوى بكثير، بينما تُهمل النقاط البعيدة تقريباً.

Cyi=4j(pijqij)(yiyj)(1+yiyj2)1\frac{\partial C}{\partial y_i} = 4 \sum_{j} (p_{ij} - q_{ij})(y_i - y_j) (1 + \|y_i - y_j\|^2)^{-1}
متجه ميل t-SNEقوة جذب حين p > q وقوة طرد حين p < q. عامل ستيودنت-t يضمن أن الطرد قوي بين النقاط القريبة لكنه يتلاشى للبعيدة — فلا تتداخل العناقيد البعيدة مع بعضها.
افتح في المختبر
راقب قوى الجذب والطرد لحظياً أثناء تكرارات t-SNE. الأسهم الخضراء تمثّل الجذب والحمراء تمثّل الطرد.
تستيقظ التجربة عند وصولك…

نصائح عملية: كيف تقرأ خرائط t-SNE بشكل صحيح

t-SNE أداة قوية، لكنّ مخرجاتها قد تكون مُضلّلة إن لم تعرف ما يمكن الوثوق به. إليك القواعد التي يتّبعها الممارسون ذوو الخبرة:

  • انتماء النقاط إلى العنقود له معنى حقيقي — النقاط في العنقود نفسه قريبة فعلاً من بعضها في الفضاء الأصلي.
  • المسافات بين العناقيد ليست ذات معنى — عنقودان قد يبدوان متباعدين في الرسم لكنهما قريبان في الفضاء الأصلي، أو العكس.
  • أحجام العناقيد ليست ذات معنى — t-SNE قد يُضخّم عنقوداً أو يُقلّصه تبعاً للكثافة المحلية للبيانات.
  • شغّله عدة مرات — t-SNE يبدأ بتهيئة عشوائية، وكل تشغيل قد يُنتج تخطيطاً مختلفاً. البنية الحقيقية هي التي تظهر باتساق عبر تشغيلات متعددة.
  • جرّب عدة قيم للحيرة — بنية لا تظهر إلا عند قيمة حيرة واحدة قد تكون نتيجة مُصطنعة.

خطوة بخطوة: خوارزمية t-SNE الكاملة

فيما يلي الخوارزمية الكاملة موضّحة كسلسلة مراحل. لاحظ أنّ احتمالات الأبعاد العالية PP تُحسب مرة واحدة في البداية، بينما تُعاد حساب احتمالات الأبعاد المنخفضة QQ في كل تكرار لأنّ نقاط الخريطة yiy_i تتحرّك باستمرار.

افتح في المختبر
تابع مراحل خوارزمية t-SNE خطوة بخطوة: احسب P، هيّئ الخريطة، كرّر الانحدار التدريجي، ثم حسِّن النتيجة.
تستيقظ التجربة عند وصولك…

t-SNE مقابل UMAP: الجيل التالي

(2018) يبني على الفكرة الأساسية لـ t-SNE — أي تحسين دالة كلفة قائمة على الجوار — لكنه يستخدم إطاراً رياضياً مختلفاً يعتمد على المجموعات التبسيطية الضبابية من التحليل الطوبولوجي للبيانات. أهم الفروقات:

  • السرعة: UMAP أسرع بكثير، خاصة مع مجموعات البيانات الكبيرة، لأنه يستخدم و.
  • البنية الشاملة: UMAP يحافظ بشكل أفضل على العلاقات الشاملة بين العناقيد — المواضع النسبية للعناقيد تحمل دلالة أكبر.
  • تضمين بيانات جديدة: UMAP يستطيع نقاط بيانات جديدة لم يرها من قبل عبر تحويل مُتعلَّم، بينما يتطلب t-SNE إعادة تشغيل الأمثَلة بالكامل.
  • الاتساق: UMAP يُنتج نتائج أكثر ثباتاً عند تغيير البذرة العشوائية.

كلاهما أداة قيّمة. يظلّ t-SNE الخيار المفضّل حين تكون جودة العناقيد المحلية هي الأولوية وحجم البيانات معقولاً. أما UMAP فيتفوّق في السرعة والقدرة على التعامل مع بيانات ضخمة وحين تهمّ البنية الشاملة.

الأثر: ماذا كشف لنا t-SNE

  1. 2008

    نشر t-SNE

    قدّم فان دير ماتن وهنتون خوارزمية t-SNE في مجلة JMLR. أول تصويرات واضحة لعناقيد أرقام MNIST ومجاورات وجوه Olivetti ودورانات أجسام COIL-20.

  2. 2013

    تصوير تضمينات الكلمات

    استخدم الباحثون t-SNE لتصوير تضمينات Word2Vec وGloVe، فكشفوا لأول مرة عن العناقيد الدلالية وعلاقات التشابه داخل النماذج اللغوية.

  3. 2014

    تقريب بارنز-هت

    نشر فان دير ماتن تقريباً بتعقيد حسابي O(n log n) جعل t-SNE قابلاً للتطبيق العملي على مجموعات بيانات بملايين النقاط.

  4. 2016

    ثورة تسلسل RNA أحادي الخلية

    أصبح t-SNE أداة التصوير المعيارية في بيولوجيا الخلية المفردة، فمكّن الباحثين من تمييز أنواع الخلايا انطلاقاً من أنماط التعبير الجيني.

  5. 2018

    ظهور UMAP

    قدّم ماكينيس وهيلي ومِلفيل خوارزمية UMAP — أسرع، وأفضل في حفظ البنية الشاملة، وقادرة على تضمين عيّنات جديدة لم تكن ضمن بيانات التدريب. بُنيت مباشرة على النموذج الذي أرساه t-SNE.

إرث t-SNE لا يقتصر على كونه خوارزمية تصوير — بل أرسى مبدأ أنّ الأمثَلة الاحتمالية القائمة على الجوار تستطيع الكشف عن بنى خفية لا تقدر الأساليب الخطية على إظهارها. في كل مرة ترى رسماً انتشارياً مُلوّناً لـتضمينات أو أنواع خلايا أو تنشيطات نماذج، فالأرجح أنك تنظر إلى نتاج فكري انبثق من t-SNE.

المرجعvan der Maaten, Hinton. Visualizing Data Using t-SNE. JMLR, 2008.

مصطلحات هذه الورقة