Currently keywords are just a dumping ground for any word or phrase that is somewhat related to a game.
Perhaps what is needed is a re-definition or splitting up of keywords into:
Game mechanics (keywords)
Player character (keywords)
Let's take the "rain" keyword for example. Currently there are 310 games with this keyword assigned. These games feature rain to various degrees for various purposes:
Gameplay: Rain (Game) - a core mechanic where your character is invisible unless they stand in the rain.
Atmospheric: Deadly Premonition - it rains for most of the game, and the raincoat killer only kills when it is raining. The storyline and atmosphere are driven by the rain.
Character: Ultimate Mortal Kombat 3 - Rain is the name of a playable character.
Other/Minor: GTA Vice City - it features rain in terms of a weather cycle but it is not a core gameplay mechnic, nor used as an atmospheric/story related tool.
Why the current set-up is a problem:
Example 1: I am a user who liked the rain mechanic in Rain so I check the keyword to see other games that use it as a mechanic: to be given a list of 310 games such as Sonic's Ultimate Genesis Collection, Wario Land 3, God of War, Donkey Kong Country. Most games are irrelevant to me.
Example 2: I am a user who enjoyed the way that rain was used in Deadly Premonition as an atmospheric and story telling device and again I'm given the above list of games.
Currently the games associated with a keyword are overloaded to the point that they are not useful to a user
So essentially, keywords becomes a pot of everything and anything related to a game with no way to distinguish WHAT about a game it refers to. This ambiguosness reduces the ability for these keyword tags to mean anything or be helpful to users.
I understand that is difficult to alter the way keywords are assigned/used but as an idea, during a transitionary period, the current "keyword" attribute and its contents for each game could simply become "Other/Minor Keywords" (so they still exist and are useable, searchable etc.) but at the same time the new keywords attributes (game mechanics, atmospheric, player character etc.) can be added and users encouraged to build them up.
In fact, my example for Player Character was not great seeing as it was the name of a character. Something more along the lines of the below, where different levels of specificity can be applied:
Human: Super Mario Bros
Male: Super Mario Bros
Female: Tomb Raider
Child: Brothers A Tale of Two Sons
Anthropomorphic Animal: Crash Bandicoot
Natural Animal: Tokyo Jungle
Cuboid: Thomas was Alone
Car: Need for Speed
F1 Car: F1 2020