1. A method for filtering categories of a block of text, comprising: receiving, from a non-transitory computer readable media, a block of text that includes at least one topic; identifying the at least one topic associated with the block of text, the identifying comprising comparing each portion of a plurality of portions of the block of text to a topic listing of a plurality of topics; identifying one or more categories for each of identified topics, the identifying one or more categories comprising comparing each of the identified topics to a hierarchical category graph that includes a mapping of topics to categories; determining unique categories across the one or more categories for each of the topics, the unique categories selected from the identified one or more categories, wherein each unique category is an identified category associated with at least one portion of the plurality of portions of the block of text, the unique categories acting as a unique identifier of the block of text; associating each unique category with M levels of parent categories of each unique category and N levels of child categories of the unique category; determining category graph data for the block of text including each unique category, the category graph data identifying the M levels of parent categories for each unique category, and the N levels of child categories for each unique category; determining a connected category count for a unique category based on the category graph data, the connected category count indicating a number of unique categories connected to the parent categories in the M levels and connected to child categories in the N levels as identified in the category graph data; and determining, by a processor, one or more filtered categories from the unique categories based on the connected category count for the unique category and one or more other connected category counts for one or more other unique categories to provide a machine-generated summary of the block of text's content's meaning.