تصنيف المواضيع

تعرَّف على كيفية استنتاج المواضيع وطريقة توزيعها على متصفّحات المستخدمين وكيفية التحكّم في قائمة المواضيع.

حالة التنفيذ

ما هو الموضوع؟

الموضوع، في Topics API، هو موضوع يهتم به المستخدم كما تبيَّن من المواقع الإلكترونية التي يزورها.

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

تسمح Topics API للجهات الخارجية، مثل منصات تكنولوجيا الإعلان، بتتبُّع المواضيع التي تهم المستخدم ثم الوصول إليها. على سبيل المثال، قد تقترح واجهة برمجة التطبيقات الموضوع "فنون الألياف والنسيج" على المستخدِم الذي يزور الموقع الإلكتروني knitting.example.

قائمة المواضيع التي تستخدمها Topics API متاحة للجميع ومَن يشرف عليها المستخدمون ومقروءة ومصمَّمة لتجنُّب الفئات الإعلانية الحساسة. هذه هي القائمة الحالية، والتي سيتم توسيعها بمرور الوقت. ويتم تنظيم القائمة على شكل تصنيف. يمكن أن تكون الموضوعات عالية المستوى أو أكثر تحديدًا. على سبيل المثال، Food & Drink هي فئة واسعة النطاق، مع فئة فرعية من Cooking & Recipes. يمكن تقسيم الفئات الفرعية إلى فئات فرعية إضافية.

يحتاج هذا التصنيف من الموضوعات إلى الموازنة بين الفائدة والخصوصية. إذا كانت المواضيع محدّدة جدًا، يمكن استخدامها لتحديد هوية مستخدم فردي. وإذا كانت عامة جدًا، لن تكون مفيدة لاختيار الإعلانات أو المحتوى الآخر.

ويتم إنشاء تصنيف المواضيع مع وضع متطلبَين أساسيَين في الاعتبار:

  • دعم الإعلانات التي تستهدف الاهتمامات
  • الحفاظ على أمان المستخدمين وحماية خصوصيتهم

هذا يقترح عدة أسئلة. مثال:

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

كيفية استنتاج واجهة برمجة التطبيقات المواضيع المرتبطة بموقع إلكتروني معيّن

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

تجدر الإشارة إلى أنّ نموذج المصنِّف لتعيين أسماء المضيفين للمواضيع متاح للجميع. وكما هو موضّح في الشرح، يمكن عرض مواضيع الموقع الإلكتروني من خلال أدوات المطوّرين في المتصفّح. من المتوقّع أن يتطوّر النموذج ويتطوّر بمرور الوقت ويتمّ تعديله بشكلٍ دوري. لا يزال معدّل تكرار ذلك قيد الاعتبار.

لا يتم تضمين سوى المواقع الإلكترونية التي تتطلّب رمزًا برمجيًا يستدعي Topics API في سجلّ التصفُّح المؤهَّل لعمليات احتساب عدد مرّات ظهور المواضيع، ولا يتلقّى المتصلون من خلال واجهة برمجة التطبيقات سوى المواضيع التي لاحظوها. بتعبير آخر، لا تكون المواقع الإلكترونية مؤهّلة لعمليات احتساب معدل تكرار المواضيع بدون الموقع الإلكتروني أو خدمة مضمّنة تستدعي واجهة برمجة التطبيقات.

بالإضافة إلى ذلك، يمكن للمتصل تلقي المواضيع التي "قرأها" رمزه فقط. لذا، إذا سجّل رمز متصل آخر موضوعًا، مثل /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks، لمتصفّح أحد المستخدمين ولم يتسبّب الرمز الخاص بك في تسجيل هذا الموضوع في متصفّح ذلك المستخدم، لن تتمكّن من معرفة ذلك الموضوع الذي يهمّك في متصفّح هذا المستخدم عند طلب بيانات واجهة برمجة التطبيقات من الرمز المضمَّن. لاحظ أنّه بما أنّ واجهة برمجة التطبيقات تتضمّن الآن الكيانات الأصلية التي تمت ملاحظتها، سيؤدي المثال أعلاه، /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks، إلى ملاحظة Autos & Vehicles وMotor Vehicles أيضًا.

ويعاد احتساب المواضيع التي يتم عرضها للمستخدم، للمتصل، استنادًا إلى الموقع الإلكتروني ذي المستوى الأعلى. مثلاً، إذا طلب adtech.example مواضيع المستخدم على news-a.example، ثم في news-b.example، ثم في news-c.example، ستتم إعادة احتساب المواضيع التي يتم عرضها فيها على كل موقع إلكتروني. وهذا يعني أنّه من المرجَّح أن يحصل المتصل على مواضيع مختلفة للمستخدِم على مواقع إلكترونية مختلفة ذات مستوى أعلى، وذلك لأنّ المواضيع الثلاثة (كحد أقصى) المعروضة للمستخدِم يتم اختيارها عشوائيًا من بين الخمسة الأوائل في الفترات الثلاثة الماضية (مع فرصة 5% للحصول على موضوع عشوائي). وهذا ما يصعّب على المتصل التعرّف على المستخدم حسب مواضيعه، نظرًا إلى احتمال اختلاف هذه المواقع الإلكترونية على مستوى مختلف المواقع الإلكترونية ذات المستوى الأعلى (حتى للمستخدم والمتصل والفترة نفسها).

