Server apparatus, system, and method for retrieving data in response to a request
A tree data structure with branch indices and dual retrieval logic addresses the issue of incomplete retrieval in RAG systems by ensuring accurate and comprehensive retrieval of highly homogenized content, enhancing efficiency and recall rates.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- DYNA AI TECHNOLOGY PTE LTD
- Filing Date
- 2025-10-30
- Publication Date
- 2026-05-07
AI Technical Summary
Existing retrieval systems using Retrieval-Augmented Generation (RAG) technology suffer from incomplete and inaccurate retrieval results due to single-dimensional index structures, particularly when searching for highly homogeneous content, leading to reduced recall rates.
Implement a tree data structure with branch indices that allows for both single-path and multi-path retrieval logic, where a match in a sub-category triggers single-path recall, and no match triggers multi-path recall across all branches, ensuring comprehensive and accurate retrieval.
This approach enhances retrieval efficiency and accuracy by directly locating relevant information in matched categories and ensuring no information is missed, improving recall rates for highly homogenized content.
Smart Images

Figure SG2025050707_07052026_PF_FP_ABST
Abstract
Description
SERVER APPARATUS, SYSTEM, AND METHOD FOR RETRIEVING DATA IN RESPONSE TO A REQUESTTECHNICAL FIELD
[0001] Various aspects of this disclosure relate to a server apparatus, system, and method for retrieving data, in the form of retrieval results, in response to a request. In some embodiments, the request may be a search request or query for information from a database.BACKGROUND
[0002] The following discussion of the background is intended to facilitate an understanding of the present disclosure only. It may be appreciated that the discussion is not an acknowledgment or admission that any of the material referred to was published, known, or is part of the common general knowledge of the person skilled in the art in any jurisdiction as of the priority date of the disclosure.
[0003] With the development of information technology, especially the continuous advancements in Natural Language Processing (NLP) and information retrieval, people are increasingly reliant on intelligent retrieval systems to quickly retrieve the information they want. The Retrieval- Augmented Generation (RAG) technology combines the advantages of information retrieval and generation models, aiming to enhance the performance of generation models by retrieving relevant information. The RAG is particularly suitable for application scenarios that require real-time updating and expansion of knowledge bases, such as voice assistants and smart customer service.
[0004] Currently, when retrieving information based on RAG technology, due to the one- dimensional index structure of its database, the retrieval results typically employ singledimension recall. The RAG methodology is however prone to omissions when searching for highly homogeneous content, resulting in incomplete and inaccurate retrieval results, which may reduce the recall rate of the retrieval.
[0005] For example, assuming that there are a total of 5 million scientific articles in a database, approximately 500,000 of which are related to "artificial intelligence", and among these 500,000 articles, about 200,000 are highly homogenized, meaning that the topics discussed, experimental methods, datasets, etc., are similar. Suppose a request, in the form of a search query, is, “the latest research findings in artificial intelligence”. If a single-dimensionretrieval approach is used, which only searches within the broad category of "artificial intelligence", it may lead to missing some key scientific articles with slightly different details due to difficulties in distinguishing between highly homogenized articles.
[0006] Accordingly, the disclosure seeks to provide a server apparatus, system, and method for retrieving data in response to one or more requests, to ameliorate the aforementioned drawback at least in part.SUMMARY
[0007] The disclosure seeks to provide a system, server apparatus, and method for retrieval of data in response to a request. In some embodiments, the system may form at least part of a database management system to store and retrieve data using various data structures for efficient management of data.
[0008] Tn some embodiments, for database management system may be implemented on one or more computers to perform the technical tasks of storing and retrieving data using various data structures for efficient management of data.
[0009] In some embodiments, the provided technical solution can be used to effectively enable the detection of whether the retrieval content matches any branch index, determining if there is a category corresponding to the retrieval content in the tree data structure formed indices. When a match is found, it quickly locates the branch most likely to contain the retrieval results, determining and retrieving the matched retrieval results within the matched category, thereby reducing the retrieval scope and significantly improving retrieval efficiency and accuracy. When no match is found, it can perform parallel retrieval among all branch indexes, determining and retrieving matched retrieval results in all categories, which not only accelerates the retrieval speed but also ensures no information is missed. When searching for highly homogenized content, the present disclosure can provide more accurate and comprehensive result coverage, improving the recall rate of the retrieval. According to an aspect of the present disclosure there is provided a server apparatus for retrieving retrieval results from a database in response to a request, the server apparatus comprises a processor, the processor configured to: parse the request to obtain at least one retrieval content associated with the request; determine a broad category from the retrieval content and a tree data structure associated with the broad category, each branch of a plurality of branches of the tree data structure associated with a sub-category; compare the at least one retrieval content with eachof the sub-category; determine whether there is a match between the at least one retrieval content and each of the sub-category; wherein in a positive determination of the match between the at least one retrieval content and a sub-category of each of the sub-category, the processor is configured to retrieve the retrieval results associated with a matched sub-category based on a first retrieval logic having a single-path recall; and wherein in a negative determination of the match between the at least one retrieval content and each of the sub-category, the processor is configured to retrieve the retrieval results using a multi-path recall across the plurality of branches of the tree data structure based on a second retrieval logic.
[0010] In an embodiment, each of the sub-category is associated with a branch index.
[0011] In an embodiment, each of the branch index of the tree-shaped index structure corresponds to a minimum category.
[0012] In an embodiment, based on the first retrieval logic, the branch index of the matched sub-category is assigned as a target branch index for the single -path recall. In an embodiment, based on the first retrieval logic, the processor is configured to retrieve the retrieval results in a classification path corresponding to the target branch index.
[0013] In an embodiment, based on the first retrieval logic, the processor is further configured to determine whether there is a match based on a relevance metric between the retrieval content and feature information corresponding to the target branch index, sort the feature information corresponding to the target branch index based on the relevance metric, and determine, based on a quantitative threshold, the sorted feature information corresponding to the target branch index to form one or more filtered valid results, and recall the one or more filtered valid results according to the classification path corresponding to the target branch index.
[0014] In an embodiment, the quantitative threshold comprises an integer N, and the processor is configured to rank the top N feature information by relevance, and wherein the one or more filtered valid results are selected from the top N feature information.
[0015] In an embodiment, based on the second retrieval logic, the processor is configured to compare the retrieval content in all branch indexes of the tree data structure, and retrieve the retrieval results in the classification paths corresponding to all the branch indexes.
[0016] In an embodiment, the processor is further configured to select feature information that match the at least one retrieval content from the classification paths corresponding to all the branch indexes, and collectively treat (via assigning, marking, indicating, or associating) the (selected) feature information obtained from each branch path as the retrieval results.
[0017] In an embodiment, in the selection of feature information that matches the at least one retrieval content, the processor is configured to: calculate a relevance metric between the retrieval content and each feature information corresponding to each branch index of all the branch indexes in parallel, rank each feature information corresponding to each of the branch indexes based on the relevance metric, and determine, based on a quantitative threshold, the ranked feature information corresponding to each of the branch indexes in parallel to form one or more filtered valid results; and recall the one or more filtered valid results according to the classification path corresponding to each branch index respectively to obtain the retrieval results.
[0018] In an embodiment, the tree data structure is constructed based on one or more smallest categories in a hierarchical classification structure of an original dataset, wherein each smallest category corresponding to a unique branch index.
[0019] In an embodiment, the processor is configured to pre-process the request.
[0020] In an embodiment, the processor is configured to extract a plurality of category identifiers from the metadata of source data, wherein the processor is further configured to use the extracted category identifiers for construction of the tree data structure.
[0021] In an embodiment, the processor is configured to classify the plurality of category identifiers and construct a hierarchical classification tree data structure corresponding to a source data based on one or more hierarchical affiliation relationships corresponding to the classified category identifiers.
[0022] In an embodiment, the processor is configured to determine whether there is one or more category identifiers in the at least one retrieval content, and further determine if there is a matched branch index for the retrieval content in the tree data structure. It is appreciable that the branch indexes may be constructed such that the tree data structure may be a tree-like index structure.
[0023] According to another aspect of the present disclosure, there is provided a method for retrieving retrieval results from a database in response to a request, the method comprises the steps of: parsing, the request to obtain at least one retrieval content associated with the request; determining a broad category from the retrieval content and a tree data structure associated with the broad category, each branch of the tree data structure associated with a sub-category; comparing the at least one retrieval content with each of the sub-category; determining whether there is a match between the at least one retrieval content and each of the sub-category; wherein in a positive determination of the match between the at least one retrieval content and a subcategory, retrieving the retrieval results associated with a matched sub-category based on a first retrieval logic having a single-path recall; and wherein in a negative determination of the match between the at least one retrieval content and each of the sub-category, retrieving the retrieval results using a multi-path recall across a plurality of branches of the tree data structure, based on a second retrieval logic.
[0024] In an embodiment, the method further comprises associating each of the subcategory with a branch index.
[0025] In an embodiment, each of the branch index of the tree-shaped index structure corresponds to a minimum category, and the branch index is constructed according to the tree data structure.
[0026] According to another aspect of the present disclosure there is provided a non- transitory computer-readable medium storing computer executable code comprising instructions for retrieving retrieval results in response to a request according to any one of the aforementioned method.
[0027] According to another aspect of the present disclosure there is provided a system for retrieving retrieval results from a database in response to a request, the system comprises at least one data source, the at least one data source arranged or categorized in a hierarchical classification structure with one or more categories and one or more sub-categories, with a treestructure index system constructed on the categorized data; a processor, the processor configured to: parse the request to obtain at least one retrieval content associated with the request; determine a broad category from the retrieval content and the tree- structure index system associated with the broad category, each branch of the tree-structure index systemassociated with a sub-category; compare the at least one retrieval content with each of the subcategory; determine whether there is a match between the at least one retrieval content and a sub-category; wherein in a positive determination of the match between the at least one retrieval content and a sub-category of each of the sub-category, the processor is configured to retrieve the retrieval results associated with the matched sub-category based on a first retrieval logic having a single-path recall; and wherein in a negative determination of the match between the at least one retrieval content and each of the sub-category, the processor is configured to retrieve retrieval results using a multi-path recall across a plurality of branches of the treestructure index system based on a second retrieval logic.BRIEF DESCRIPTION OF THE DRAWINGS
[0028] The disclosure will be better understood with reference to the detailed description when considered in conjunction with the non-limiting examples and the accompanying drawings, in which:- FIG. 1 A is a schematic block diagram of a server apparatus for retrieving data in response to a request.- FIG. IB is a schematic block diagram comprising the server apparatus of FIG. 1A, and one or more terminal devices, implemented as system for retrieving data in response to a request.- FIG. 2A is a flow chart depicting a construction of a tree data structure where lowest- level classification layers are used as leaf nodes to construct or reconstruct branch indexes according to some embodiments.- FIG. 2B is a flow chart illustrating an embodiment of determining the retrieval results associated with the retrieval content in the target branch index after a match is determined, according to a first retrieval logic.- FIG. 2C is a flow chart illustrating an embodiment of determining the retrieval results when no match is determined, according to a second retrieval logic.- FIG. 3A and FIG. 3B illustrate a flow diagram of a comparison of the performance of the retrieval method and system of the present disclosure with a prior art system (existing technology).- FIG. 4 is a flow chart depicting a method of constructing a tree index structure according to an embodiment.- FIG. 5 is a flow chart depicting a method of parsing a request to obtain retrieval content according to an embodiment.- FIG. 6 is a general flow chart of a method for retrieving data in response to a request according to the present disclosure.DETAILED DESCRIPTION
[0029] The following detailed description refers to the accompanying drawings that show, by way of illustration, specific details and embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure. Other embodiments may be utilized and structural, and logical changes may be made without departing from the scope of the disclosure. The various embodiments are not necessarily mutually exclusive, as some embodiments can be combined with one or more other embodiments to form new embodiments.
[0030] Embodiments described in the context of one of the enclosure systems, devices, or methods are analogously valid for the other systems, devices, or methods. Similarly, embodiments described in the context of a system are analogously valid for a device or a method, and vice-versa.
[0031] Features that are described in the context of an embodiment may correspondingly be applicable to the same or similar features in the other embodiments. Features that are described in the context of an embodiment may correspondingly be applicable to the other embodiments, even if not explicitly described in these other embodiments. Furthermore, additions and / or combinations and / or alternatives as described for a feature in the context of an embodiment may correspondingly be applicable to the same or similar' feature in the other embodiments.
[0032] In the context of various embodiments, the articles “a”, “an” and “the” as used with regard to a feature or element include a reference to one or more of the features or elements. Furthermore, as used in the present disclosure and the appended claims, the term “by” may also mean “from”, depending on the context. Furthermore, as used in the present disclosure and the appended claims, the term “if’ may also mean “when” or “upon”, depending on the context. Furthermore, as used in the present disclosure and the appended claims, the words “and / or” may refer to and encompass any and all possible combinations of one or more of the associated listed items.
[0033] As used herein, the term “data” may be understood to include information in any suitable analogue or digital form, for example, provided as a file, a portion of a file, a set of files, a signal or stream, a portion of a signal or stream, a set of signals or streams, waveforms, and the like. The term data, however, is not limited to the aforementioned examples and may take various forms and represent any information as understood in the art.
[0034] As used herein, the term “request” includes electronic requests sent to and received by / from a terminal device, such as a mobile phone, a smart phone, a tablet PC, or the like. In RAG systems, a request may include a question, a prompt, or any user input aimed at obtaining information to support a generative task.
[0035] As used herein, the term “tree-structure”, in the context of database management, is a method of organizing data hierarchically. A tree- structure include nodes and edges, where each node can have a parent and multiple child nodes. Paths in this structure represent sequences of nodes from the root to a leaf or any intermediate node.
[0036] As used herein, the term “single-path recall”, in relation to intelligent retrieval systems such as retrieval-augmented generation (RAG) systems, refers to following one specific path from the root of the tree- structure to a leaf or intermediate node in the tree structure to retrieve relevant information. This path represents the sequence of decisions or queries made to fetch the data for generation. Single-path recall is constrained to a single traversal path of the tree- structure based on some selection criteria, such as keyword matching, query filtering, etc., ensuring that only information found along this path is considered. The path may be referred to as a classification path in some embodiments.
[0037] As used herein, the term “multi-path recall”, in relation to intelligent retrieval systems such as retrieval-augmented generation (RAG) systems, refers to following multiple paths from the root of the tree-structure to a leaf or intermediate node in the tree structure to retrieve relevant information. By pulling information from different (classification) paths, the system can access a broader context, which can improve the depth and accuracy of the generated response. Tn tree or graph structures, multi-path recall may traverse and recall data from several branches or subtrees rather than a single path, helping the RAG system synthesize information from multiple relevant nodes.
[0038] As used herein, the term “first”, “second”, “third”, etc. are used to distinguish one clcmcnt / fcaturc from another, and, unless otherwise stated, may not denote order, priority or sequence.
[0039] As used herein, the term “module” refers to, forms part of, or includes an application Specific Integrated Circuit (ASIC); an electronic circuit; a combinational logic circuit; a field programmable gate array (FPGA); a processor (shared, dedicated, or group) that executes code; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system-on-chip. The term module may include memory (shared, dedicated, or group) that stores code executed by the processor. A single module or a combination of modules may be regarded as a device. A processor may include one or more modules. For example, multiple modules described in this disclosure may form a processor.
[0040] As used herein, the term “associate”, “associated”, and “associating” indicate a defined relationship (or cross-rcfcrcncc) between two items.
[0041] As used herein, “memory” may be understood as a non-transitory computer-readable medium in which data or information can be stored for retrieval. References to “memory” included herein may thus be understood as referring to volatile or non-volatile memory, including random access memory (“RAM”), read-only memory (“ROM’), flash memory, solid-state storage, magnetic tape, hard disk drive, optical drive, etc., or any combination thereof. Furthermore, it is appreciated that registers, shift registers, processor registers, data buffers, etc., arc also embraced herein by the term memory. It is appreciated that a single component referred to as “memory” or “a memory” may be composed of more than one different type of memory, and thus may refer to a collective component including one or more types of memory. It is readily understood that any single memory component may be separated into multiple collectively equivalent memory components, and vice versa. Furthermore, while memory may be depicted as separate from one or more other components (such as in the drawings), it is understood that memory may be integrated within another component, such as on a common integrated chip.
[0042] As used herein, the term “retrieval content” refers to data associated with the request, after the request is parsed. The retrieval content may include search terms and queries, keywords, data or other information parsed.
[0043] As used herein, the term “retrieval result” refers to the resultant data in response to the retrieval content. The retrieval result could include text, structured data (e.g. database entries), unstructured data (e.g. text from articles or documents), facts, or documents relevant to the retrieval criteria set by the request.
[0044] According to an aspect of the disclosure and with reference to FIG. 1, there is provided a server apparatus for retrieving retrieval results from a database in response to a request. The database may be managed by a database management system, such as a Retrieval- Augmented Generation system.
[0045] The server apparatus may comprise a processor and a memory, the processor is capable of being configured to execute instructions stored in the memory to receive a request. In the embodiment illustrated in FIG. 1 , the server apparatus may be a communications server apparatus. The communications server apparatus may be in the form of a server computer 100, the server computer 100 may be a single server as illustrated schematically in FIG. 1 A, or have the functionality performed distributed across multiple server components.
[0046] In some embodiments, the server computer 100 includes a communication interface 102 (e.g. configured to receive data, i.e. requests, service requests). The communication interface 102 may include a transmitter module and / or a receiver module allowing the server apparatus to communicate over a communications network. The communication interface 102 may include one or more user-interfaces configured to provide users for user control and may include, for example, one or more computing peripheral devices such as display monitors, computer keyboards and the like.
[0047] The server computer 100 may further include a processor in the form of processing unit 104 and a memory 106. The memory 106 may be used by the processing unit 104 to store, for example, data to be processed, such as the requests.
[0048] In some embodiments, the server computer 100 may be, or may form part of a system or device with information retrieval function, including, but not limited to, search engine servers, intelligent customer service robots, voice assistants, or big data analysis platforms.
[0049] As shown in FIG. IB, the processing unit 104 may configured to receive, from a terminal device 110, a request 111 for retrieval content and / or information. The request 111 may be a search request for information. The server apparatus 100 and one or more terminal devices 1 10 may be connected via a network 180 to form a system 150 for processing requests. In addition, the system may comprise one or more information or data sources 160. The network 180 may be an internet or intranet network. Retrieval results may be obtained from the one or more data sources 160. The data sources 160 may in some embodiments be integrated with the server apparatus / server computer 100. In some embodiments, data in the one or more data sources 160 may be arranged or categorized in a hierarchical classificationstructure with one or more categories and one or more sub-categories, with a tree-structure index system constructed on the categorized data. In some embodiments, the tree- structured index is constructed and reconstructed based on the smallest categories in the hierarchical classification structure of the data in the one or more data sources 160, with each smallest category corresponding to a unique branch index.
[0050] Tn some embodiments, the smallest categories are in one-to-one correspondence with the unique branch indexes.
[0051] In some embodiments, the hierarchical classification structure of the data source (i.e. original data) may be used to represent the tree- structure obtained by organizing and constructing the original data according to specified or determined levels and categories. Specifically, it can be determined by extracting category identifiers from the metadata of the original data, such as extracting from metadata like filenames, tags, descriptions, etc. These category identifiers include but are not limited to keywords, tags, or other information describing data attributes. After obtaining the category identifiers, the identifiers may then be classified or categorized first, and then the hierarchical classification structure may be constructed according to the hierarchical subordinate relationship of each category identifier after classification. By establishing this hierarchical classification structure, more effective management and retrieval can be achieved, enabling quick location of a information category without traversing all the data.
[0052] In some embodiments, when the hierarchical classification structure is determined, the lowest-level classification layer of the hierarchical classification structure represents the minimum category. The index can be reconstructed by using the lowest-level classification layer as leaf nodes, specifically as follows: one minimum category corresponds to one leaf node, and one leaf node represents one branch index, meaning one branch index corresponds to one minimum category, thereby obtaining a tree-shaped index structure. For example, assume that the extracted category identifiers are "Artificial Intelligence", "Machine Learning Algorithms", and "Deep Neural Networks", where "Machine Learning Algorithms" and "Deep Neural Networks" are both subcategories of "Artificial Intelligence". That is to say, the toplevel classification layer of this hierarchical classification structure is "Artificial Intelligence", while the lowest-level classification layers are "Machine Lea ning Algorithms" and "Deep Neural Networks". "Machine Learning Algorithms" and "Deep Neural Networks" arc used as leaf nodes to reconstruct the index, meaning they are each used as a branch index. This allowsfor directly matching user-desired information in the branch index corresponding to "Machine Learning Algorithms" or "Deep Neural Networks" when subsequently retrieving content pointing to "Machine Learning Algorithms" and "Deep Neural Networks".
[0053] In some embodiments, a hierarchical relationship model can be constructed using artificial intelligence models or algorithms, such as, but not limited to, machine learning algorithms and / or deep learning techniques, or deep neural networks. Tn an alternative embodiment, the hierarchical relationship model may be defined manually to define the hierarchy. The superior and subordinate categories of each category identifier may be determined based on the defined hierarchy and classification to obtain a clear hierarchical affiliation relationship for each category identifier. The broadest superior category in the hierarchical affiliation relationship is defined as the top-level classification layer, the next-level category subordinate to this superior category is defined as the second-level classification layer, and so on, until the lowest-level classification layer is defined to determine the position of each category identifier in the hierarchical classification structure. At this point, mapping each category identifier to its corresponding position yields the hierarchical classification structure corresponding to the original data. Specifically, the hierarchical classification structure obtained in this implementation example includes one or multiple classification layers, with each classification layer including one or multiple category identifiers. Any two adjacent classification layers include a superior classification layer and a subordinate classification layer. When the subordinate category identifiers of the subordinate classification layer belong to the superior category identifiers of the superior classification layer, the category represented by the subordinate category identifiers is smaller than the category represented by the superior category identifiers.
[0054] Put in another way, various methods may be used to construct or reconstruct the treestructure to facilitate retrieval results based on the request 111 and retrieval content 112.
[0055] Upon receipt of the request 111, the processing unit 104 of the server apparatus 100 may be configured to parse the request 1 1 1 to obtain retrieval content 1 12 associated with or corresponding to the request 111. A broad category may be identified from the retrieval content 112, and based on the broad category, the retrieval content 112 may then be compared with the nodes in the defined tree data structure associated with the broad category to determine whether there is a match between the at least one retrieval content and a sub-category. After comparison to determine a match, the processing unit 104 may then be configured to return retrieval results113 based on a first retrieval logic or a second retrieval logic. Each node may be associated with a sub-category, and the leaf node may be the minimum category under the defined tree data structure. It may be appreciable that a corresponding unique branch index will be associated with each sub-category or minimum category under the defined tree data structure. The sub-category or minimum category may be a leaf node of the defined tree data structure.
[0056] In a positive determination of a match between the at least one retrieval content and the sub-category, the matched branch index may be assigned or determined to be a target branch index, and the retrieval results associated with the matched retrieval content are retrieved in accordance with a first retrieval logic within the target branch index. In some embodiments, the first retrieval logic may include matching and retrieving the retrieval results along the classification path corresponding to the target branch index, based on a single-path recall.
[0057] In a negative determination of the match between the at least one retrieval content and the branch indexes, i.e. there is no match after comparison with any branch index of the tree structure, then the retrieval results matching the retrieval content may be determined according to the second retrieval logic within the target branch index. In some embodiments, if it is determined no matched branch index exists, the second retrieval logic includes matching and retrieving the retrieval results along all the classification paths corresponding to each of the branch indexes, respectively, based on a multi-path recall.
[0058] In some embodiments, the request, which may be a search request for retrieval of information from the data sources 160, can be submitted to the server apparatus 100 by the user through text input, voice command input, or a graphical user interface (GUI). The search request may contain keywords, phrases, or more complex query statements. For example, the keyword could be "artificial intelligence", the phrase could be "machine learning algorithm", and more complex query statements could include logical operators (such as AND, OR, and NOT) like "artificial intelligence AND ethics" or "big data OR data mining". The server apparatus 100 receives and parses the search request to obtain the retrieval content, i.e. specific content that the user wants to find, which may include the search content. In some embodiments, natural language processing techniques such as morphological analysis, syntactic analysis, and semantic parsing can be used to parse the search request, enabling the system to correctly identify the user's search intent.
[0059] In some embodiments, the data in data source 160 can be data stored according to pre-set standaids or obtained data from one or more third-party databases.
[0060] In some embodiments, the terminal device 110 may be a mobile device equipped with various functionality, including Wi-Fi transceivers, and cellular network connectivity.
[0061] The server apparatus 100 may be described in the context of its operation to process a request 111, in the form of a search request under a broad category of “artificial intelligence”, as follows.
[0062] The search request may be parsed to determine if there are sub-categories in the retrieval content. If the search request also includes one or more sub-category information such as "natural language processing", i.e. there is a match between the retrieval content and the sub-category, then, under the first retrieval logic, a deep retrieval will be directly conducted under the category of "natural language processing" to find the most relevant and latest research findings using a single-path recall. This narrows the search scope and improves search efficiency and accuracy.
[0063] However, if the search request is found not to match any sub-categories, then the second retrieval logic may utilize a multi-path recall for deep retrieval. Under the second retrieval logic, deep retrieval may be conducted in parallel in all sub-categories related to "artificial intelligence", such as, but not limited to, "natural language processing", "machine learning", and "computer vision", to ensure that no potentially relevant latest research findings are missed, even in highly homogenized content. This provides more accurate and comprehensive result coverage and improves the recall rate of search.
[0064] In some embodiments, the source data may include datasets with hierarchical relationships, such as product categories, literature topic classifications, and news categories.
[0065] FIG. 2 is a flow chart 200 of an embodiment of a tree-structure wherein the lowest- level classification layers are used as leaf nodes to construct or reconstruct the index, that is, each leaf node is used as a branch index, according to some embodiments.
[0066] The step S202 comprises, after obtaining the retrieval content, checking, by the server apparatus 100, whether the keywords or phrases forming and / or contained in the retrieval content match a branch index in the tree-shaped index structure, i.e., whether the retrieval content contains keywords or phrases that can characterize a category, so as to determine the corresponding branch index based on this category information.
[0067] The step S204 comprises, in a positive determination that the parsed retrieval content contains keywords or phrases that can characterize a category and match a leaf node, such positive determination also indicates that there is a branch index constructed with this minimumcategory as a leaf node in the tree- shaped index structure. Then, the target branch index can be determined through this leaf node. At this point, the required information can be retrieved from the target branch index as the retrieval result.
[0068] The step S206 comprises determining the retrieval results matching the retrieval content in the target branch index according to a first retrieval logic, where the target branch index is the hit branch index, and the first retrieval logic is used to represent matching and retrieving the retrieval results in the classification path corresponding to the target branch index.
[0069] The step S208 comprises in a negative determination that the parsed retrieval content contains keywords or phrases that can characterize a category and match a leaf node (i.c. if the retrieval content does not contain keywords or phrases that can characterize a category, or if the retrieval content contains keywords or phrases that can characterize a category but does not match any leaf node), it indicates that there is no branch index constructed with this minimum category as a leaf node in the tree-shaped index structure. Then, to return comprehensive retrieval results as much as possible, all leaf nodes can be traversed at this time, i.e., the required information is retrieved from all branch indexes and collectively used as the retrieval result, i.c., step S210 is executed.
[0070] The step S210 comprises determining the retrieval results matching the retrieval content in all branch indexes of the tree- structured index according to the described second retrieval logic, where the second retrieval logic is used to represent matching and retrieving the retrieval results in the classification paths respectively corresponding to all the branch indexes.
[0071] In some embodiments, in step S206, after determining the target branch index, the server apparatus 100 may conduct a more detailed search under this target branch index as illustrated in FIG. 2B, step S212. As the tree index structure in this embodiment is constructed based on the smallest categories, each leaf node corresponds to a specific classification path as a branch index, and each classification path usually contains one or more feature information, which may be used to characterize the data instances corresponding to the smallest categories. For example, if the data instance is an academic literature, its corresponding feature information may include, but is not limited to, the title, author, abstract, keywords, etc. Therefore, using the fust retrieval logic to determine the retrieval results (search results) involves step S214: selecting feature information that matches the search content from the classification path corresponding to the target branch index as the search results. The selectionof feature information may be based on calculating / determining a degree of relevance, using, for example, a relevance metric of each feature information to the search content. In some embodiments, the degree of relevance can be determined by calculating semantic similarity, cosine similarity, Euclidean distance, etc., and quantity filtering (based on a quantitative threshold) is performed based on the calculation to obtain the required feature information as the search results. For example, the quantity filtering can be to retain the top N feature information ranked by relevance. By matching and retrieving search results in the classification path corresponding to the target branch index, when searching for highly homogenized content, it is possible to directly locate the smallest category corresponding to the search content and determine the search results within this smallest category, which can effectively reduce the search scope and improve the accuracy and efficiency of the search. Here, N is a positive integer. In some examples, N is 2; in other examples, N is 3, 4, or 5. In this regard, this embodiment does not impose limitations on N.— > i.e. N is arbitrarily determined N is a positive integer.
[0072] In other words, the specific execution process of determining the retrieval results matching the retrieval content according to the first retrieval logic in the target branch index may be based on step S216: calculate a relevance metric between the retrieval content and each feature information corresponding to the target branch index; sort each feature information corresponding to the target branch index based on the relevance metric, and consider the feature information that meets the quantity filtering requirements among the sorted feature information corresponding to the target branch index as valid results; recall the valid results according to the classification path corresponding to the target branch index to obtain the retrieval results.
[0073] In some embodiments, in step S206, keywords and phrases can be extracted from the retrieval content, and corresponding feature information can be extracted from the data instances of the classification path corresponding to the target branch index, including, but not limited to, natural language processing techniques such as stem extraction, stop word filtering, and part-of-speech tagging. A suitable similarity measurement algorithm, including but not limited to cosine similarity or Euclidean distance, can be used to calculate the relevance between the keywords or phrases in the retrieval content and each feature information. Deep learning models such as Bidirectional encoder representations from transformers (BERT) or other general forms of Transformer can also be used to calculate deeper semantic similarity.
[0074] In some embodiments, in step S206, after obtaining the relevance metric of each feature information, the feature information may be ranked in descending order based on the calculated relevance metric to ensure that the most relevant feature information is at the forefront. Meanwhile, the preset quantity filtering requirement is obtained, which is used to represent the quantity limit of valid results, such as selecting the top N from the ranked feature information as valid results, where N is a positive integer. The sorted and filtered valid results are collected as the result set with clear classification path matching and recall, which is the retrieval result. In an embodiment, if multiple keywords or phrases are extracted from the retrieval content, the valid results for each keyword or phrase may be integrated to form the final retrieval result. In this basis, the integrated valid results arc sorted by relevance metric and displayed to the user. Additionally, when displaying, extra contextual information such as sources and abstracts can be provided to help users quickly judge the relevance metric of the retrieval results.
[0075] In some embodiments, in a determination under step S202 that there is no corresponding branch index for the search content, the system can conduct a broader and more comprehensive search within the entire tree-like index structure. This may be based on using the described second retrieval logic to determine the search results, which involves selecting feature information that matches the search content from the classification paths corresponding to all branch indexes and collectively treating the selected feature information obtained from each branch path as the search results. Similarly, the relevance of each feature information corresponding to each branch index to the search content can be determined by calculating semantic similarity, cosine similarity, Euclidean distance, etc., and quantity filtering may be performed based on this to select or obtain the required feature information from each branch index and collectively treat the selected feature information as the search results. By matching and retrieving search results from the classification paths corresponding to all branch indexes, when searching for highly homogenized content, can avoid information omission caused by the limitation of a single path when there is no corresponding branch index. This means determining search results in all the smallest categories separately, thereby ensuring that as comprehensive relevant information as possible is obtained from different dimensions and levels, and improving the recall rate of the search.
[0076] In some embodiments, in step S210, the specific execution process of determining the retrieval results matching the retrieval content according to the multi-path recall rules in allbranch indexes of the tree-structured index may be as follows and with reference to FIG. 2C, step S222, i.e. calculating a relevance metric between the retrieval content and each feature information corresponding to each branch index in parallel; step S224: ranking each feature information corresponding to each branch index based on the relevance metric, and consider the feature information that meets the quantity filtering requirements among the ranked feature information corresponding to each branch index as valid results; step S226: recalling the valid results according to the classification path corresponding to each branch index respectively to obtain the retrieval results.
[0077] In some embodiments, in step S210, a parallel computing architecture can be designed beforehand, utilizing multi-core CPUs, graphics processing units (GPUs), or distributed computing resources to distribute computing tasks to multiple processing units for simultaneous execution. Specifically, the task of calculating the relevance metric between the retrieval content and the feature information corresponding to each branch index is evenly allocated to different processing units according to the branch indexes. On each processing unit, the similarity measurement algorithm mentioned in step S206 may be used to calculate the relevance metric between the retrieval content and each feature information corresponding to each branch index. After all processing units complete the calculation, the relevance metric of each feature information corresponding to each branch index is aggregated, and the feature information corresponding to each branch index is ranked in descending order based on the calculated relevance metric. Similarly, the quantity filtering requirements mentioned in step S206 may be used to obtain the valid results corresponding to each branch index. The sorted and filtered valid results are collected, and the valid results corresponding to each branch index are used as the result set matched and recalled by each classification path without a clear classification path this time. This result set may be regarded as the retrieval result, which includes the retrieval results queried based on the retrieval request for each minimum category.
[0078] In some embodiments, where multiple keywords or phrases are extracted from the request and parsed retrieval content, the valid results for each keyword or phrase may be integrated to form a final retrieval result. On this basis, the integrated valid results may be sorted by relevance and displayed to the user. Additionally, when displaying, extra contextual information such as sources and abstracts can be provided to help users quickly judge the relevance of the retrieval results. In some embodiments, when sorting the valid results byrelevance, the valid results may be sorted separately by classification path or globally without considering the classification path.
[0079] In some embodiments, to further enhance the accuracy of the retrieval results, a global relevance ranking can be performed on all feature information in the multi-path recall result set to ensure that the most relevant feature information is at the forefront of the result set. Concurrently or simultaneously, duplicate feature information may be removed to avoid redundancy in the final results. According to the final recall quantity requirement, the top M feature information is selected from the globally ranked result set as the final retrieval result, where M is a positive integer that may be pre-defined or dynamically defined.
[0080] In some embodiments, to ensure that the retrieval results corresponding to each minimum category maintain a pre-determined level of relevance to the user's retrieval request during multi-path recall, thereby avoiding irrelevant information and ensuring the effectiveness of the retrieval, the specific execution process of recalling the valid results according to the classification path corresponding to each branch index to obtain the retrieval results is as follows: Determine whether the relevance of the valid results is higher than the preset relevance threshold; if not, delete the valid results with relevance lower than or equal to the preset relevance threshold and recall the remaining valid results according to the classification path corresponding to each branch index to obtain the retrieval results; if yes, recall the valid results according to the classification path corresponding to each branch index to obtain the retrieval results. In this step, the preset relevance threshold can be set based on historical data and business requirements or specifications, or it can be customized according to the user's past retrieval experience. By comparing the relevance of the valid results with the preset relevance threshold one by one, the valid results with relevance lower than or equal to the preset relevance threshold are removed from the original result set, and the remaining valid results with relevance higher than the preset relevance threshold are recalled according to the classification path corresponding to each branch index. This ensures that most truly relevant feature information is included in the retrieved results this time, while excluding most irrelevant feature information, thereby ensuring the effectiveness of the retrieval.
[0081] FIG. 3A and FIG. 3B illustrate a comparison of the performance of the retrieval method and system of the present disclosure (FIG. 3B) with a prior ait system (FIG. 3 A). FIG. 3A shows a prior art system based on conventional RAG search technology, illustrating that when the most relevant top-1 result for feature A is retrieved, it can be seen that in the single-dimension recall process used in existing technology, three corresponding results numbered 1,2, and 3 related to feature A are retrieved separately based on semantic retrieval and inverted index retrieval. After fine ranking by relevance, the order is: number 1 > number 2 > number3. However, since only the most relevant top-1 result may be used / required for this retrieval, the retrieval result only includes the result corresponding to number 1. Referring to FIG. 3B, it can be seen that the tree structure provided in the present disclose example has divided multiple branch indexes according to various categories. Based on semantic retrieval and inverted index retrieval, three corresponding results numbered 1, 2, and 3 related to feature A are obtained from categories 1, 2, and 3, respectively. Although after fine ranking by relevance, the order is: number 1 > number 2 > number 3, since numbers 1, 2, and 3 arc the most relevant results to feature A in categories 1, 2, and 3, respectively, the retrieval results of this retrieval will include the three corresponding results numbered 1, 2, and 3. It can be seen that when searching for highly homogenized feature A, the tree index structure used in this implementation example can find the most relevant results under the categories containing feature A, effectively preventing information omission caused by the limitation of a single path, ensuring the acquisition of as comprehensive relevant information as possible from different dimensions and levels, thereby providing more accurate and comprehensive result coverage while improving the recall rate of retrieval.
[0082] In some embodiments, before the processing of the request, category identifiers may be extracted from the metadata of the raw data. The raw data may be source data stored in the system database or externally accessed source data. Metadata includes descriptive information about the data, which may be contained in locations such as filenames, titles, tags, descriptions, classification fields, etc. Therefore, all category identifiers that can be used for classification may be collected from the metadata. In some embodiments, natural language processing techniques (such as stemming, entity recognition) or regular expression matching can be used to accurately extract category identifiers. In some embodiments, the collected metadata can be pre-processed before extracting the category identifiers to improve the accuracy and consistency of the category identifiers. The pre-processing may include cleaning, normalization, and deduplication, before the category identifiers are extracted from the pre- processed metadata.
[0083] In some embodiments, the various category identifiers may be classified and used to construct a hierarchical classification structure corresponding to the raw data based on one or more hierarchical affiliation relationships corresponding to the classified category identifiers.
[0084] In some embodiments, one or more classification criteria can be predefined. Specifically, classification dimensions can be determined based on different data characteristics and business requirements / specifications in the raw data, and specific classification rules can be defined for each classification dimension to obtain classification criteria. For example, product classification can be performed based on dimensions such as function and brand, with functional classifications such as "office supplies" or "entertainment equipment." After determining the classification criteria, various category identifiers can be classified according to their corresponding classification dimensions and classification rules for each classification dimension. Alternatively, classification algorithms such as decision trees, hierarchical clustering, K-means, etc., can be selected to classify various category identifiers based on the data characteristics and classification requirements / specifications of the raw data. It may be appreciable that for data without a clear category, a default classification can be preset or manually corrected by the user.
[0085] After obtaining the classified category identifiers, a hierarchical relationship model can be constructed using machine learning algorithms or defined manually to define the hierarchy. The superior and subordinate categories of each category identifier arc determined based on the defined hierarchy and classification to obtain a clear hierarchical affiliation relationship for each category identifier. The broadest superior category in the hierarchical affiliation relationship is defined as the top-level classification layer, the next-level category subordinate to this superior category is defined as the second-level classification layer, and so on, until the lowest-level classification layer is defined to determine the position of each category identifier in the hierarchical classification structure. At this point, mapping each category identifier to its corresponding position yields the hierarchical classification structure corresponding to the raw data. Specifically, the hierarchical classification structure obtained in this implementation example includes one or multiple classification layers, with each classification layer including one or multiple category identifiers. Any two adjacent classification layers include a superior classification layer and a subordinate classification layer. When the subordinate category identifiers of the subordinate classification layer belong to the superior category identifiers of the superior classification layer, the category represented by thesubordinate category identifiers is smaller than the category represented by the superior category identifiers.
[0086] For example, assuming the raw data is information about electronic products, the extracted category identifiers are: "Electronic Products," "Mobile Devices," "Household Appliances," "Smartphones," "Tablets," "Televisions," "Audio Equipment," and "Smart Watches." The hierarchy determined based on the common classification of electronic products is:
[0087] Top-level classification layer: "Electronic Products";
[0088] Second-level classification layer: "Mobile Devices" and "Household Appliances";
[0089] Lowest-level classification layer: "Laptops," "Tablets," "Televisions," "Audio Equipment," and "Smart Watches."
[0090] Then the hierarchical classification structure is constructed as:
[0091] Electronic Products (top-level classification layer);
[0092] Mobile Devices (second-level classification layer);
[0093] Smartphones (lowest-level classification layer);
[0094] Tablets (lowest-level classification layer);
[0095] Smart Watches (lowest-level classification layer).
[0096] Household Appliances (second-level classification layer);
[0097] Televisions (lowest-level classification layer);
[0098] Audio Equipment (lowest-level classification layer).
[0099] In some embodiments, the index of the trees may be rebuild on-demand, at a particular time, or periodically, based on the lowest-level classification layer of the hierarchical classification structure in a tree structure to obtain an updated or revised tree index structure.
[0100] In some embodiments, the category represented by the category identifier corresponding to the lowest-level classification layer is regarded the smallest category. Since the hierarchical classification structure may be constructed based on the hierarchical affiliation relationships of various category identifiers, in order to ensure that each specific feature information can be precisely located at the end of the tree structure, thereby facilitating precise retrieval. The following one or more steps may be taken.
[0101] a. The category identifiers corresponding to each lowest-level classification layer arc used as leaf nodes to generate a tree structure.
[0102] b. The classification path where each leaf node is located is obtained, and branch indexes are established based on the classification paths.
[0103] c. The branch indexes are associated with the corresponding leaf nodes to obtain the tree index structure.
[0104] In an embodiment, the process of constructing the tree index structure is specifically as follows as may be shown as a flow chart in FIG. 4.
[0105] Step S401: Generating a corresponding tree structure based on the layered structure of the hierarchical classification structure, where the leaf nodes of the tree structure are the lowest-level classification layers of the hierarchical classification structure, and the category identifiers of the lowest-level classification layers represent the smallest categories.
[0106] Step S402: For any target lowest-level classification layer corresponding to a leaf node, obtain the classification path from the top-level classification layer to the target lowest- level classification layer in the hierarchical classification structure. The classification path is used to represent or create a branch index.
[0107] Step S403: Associating any leaf node with a branch index to generate the tree index structure.
[0108] In some embodiments, an empty tree structure can be constructed since the lowest- level classification layer in the hierarchical classification structure corresponds to the smallest category, and the smallest category is the most specific classification unit. Each category identifier corresponding to the lowest-level classification layer can be added as a leaf node to this tree structure. Each category identifier has a clear classification and hierarchy, the complete path from the root node to each leaf node, i.e., the classification path where each leaf node is located, can be determined based on the classification and hierarchy. For example, the classification path for "Smartphones" might be "Electronic Products -> Mobile Devices -> Smartphones."
[0109] A branch index is created for each leaf node based on its classification path. In some embodiments, the branch index can be an array, list, dictionary, etc., containing all node names from the root node to the leaf node. Associating each leaf node with its corresponding branch index will yield the tree index structure. Directly associating leaf nodes with all feature information in the specific data instances of their corresponding smallest categories may allow for precise localization of feature information at the end of the tree structure, thereby facilitating the precision of retrieval.
[0110] In some embodiments, as with reference to FIG. 5, parsing the request 111 to obtain the retrieval content 112 can include:
[0111] Step S501: Determining whether there are category identifiers in the retrieval content 112.
[0112] Step S502: In a positive determination that the parsing the request 111 (retrieval request) contain keywords, phrases, or more complex query statements, the tree-like index structure is built based on the smallest categories in the hierarchical classification structure of the original data. That is to say, to quickly confirm whether the retrieval content can match a particular branch index and ensure the scope and depth of the retrieval, the server appar atus 100 may be configured to check whether the keywords or phrases in the retrieval content contain specific category identifiers that can represent categories. In some embodiments, keywords and phrases may be extracted from the retrieval content and natural language processing techniques such as part-of-speech tagging and named entity recognition to identify keywords that may indicate classifications or categories may be utilized, thereby identifying the category identifiers they may contain.
[0113] Since there is a one-to-one correspondence between the branch indexes in the treelike index structure and the smallest categories, if a category identifier is identified from the retrieval content and this category identifier corresponds to a branch index of a smallest category in the trcc-likc index structure, proceed to Step S503. If no category identifier is identified from the retrieval content or the identified category identifier does not correspond to any branch index of the smallest categories in the tree-like index structure, proceed to step S504.
[0114] It may be appreciable that when determining whether there is a matched branch index for the category identifier, specifically, use the identified category identifier as a query condition to search within the tree-like index structure to match the corresponding branch index.
[0115] In step S503: determining that there is a matched branch index for the retrieval content in the tree-like index structure when there is a branch index matching the category identifier in the tree-like index structure. In this step, if a branch index matching the category identifier is found in the tree-like index structure, it can be determined that there is a matched branch index for the retrieval content in the tree-like index structure. At this point, this branch index can be used as the target branch index, and the retrieval results matching the retrievalcontent can be determined from the feature information corresponding to the target branch index, thereby improving the efficiency and accuracy of the retrieval.
[0116] In step S504: determining that there is no matched branch index for the retrieval content in the tree-like index structure. In this step, if no branch index matching the category identifier is found in the tree-like index structure, it can be determined that there is no matched branch index for the retrieval content in the tree-like index structure. At this point, retrieval results matching the retrieval content can be determined separately and in parallel from the feature information corresponding to all branch indexes in the tree-like index structure. That is, perform a search across all branch indexes in the tree-like index structure to capture all potentially relevant data, thereby achieving full- scope retrieval and avoiding information omissions.
[0117] It is further appreciable that one or more of the aforementioned method steps may be combined.
[0118] According to another aspect of the present disclosure and with reference to FIG. 6, there is provided a method 600 for retrieving retrieval results from a database in response to a request, the method comprises the steps of:
[0119] Step S601: parsing, the request to obtain at least one retrieval content associated with the request;
[0120] Step S602: determining a broad category from the retrieval content and a tree data structure associated with the broad category, each branch of the tree data structure associated with a sub-category;
[0121] Step S603: comparing the at least one retrieval content with each of the subcategory;
[0122] Step S604: determining whether there is a match between the at least one retrieval content and a sub-category;
[0123] wherein in a positive determination of the match between the at least one retrieval content and a sub-category,
[0124] Step S605: retrieving the retrieval results associated with the matched sub-category in accordance with a first retrieval logic having a single-path recall; and
[0125] wherein in a negative determination of the match between the at least one retrieval content,
[0126] step S606: retrieving the retrieval results using a multi-path recall across the plurality of branches according to a second retrieval logic.
[0127] In some embodiments, the method further comprises associating each sub-category with a branch index as described.
[0128] In some embodiments, each of the branch index of the tree-shaped index structure corresponds to a minimum category, and the branch index is constructed according to the tree data structure as described.
[0129] In some embodiments, the method further comprises, under the first retrieval logic, assigning the branch index of the matched sub-category as a target branch index for the singlepath recall, and the first retrieval logic may comprises retrieving the retrieval results in a classification path corresponding to the target branch index.
[0130] In some embodiments, the method further comprises associating each of the branch index of the tree-shaped index structure with a minimum category.
[0131] In some embodiments, the method comprises, based on the first retrieval logic, assigning the branch index of the matched sub-category as a target branch index for the singlepath recall.
[0132] In some embodiments, the method comprises, based on the first retrieval logic, retrieving the retrieval results in a classification path corresponding to the target branch index.
[0133] In some embodiments, the method comprises, based on the first retrieval logic, determining whether there is a match based on a relevance metric between the retrieval content and feature information corresponding to the target branch index, sorting the feature information corresponding to the target branch index based on the relevance metric, and determining, based on a quantitative threshold, the sorted feature information corresponding to the target branch index to form one or more filtered vahd results, and recalling the one or more filtered valid results according to the classification path corresponding to the target branch index.
[0134] In some embodiments, the quantitative threshold comprises an integer N, and the determining based on the quantitative threshold, the sorted feature information corresponding to the target branch index comprises ranking the top N feature information by relevance, and wherein the one or more filtered valid results axe selected from the top N feature information.
[0135] In some embodiments, the method comprises, based on the second retrieval logic, comparing the retrieval content in all branch indexes of the tree data structure, and retrieving the retrieval results in the classification paths corresponding to all the branch indexes.
[0136] In some embodiments, the method comprises, based on the second retrieval logic, selecting feature information that matches the at least one retrieval content from the classification paths corresponding to all the branch indexes, and collectively treating the feature information obtained from each branch path as the retrieval results.
[0137] In some embodiments, the selection of feature information that matches the at least one retrieval content comprises calculating a relevance metric between the retrieval content and each feature information corresponding to each branch index of all the branch indexes in parallel, ranking each feature information corresponding to each of the branch indexes based on the relevance metric, and determine, based on a quantitative threshold, the ranked feature information corresponding to each of the branch indexes in parallel to form one or more filtered valid results; and recalling the one or more filtered valid results according to the classification path corresponding to each branch index respectively to obtain the retrieval results.
[0138] In some embodiments, the method comprises constructing the tree data structure based on one or more smallest categories in a hierarchical classification structure of an original dataset, wherein each smallest category corresponds to a unique branch index.
[0139] In some embodiments, the method comprises pre-processing the request. In some embodiments, the pre-processing may comprise extracting a plurality of category identifiers from the metadata of source data, and using the extracted category identifiers for construction of the tree data structure. The pre-processing may further include classifying the plurality of category identifiers and constructing a hierarchical classification tree data structure corresponding to a source data based on the hierarchical affiliation relationships corresponding to the classified category' identifiers.
[0140] In some embodiments, the method comprises determining whether there is one or more category identifiers in the at least one retrieval content, and further determining if there is a matched branch index for the retrieval content in the tree-like index structure.
[0141] It may be appreciable that the server apparatus may be used in various applications, particularly in a search engine or a searching chatbot, customer service robots, etc .
[0142] The methods described herein may be performed and the various processing or computation units and the devices and computing entities described herein may beimplemented by one or more circuits. In an embodiment, a "circuit" may be understood as any kind of a logic implementing entity, which may be hardware, software, firmware, or any combination thereof. Thus, in an embodiment, a "circuit" may be a hard-wired logic circuit or a programmable logic circuit such as a programmable processor, e.g. a microprocessor. A "circuit" may also be software being implemented or executed by a processor, e.g. any kind of computer program, e.g. a computer program using a virtual machine code. Any other kind of implementation of the respective functions which are described herein may also be understood as a "circuit" in accordance with an alternative embodiment.
[0143] While the disclosure has been particularly shown and described with reference to specific embodiments, it may be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the disclosure as defined by the appended claims. The scope of the disclosure is thus indicated by the appended claims and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced.
Claims
1. CLAIMS1. A server apparatus for retrieving retrieval results from a database in response to a request, the server apparatus comprises a processor, the processor configured to: parse the request to obtain at least one retrieval content associated with the request; determine a broad category from the retrieval content and a tree data structure associated with the broad category, each branch of a plurality of branches of the tree data structure associated with a sub-category; compare the at least one retrieval content with each of the sub-category, each of the sub-category is associated with a branch index; determine whether there is a match between the at least one retrieval content and each of the sub-category; wherein in a positive determination of the match between the at least one retrieval content and a sub-category of each of the sub-category, the processor is configured to retrieve the retrieval results associated with the matched sub-category based on a first retrieval logic having a single path-recall; and wherein in a negative determination of the match between the at least one retrieval content and each of the sub-category, the processor is configured to retrieve the retrieval results using a multi-path recall across the plurality of branches of the tree data structure based on a second retrieval logic, wherein in the second retrieval logic, the processor is configured to compare the retrieval content in all branch indexes of the tree data structure, and retrieve the retrieval results in all classification paths corresponding to all the branch indexes2. The server apparatus of claim 1, wherein each of the branch index corresponds to a minimum category.
3. The server apparatus of claim 1 or 2, wherein based on the first retrieval logic, the branch index of the matched sub-category is assigned as a target branch index for the singlepath recall.
4. The server apparatus of claim 3, wherein based on the first retrieval logic, the processor is configured to retrieve the retrieval results in a classification path corresponding to the target branch index.
5. The server apparatus of claim 4, wherein based on the first retrieval logic, the processor is further configured to determine whether there is a match based on a relevance metric between the retrieval content and feature information corresponding to the target branch index, sort the feature information corresponding to the target branch index based on the relevance metric, and determine, based on a quantitative threshold, the sorted feature information corresponding to the target branch index to form one or more filtered valid results, and recall the one or more filtered valid results according to the classification path corresponding to the target branch index.
6. The server apparatus of claim 5, wherein the quantitative threshold comprises an integer N, and the processor is configured to rank the top N feature information by relevance, and wherein the one or more filtered valid results are selected from the top N feature information.
7. The server apparatus of any one of the preceding claims, wherein the processor is further configured to select feature information that match the at least one retrieval content from the all classification paths corresponding to all the branch indexes, and collectively indicate the feature information obtained from each branch path as the retrieval results.
8. The server apparatus of claim 7, wherein in the selection of feature information that matches the at least one retrieval content, the processor is configured to: calculate a relevance metric between the retrieval content and each feature information corresponding to each branch index of all the branch indexes in parallel, rank each feature information corresponding to each of the branch indexes based on the relevance metric, and determine, based on a quantitative threshold, the ranked feature information corresponding to each of the branch indexes in parallel to form one or more filtered valid results; and recall the one or more valid results according to the classification path corresponding to each branch index respectively to obtain the retrieval results.
9. The server apparatus of any one of the preceding claims, wherein the tree data structure is constructed based on one or more smallest categories in a hierarchical classification structure of an original dataset, wherein each smallest category corresponds to a unique branch index.
10. The server apparatus of any one of the preceding claims, wherein the processor is configured to pre-process the request.
11. The server apparatus of claim 10, wherein the processor is configured to extract a plurality of category identifiers from a metadata of a source data, wherein the processor is further configured to use the extracted category identifiers for construction of the tree data structure.
12. The server apparatus of claim 11, wherein the processor is configured to classify the plurality of category identifiers and construct a hierarchical classification tree data structure corresponding to the source data based on one or more hierarchical affiliation relationships corresponding to the classified category identifiers.
13. The server apparatus of claim 11 or 12, wherein the processor is configured to determine whether there are one or more category identifiers in the at least one retrieval content, and further determine if there is a matched branch index for the retrieval content in the treelike index structure.
14. A method for retrieving retrieval results from a database in response to a request, the method comprises the steps of: parsing, the request to obtain at least one retrieval content associated with the request; determining a broad category from the retrieval content and a tree data structure associated with the broad category, each branch of a plurality of branches of the tree data structure associated with a sub-category, each of the sub-category associated with a branch index; comparing the at least one retrieval content with each of the sub-category; determining whether there is a match between the at least one retrieval content and each of the sub-category; wherein in a positive determination of the match between the at least one retrieval content and a sub -category, retrieving the retrieval results associated with the matched sub-category based on a first retrieval logic having a single path-recall; and wherein in a negative determination of the match between the at least one retrieval content and each of the sub-category, retrieving the retrieval results using a multi-path recall across the plurality of branches of the tree data structure, based on a second retrieval logic, the second retrieval logic comprisescomparing the retrieval content in all branch indexes of the tree data structure, and retrieving the retrieval results in all classification paths corresponding to all the branch indexes.
15. The method of claim 14, wherein each of the branch index corresponds to a minimum category, and the branch index is constructed according to the tree data structure.
16. The method of claim 14 or 15, further comprises selecting feature information that match the at least one retrieval content from the all classification paths corresponding to all the branch indexes, and collectively indicating the feature information obtained from each branch path as the retrieval results.
17. A non-transitory computer-readable medium storing computer executable code comprising instructions for retrieving retrieval results in response to a request according to any one of the methods of claim 14 to 16.
18. A system for retrieving retrieval results from a database in response to a request, the system comprises at least one data source, the at least one data source arranged or categorized in a hierarchical classification structure with one or more categories and one or more sub -categories, with a tree- structure index system constructed on the categorized data; a processor, the processor configured to: parse the request to obtain at least one retrieval content associated with the request; determine a broad category from the retrieval content and the tree-structure index system associated with the broad category, each branch of a plurality of branches of the tree-structure index system associated with a sub-category, each of the subcategory associated with a branch index; compare the at least one retrieval content with each of the sub -category; determine whether there is a match between the at least one retrieval content and a sub-category; wherein in a positive determination of the match between the at least one retrieval content and a sub-category of each of the sub-category, the processor is configured to retrieve the retrieval results associated with the matched sub-category based on a first retrieval logic having a single path-recall; and wherein in a negative determination of the match between theat least one retrieval content and each of the sub-category, the processor is configured to retrieve retrieval results using a multi-path recall across the plurality of branches of the treestructure index system based on a second retrieval logic, wherein in the second retrieval logic, the processor is configured to compare the retrieval content in all branch indexes of the tree data structure, and retrieve the retrieval results in all classification paths corresponding to all the branch indexes.
19. The system of claim 18, wherein the processor is further configured to select feature information that match the at least one retrieval content from the all classification paths corresponding to all the branch indexes, and collectively indicate the feature information obtained from each branch path as the retrieval results.
Citation Information
Patent Citations
Easily-extensible multi-level classification search method and system
CN102467521B
System and method for classifying search queries
US20080097982A1
Subject matter context search engine
US9311410B2
Functionality and system for converting data from a first to a second form
WO2006031466A2