Automotive marketing features a wide range of intent recommendation scenarios, such as common optional package intent recommendations, potential customer car purchase intent prediction, and replacement or maintenance intent prediction. Business personnel can leverage user lifecycle management to adopt different marketing strategies for user groups at different lifecycle stages, such as:
This case focuses on the scenarios of users planning to purchase a car, users about to purchase a car, and existing car owners. It uses machine learning to infer users' car purchase intent, trains on historical data of car purchase and replacement users, predicts car purchase intent for users in these three lifecycle stages, and adopts appropriate marketing measures.
Field name | Field type | Field meaning | Field description |
|---|---|---|---|
uid | bigint | User ID | |
gender | string | Gender | Gender: Male, female |
age | string | Age range | Age range: 18-23, 24-30, 31-40, 41-50, 51- |
area | string | Permanent residence | Permanent residence - region |
lifestage | string | Life stage | Life stage: Seeking marriage, preparing for marriage, pregnancy, already have children |
education | string | Education | Education: High school or below, associate degree, bachelor's degree, master's degree or above |
job | string | Profession | Profession: International student, doctor, lawyer, teacher, blue-collar, white-collar, others |
birthday | string | Birthday | Birthday |
lifecycle | string | Lifecycle | Lifecycle: Fan, Potential customer, Car owner, Churned |
own_store | string | Affiliated store | Affiliated store: Zhonghuan Guanghui, Pudong Yongda, Others |
own_sales | string | Sales representative | Sales representative: Dawson, Wang Ning, Robert |
wanted_store | string | Intended dealer: | Intended dealer: Pudong Yongda, Zhonghuan Guanghui |
wanted_carmodel | string | Intended car model | Intended car model: RX5 Plus, ER6, RX3, i5, i6, iMAX8, Unknown |
rank | string | Intention rating | Intention rating: High, Medium, Low, Purchased |
lasttime_pudongyongda_testdrive | string | Last store test drive time | Last store test drive time: within 1 week, within 2 weeks, within 1 month, within 2 months, within 3 months, within half a year, within one year |
newcar_tasting | string | New car showcase | New car showcase: Yes, No |
storetimes_lastthreemonth | string | Number of dealer visits in the past 3 months | Number of dealer visits in the past 3 months: 0, 1, 2, 3, 4, >4 |
storenumbers_lastthreemonth | string | Number of dealers visited in the past 3 months | Number of dealers visited in the past 3 months: 0, 1, 2, 3, 4, >4 |
warranty_times | int | Number of store visits within warranty period | Number of store visits within warranty period: 0, 1, 2, 3, 4, 5 |
warranty_values | string | Total service value within warranty period | Total service value within warranty period: 0-3000, 3000-5000, 5000-10000, >10000 |
pudongyongda_noentry_time | string | Time not entering this store | Time not entering this store (Pudong Yongda): 1 month, 2 months, 3 months, 4 months, 5 months, 6 months, 7 months, 8 months, 9 months, 10 months, 11 months, 12 months |
forwardtimes_lastthreemonth | string | Total forwards in the past 3 months | Total forwards in the past 3 months: <3, 3-5, 6-10, >10 |
publishtimes_lastmonth | string | Number of posts in the past month | Number of posts in the past month: 0, 1, 2, 3, 4, >4 |
applets_opentimes_lastmonth | int | Number of times the applet was opened in the past month | Number of times the applet was opened in the past month |
optionalpackpage_opentimes_lastmonth | int | Number of times the optional package page was opened in the past month | Number of times the optional package page was opened in the past month |
optionalpackpage_time_lastmonth | int | Optional package page browsing duration in the past month | Optional package page browsing duration in the past month. Unit: minutes |
last_eta | int | Current ETA | Current ETA. Unit: days |
eta_modifytimes | string | ETA modification times | ETA modification times: 0, 1, 2, 3, 4, >4 |
pointuse_lastmonth | string | Points used in the past month | Points used in the past month: Yes, No |
point_count | string | Points balance | Points balance: 0-500, 500-10000, 10000-30000, over 30000 |
active_lasttime | string | Last active time | Last active time |
contact_preference | string | Contact preference | Contact preference |
gift_preference | string | Premium product category preference | Premium product category preference |
carowner | string | Owner of this vehicle | Owner of this vehicle |
salescarmodel | string | Car model of this transaction | Car model of this transaction |
salestime | string | Transaction date of this vehicle | Transaction date of this vehicle |
carownerappvisit | string | Car owner app visit frequency | Car owner app visit frequency |
othercarmodel | string | Other owned car models | Other owned car models |
interest_car_price | string | Car price | Car price |
interest_car_brand_country | string | Country of car brand | Country of car brand |
interest_car_brand | string | Car brand | Car brand |
interest_car_other_series_type | string | Car model | Car model |
interest_car_newenergy_type | string | New energy type | New energy type |
client_stage | string | Client stage | Client stage |
channel | string | Lead channel | Lead channel |
community_pv_lastweek | int | Community page views in the past week | Community page views in the past week |
community_creation_lastweek | int | Community content creation in the past week | Community content creation in the past week |
community_forward_lastweek | int | Community forwards in the past week | Community forwards in the past week |
community_recruit_lastweek | int | Community recruitment in the past week | Community recruitment in the past week |
car_optical_pack_eagerness | string | Preference for optional packages | Preference for optional packages |
car_pick_up_eagerness | string | Car pick-up urgency | Car pick-up urgency |
returned_customer | string | Returning customer | Returning customer |
car_price_comparison | string | Cross-store price comparison | Cross-store price comparison |
stored_many_points | string | Significant point accumulation | Significant point accumulation |
club_freshman | string | New club member | New club member |
recall_values | string | Churn recall value | Churn recall value |
The data includes most of the key processed indicators, such as user lifecycle, activity level, channel information, and personal attributes. By using such structured data and simple modeling, it is possible to predict intent ratings and thus enable precise marketing.
Data integration is achieved by directly connecting to Hive data. This case involves two datasets: historical manually labeled data and newly generated data. The historical labeled data is used for classification training on intention ratings, while the new data is used for intention prediction.
Select core indicators for intention training. Since data processing has already been completed in advance, all indicators can be considered as core factors influencing intention selection. Therefore, there is no need for feature selection or feature processing. A simple logistic regression can meet the target requirements.
Support for model evaluation functionality during training is provided to assist users in manual parameter tuning. Refer to the confusion matrix below, which shows the model's final recall and precision, as well as the performance on the test set under different classification scenarios. It also supports the calculation of weighted recall, weighted precision, and accuracy.
After obtaining a model with satisfactory performance, the prediction results can be output to Hive/ClickHouse. Subsequent visual queries and dashboard creation can be performed on the DataWind platform. It can also be integrated with CDP products for label insights, marketing applications, user segmentation, and more.