I have simulated a dataset for clicks on YouTube videos that records each click using dummy data. In the dataset, I collect information such as timestamp, videoURL, browser, screenW, screenH, device, device model, device type and userAgent. This dataset has no target variable such as isFraud being 0 or 1, but I would like to implement it.

So, if this database recorded real world data, how would I be able to spot fraudulent activity / fraudulent patterns where people or bots are clicking on their videos in order to inflate the view count?

Should I check if repeating userAgents are clicking on the same videoURL every X minutes through the timestamp of the click? Maybe also check the screen width and height because there might be some weird values / nonexistent types there?

What data should I add to my dataset in order to create bot data, so the dataset can be used for predictive modeling?


1 Answer 1


This is very meta. I am certain there is a field that researches this but I don't know it off the top of my head. Try perhaps synthetic data or maybe unlabeled learning.

The problem I forsee here is that.

  1. create "fraud" with certain traits, attributes, etc that you have already described. "Should I check if repeating userAgents are clicking on the same videoURL every X..."

  2. Train model to detect fraud.

  3. Model simply learns the rule you created in model 1.

Well, why bother with the model if it will learn what you already proposed. I could see some really deep, black boxy algorithm learning something deeper or more intuitive then the rules provided, especially if you provide many rules.

But this looks to be a garbage in, garbage out situation. You really don't have any data to do data science with, at least in my naïve understanding.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.