主題分類

請參閱主題的推斷方式,以及主題如何指派給使用者以及使用者如何控制主題清單。

導入狀態

主題是什麼?

Topics API 中的「主題」,是使用者所造訪的網站證實感興趣的主題。

Topics 是一項信號,可協助廣告技術平台選擇相關廣告。與第三方 Cookie 不同的是,系統在分享這類資訊時,不會透露使用者本身或使用者的瀏覽活動相關資訊。

Topics API 可讓廣告技術平台等第三方觀察使用者感興趣的主題,然後存取該主題。舉例來說,API 可能會建議「Fiber &紡織藝術造訪網站 (knitting.example) 的使用者。

Topics API 使用的主題清單為公開、人類收錄、人類可讀,且旨在避免敏感類別。這份目前的清單將隨著時間增加。並以分類的形式排列清單。主題可以是廣泛或具體的主題。舉例來說,Food & Drink 是一個廣泛類別,其子類別是 Cooking & Recipes。子類別可再進一步細分為其他子類別。

因此,這類主題在實用性和隱私權之間需要取捨。如果主題太過明確,則可用來識別個別使用者。因為太過籠統,不適合選取廣告或其他內容。

主題分類是依據兩個基本要求構建而成:

  • 支援按照興趣顯示廣告的功能
  • 保護使用者及隱私

以便回答幾個問題。例如:

  • 如要讓 API 根據使用者的瀏覽活動推斷出使用者感興趣的主題,同時保留使用者的隱私,下列何者是最好的方式?
  • 該如何規劃分類,才能使其更實用?
  • 分類中應包含哪些特定項目?

API 如何推論網站的主題

主題衍生自分類器模型,可將網站主機名稱對應至零或多個主題。 分析其他資訊 (例如完整網址或網頁內容) 或許能帶來更相關的廣告,但或許也會降低隱私權。

用於將主機名稱對應至主題的分類器模型已開放給所有人使用,而說明訊息中的附註,可用於透過瀏覽器開發人員工具查看網站主題。這個模型可望與時俱進並改良,並定期更新。相關的頻率也仍在考量

只有包含呼叫 Topics API 程式碼的網站才會納入瀏覽記錄中,且要計算主題頻率,API 呼叫端只會接收他們觀察到的主題。換句話說,如果沒有網站或呼叫 API 的內嵌服務,網站就不能採用主題頻率計算。

此外,來電者只能接收程式碼有「已看過」的主題。因此,如果其他呼叫端的程式碼為使用者的瀏覽器註冊了主題 (例如 /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks),而您的程式碼並未導致該使用者的瀏覽器註冊該主題,則當您從內嵌程式碼呼叫 API 時,您就無法得知使用者的瀏覽器感興趣主題。請注意,由於 API 現在包含如所觀察到的祖系,所以上述範例 /Autos & Vehicles/Motor Vehicles (By Type)/Hatchbacks 也會導致系統觀察到 Autos & VehiclesMotor Vehicles

系統會根據頂層網站,重新計算使用者傳回的主題。舉例來說,如果 adtech.example 要求使用者在 news-a.example 上進行主題,則 news-b.example 後在 news-c.example,則回傳的主題將會在每個網站上重新計算。這表示,由於系統在過去三個「週期」中,系統會從前五名的使用者中隨機選出三個主題 (最多有 5% 的機率會成為隨機主題),因此呼叫端可能會在不同的頂層網站,針對使用者分類查詢不同的主題。因此,呼叫端會較難根據使用者的主題識別使用者,因為不同頂層網站可能有不同 (即使同一使用者、呼叫端和週期)。

分類器模型

