Hi @wryanthomas - a phrase is open to interpretation, does it consists of 5 words or up to 10 words : )?
But I think i understand what you want. One alternative is to use the cluster command and cluster your phrases into groups and then use the output viz wordcloud.
Let us say the phrases that you want to categorize are identified by a field called 'Title'. You can then use something like this:
| cluster field=Title t=0.5 labelonly=true showcount=true match=termset
| table Title,cluster_count
| dedup Title
Here we cluster the title into groups of events, the parameters t and match are significant, basically they are used to match the sensitivity (match similarity) and the algo. used to match. You will have to customize both, here is the ref. doc - https://docs.splunk.com/Documentation/Splunk/7.3.0/SearchReference/Cluster
Your output might not be exact and you will need to play around with the cluster command parameters, but provided you have a some reasonable accuracy level, you can then cluster the phrases using wordcloud.
Give it a try