10. An apparatus comprising: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following, provide, on a user interface associated with the apparatus, a presentation of a menu of one or more topics from among a predetermined hierarchy of topics and subtopics to a user; receive, via the user interface, a first input from the user specifying at least one of the one or more topics from among the predetermined hierarchy of topics and subtopics; retrieve one or more documents associated with the user; extract noun tokens from the documents based, at least in part, on the specified topics; perform histogram processing of the extracted noun tokens to provide a list of pertinent tokens; compare topic input information received from the user with the list of pertinent tokens to determine if there is a corresponding match; generate a topology of the matching tokens according to a probabilistic model, wherein the topology matches the matching pertinent tokens with the topics and subtopics of the hierarchy; provide, on the user interface, a presentation of top-level topics as topic icons on a tool bar on the user interface based, at least in part, on the topology of matching tokens; and in response to a second input from the user specifying one of the topic icons, provide, on the user interface, a presentation of one or more search results customized for the user using machine learning based on the topology.
10. An apparatus comprising: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following, provide, on a user interface associated with the apparatus, a presentation of a menu of one or more topics from among a predetermined hierarchy of topics and subtopics to a user; receive, via the user interface, a first input from the user specifying at least one of the one or more topics from among the predetermined hierarchy of topics and subtopics; retrieve one or more documents associated with the user; extract noun tokens from the documents based, at least in part, on the specified topics; perform histogram processing of the extracted noun tokens to provide a list of pertinent tokens; compare topic input information received from the user with the list of pertinent tokens to determine if there is a corresponding match; generate a topology of the matching tokens according to a probabilistic model, wherein the topology matches the matching pertinent tokens with the topics and subtopics of the hierarchy; provide, on the user interface, a presentation of top-level topics as topic icons on a tool bar on the user interface based, at least in part, on the topology of matching tokens; and in response to a second input from the user specifying one of the topic icons, provide, on the user interface, a presentation of one or more search results customized for the user using machine learning based on the topology. 12. An apparatus of claim 10 , wherein the apparatus is further caused to: associate one of the topics and subtopics of the hierarchy with one or more reference documents; and extract a set of reference noun tokens from the reference documents, wherein the generating of the topology comprises, at least in part, matching the extracted noun tokens with the set of reference noun tokens and associating the extracted noun tokens with the one topic or subtopic based on the matching.