# Modeling social media post scheduling optimization

Problem:

I want to maximize performance for social media posts by optimizing the time when they are published.

Current model:

X: publishing_datetime, post_attribute_1, ..., post_attribute_n
y: performance


Desired model:

X: post_attribute_1, ..., post_attribute_n
y: publishing_datetime


The desired model should predict the optimal publishing_datetime for maximizing performance. Once the data can be modeled like this, the problem is solved with a regression neural network.

What I've tried:

Filtering the posts with above-average performance and using their attributes and publishing_datetime to form my desired model.

This is not ideal as a lot of data is unused and posts with particularly great performance influence just as much as posts with barely above-average performance.

Any suggestion on how to achieve this model transition?

All ideas and alternative approaches are very welcome. Thanks in advance!

• Is using the existing model and „fuzzing“ possible publish times to optimise the predicted score a way to go? Mar 11, 2018 at 21:44
• Yes, that would work! I'll leave it as a last resort though, as fuzzing through timeframes would require extra processing. I'm playing with collaborative filtering, where post_categories are "recommended" to each timeframe. Mar 12, 2018 at 3:34

You might be confusing target with feature interpretability.

You probably want the target to be performance and datetime as a feature that could be interpretable.

If datetime is encoded in epoch time, it might be to sparse to be useful. You might want to construct many datetime features, examples include: time of day, day of week, day of month, and day of year. The result would be a model that could predict how different times effect performance.

One way is to construct the problem as a classification problem, where you break the week into 30m slots.

You'll need to carefully define the label of success - after normalizing the channel activity and looking for a high z-score.

This way you can still use your desired features.

To further improve the model you'd like to use seasonality data and holidays. (you can get those features from prophet