نموذج المصنِّف

ويتم تنظيم المواضيع يدويًا لأهم 50,000 نطاق، ويتم استخدام هذا التنظيم لتدريب المصنِّف. ويمكن العثور على هذه القائمة في override_list.pb.gz المتاحة على chrome://topics-internals/ ضمن النموذج الحالي في علامة التبويب المصنِّف. تُستخدم ارتباطات النطاقات على مواضيع في القائمة بواسطة واجهة برمجة التطبيقات بدلاً من ناتج النموذج نفسه.

chrome://topics-internals مع اختيار لوحة "المصنِّف".
تعرض لوحة "المصنِّف" في صفحة chrome://topics-internals إصدار النموذج ومساره والمواضيع المرتبطة بكل مضيف مُدرَج.

لتشغيل النموذج مباشرةً، يُرجى الرجوع إلى دليل TensorFlow لتشغيل نموذج.

لفحص ملف "override_list.pb.gz"، عليك أولاً فك ضغطه:

gunzip -c override_list.pb.gz > override_list.pb

يمكنك استخدام protoc لفحص النص كنص:

protoc --decode_raw < override_list.pb > output.txt

يتوفر تصنيف كامل للمواضيع ذات المعرّفات على GitHub.

تقديم ملاحظات أو مدخلات بشأن نموذج المصنِّف

تتوفر عدّة قنوات لتقديم ملاحظات حول Topics API. لتلقّي ملاحظات بشأن نموذج المصنِّف، ننصحك بإرسال مشكلة في GitHub أو الردّ على مشكلة حالية. مثال:

كيفية اختيار أهم خمسة مواضيع للمستخدم

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

  1. في نهاية كل حقبة، يجمّع المتصفّح قائمة بالصفحات التي تستوفي المعايير التالية:
    • زار المستخدم الصفحة خلال تلك الفترة.
    • تتضمّن الصفحة رمزًا يستدعي document.browsingTopics().
    • تم تفعيل واجهة برمجة التطبيقات (على سبيل المثال، إذا لم يتم حظرها من قِبل المستخدم أو من خلال عنوان استجابة).
  2. يستخدم المتصفّح على جهاز المستخدم نموذج المصنِّف الذي توفّره Topics API لربط اسم المضيف لكل صفحة بقائمة من المواضيع.
  3. يجمع المتصفِّح قائمة المواضيع.
  4. ينشئ المتصفّح قائمة بأهم خمسة مواضيع حسب معدّل التكرار.

بعد ذلك تعرض الطريقة document.browsingTopics() موضوعًا عشوائيًا من أهم خمسة مواضيع لكل حقبة، مع احتمال بنسبة% 5 أن يتم اختيار أي منها بشكل عشوائي من التصنيف الكامل للمواضيع. في Chrome، يمكن للمستخدمين أيضًا إزالة المواضيع الفردية أو محو سجلّ التصفُّح لتقليل عدد المواضيع التي تعرضها واجهة برمجة التطبيقات. ويمكن للمستخدمين أيضًا إيقاف واجهة برمجة التطبيقات.

يمكنك الاطّلاع على معلومات عن المواضيع التي تمّ رصدها خلال الفترة الحالية من صفحة chrome://topics-internals.

كيفية تحديد واجهة برمجة التطبيقات للمتصلين الذين يمكنهم الاطلاع على المواضيع

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

يوضِّح الجدول أدناه مثالاً (على الرغم من صغره بشكلٍ غير واقعي) لسجلّ تصفُّح افتراضي للمستخدِم خلال حقبة واحدة، مع عرض المواضيع المرتبطة بالمواقع الإلكترونية التي زارها ومستخدمو واجهة برمجة التطبيقات المتوفّرة في كل موقع إلكتروني (الكيانات التي تستدعي document.browsingTopics() في رمز JavaScript مضمَّنة في الموقع الإلكتروني).

الموقع المواضيع المتّصلون من خلال واجهة برمجة التطبيقات على الموقع الإلكتروني
yoga.example لياقة بدنية adtech1.example adtech2.example
knitting.example حِرَف يدوية adtech1.example
رحلة-عطلات.example اللياقة البدنية والسفر ووسائل النقل adtech2.example
diy-clothing.example حِرف وموضة وأناقة [بدون]

في نهاية الفترة (حاليًا أسبوع واحد)، تُنشئ Topics API أهم المواضيع للمتصفِّح خلال الأسبوع.

  • أصبح موقع adtech1.example مؤهَّلاً الآن لتلقّي موضوعَي "اللياقة البدنية" و "الحِرف" لأنّه تمت ملاحظتهما في موضوعَي music.example وعلى knitting.example.
  • adtech1.example غير مؤهّل لتلقي موضوع "السفر ووسائل النقل" لهذا المستخدم لأنه غير متوفر على أي مواقع زارها المستخدم مؤخرًا ومرتبطة بذلك الموضوع.
  • اطّلعت شركة adtech2.example على موضوعَي "اللياقة البدنية" و"السفر ووسائل النقل"، لكنّها لم تظهر موضوع "الحِرف".