我們為 50,000 個熱門網域手動收錄主題,這項收錄資訊會用於訓練分類器。如要查看這份清單,請前往 override_list.pb.gz,只要前往「分類」分頁,即可在目前的模型底下找到此清單 (chrome://topics-internals/)。API 會使用清單中的網域與主題關聯,取代模型本身的輸出內容。

chrome://topics-internals 頁面,已選取「Classifier」面板。
chrome://topics-internals」頁面的「Classifier」面板會列出模型版本、其路徑,以及與所列各主機相關聯的主題。

如要直接執行模型,請參閱 TensorFlow 的模型執行指南

如要檢查 override_list.pb.gz 檔案,請先將檔案解壓縮:

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

請使用 protoc 將其視為文字進行檢查:

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

您可以在 GitHub 找到具有 ID 的完整主題分類

針對分類器模型提供意見或輸入內容

你可以透過多個管道提供 Topics API 的意見回饋。對於分類器模型的意見回饋,建議您提交 GitHub 問題或回覆現有問題。例如:

系統如何選出使用者的前五大主題

API 會針對每個訓練週期傳回一個主題,最多傳回三個主題。如果傳回三個,當中包含目前週期和前兩個週期的主題。

  1. 在每個週期結束時,瀏覽器就會彙整符合下列條件的網頁清單:
    • 使用者在週期期間造訪過網頁。
    • 網頁包含呼叫 document.browsingTopics() 的程式碼。
    • API 已啟用 (例如,未遭使用者封鎖或透過回應標頭)。
  2. 使用者裝置上的瀏覽器會使用 Topics API 提供的分類器模型,將每個網頁的主機名稱對應至主題清單。
  3. 瀏覽器會累積主題清單。
  4. 瀏覽器會按照頻率產生一份熱門主題清單。

接著,document.browsingTopics() 方法會針對各個週期,傳回前 5 名的隨機主題,其中有 5% 的機率會從完整主題分類中隨機選出。在 Chrome 中,使用者也可以移除個別主題或清除瀏覽記錄,減少 API 傳回的主題數量。使用者也可以選擇停用此 API。

您可以前往「chrome://topics-internals」頁面,查看目前週期內觀察到的主題相關資訊。

API 如何決定要讓哪些呼叫端看到哪些主題

API 呼叫端只會接收最近觀察到的主題,而使用者的主題會在每次訓練週期時重新整理。這表示 API 提供了一個滾動式視窗,讓特定呼叫端可能會收到特定主題。

下表概略說明使用者在單一週期中假想的瀏覽記錄 (雖不切實際),包括使用者造訪過的網站的相關主題,以及每個網站顯示的 API 呼叫端 (在網站內含的 JavaScript 程式碼中呼叫 document.browsingTopics() 的實體)。

網站 主題 網站上的 API 呼叫端
yoga.example 健身 adtech1.example adtech2.example
knitting.example 手工藝品 adtech1.example
Visit-holiday.example 健身、旅遊與交通運輸 adtech2.example
diy-clothing.example 手工藝、時尚與風格 [無]

週期結束時 (目前為一週),Topics API 會產生瀏覽器當週的熱門主題。

  • adtech1.example 現在有資格接收「健身」和「手工藝品」因為這個網路在瑜珈.example 和 knitting.example 上觀察到它們。
  • adtech1.example 不得收到「Travel &交通工具」主題,因為該使用者最近造訪的與該主題相關的任何網站都不會顯示該主題。
  • adtech2.example 看過「健身」以及「旅遊與交通工具」,但沒看過「手工藝品」主題。

使用者造訪了 diy-clothing.example,其中包含「Fashion &「風格」主題,但該網站並未呼叫 Topics API。這意味著「風格」API 不會為任何呼叫端傳回 topic。

在第二週,該使用者造訪了另一個網站:

網站 主題 網站上的 API 呼叫端
sewing.example 手工藝品 adtech2.example

此外,adtech2.example 的程式碼會新增至 diy-clothing.example:

網站 主題 網站上的 API 呼叫端
diy-clothing.example 手工藝、時尚與風格 adtech2.example

以及「健身」以及「旅遊與交通工具」這表示 adtech2.example 現在能夠接收「Crafts」以及「Fashion &「風格」主題 — 但直到接下來 3 週。如此能確保第三方無法像使用 Cookie,一樣深入瞭解使用者的過往資訊 (在本範例中,就是對時尚的興趣)。

再兩週過後「健身」以及「旅遊與交通工具」如果使用者未造訪任何包含 adtech2.example 程式碼的網站,就可能會從 adtech2.example 的適用主題清單中排除。

使用者控制項、資訊公開及選擇不採用

使用者應能瞭解 Topics API 的用途、辨識與查詢相關的內容、瞭解 API 的使用時間,並提供可啟用或停用 Topics API 的控制項。

這個 API 具有人類可讀的分類功能,可讓使用者瞭解及控制瀏覽器可能會建議使用的主題。使用者可以移除不想讓 Topics API 分享給廣告主或發布商的主題,而對於 API 的資訊,也能提供控制選項,並說明如何啟用或停用該 API。Chrome 會在 chrome://settings/adPrivacy 提供 Topics API 的相關資訊和設定。此外,無痕模式中的 API 呼叫端無法使用主題,系統也會在瀏覽記錄清除時清除主題。

在下列情況下,傳回的主題清單將是空白:

  • 使用者前往 chrome://settings/adPrivacy,透過瀏覽器設定停用 Topics API。
  • 使用者已清除主題 (透過 chrome://settings/adPrivacy 的瀏覽器設定) 或清除 Cookie。
  • 瀏覽器處於無痕模式。

說明進一步瞭解隱私權目標,以及 API 尋求因應這些目標的方式。

網站停用

除了使用者能的停用功能,您還可以停用自家網站或網頁的主題。如需相關操作說明,請參閱開發人員指南

在具備 prebid.js 的網站上使用 Topics API

Prebid 7 的發布版本所述。 社群透過新模組主動開發了 Topics API 的整合項目。 本單元是在 2022 年 12 月合併。

詳情請參閱:

後續步驟

交流及分享意見回饋