Coming soon - Get a detailed view of why an account is flagged as spam!
view details

This post has been de-listed (Author was flagged for spam)

It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.

24
As a non-data-scientist, assess my approach for finding the "most important" columns in a dataset
Post Flair (click to view more posts with a particular flair)
Post Body

I'm building a product for the video game, League of Legends, that will give players 3-6 distinct things to focus on in the game, that will increase their chances of winning the most.

For my technical background, I thought I wanted to be a data scientist, but transitioned to data engineering, so I have a very fundamental grasp of machine learning concepts. This is why I want input from all of you wonderfully smart people about the way I want to calculate these "important" columns.

I know that the world of explanability is still uncertain, but here is my approach:

  1. I am given a dataset of matches of a single player, where each row represents the stats of this player at the end of the match. There are ~100 columns (of things like kills, assists, damage dealt, etc) after dropping the columns with any NULLS in it.
    1. There is a binary WIN column that shows whether the player won the match or not. This is the column we are most interested in
  2. I train a simple tree-based model on this data, and get the list of "feature importances" using sklearn's permutation_importance() function.
    1. For some reason (maybe someone can explain), there are a large number of columns that return a ZERO feature importance after computing this.
  3. This is where I do things differently: I RETRAIN the model using the same dataset, but without the columns that returned 0 importance on the last "run"
  4. I basically repeat this process until the list of feature importances doesn't contain ZERO.
    1. The end result is that there are usually 3-20 columns left (depending on the model).
  5. I take the top N (haven't decided yet) columns and "give" them to the user to focus on in their next game

Theoretically, if "feature importance" really lives up to it's name, the ending model should have only the "most important" columns when trying to achieve a win.

I've tried using SHAP/LIME, but they were more complicated that using straight feature importance.

Like I mentioned, I don't have classical training in ML or Statistics, so all of this is stuff I tried to learn on my own at one point. I appreciate any helpful advice on if this approach makes sense/is valid.

The big question is: are there any problems with this approach, and are the resulting set of columns truly the "most important?"

Author
Account Strength
0%
Account Age
7 years
Verified Email
Yes
Verified Flair
No
Total Karma
42,685
Link Karma
23,665
Comment Karma
18,693
Profile updated: 6 days ago
Posts updated: 17 hours ago

Subreddit

Post Details

We try to extract some basic information from the post title. This is not always successful or accurate, please use your best judgement and compare these values to the post title and body for confirmation.
Posted
10 months ago