מערכת AI לקמעונאות: חיזוי, התאמה אישית ואופטימיזציה

מבצעים וזינוקים עונתיים שוברים את התחזית הרגילה: המוצר או נגמר במלאי או נשלח למחיקות. אנחנו מפתחים מערכת AI לקמעונאות מקצה לקצה — מחיזוי ביקוש ועד התאמה אישית של הצעות. הרכש נעשה מדויק יותר, וההחלטות נשענות על נתונים ולא על אינטואיציה.

תחומי פיתוח AI

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1365
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1330
  • עיצוב לוגו לחברת B2B Advance
    עיצוב לוגו לחברת B2B Advance
    776
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1077
  • פיתוח לוגו חברת AIDER
    פיתוח לוגו חברת AIDER
    1022
  • פיתוח CRM עבור Chasseurs
    פיתוח CRM עבור Chasseurs
    1113

מדוע חיזוי הביקוש בקמעונאות נשבר בפרומו

מודל קלאסי לחיזוי ביקוש בקמעונאות נבנה על היסטוריית מכירות: ממוצע נע או החלקה אקספוננציאלית לכל מוצר ולכל נקודת מכירה. כל עוד השבוע דומה לקודמו, דיוק החיזוי נשמר ברמה סבירה. ברגע שמופיע פרומו בלוח השנה, המודל ממשיך למשוך את המגמה מהשבועות ה'שקטים' ומחמיץ את השיא פי כמה.

מבצעים חד-פעמיים — הכישלון הראשון. הנחה, תצוגה על משטח ורשימת תפוצה פועלים בו-זמנית, הביקוש גדל פי כמה, ומערכת הרכש קוראת זאת כרמה יציבה חדשה. מכאן — טעויות ברכש: ההזמנה הבאה יוצאת לפי חיזוי מנופח, הסחורה שוקעת במחסן, תוקף התפוגה נגמר, והמדף תפוס במה שלא נמכר.

שיאים עונתיים ותנודות מקומיות בנויים אחרת. כאן חשוב לא גובה העלייה, אלא תאריך תחילתה ועומקה בכל נקודת מכירה: בחנות ליד בית ספר הביקוש למיצים עולה שבועיים לפני ספטמבר, בשכונה הסמוכה — לא משתנה כלל. חיזוי ממוצע ברמת האזור לא תופס את הפער הזה ומייצר חוסר דווקא במקום שבו הביקוש היה אמיתי.

נקודות מכירה חדשות — סוג בעיה נפרד: אין היסטוריה, אין על מה להישען, ובשבועות הראשונים הרכש מתבצע לפי ממוצע הרשת. התוצאה זהה משני הצדדים: במקום אחד מדף ריק ולקוח שעבר למתחרה, במקום אחר עודפים ומחיקה. נפרט איך סוגרים את זה — עם אילו נתונים ואילו בדיקות דיוק של החיזוי בפרומו.

פחות מחיקות, רכש מדויק יותר: אפקטים מדידים של המערכת

החיזוי נבנה לא לפי ממוצע הרשת, אלא ברמת "חנות × מוצר × יום" באופק של עד שבועיים: המודל רואה מבצעים, חגים, מזג אוויר ותנודות מקומיות. המתכנן מקבל לא ביקוש מופשט, אלא כמות קונקרטית למשלוח עבור כל חנות.

האפקט המדיד הראשון — שיעור המחיקות של מוצרים מתכלים. כל עוד ההזמנה נבנית לפי נורמה של "לא פחות מהמדף", העודף שוקע במחסן והולך לפח.

כאשר את ההזמנה מחשב חיזוי עם התאמה לתוקף התפוגה, המחיקות בקטגוריה יורדות מ-4–6% ל-1.5–2% מהמחזור, והמכירות שאבדו מצטמצמות ב-20–35% — המודל מעלה מראש את ההזמנה לקראת תנודה מקומית.

