Wiki source code of Product recommendations for personalized mailings and website
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | (% class="box" %) | ||
| 2 | ((( | ||
| 3 | **Contents:** | ||
| 4 | |||
| 5 | {{toc depth="3" start="2"/}} | ||
| 6 | ))) | ||
| 7 | |||
| 8 | === **General Information** === | ||
| 9 | |||
| 10 | **Product recommendations** are a tool for creating effective customer communications via email campaigns, as well as widgets on the website and in the Mobile Application. | ||
| 11 | |||
| 12 | Key objectives of product recommendation tools: | ||
| 13 | |||
| 14 | * Personalize interactions with customers; | ||
| 15 | * Encourage customers to perform specific actions aligned with the Company’s goals and interests; | ||
| 16 | * Achieve business objectives; | ||
| 17 | * Automate marketing activities and test hypotheses. | ||
| 18 | |||
| 19 | Product recommendations are generated using the [[Loymax AI>>doc:Main.General_information.Loymax_AI.WebHome]] module whose algorithms enable fast and accurate processing and analysis of large data volumes. Marketers and analysts can focus on developing business strategies while delegating technical big-data processing tasks to artificial intelligence for specific business purposes. | ||
| 20 | |||
| 21 | Business goals achieved through personalized communications using product recommendations: | ||
| 22 | |||
| 23 | * [[Improving customer interaction quality>>doc:Main.General_information.CRM.Member_lifecycle.CJM.WebHome]] with the Company; | ||
| 24 | * Enhancing customer experience through recommendations; | ||
| 25 | * Suggesting alternative products; | ||
| 26 | * Expanding the shopping cart; | ||
| 27 | * Increasing purchase frequency; | ||
| 28 | * Increasing average order value; | ||
| 29 | * Promoting specific products, product lines, and brands; | ||
| 30 | * Clearing out inventory; | ||
| 31 | * Other business metrics marketers aim to influence through campaigns and customer engagement scenarios. | ||
| 32 | |||
| 33 | Product recommendations are generated using statistical analysis and machine learning algorithms. These algorithms leverage both historical data and real-time online actions by customers on the website. They analyze preferences, predict behavior, and deliver the most relevant product recommendations for each individual customer. | ||
| 34 | |||
| 35 | (% class="box warningmessage" %) | ||
| 36 | ((( | ||
| 37 | * To use these algorithms in **Product Recommendations** macros within [[Smart Communications>>doc:Main.Usage.Smart_Communications.WebHome]], please contact Loymax specialists. | ||
| 38 | * The Product Recommendations module is an optional, separately licensed feature available on a paid basis. | ||
| 39 | ))) | ||
| 40 | |||
| 41 | === **Interaction of Loymax Infrastructure Components for Generating Product Recommendations** === | ||
| 42 | |||
| 43 | Data sources for receipts, customers, and products from the product catalog used to generate product recommendations include the **DWH BI** data warehouse and/or the **ClickHouse SmartCom** database management system. This data is transferred to the **Loymax AI** module, where it is processed and product recommendations are calculated using ML algorithms. The resulting recommendations are then delivered via API to **data marts**. The **API-proxy server** validates incoming requests and formats responses for Smart Communications. **Smart Communications** retrieves responses from the **API-proxy server**, enriches them with data (images, product names, links, prices, etc.), inserts them into predefined templates, and sends mass messagings containing the generated product recommendations to customers. | ||
| 44 | |||
| 45 | |(% style="border-color:#ffffff; text-align:center" %){{lightbox image="product_recommendations_overview.png" width="1200"/}} | ||
| 46 | |||
| 47 | Currently, 5 algorithms are available for generating product recommendations: | ||
| 48 | |||
| 49 | (% class="table-bordered table-sticky" %) | ||
| 50 | (% class="info" %)|(% style="text-align:center; width:58px" %)**No.**|(% style="text-align:center; width:409px" %)**Name**|(% style="text-align:center; width:495px" %)**Metavariable/macro for use in [[Smart Communications campaigns>>doc:Main.Usage.Smart_Communications.Mass_messaging.WebHome]]**|(% style="text-align:center; width:477px" %)**Example of macro output in final message (shown for email)** | ||
| 51 | |(% style="width:58px" %)1.|(% style="width:409px" %)**[[Popular Products>>doc:||anchor="01"]]**|(% style="width:495px" %){% set clientRecommendation = client.recommendations('**Popular**') %} | ||
| 52 | {% for recommendation in clientRecommendation~|get(3) %} | ||
| 53 | <br>~{~{recommendation.name}} | ||
| 54 | {% endfor %}|(% style="width:477px" %)((( | ||
| 55 | Product Name 1 | ||
| 56 | Product Name 2 | ||
| 57 | Product Name 3 | ||
| 58 | ))) | ||
| 59 | |(% style="width:58px" %)2.|(% style="width:409px" %)**[[Popular Products in Category>>doc:||anchor="02"]]**|(% style="width:495px" %){% set clientRecommendation = client.recommendations('**PopularsCategory**') %} | ||
| 60 | {% for recommendation in clientRecommendation~|get(3) %} | ||
| 61 | <br>~{~{recommendation.name}} | ||
| 62 | {% endfor %}|(% style="width:477px" %)Product Name 1 | ||
| 63 | Product Name 2 | ||
| 64 | Product Name 3 | ||
| 65 | |(% style="width:58px" %)3.|(% style="width:409px" %)**[[Bought Together>>doc:||anchor="03"]]**|(% style="width:495px" %){% set clientRecommendation = client.recommendations('**BoughtTogether**') %} | ||
| 66 | {% for recommendation in clientRecommendation~|get(3) %} | ||
| 67 | <br>~{~{recommendation.name}} | ||
| 68 | {% endfor %}|(% style="width:477px" %)Product Name 1 | ||
| 69 | Product Name 2 | ||
| 70 | Product Name 3 | ||
| 71 | |(% style="width:58px" %)4.|(% style="width:409px" %)**[[Similar Products>>doc:||anchor="04"]]**|(% style="width:495px" %){% set clientRecommendation = client.recommendations('**SimilarProducts**') %} | ||
| 72 | {% for recommendation in clientRecommendation~|get(3) %} | ||
| 73 | <br>~{~{recommendation.name}} | ||
| 74 | {% endfor %}|(% style="width:477px" %)Product Name 1 | ||
| 75 | Product Name 2 | ||
| 76 | Product Name 3 | ||
| 77 | |(% style="width:58px" %)5.|(% style="width:409px" %)**[[Personalized Product Recommendations>>doc:||anchor="05"]]**|(% style="width:495px" %){% set clientRecommendation = client.recommendations('**RelatedPurchases**') %} | ||
| 78 | {% for recommendation in clientRecommendation~|get(3) %} | ||
| 79 | <br>~{~{recommendation.name}} | ||
| 80 | {% endfor %}|(% style="width:477px" %)Product Name 1 | ||
| 81 | Product Name 2 | ||
| 82 | Product Name 3 | ||
| 83 | |||
| 84 | (% class="box infomessage" %) | ||
| 85 | ((( | ||
| 86 | **Notes:** | ||
| 87 | |||
| 88 | 1. Since the product recommendation macro operates on a list of recommendations, specific items are inserted into the message body using the control structures shown in the table above. See an example of the **Product Recommendations** module control structure [[here>>doc:.Control_structure.WebHome]]. | ||
| 89 | 1. API methods for integration into client-facing services ([[Mobile Application>>doc:Main.General_information.Additional_services.Mobile_app.WebHome]], [[Personal Account>>doc:Main.General_information.Additional_services.Personal_account.WebHome]]) are provided upon separate request to Loymax staff. | ||
| 90 | ))) | ||
| 91 | |||
| 92 | Recommendations produced by each algorithm differ because they serve distinct business goals and are based on different models, algorithms, hyperparameters, etc. When selecting a specific algorithm and usage scenario, it’s essential to consider multiple factors: | ||
| 93 | |||
| 94 | * The objective of the specific marketing campaign (information/communication); | ||
| 95 | * The desired customer action following the communication; | ||
| 96 | * Customer touchpoints and content delivery channels. | ||
| 97 | |||
| 98 | This means that combining multiple recommendation algorithms can lead to the most favorable outcome for the Company and effectively motivate customers to take specific actions. | ||
| 99 | |||
| 100 | Communication channels using product recommendations: | ||
| 101 | |||
| 102 | 1. Email, | ||
| 103 | 1. Website widget (a graphical application that displays content on a desktop, smartphone/tablet screen, or web page), | ||
| 104 | 1. Mobile Application, | ||
| 105 | 1. Personal Account. | ||
| 106 | |||
| 107 | === **{{id name="01"/}}“Popular Products” Algorithm** === | ||
| 108 | |||
| 109 | ==== 1. Description of the **Popular Products** Algorithm ==== | ||
| 110 | |||
| 111 | The **Popular Products** algorithm calculates a ranking across the [[entire*>>doc:||anchor="Star"]] product list. It recommends the top-N most popular products from each category based on each product’s position in the overall ranking. | ||
| 112 | This approach recommends a broader range of products (i.e., several items from different categories), which is preferable for achieving business goals. | ||
| 113 | Product rankings are calculated based on total units sold across all customer purchases—i.e., the most purchased items. | ||
| 114 | **All purchases** include both online and offline transactions processed through Loymax. | ||
| 115 | |||
| 116 | ==== 2. Use Cases for the **Popular Products** Algorithm in Personalized Campaigns ==== | ||
| 117 | |||
| 118 | **Email Campaigns:** | ||
| 119 | |||
| 120 | (% class="table-bordered" style="width:1218px" %) | ||
| 121 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:370px" %)**Trigger**|(% style="text-align:center; width:446px" %)**Use Case** | ||
| 122 | |(% style="width:399px" %)[[**Abandoned View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D44B43943F44043E44143C43E442440"]]|(% style="width:370px" %)Product viewed but not purchased|(% style="width:446px" %)((( | ||
| 123 | Customer viewed a product page and then left the site. | ||
| 124 | |||
| 125 | After a defined time interval (t), send an email featuring the most popular products. | ||
| 126 | ))) | ||
| 127 | |(% style="width:399px" %)[[**Abandoned Category View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D44B43943F44043E44143C43E44244043A43044243543343E440438438"]]|(% style="width:370px" %)Category viewed but nothing purchased|(% style="width:446px" %)((( | ||
| 128 | Customer browsed a product category and then left the site. | ||
| 129 | |||
| 130 | After a defined time interval (t), send an email featuring the most popular products. | ||
| 131 | ))) | ||
| 132 | |(% style="width:399px" %)[[**Abandoned Cart**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D43044F43A43E44043743843D430"]]|(% style="width:370px" %)Product added to cart but not purchased|(% style="width:446px" %)((( | ||
| 133 | Customer added a product to the cart and then left the site. | ||
| 134 | |||
| 135 | After a defined time interval (t), send a reminder email about the abandoned cart along with the most popular products. | ||
| 136 | ))) | ||
| 137 | |||
| 138 | (% style="color:inherit; font-family:Montserrat,sans-serif; font-size:20px; font-weight:600" %)3. Examples of Using the (% style="color:inherit; font-family:Montserrat,sans-serif; font-size:20px" %)**Popular Products**(% style="color:inherit; font-family:Montserrat,sans-serif; font-size:20px; font-weight:600" %) Algorithm for Website Personalization | ||
| 139 | |||
| 140 | (% class="table-bordered" style="width:1218px" %) | ||
| 141 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:370px" %)**Trigger**|(% style="text-align:center; width:446px" %)**Use Case** | ||
| 142 | |(% style="width:399px" %)[[**Website Homepage**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143544243843B441430439442"]]|(% style="width:370px" %)Website visit|(% style="width:446px" %)**Popular Products** section. | ||
| 143 | Customer is on the homepage. The most popular products are displayed. | ||
| 144 | |(% style="width:399px" %)[[**Current Product Page View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143C43E44244043543B43F44043E43444343A442A043D430441430439442435"]]|(% style="width:370px" %)Product view|(% style="width:446px" %)**Popular Products** section. | ||
| 145 | Customer is viewing a product. The most popular products are displayed. | ||
| 146 | |(% style="width:399px" %)[[**Current Category Page View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143C43E44244043543B43F44043E43444343A44243E43244344E43A43044243543343E44043844EA043D430441430439442435"]]|(% style="width:370px" %)Category view|(% style="width:446px" %)**Popular Products** section. | ||
| 147 | Customer is browsing a category. The most popular products are displayed. | ||
| 148 | |||
| 149 | ==== 4. General Concept of the **Popular Products** Algorithm ==== | ||
| 150 | |||
| 151 | **Example**: Generating recommendations by selecting the top 1 most popular product from each category. | ||
| 152 | |||
| 153 | |(% style="border-color:#ffffff; text-align:center" %)[[image:attach:Recommendations_01.png]] | ||
| 154 | |||
| 155 | === **{{id name="02"/}}“Popular Products in Category” Algorithm** === | ||
| 156 | |||
| 157 | ==== 1. Description of the **Popular Products in Category** Algorithm ==== | ||
| 158 | |||
| 159 | The **Popular Products in Category** algorithm calculates a popularity ranking among products within each specific category. | ||
| 160 | |||
| 161 | It recommends the top-N products from the category. | ||
| 162 | |||
| 163 | Product rankings are calculated based on total units sold across all customer purchases—i.e., the most purchased items. | ||
| 164 | **All purchases** include both online and offline transactions processed through Loymax. | ||
| 165 | |||
| 166 | ==== 2. Use Cases for the **Popular Products in Category** Algorithm in Personalized Campaigns ==== | ||
| 167 | |||
| 168 | Recommended products are selected based on the customer’s previously viewed/ordered/purchased items and the category (i.e., category ID) to which those items belong. | ||
| 169 | |||
| 170 | The category/classifier level assigned to a product can be either the lowest or a higher level in the hierarchy. | ||
| 171 | |||
| 172 | **Email Campaigns:** | ||
| 173 | |||
| 174 | (% class="table-bordered" style="width:1218px" %) | ||
| 175 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:370px" %)**Trigger**|(% style="text-align:center; width:446px" %)**Use Case** | ||
| 176 | |(% style="width:399px" %)[[**Abandoned View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D44B43943F44043E44143C43E442440"]]|(% style="width:370px" %)Product viewed but not purchased|(% style="width:446px" %)Send an email after X days recommending the most popular products in the same category. | ||
| 177 | |(% style="width:399px" %)[[**Abandoned Cart**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D43044F43A43E44043743843D430"]]|(% style="width:370px" %)Product added to cart but not purchased|(% style="width:446px" %)Send an email after X days recommending the most popular products in the same category. | ||
| 178 | |||
| 179 | ==== 3. Use Cases for the **Popular Products in Category** Algorithm in Website Personalization ==== | ||
| 180 | |||
| 181 | Recommended products are selected based on the customer’s on-site behavior (event tracking) and the category (i.e., category ID) of the viewed product. The classifier level (i.e., category) can be configured—it may be the lowest level or a higher-level category. | ||
| 182 | |||
| 183 | (% class="table-bordered" style="width:1218px" %) | ||
| 184 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:369px" %)**Trigger**|(% style="text-align:center; width:447px" %)**Use Case** | ||
| 185 | |(% style="width:399px" %)[[**Current Product Page View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143C43E44244043543B43F44043E43444343A442A043D430441430439442435"]]|(% style="width:369px" %)Product view|(% style="width:447px" %)**Compared With This Product** section. | ||
| 186 | Recommend popular products from the same category based on the currently viewed item. | ||
| 187 | |||
| 188 | ==== 4. General Concept of the Algorithm ==== | ||
| 189 | |||
| 190 | Product rankings are calculated at each classifier level (**Group ID**, **Subgroup ID**, **Category ID**) across all products belonging to that hierarchical level—i.e., all items in the group/subgroup/category—regardless of deeper nesting. | ||
| 191 | |||
| 192 | For example, if a **Subgroup ID** (a higher-level classifier than category) is provided in the request, the ranking is calculated across all products in every category belonging to that subgroup (see example below for classifier level 2). | ||
| 193 | |||
| 194 | **Example**: A customer is viewing **Product 6**. The diagram below illustrates the 5 product recommendations they might receive when querying by **Category ID**, **Subgroup ID**, or **Group ID**. | ||
| 195 | |||
| 196 | |(% style="border-color:#ffffff; text-align:center" %)[[image:attach:Recom_02.png]] | ||
| 197 | |||
| 198 | === **{{id name="03"/}}“Similar Products” Algorithm** === | ||
| 199 | |||
| 200 | ==== 1. Description of the **Similar Products** Algorithm ==== | ||
| 201 | |||
| 202 | The **Similar Products** algorithm recommends alternative [[products*>>doc:||anchor="Star"]] that are the most similar to the viewed/ordered/purchased item. | ||
| 203 | |||
| 204 | It recommends N products that have similar attributes to the viewed/ordered/purchased product. | ||
| 205 | |||
| 206 | ==== 2. Use Cases for the **Similar Products** Algorithm in Personalized Campaigns ==== | ||
| 207 | |||
| 208 | **Email Campaigns:** | ||
| 209 | |||
| 210 | (% class="table-bordered" style="width:1218px" %) | ||
| 211 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:370px" %)**Trigger**|(% style="text-align:center; width:446px" %)**Use Case** | ||
| 212 | |(% style="width:399px" %)[[**Abandoned View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D44B43943F44043E44143C43E442440"]]|(% style="width:370px" %)Product viewed but not ordered|(% style="width:446px" %)Send an email after X days with alternative products similar to those viewed by the customer. | ||
| 213 | |(% style="width:399px" %)[[**Abandoned Cart**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D43044F43A43E44043743843D430"]]|(% style="width:370px" %)Product added to cart but not purchased|(% style="width:446px" %)Send an email after X days with alternative products similar to those viewed by the customer. | ||
| 214 | |||
| 215 | ==== 3. Use Cases for the **Similar Products** Algorithm in Website Personalization ==== | ||
| 216 | |||
| 217 | (% class="table-bordered" style="width:1218px" %) | ||
| 218 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:369px" %)**Trigger**|(% style="text-align:center; width:447px" %)**Use Case** | ||
| 219 | |(% style="width:399px" %)[[**Current Product Page View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143C43E44244043543B43F44043E43444343A442A043D430441430439442435"]]|(% style="width:369px" %)Product view|(% style="width:447px" %)**You Might Like** section. | ||
| 220 | Recommend alternative products similar to the one currently viewed by the customer. | ||
| 221 | |||
| 222 | ==== 4. General Concept of the Algorithm ==== | ||
| 223 | |||
| 224 | |(% style="border-color:white; width:368px" %)[[image:attach:ARL_rules_example.gif]]|(% style="border-color:white; width:1070px" %)((( | ||
| 225 | For each product, a neural network generates an N-dimensional vector representation (embedding) based on product descriptions, attributes, purchase/view statistics/content. | ||
| 226 | |||
| 227 | The 3D space shown visualizes high-dimensional vectors (dimensionality > 50). | ||
| 228 | |||
| 229 | Each point represents a product. Larger points indicate clusters of closely related items. Nearest-neighbor clusters form with minimal intra-cluster distances and significant inter-cluster separation. | ||
| 230 | |||
| 231 | Similar products are selected based on minimal cosine distance between vectors—i.e., those sharing the most similar combination of product attributes. | ||
| 232 | ))) | ||
| 233 | |||
| 234 | === **{{id name="04"/}}“Bought Together” Algorithm** === | ||
| 235 | |||
| 236 | ==== 1. Description of the **Bought Together** Algorithm ==== | ||
| 237 | |||
| 238 | The **Bought Together** algorithm recommends products that most frequently appear in the same transaction as the viewed/ordered/purchased items. | ||
| 239 | |||
| 240 | ==== 2. Use Cases for the **Bought Together** Algorithm in Personalized Campaigns ==== | ||
| 241 | |||
| 242 | **Email Campaigns:** | ||
| 243 | |||
| 244 | (% class="table-bordered" style="width:1218px" %) | ||
| 245 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:370px" %)**Trigger**|(% style="text-align:center; width:446px" %)**Use Case** | ||
| 246 | |(% style="width:399px" %)[[**Abandoned View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D44B43943F44043E44143C43E442440"]]|(% style="width:370px" %)Product viewed but not ordered|(% style="width:446px" %)Send an email after X days with products most frequently bought together with the item viewed by the customer. | ||
| 247 | |(% style="width:399px" %)[[**Abandoned Cart**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D43044F43A43E44043743843D430"]]|(% style="width:370px" %)Product added to cart but not purchased|(% style="width:446px" %)Send an email after X days with products most frequently bought together with the items in the customer’s cart. | ||
| 248 | |(% style="width:399px" %)[[**Thank You for Your Purchase!**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H42143443543B43043D43743043A430437"]]|(% style="width:370px" %)Customer made a purchase|(% style="width:446px" %)Send an email after X days with products most frequently bought together with the items in the customer’s order. | ||
| 249 | |||
| 250 | ==== 3. Use Cases for the **Bought Together** Algorithm in Website Personalization ==== | ||
| 251 | |||
| 252 | (% class="table-bordered" style="width:1218px" %) | ||
| 253 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:369px" %)**Trigger**|(% style="text-align:center; width:447px" %)**Use Case** | ||
| 254 | |(% style="width:399px" %)[[**Current Product Page View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143C43E44244043543B43F44043E43444343A442A043D430441430439442435"]]|(% style="width:369px" %)Product view|(% style="width:447px" %)**Frequently Bought Together** section. | ||
| 255 | Recommend complementary products. | ||
| 256 | |(% style="width:399px" %)[[**Product Added to Cart**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41443E43143043243B43543D44243E43243044043243A43E43D44243543943D435440"]]|(% style="width:369px" %)Product added to cart|(% style="width:447px" %)**Frequently Bought Together** section. | ||
| 257 | Recommend complementary products. | ||
| 258 | |||
| 259 | ==== 4. General Concept of the **Bought Together** Algorithm ==== | ||
| 260 | |||
| 261 | This algorithm incorporates a series of models and techniques based on the **[[Association Rule Learning>>https://en.wikipedia.org/wiki/Association_rule_learning]]** methodology. | ||
| 262 | |||
| 263 | Association rules for product recommendations consist of logical rules that identify relationships between products and generate recommendations based on those relationships. These rules help predict which products may interest a customer and offer relevant suggestions based on prior purchases or current browsing behavior, thereby enhancing personalization and customer satisfaction. | ||
| 264 | |||
| 265 | At first glance, each customer’s in-store purchases appear unique. However, customers develop similar behavioral patterns driven by shared needs. People's needs often overlap, allowing us to identify typical purchasing behaviors under specific conditions. | ||
| 266 | |||
| 267 | (% class="box" %) | ||
| 268 | ((( | ||
| 269 | A classic example of an association rule is: **Customers who bought Product A also buy Product B**. This rule, derived from purchase history analysis, enables recommending Product B to customers who previously bought or are currently interested in Product A. | ||
| 270 | ))) | ||
| 271 | |||
| 272 | Association rules can be complex and include multiple conditions. | ||
| 273 | |||
| 274 | (% class="box" %) | ||
| 275 | ((( | ||
| 276 | For example: **Customers who bought Product A and Product B also buy Product C**. This rule suggests that customers who have already purchased Products A and B may be interested in Product C—i.e., a combination of two, three, or more products. | ||
| 277 | ))) | ||
| 278 | |||
| 279 | Assume we have customer purchase history data indicating which products were bought together. Association rules identify product relationships and generate recommendations accordingly. | ||
| 280 | |||
| 281 | (% class="box" %) | ||
| 282 | ((( | ||
| 283 | For instance, consider the following association rules: | ||
| 284 | \\**Rule 1**: Customers who bought Cheddar cheese also buy crackers. | ||
| 285 | **Rule 2**: Customers who bought Gouda cheese also buy red wine. | ||
| 286 | **Rule 3**: Customers who bought Brie cheese also buy pears. | ||
| 287 | \\Thus, a recommendation system leveraging association rules could suggest: | ||
| 288 | |||
| 289 | * Crackers to a customer interested in Cheddar cheese (Rule 1). | ||
| 290 | * Red wine to a customer who purchased Gouda cheese (Rule 2). | ||
| 291 | * Pears to a customer who purchased Brie cheese (Rule 3). | ||
| 292 | ))) | ||
| 293 | |||
| 294 | === **{{id name="05"/}}“Personalized Product Recommendations” Algorithm** === | ||
| 295 | |||
| 296 | ==== 1. Description of the **Personalized Product Recommendations** Algorithm ==== | ||
| 297 | |||
| 298 | (% class="wikigeneratedid" id="H" %) | ||
| 299 | The **Personalized Product Recommendations** algorithm generates product suggestions based on an individual customer’s behavior (Customer ID) and the behavior of similar customers. | ||
| 300 | In other words, it predicts unknown preferences for a specific user by leveraging preference data from a group of users. | ||
| 301 | |||
| 302 | (% class="wikigeneratedid" %) | ||
| 303 | To predict optimal customer preferences, the machine learning model uses data on customer behavior and purchase history, online activity, customer profiles and attributes, product attributes and statistics, and other parameters. | ||
| 304 | |||
| 305 | ==== 2. Use Cases for the **Personalized Product Recommendations** Algorithm in Personalized Campaigns ==== | ||
| 306 | |||
| 307 | **Email Campaigns:** | ||
| 308 | |||
| 309 | (% class="table-bordered" style="width:1218px" %) | ||
| 310 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:370px" %)**Trigger**|(% style="text-align:center; width:446px" %)**Use Case** | ||
| 311 | |(% style="width:399px" %)((( | ||
| 312 | [[**Abandoned View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D44B43943F44043E44143C43E442440"]] | ||
| 313 | |||
| 314 | |||
| 315 | )))|(% style="width:370px" %)Product viewed but not ordered|(% style="width:446px" %)Send an email X hours after viewing. | ||
| 316 | |(% style="width:399px" %)[[**Abandoned Cart**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41144043E44843543D43D43044F43A43E44043743843D430"]]|(% style="width:370px" %)Product added to cart but not purchased|(% style="width:446px" %)Send an email X days after adding to cart. | ||
| 317 | |(% style="width:399px" %)**Purchase Recommendations**|(% style="width:370px" %)[[Customer made a purchase>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H42143443543B43043D43743043A430437"]]|(% style="width:446px" %)Send an email X days after purchase. | ||
| 318 | |(% style="width:399px" %)**Declining Purchase Amount**|(% style="width:370px" %)Customer’s purchase amount decreased by X% over a period|(% style="width:446px" %)If purchase amount drops by X%, send an email with personalized product recommendations. | ||
| 319 | |(% style="width:399px" %)[[**Declining Website Visits**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41F44043E44843B43E43443D43543944143F43E44143B43543443D43543343E43F43E44143544943543D43844F441430439442430"]]|(% style="width:370px" %)Customer hasn’t visited the site|(% style="width:446px" %)Send an email if the customer hasn’t visited the site in X days. | ||
| 320 | |||
| 321 | ==== 3. Use Cases for the **Personalized Product Recommendations** Algorithm in Website Personalization ==== | ||
| 322 | |||
| 323 | (% class="table-bordered" style="width:1227px" %) | ||
| 324 | (% class="info" %)|(% style="text-align:center; width:399px" %)**Campaign**|(% style="text-align:center; width:369px" %)**Trigger**|(% style="text-align:center; width:452px" %)**Use Case** | ||
| 325 | |(% style="width:399px" %)[[**Current Product Page View**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143C43E44244043543B43F44043E43444343A442A043D430441430439442435"]]|(% style="width:369px" %)Product page view|(% style="width:452px" %)**You Might Like** or **Just for You** section. | ||
| 326 | Recommendations related to the viewed product. | ||
| 327 | |(% style="width:399px" %)[[**Website Login**>>doc:Main.Usage.Smart_Communications.Campaign_list.Triggers.WebHome||anchor="H41A43B43843543D44243F43E44143544243843B441430439442"]]|(% style="width:369px" %)Authorized customer login|(% style="width:452px" %)**You Might Like** or **Just for You** section. | ||
| 328 | Recommendations related to the viewed product. | ||
| 329 | |||
| 330 | ==== 4. General Concept of the **Personalized Product Recommendations** Algorithm ==== | ||
| 331 | |||
| 332 | The **Personalized Product Recommendations** algorithm is an ensemble of multiple models and algorithms. Its foundation is the [[Collaborative Filtering>>https://en.wikipedia.org/wiki/Collaborative_filtering]] technique. | ||
| 333 | Using this method within an ensemble of models—alongside other algorithms—produces more relevant product recommendations for each customer. | ||
| 334 | |||
| 335 | **Collaborative filtering** is a method for generating predictions (recommendations) in [[recommendation systems>>doc:Main.General_information.Loymax_Loyalty.recommendation_systems.WebHome]] by leveraging known preferences (ratings) from a group of customers to predict unknown preferences for another customer. | ||
| 336 | |||
| 337 | The core assumption of this method is: customers who have purchased similar products/categories in the past are likely to make similar future purchases of other products they haven’t bought yet—but that their nearest “neighbors” (i.e., customers with highly similar purchase histories) have purchased. | ||
| 338 | |||
| 339 | (% class="box" %) | ||
| 340 | ((( | ||
| 341 | **{{id name="Star"/}}Footnotes: *** Algorithms may use either the full product catalog or a catalog excluding a **blacklist** of products/categories. The method for specifying excluded items is agreed upon during the Product Recommendations Module implementation phase. | ||
| 342 | ))) | ||
| 343 | |||
| 344 | (% class="box" %) | ||
| 345 | ((( | ||
| 346 | **See also:** | ||
| 347 | |||
| 348 | * [[Product Recommendations Module Control Structure>>doc:.Control_structure.WebHome]] | ||
| 349 | * [[Recommendation System Integration>>doc:Main.General_information.Loymax_Loyalty.recommendation_systems.WebHome]] | ||
| 350 | * [[Omnichannel>>doc:Main.General_information.Sale_channels.WebHome]] | ||
| 351 | * [[Attributes Related to Loymax AI>>doc:Main.Usage.MMP.Admin_panel.Client_attributes.Common_attributes.WebHome||anchor="ML"]] | ||
| 352 | * [[Personal Offers Using Machine Learning Mechanics>>doc:Main.Installation_and_configuration.Extra_modules.CommunicationService_ML.WebHome]] | ||
| 353 | ))) | ||
| 354 | |||
| 355 | (% class="box" %) | ||
| 356 | ((( | ||
| 357 | **This article incorporates material from the following sources:** | ||
| 358 | |||
| 359 | * [[Association Rule Learning>>https://en.wikipedia.org/wiki/Association_rule_learning]] | ||
| 360 | * [[Collaborative Filtering>>https://en.wikipedia.org/wiki/Collaborative_filtering]] | ||
| 361 | ))) |