زار المستخدِم موقع diy-clothing.example الذي يتناول الموضوع "الأزياء والأناقة"، ولكن لم يتلقَّ أي اتصال من Topics API على ذلك الموقع الإلكتروني. في هذه المرحلة، يعني ذلك أنّه لن يتم عرض موضوع "الأزياء والأناقة" من خلال واجهة برمجة التطبيقات لأي متصل.

في الأسبوع الثاني، يزور المستخدم موقعًا آخر:

الموقع المواضيع المتّصلون من خلال واجهة برمجة التطبيقات على الموقع الإلكتروني
sewing.example حِرَف يدوية adtech2.example

بالإضافة إلى ذلك، تتم إضافة الرمز من adtech2.example إلى diy-clothing.example:

الموقع المواضيع المتّصلون من خلال واجهة برمجة التطبيقات على الموقع الإلكتروني
diy-clothing.example حِرف وموضة وأناقة adtech2.example

بالإضافة إلى "اللياقة البدنية" و"السفر ووسائل النقل" من الأسبوع 1، هذا يعني أن موقع adtech2.example سيتمكّن الآن من تلقّي موضوعَي "الحِرف اليدوية" و"الموضة والأناقة"، ولكن ليس قبل الحقبة التالية، الأسبوع 3. وهذا يضمن أنّه لا يمكن للجهات الخارجية معرفة المزيد عن ماضي المستخدم (في هذه الحالة، الاهتمام بالموضة) أكثر من تلك المتاحة باستخدام ملفات تعريف الارتباط.

وبعد أسبوعين آخرين، قد تتم إزالة "اللياقة البدنية" و"السفر ووسائل النقل" من قائمة المواضيع المؤهّلة في adtech2.example إذا لم يزر المستخدم أي مواقع إلكترونية تتضمّن هذه المواضيع التي تتضمّن رمزًا من adtech2.example.

عناصر تحكُّم المستخدم والشفافية وإمكانية الإيقاف

يجب أن يتمكّن المستخدمون من فهم الغرض من واجهة برمجة التطبيقات Topics API، والتعرف على ما يُقال حولها، ومعرفة متى تكون واجهة برمجة التطبيقات قيد الاستخدام، وتزويدهم بعناصر تحكُّم لتفعيلها أو إيقافها.

يتيح التصنيف الذي يمكن للإنسان قراءته من واجهة برمجة التطبيقات (API) المستخدمين التعرف على المواضيع التي قد يقترحها لهم المتصفّح والتحكم فيها. ويمكن للمستخدمين إزالة المواضيع التي لا يريدون تحديدًا أن تشاركها Topics API مع المعلِنين أو الناشرين، ويمكن أن تتوفّر عناصر تحكُّم لإعلام المستخدم بواجهة برمجة التطبيقات وتوضيح كيفية تفعيلها أو إيقافها. يوفّر Chrome معلومات وإعدادات بشأن Topics API على chrome://settings/adPrivacy. بالإضافة إلى ذلك، لا تتوفّر المواضيع للمتصِلين عبر واجهة برمجة التطبيقات في وضع التصفُّح المتخفي، ويتم محو المواضيع عند محو سجلّ التصفُّح.

ستكون قائمة المواضيع التي يتم عرضها فارغة في الحالات التالية:

  • أوقف المستخدم Topics API من خلال إعدادات المتصفِّح على chrome://settings/adPrivacy.
  • محو المستخدم مواضيعه (من خلال إعدادات المتصفّح في chrome://settings/adPrivacy) أو محو ملفات تعريف الارتباط.
  • يكون المتصفّح في وضع التصفّح المتخفي.

يقدّم الشرح التوضيحي المزيد من التفاصيل حول أهداف الخصوصية وكيفية تحقيق واجهة برمجة التطبيقات لمعالجتها.

إيقاف الموقع الإلكتروني

بالإضافة إلى قدرة المستخدم على إيقاف هذه الميزة، يمكنك إيقاف السمات في موقعك الإلكتروني أو صفحاتك عليها. يوضِّح دليل المطوِّر كيفية إجراء ذلك.

استخدام Topics API على المواقع الإلكترونية المتضمِّنة prebid.js

كما هو موضّح في إصدار Prebid 7، طوّر المنتدى عملية دمج جديدة مع Topics API من خلال وحدة جديدة. تم دمج هذه الوحدة في كانون الأول (ديسمبر) 2022.

مزيد من المعلومات هنا:

  • قراءة مستندات وحدة Topics API في Prebid
  • ولمزيد من المعلومات، تواصَل مع Prebid.js من خلال أي قناة عادية توفِّرها.

الخطوات التالية

التفاعل مع الملاحظات ومشاركتها