השני — אופטימיזציה של מלאי ועומס המחסן. העודף יוצא ממקומות המשטחים ומהמדפים, המחזוריות בקטגוריה מתאיצה, ושיעור הסחורה ששוכבת מעבר לתקופה מצטמצם פי כמה. הרכש מפסיק להיות ביטוח מפני אי-ודאות והופך לחישוב.

השלישי — הזמן לתכנון ידני. החישוב היומי וההזמנה האוטומטית רצים לפי לוח זמנים ב-Apache Airflow, והמתכנן מגיע לטיוטה מוכנה ומבזבז זמן על חריגים ולא על איחוי טבלאות: מיומיים ל-40–60 דקות בשבוע לקטגוריה. החיזוי נמדד ולא מתקבל כאקסיומה — הדיוק בתקופה מושהית וההטיה לפי חנויות נראים בדוח.

גישות לחיזוי: סטטיסטיקה, למידת מכונה, היברידי

בחירת הגישה נקבעת לפי מבנה הנתונים, ולא לפי אופנה: אורך הטור, עומק ההיסטוריה, מספר פריטי הסחורה, והמידה שבה פרומו, חוסר במדף והחלפת מגוון מעוותים את הביקוש. אותה שיטה נותנת תוצאה שונה על ביקוש יציב ועל מוצר עם מחזור חיים קצר.

להלן שלוש אפשרויות שביניהן בוחרים בפועל, עם המגבלות שמתגלות כבר בתפעול. השוואת גישות החיזוי מתחילה במדידות על ההיסטוריה שלכם, ולא בבחירת השיטה החביבה עלינו.

אפשרות מתי מתאימה מגבלות
מודלים סטטיסטיים לחיזוי ביקוש יציב, היסטוריה ארוכה, אלפי טורים, נדרשת שקיפות החישוב מתקשים לתפוס פרומו ותנודות חדות בביקוש, דורשים כוונון ידני של עונתיות לכל קבוצה
למידת מכונה לחיזוי גורמים רבים ומקושרים: מחיר, מבצעים, מלאי, מזג אוויר, חגים; טורים קצרים נדרש היקף היסטוריה ואימון מחדש קבוע; סיכון גבוה יותר לאוברפיטינג, קשה יותר להסביר סטייה בפריט
גישה היברידית בסיס עונתי ותנודות פרומו בו-זמנית; מגוון רחב ומשתנה במהירות יקרה יותר לתחזוקה: נדרשים בקרת איכות נתונים וניטור התיישנות המודל

ההיברידי מכסה את שני הקצוות: החלק הסטטיסטי אחראי למגמה ולעונתיות, המודל — להתאמה בגין פרומו, מחיר ואירועים חיצוניים. את השוואת הגישות עורכים על תקופה מושהית: בודקים איזה שיעור של פריטים נכנס בסטייה המותרת וכמה תיקונים ידניים נשארים למנהל הקטגוריה. אם פתרון פשוט נותן את אותו דיוק — ניקח אותו, ולא רשת נוירונים.

הטמעה שלב-אחר-שלב: ביקורת נתונים, כוונון, בדיקה, מסירה

