NFL Predictor Algorithm (Part 2)

Well I threw in a recency bias and it's helped a good bit. On your end, change your code so that instead of adding each game once, it adds each game week/2 times, rounded up. So on weeks 1 and 2, it gets added once, week 3 and 4, it gets added twice, all the way to week 11 so far where the game gets added 6 times. That has increased the success rate by 11.8%! It's also made the score more spread out as opposed to one leader at the top and then a long tail.

Another change I added that added another game is a minimum score. If a team wins a game (even if it's the Lions), it's worth a minimum of 1 point. Tying is worth a minimum of 1/2 point. You can adjust that value if you wish but it did have an negative effect if this number exceeded the score of the anti-penultimate (second to last, we all learned something today) team.

This did add a wrinkle in there because now some of my results now have ties as well! They appear to occur with teams not in the same division that have a shared opponent. For example, the Dallas Cowboys are tied with the Tampa Bay Buccaneers. They are in different divisions but have both played the New York Giants. They need not have the same outcome for this to occur either. The Vikings, 49ers, and Steelers are all tied due to playing the Detroit Lions. The Vikings and 49ers beat the Lions but the Steelers tied them. And the worst part is, Vikings and 49ers play at 4:25 pm EST today!

The updated results (keep in mind this will vary a good bit week to week due to the bias) are below. I've highlighted the ties and added the shared opponent.

  1. Tennessee Titans: 100.000
  2. Kansas City Chiefs: 99.914
  3. New England Patriots: 95.789
  4. Arizona Cardinals: 87.194
  5. Dallas Cowboys: 82.725 (New York Giants)
  6. Tampa Bay Buccaneers: 82.725 (New York Giants)
  7. Green Bay Packers: 79.931
  8. Indianapolis Colts: 78.599
  9. Los Angeles Chargers: 77.997
  10. Baltimore Ravens: 69.489
  11. Buffalo Bills: 68.543
  12. Pittsburgh Steelers: 63.816 (Detroit Lions)
  13. Minnesota Vikings: 63.816 (Detroit Lions)
  14. San Francisco 49ers: 63.816 (Detroit Lions)
  15. Cincinnati Bengals: 59.089
  16. Atlanta Falcons: 54.362 (New York Giants)
  17. Washington Football Team: 54.362 (New York Giants)
  18. Cleveland Browns: 53.416
  19. Philadelphia Eagles: 52.643
  20. New Orleans Saints: 47.177
  21. Los Angeles Rams: 45.049
  22. Denver Broncos: 44.908
  23. Miami Dolphins: 44.048
  24. Carolina Panthers: 42.329
  25. New York Giants: 40.180 (Kansas City Chiefs)
  26. Las Vegas Raiders: 40.180 (Kansas City Chiefs)
  27. Jacksonville Jaguars: 25.999
  28. Houston Texans: 20.327
  29. Seattle Seahawks: 17.490
  30. New York Jets: 16.545
  31. Chicago Bears: 9.454
  32. Detroit Lions: 0.000

I've retested this against the rest of the season (excluding the tie) and results have improved:

  1. Correct 114 games, incorrect 50 games (69.512% correct) across the season
  2. Correct 7 games, incorrect 9 games (43.750% correct) in week 1
  3. Correct 11 games, incorrect 5 games (68.750% correct) in week 2
  4. Correct 11 games, incorrect 5 games (68.750% correct) in week 3
  5. Correct 11 games, incorrect 5 games (68.750% correct) in week 4
  6. Correct 12 games, incorrect 4 games (75.000% correct) in week 5
  7. Correct 10 games, incorrect 4 games (71.429% correct) in week 6
  8. Correct 10 games, incorrect 3 games (76.923% correct) in week 7
  9. Correct 9 games, incorrect 6 games (60.000% correct) in week 8
  10. Correct 11 games, incorrect 3 games (78.571% correct) in week 9
  11. Correct 9 games, incorrect 4 games (69.231% correct) in week 10
  12. Correct 13 games, incorrect 2 games (86.667% correct) in week 11

There's no use bragging about a prediction bot if we don't know if it can actually make successful future predictions. For the sake of testing and the football pool, this bot is joining it back filling from Thursday so it can join this week. So far it's 2 out 3 (its only loss by picking Dallas over Las Vegas) If it can beat the rest of us, I'm calling that a win.

I might tweak a few more things to see if I can get a few more games out of it, but without a severe overhaul of the algorithm I think this is the end of the line.

Day 78 of #100DaysToOffload