הפונקציה הסטטיסטית של שרשרת Markob משתמשת בשיטות הסתברותיות כדי להקצות קרדיט לנקודות מגע עם הלקוח בתהליך הפרסום, על סמך התרומה שלהן לפי מודל לסבירות של המשתמש להשלים המרה. הפלט של הפונקציה הניסיונית הזו יכול לעזור לכם להקצות קרדיט לערוץ פרסום, לקמפיין או לנקודת מגע אחרת עם הלקוח, על סמך התרומה שלהם לאירועי המרות, לפי מודל.
איך זה עובד
הפונקציה הסטטיסטית של שרשרת Markob משתמשת בנתוני הפרסום כדי ליצור שרשרת מרקוב, שבה כל קודקוד בתרשים המסודר מייצג נקודת מגע עם הלקוח, וכל קצה מספק את ההסתברות לעבור לנקודת המגע הבאה עם הלקוח, בתנאי שהיא נמצאת בנקודת המגע הנוכחית הזו. המערכת יוצאת מנקודה הנחה שרק נקודת המגע הנוכחית עם הלקוח משפיעה על סבירות המעבר. לאחר מכן, התרומה של כל נקודת מגע עם הלקוח מחושבת על ידי הסרת נקודת המגע מהתרשים, וחישוב ההסתברות להמרה לפי מודל, לאחר שנקודת המגע הוסרה.
הגבלות על פרטיות
נקודות המגע עם הלקוח חייבות לכלול לפחות 50 משתמשים שמשלימים המרות ו-50 משתמשים או יותר שלא השלימו המרה, כדי שלא יוסרו על ידי מסנני הפרטיות. בנוסף, ייתכן שיתבצע סינון של משתמשים חריגים שתורמים קרדיט לא פרופורציונלי לנקודת מגע מסוימת עם הלקוח. לכן, יכול להיות שבפלט מהמודל של שרשרת מרקוב חסרות נקודות מגע מסוימות עם הלקוח שנמצאות בטבלת נקודות המגע עם הלקוח.הודעות פרטיות מוצגות אחרי כל חזרה של מודל שרשרת Markov. ההודעות האלה כוללות מידע על משתמשים ונקודות מגע עם הלקוח שסוננו.
סקירה כללית של מחשוב ערכי השרשרת של מרקוב
- יוצרים את נקודת המגע עם הלקוח וטבלאות הקרדיט:
touchpoint_temp_table
.user_credit_temp_table
.
- קוראים לפונקציה
ADH.TOUCHPOINT_ANALYSIS
בעלת ערך הטבלה באמצעות הטבלאות הזמנית שלמעלה כארגומנטים.
יצירת נקודת המגע עם הלקוח וטבלאות הקרדיט
יצירת הטבלה של נקודות המגע עם הלקוח
טבלת נקודות המגע עם הלקוח היא המקום שבו מוגדרים אירועי משתמש שקשורים לנקודות מגע עם הלקוח. נתונים לדוגמה עשויים לכלול, בין היתר: campaign_id
, creative_id
, placement_id
או site_id
.
הטבלה חייבת להכיל את העמודות הבאות:
שם העמודה | סוג |
---|---|
touchpoint |
string שם שרירותי של נקודת מגע עם הלקוח. (לא יכול להיות NULL או להכיל פסיקים). |
user_id |
string המזהה של משתמש שמבקר בנקודת המגע עם הלקוח. (לא יכול להיות NULL או 0.) |
event_time |
int הזמן שבו המשתמש ביקר בנקודת המגע עם הלקוח. (לא יכול להיות NULL.) |
קוד לדוגמה ליצירת הטבלה:
CREATE TABLE touchpoint_temp_table
AS (
SELECT user_id, event.event_time, CAST(event.site_id AS STRING) AS touchpoint
FROM adh.cm_dt_impressions
WHERE
event.event_type IN ('VIEW')
AND user_id <> '0'
AND event.campaign_id IN UNNEST(@campaign_ids)
UNION ALL
SELECT
user_id, event.event_time, CAST(event.site_id AS STRING) AS touchpoint
FROM adh.cm_dt_clicks
WHERE
event.event_type IN ('CLICK')
AND user_id <> '0'
AND event.campaign_id IN UNNEST(@campaign_ids)
);
יצירה של טבלת הקרדיטים למשתמשים
טבלת הקרדיטים למשתמשים היא המקום שבו מוגדרים אירועי ההמרה. אירועים שנאספים אחרי המרות נחשבים לאירועים שאינם אירועי המרה.
הטבלה חייבת להכיל את העמודות הבאות:
שם העמודה | סוג |
---|---|
user_id |
string המזהה של משתמש שמבקר בנקודת המגע עם הלקוח. (לא יכול להיות NULL או 0.) |
event_time |
int השעה שבה התרחש האירוע של הוספת התוכן. (לא יכול להיות NULL.) |
credit |
integer הקרדיט תרם על ידי המשתמש. זה יכול להיות כל קרדיט שרוצים לנתח. לדוגמה, ערך ההמרה, מספר ההמרות וכו'. הוא צריך להיות בין 1 ל-100. |
קוד לדוגמה ליצירת הטבלה:
CREATE TABLE user_credit_temp_table AS (
SELECT
user_id,
MAX(event.event_time) AS event_time,
1 AS credit
FROM adh.cm_dt_activities_attributed
WHERE user_id <> '0'
AND event.campaign_id IN UNNEST(@campaign_ids)
AND DATE(TIMESTAMP_MICROS(event.event_time)) BETWEEN @start_date AND @end_date
AND event.activity_id IN UNNEST (@activity_ids)
GROUP BY user_id
);
הפונקציה בעלת הערך בטבלה
הפונקציה בעלת ערך הטבלה היא פונקציה שמחזירה טבלה כתוצאה מכך. לכן אפשר לשלוח שאילתות על הפונקציה בעלת הערך לטבלה כמו על טבלה רגילה.
תחביר
ADH.TOUCHPOINT_ANALYSIS(TABLE touchpoints_tmp_table_name, TABLE credits_tmp_table_name, STRING model_name)
ארגומנטים
שם | |
---|---|
touchpoints_tmp_table_name |
שם הטבלה של נקודות המגע הזמנית עם הלקוח, שנוצרה על ידי הלקוח. לטבלה צריכה להיות סכימה שמכילה את העמודות touchpoint , user_id ו-event_time . |
credits_tmp_table_name |
השם של טבלת הקרדיטים הזמניים למשתמשים שנוצרו על ידי הלקוח. לטבלה צריכה להיות סכימה שמכילה את העמודות user_id , credit ו-conversion_time . |
model |
string חייב להיות MARKOV_CHAINS. |
טבלת פלט
טבלת הפלט תכיל את הסכימה הבאה:
שם העמודה | סוג |
---|---|
touchpoint |
string השם של נקודת המגע עם הלקוח. |
score |
integer חושב ציון שרשרת של מרקוב לנקודת המגע הזו עם הלקוח. |
קוד לדוגמה לשימוש בפונקציה בעלת ערך הטבלה
SELECT *
FROM ADH.TOUCHPOINT_ANALYSIS(
TABLE tmp.touchpoint_temp_table,
TABLE tmp.user_credit_temp_table,
'MARKOV_CHAINS')