העבודה מתנהלת באיטרציות: קודם מבינים מה באמת נמצא בנתונים, ורק אחר כך בונים מודלים. היסטוריית המכירות כמעט תמיד דורשת ניקוי — יש בה ימים בלי סחורה על המדף, תמחורים מחדש, איחודי פריטים ופרומו שנרשמו בדיעבד. כל עוד זה לא מיושב, חיזוי הביקוש בקמעונאות לומד מתמונה מעוותת.

  1. ביקורת נתונים ומקורות — ייצוא נתונים מהקופות, ממערכת הנה"ח ומתוכנית הנאמנות; התאמת פריטים, איתור חסרים, הערכת עומק ההיסטוריה לפי קטגוריות.
  2. ויטרינת מאפיינים — לוח שנה, פרומו, מחירים, מלאי, מזג אוויר; תיוג ברמת "חנות — מוצר — יום" תוך התחשבות בימים שבהם הפריט היה חסר על המדף.
  3. קו בסיס כנקודת ייחוס: אם המודל לא עוקף חישוב עונתי פשוט על הנתונים שלכם, אין מה להטמיע.
  4. כוונון המודלים לפי היררכיה — קווים נפרדים למוצרים מתכלים ולמוצרים בעלי חיי מדף ארוכים, אופקים של יום ושבוע, תיאום חיזויים מלמטה למעלה.
  5. בדיקה רטרוספקטיבית — חלון מתגלגל ותקופה מושהית, שגיאה ברמת "חנות — מוצר — יום", ניתוח נפרד של פרומו וחגים.
  6. קבלת המודל — ספי דיוק מוסכמים לפי קטגוריות, ניתוח הפריטים הגרועים ביותר, נוהל חזרה לקו הבסיס.
  7. מסירה והדרכת הצוות — נוהל אימון מחדש, בקרת איכות נתונים, ניטור סטיות, שילוב החיזוי בתהליך הרכש.

כל שלב נסגר בתוצר: תיאור המקורות, קוד הוויטרינה, דוח דיוק, נוהל. הקבלה מתבצעת על הנתונים שלכם — אתם רואים היכן המודל טועה, לפני שהחיזוי מתחיל להשפיע על הרכש.

מה נשאר בארגון: מודלים, מילון נתונים, נהלים

לאחר ההטמעה נשאר לצוות הלקוח לא קופסה שחורה, אלא קו מתאר ניתן לשחזור: כל תוצר מובן — מה הוא, מאין נלקח ואיך לעדכן אותו בלעדינו.

  • מודל חיזוי ביקוש מאומן — עם מדדי דיוק קבועים על תקופה מושהית: משווים את החיזוי מול הביצוע בכל קבוצת סחורה ובכל נקודת מכירה.
  • מילון נתונים — פירוש כל השדות: מכירות בקופה, מלאי, אספקות, לוח פרומו, חגים. עם מקור, תדירות עדכון וטעויות ייצוא אופייניות.
  • תיעוד המודל — אילו מאפיינים משפיעים על מה, לאילו קטגוריות המודל רלוונטי, היכן הוא מפיק הטיה ובאילו הנחות חושבה העונתיות.
  • נוהל אימון מחדש — תדירות וטריגרים: פתיחת נקודות חדשות, החלפת מגוון, שינוי ביקוש אחרי פרומו. בנוסף אחראי וסדר הבדיקה לאחר חישוב מחדש.
  • תצורת חישוב החיזוי מחדש — לוח זמנים לעדכון, כללים להשלמת חסרים, הסף שמעליו הפריט עובר לבדיקה ידנית.
  • מטריצת תחומי אחריות — מי אחראי על מקור הנתונים, מי על המודל, מי מנתח את צניחת הדיוק בשבוע.
  • צ'קליסט קבלה ובדיקות — הרצה על נתונים היסטוריים, שחזור מגיבוי, חזרה לגרסה קודמת של המודל.

המסירה מתבצעת בשני מפגשים: האנליסטים שלכם יחד עם הצוות שלנו עוברים על עדכון מילון הנתונים ועל אימון מחדש על חתך מכירות אמיתי. לאחר מכן, שינוי נוסף במגוון אינו דורש תמיכה חיצונית.

מקרה בוחן: איך רשת חנויות הפסיקה להפסיד מפרומו וממלאי

לפני הפרויקט, רשת חנויות בפורמט "שכונתי" בת מאתיים נקודות, תכננה אספקות בטבלאות: מנהל הקטגוריה איחד פעם בשבוע ידנית מכירות, לוח פרומו ומלאי. דיוק חיזוי הביקוש לשבוע עמד על כ-60%, ולכן הרכש ביטח את עצמו במלאי — העיקר שהמדף לא יתרוקן.

מחיר הביטוח הזה נראה בשני מספרים. המחיקות של מוצרים מתכלים הגיעו עד לתשיעית ממחזור הקטגוריה, ובשבועות פרומו בכל זאת חסרו 12% מהפריטים: הביקוש זינק, וההזמנה נשארה ברמת העונה הקודמת.

מה שינינו בפרויקט החיזוי

הרכבנו ויטרינת היסטוריית מכירות בחתך חנות — מוצר — יום, וחיברנו אליה את לוח הפרומו, מזג האוויר ואירועים מקומיים כמו ירידים ותיקוני כבישים.

החיזוי מחושב לא לפי ממוצע הקטגוריה, אלא עבור כל צירוף של חנות ומוצר באופק שבין שבוע לחודש, החישוב מחדש רץ כל לילה, ולכן תנודת ביקוש נכנסת להזמנה כבר למחרת.

ההזמנה נוצרת אוטומטית, המנהל מאשר רק חריגים — מוצרים חדשים, מבצעים חד-פעמיים, אנומליות ברורות; ניתן להחזיר קטגוריה למצב ידני בהגדרה אחת, אם הנתונים בה חסרים.

מדדים לפני ואחרי

דיוק החיזוי השבועי עלה מ-60 ל-88%, המחיקות של מוצרים מתכלים ירדו פי שלושה, ושיעור הפריטים שחסרו על המדף ירד מ-12 ל-3%. מלאי המחזור הצטמצם בכ-חמישית באותה רמת שירות, והכנת תוכנית הפרומו נמשכת שעה במקום יומיים.

האפקט נשען לא על כוונון חד-פעמי, אלא על אימון משלים קבוע: המודל נבחן מחדש לפי מכירות טריות, והפערים בין החיזוי לביצוע מנותחים לפי קטגוריות אחת לחודש.

מה עושים כשהנתונים מפוזרים: קופות, מחסן, ערוץ מקוון

מקורות מפוזרים הם הנורמה, ולא החריג: הקופות מספקות מכירות לפי קבלות, המחסן — תנועות ומלאי, הערוץ המקוון — הזמנות, ביטולים והחזרות. כל עוד אין להם ציר משותף "מוצר × נקודה × יום", אין על מה ללמד חיזוי ביקוש בקמעונאות: כל מערכת מחשבת לפי הפריטים והלוח שלה.

הצעד הראשון — ספר פריטים אחיד. מתאימים פריטים לפי ברקוד, מק"ט הספק ושם מנורמל, מקרים שנויים במחלוקת מאשר אדם, ומכאן הזיווג נשמר אוטומטית. לכל שדה מגדירים עדיפות מקור: מלאי — מהמחסן, מחירים והנחות — מייצוא הקופות ב-1С; קונפליקטים נפתרים לפי כלל, ולא "בעין".

הצעד השני — איכות נתונים לפני האימון. מביאים את העובדות לרמת פירוט אחת, מתייגים החזרות ומחיקות, מסירים כפילויות של קבלות, ומסמנים בנפרד מבצעים וימים בלי ייצוא: אם לא סוגרים את החורים, המודל ילמד תקלות אינטגרציה במקום ביקוש.

היסטוריה קצרה משלימים במוצרים דומים ובפרופילי קטגוריות — החיזוי למוצר חדש נבנה על אנלוגים, ולא על בסיס ריק.

מכאן איחוד המקורות חי בשכבה אחת: ויטרינת עובדות, ספר פריטים, לוח נקודות ומבצעים. את המודל מריצים על ליבה מוסכמת של הקטלוג, את הדיוק מציגים על תקופה מושהית, ואחר כך מרחיבים את הכיסוי.

מדדי האיכות — שיעור הפריטים המותאמים, החסרים, הקונפליקטים בספר — נשארים בניטור, ולכן הידרדרות הנתונים נראית לפני שהחיזוי מתפצל מהמדף.

ספקות טכניים נפוצים: איכות נתונים והתחלה קרה

התחלה קרה אינה סיבה לחכות שנה עד שתצטבר היסטוריית מכירות. אם יש על המוצר כמה שבועות של תצפיות, החיזוי נבנה דרך אנלוגים והקטגוריה כולה: עונתיות, מבצעים, חגים, אירועים מקומיים.

ההיררכיה "קטגוריה → מוצר" נותנת אומדן גם במקום שבו אין כמעט נתונים עצמיים, ומתעדכנת ככל שנצבר ביצוע.

בדיקת הדיוק נעשית לא על דמו, אלא על תקופה מושהית: המודל מתאמן על העבר, והחיזוי שלו מושווה למכירות בפועל שהוא לא ראה. את השגיאה מחשבים לפי חנויות, קטגוריות וימות השבוע — חשוב לראות היכן החיזוי נחלש, ולא רק את המדד הממוצע.

כמעט אין לנו היסטוריית מכירות — האם חיזוי אפשרי?

כן. נשענים על פרופילי אנלוגים ודפוסים קטגוריאליים, ומוסיפים מבצעים ואירועים מקומיים. בשבועות הראשונים המודל רץ עם מרווח רחב ומצמצם אותו בהדרגה ככל שנצברות מכירות בפועל.

איך לוודא שהחיזוי טוב מהתכנון הנוכחי?

מריצים את שתי הגישות על אותה תקופה מושהית: שיעור הפריטים ששגיאתם בגבולות המותרים, עודף מלאי או חוסר שיטתי, מספר התיקונים הידניים של מנהל הקטגוריה. את הפער מתעדים בדוח לפני ההפעלה.

מה עושים עם נתונים חסרים במערכת הנה"ח?

אוספים פרופיל נתונים: חסרים בקבלות, כפילויות, פערים בין מלאי למכירות, יחידות מידה שונות. חלק מנוקה אוטומטית, חלק — בכללים בצד האינטגרציה; פריטים בלי היסטוריה ניתנת לשחזור מסומנים ומוצאים מהמדד הכללי.

מי מתחזק את המודל לאחר ההפעלה?

המהנדסים שלנו עוקבים אחר סחיפת הדיוק בעת שינוי מגוון, מחירים והתנהגות קונים, מאמנים את המודל מחדש לפי לוח זמנים ובמקרי אנומליה, ומנתחים פערים עם צוות הלקוח — תיעוד והעברת ידע נכללים בעבודה.

נדבר על המשימה ונחזור עם תוכנית והערכה

שיחה עניינית על חיזוי ביקוש מתחילה בנתונים של הרשת שלכם, ולא במצגת. הערכת הפרויקט נשענת על היסטוריית מכירות ותיאור התהליכים: בלי נתוני פתיחה, טווח הזמנים נשאר ניחוש ולא חישוב.

כדי לדון במשימה לגופה, מספיק לשלוח את מה שכבר קיים במערכות הנה"ח:

  • ייצוא היסטוריית מכירות לפי פריטי סחורה ונקודות מכירה ל-1–2 שנים — עם החזרות, מחיקות ומכירות חיסול;
  • ספר פריטים עם קטגוריות, היררכיה ומאפייני עונתיות;
  • לוח פרומו והנחות: תאריכים, מכניקה, עומק, כיסוי נקודות;
  • גורמים חיצוניים המשפיעים על הביקוש: מזג אוויר, חגים, אירועים מקומיים;
  • תיאור התהליך הנוכחי של תכנון הרכש והתפקידים של המשתמשים בו;
  • רשימת הדוחות והמדדים שלפיהם אתם מעריכים כיום את איכות החיזוי;
  • מגבלות: זמינות נתונים, סביבת ה-IT, דרישות לאחסון ולהרשאות גישה.

בתמורה תקבלו תוכנית הטמעה לפי שלבים, פירוט העבודה עם חלוקה לתחומי האחריות שלנו ושלכם, הערכת פרויקט ורשימת סיכונים באיכות הנתונים. אם אין היסטוריה בחתך הנדרש, נציע תוכנית לצבירתה וקו ראשון של חיזוי על מה שזמין כבר עכשיו.