WO2006069245A2 - Object-based information storage, search and mining system and method - Google Patents

Object-based information storage, search and mining system and method Download PDF

Info

Publication number
WO2006069245A2
WO2006069245A2 PCT/US2005/046617 US2005046617W WO2006069245A2 WO 2006069245 A2 WO2006069245 A2 WO 2006069245A2 US 2005046617 W US2005046617 W US 2005046617W WO 2006069245 A2 WO2006069245 A2 WO 2006069245A2
Authority
WO
WIPO (PCT)
Prior art keywords
search
objects
map
query
topological
Prior art date
Application number
PCT/US2005/046617
Other languages
French (fr)
Other versions
WO2006069245A3 (en
Inventor
Tsu Chang Lee
Original Assignee
Tsu Chang Lee
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsu Chang Lee filed Critical Tsu Chang Lee
Priority to EP05855214A priority Critical patent/EP1849105A2/en
Priority to TW094145902A priority patent/TW200707244A/en
Publication of WO2006069245A2 publication Critical patent/WO2006069245A2/en
Publication of WO2006069245A3 publication Critical patent/WO2006069245A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/41Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Definitions

  • serial No. 10/867,447 and serial No. 10/867,027 each claim priority to U.S. provisional patent application, serial number 60/480,985, filed on June 23, 2003, entitled “METHOD AND APPARATUS FOR ADAPTIVE MULTIPLE-DIMENSIONAL SIGNAL SEQUENCES ENCODING /DECODING,” all three of which are hereby incorporated by reference.
  • the present invention relates to multimedia data searching. More specifically, the present invention relates to data mining, internet search engines, multimedia storage, multimedia data bases, data warehousing, multimedia data compression, multimedia communications, data security and intelligence agents.
  • the present invention provides a method to effectively represent, search, and manipulate multimedia objects through a group of interconnected multimedia search agents functioning logically on an interconnected multimedia storage network.
  • a first aspect of the invention is directed to a multimedia object mining agent (MOM), which can search for multimedia objects in a distributed multimedia data reservoir effectively to produce the results to satisfy certain content based multimedia queries.
  • MOM multimedia object mining agent
  • a second aspect of the invention is directed to the search method and system of the multimedia object mining agent based on topological map structure to efficiently searching for the desired multimedia data from a large search space to satisfy users' multimedia information requirements.
  • the search system also includes a dynamically adjustable cost function, which estimates certain operational measures; dynamically adjustable topological maps, which sort out the objects in the search space and query space; fast search method which exploits the neighborhood information in the topological maps, followed by detail and global search processes.
  • a third aspect of the invention is directed to a multimedia object store (MOS) and a multimedia object store network (MOSNET), which are interconnected multimedia storage devices with processing and communication capability.
  • MOS and MOSNET are used to support the implementation and operation of multimedia object agents.
  • a fourth aspect of the invention is directed to a multimedia object mining network (MOMNET), which is a distributed agent network that can dynamically structure and organize itself to satisfy the users' multimedia information requests.
  • MOMNET multimedia object mining network
  • a fifth aspect of this invention is directed to applications, which include an n- dimensional image database, a data security and encryption system and a media contents push- pull agent.
  • a sixth aspect of this invention is directed to practical implementations for the structures and methods taught in this invention.
  • the object oriented processing unit (OOPU) and object oriented memory unit (OOMU) are described to provide guidelines for implementing the data processing and storage structure for the multimedia object miner.
  • Figure 1 shows a multimedia agent based service system
  • Figure 2 shows the structure of a multimedia object miner (MOM).
  • FIG 3 shows an operational measure estimator (OME) used in the multimedia object minter (MOM);
  • Figure 4 illustrates a multimedia search problem with limited communication bandwidth
  • Figure 5 shows an example of tree structured topological map
  • FIG 6 shows the structure of an object mining processor (OMP);
  • Figure 7 shows the structure of a multimedia object store (MOS).
  • MOS multimedia object store
  • Figure 8 shows the structure of a multimedia object store network (MOSNET);
  • Figure 9 shows the structure of a search object mapper (SOM).
  • Figure 10 shows an example of a lattice topological map
  • Figure 11 shows examples of neighborhood sets on 2-D lattices
  • Figure 12 shows the structure of a dynamically adaptable search object mapper (SOM);
  • Figure 13 shows the structure of a Least Mean Square (LMS) estimator
  • Figure 14 shows an example illustrating neighborhood preserving mapping
  • Figure 15 shows an example of object interpolation from a lattice topological map
  • Figure 16 shows an example of hierarchical topological maps
  • Figure 17 shows an example of a graph topological map
  • Figure 18 illustrates a method for exploiting neighborhood sets to select a search starting point
  • Figure 19 illustrates the concept of a spiral search method
  • Figure 20 shows an example of a parallel spiral search on 2-D lattice map
  • Figure 21 shows the structure of an object oriented memory unit (OOMU);
  • Figure 22 shows the structure of an n-dimensional image data base storage and retrieving system
  • Figure 23 illustrates the process of content based retrieving through topological maps on an image database system
  • Figure 24 shows the structure of a data security system based on a storage topological map
  • Figure 25 illustrates the structure of a multimedia object miner network (MOMNET).
  • Figure 26 shows a flowchart of a search process for a MOM.
  • a multimedia service system (“MSS”) 101 provides a plurality of services to a multimedia user 102 under a multimedia application operation environment 19.
  • the MSS 101 comprises a multimedia object miner ("MOM") 11, a multimedia application agent (“MAA”) 12, a multimedia data reservoir (“MDR”) 13 and a communications network 14 connecting the MOM 11, MAA 12 and MDR 13.
  • MIM multimedia object miner
  • MAA multimedia application agent
  • MDR multimedia data reservoir
  • the MSS 101 may be included in a single system, many embodiments of the invention provide a distributed architecture for deploying components of the MSS 101.
  • the MAA 12 typically delivers multimedia services to the user 102, in response to a multimedia service request.
  • the MDR 13 is a depository of multimedia information that may be maintained on storage systems located locally or dispersed across one or more networks.
  • the MOM 11 supports processes that search, process and provide multimedia objects in response to queries relayed by the MAA 12.
  • the communication network 14 provides a plurality of communication channels for the exchange of information between the various components of the MSS 101 and between the MSS 101 and the user 102.
  • TVIOM Multimedia Object Miner
  • FIG. 1 provides a block diagram representation of the MOM 11 as provided by embodiments of the invention.
  • An object mining processor (“OMP") 22 initiates searches in the MDR 13 based on queries that are initially processed by a query object mapper (“QOM”) 24.
  • the QOM 24 typically sorts and organizes queries to create and update one or more topological query maps that may be used to optimize query processing.
  • the query maps may maintain a history of queries and associated search result information that can be used to optimize subsequent searches. Results obtained by the OMP 22 may be presented to the MAA 12 or directly to the user 102.
  • the MOM 11 may also include a search object mapper (“SOM”) 23 for sorting and organizing one or more search spaces of the MDR 13.
  • SOM 23 typically creates and updates one or more topological maps related to search objects, wherein the topological maps are used to optimize the search process.
  • an operational measure estimator (“OME”) 21 provides an estimation of a search objective measure that may be used to assess expected outcomes of searches based on factors including merit of search points as discussed below.
  • the OME 21 can provide estimations of certain search results based on information available during the search, the estimations relating to measures that can characterize the quality of the certain search results.
  • the OME 21 may provide a search cost function value to estimate certain post search operational measures.
  • the MOM 11 also includes a MOM embedded communicator ("MEC") 28 for maintaining the communication channels that link MOM to other components and entities coupled to the communication network 14.
  • MEC MOM embedded communicator
  • the MOM 11 searches for a multimedia object wherein the multimedia object includes video information, picture, audio, hypertext and digital library data, N-dimensional image, multi-dimensional scientific signal samples, biological DNA sequence data, financial time series, marketing time series, production time series, logic or procedural data (like programs or scripts), and man-made data (such as design data used in art creation or engineering design).
  • the multimedia objects may have a hierarchical form and may comprise a plurality of data types. A successful search of multimedia objects may provide a desired result if a target is adequately characterized and sufficient search criteria are selected.
  • the OME 21 provides the estimation 309 of the operational measure value 310 which measures the merit of the search result.
  • the operational measure value 310 is calculated based on the merit of the actual operational outcome using the certain search results.
  • the purpose of the search is usually to identify objects to be used in certain operations following the search process. During the search process, since the operation is not performed and the results of the operation is now known yet, hence the measure about how well the objects can be used in the target operation can only be estimated by the estimated operational measure . However, after the objects are identified from the search process and the post search operations done, the merit of the results from the operations can be actually evaluated based on certain operational measures. The post search actual operational measure can then be used to adjust or reconfigure the operational measure estimator for the searches afterwards to reduce the estimation error.
  • the estimation 309 is typically obtained by first obtaining the a priori data and stored in an a priori data buffer (PRB) 301.
  • the a priori data buffer (PRB) stores relevant "pre- operation" data (i.e., the data available before the target actions or operations are taken to the ⁇ search results) that may be available during the search process.
  • the a priori input parameters 308 are extracted using an a priori parameter extractor (PRE) 302.
  • PRE a priori parameter extractor
  • AFE adaptive function estimator
  • a posteriori input parameters 312 Parameters associated with the search results (hereinafter “a posteriori input parameters") 312 are typically processed in a similar manner to the a priori input parameters 308.
  • the search results comprise data, hereinafter called a posteriori data that is derived by processing an object retrieved by the search.
  • An a posteriori data buffer (POB) 306 is provided to store information derived from processing the retrieved object.
  • An a posteriori parameter extractor (POE) 305 extracts the a posteriori input parameters 312.
  • An operational measure calculator (OMC) 304 calculates the operational measure value 310 from the a posteriori input parameters 312.
  • this a posteriori operation measure 310 can be fed back into the AFE 303 to adjust the internal structure or parameters of the AFE 303 such that the AFE 303 may provide better estimation.
  • the operation of the AFE 303 may be characterized as adaptive in nature since performance of the AFE 303 can be improved and optimized after each search. This "adaptation" can be performed through a "supervised learning” process to dynamically and iteratively improve estimation accuracy.
  • the operational entropy of an object (“O") related to encoding method (“m”) is represented as I m(O), and may be calculated as a number of bits required in encoding the object.
  • a relative operational entropy may be defined, at least for the purpose of this application, as the number of bits required to encode a first object ("01"), given information related to the encoding of a second object ("O2"), using encoding method m; the relative operation entropy may be represented as Ir_m(0 ⁇ , O2). It will be appreciated that I_m() and IrjnQ define upper bounds of Shannon's theoretic measure. It can also be appreciated that such entropy-based measurement differs from what can be referred to as "energy-based measurement" used in most prior art search processes.
  • the present invention provides an entropy based operational measure that can generate search results with a perceptual quality that is better suited to human searchers because it will be appreciated that the human perception system has evolved to process "information" and entropy-based measurements are information-oriented.
  • the AFE 303 is instrumental in providing accurate guidance in driving the search process.
  • the AFE 303 implements a parameterized function with adaptable parameters to provide a result R AFE 309 such that:
  • R APE F(Xl, X2, ..., Xn
  • a set of a priori input parameters 308 comprises a plurality of parameters Xl 1301, X2, 1302, .., Xn 1303.
  • the estimation error 1310 may be used to adjust the controlling parameters Kq 1304, K2 1305 and Kn 1306 that affect operation of the LMS estimator 303.1.
  • the change in each of the controlling parameters may be calculated using an LMS algorithm for each parameter change
  • a more accurate estimation is obtained by an AFE 303 that implements multi-layer neural network models.
  • cost function the selection of input variables for the AFE 303 (hereinafter referred to as "cost function") is based on criteria including simplicity criteria (“Cl”), relevancy criteria (“C2”), “divide and conquer” refinement criteria (“C3”), input variable factoring criteria (“C4"), and simple substitute criteria ("C5").
  • Simplicity criteria factor the ease of extraction of the input variables from various search states during the ME search process.
  • Relevancy criteria account for the degree of relevancy of input variables to the target objective cost.
  • the divide and conquer refinement criteria decompose a cost function F into separable contributing component functions Fl, F2, etc.
  • Input variables factoring criteria decompose an input parameter Xi into separable contributing , components Xj 1 , Xj 2 , etc., thereby creating more input variables and promoting better accuracy, control and tracking.
  • Simple substitute criteria substitutes one or more parameters to replace difficult to obtain parameters.
  • a MOM 11 is used for searching based on N- dimensional image matching. Since the type of object sought is highly correlated and normally encoded through some kind of coefficient de-correlating transform such as Discrete Cosine Transform ("DCT”), Discrete Wavelet Transform (“DWT”), Discrete Hardmard Transform (“DHT”) and Karhunen-Loeve Transform (KLT). Following transformation, derived signal energies are typically concentrated on a few low frequency bands. Based on this observation, a priori input parameters for AFE 303 may be selected from the energies in a plurality of low frequency sub-bands ⁇ E_0, E_l, .., E_i ⁇ and remaining high frequency residue energy E_hi. Embodiments adopting the simplest form of this "sub-band” decomposition may divide the energy into direct current (“DC”) and alternating current (“AC”) terms of a transform.
  • DC direct current
  • AC alternating current
  • Energy is typically calculated as a "sum of square value" of the components of an object. It will be appreciated, however, that computation may be reduced by using a “sum of absolute value” approximation. It will be further appreciated that this AC/DC decomposition estimation example utilizes criteria Cl, C2, C3, and C4 as specified above. To achieve optimal search performance and quality, a set of different transforms may be used for search cost estimation and final result calculation. Transforms may also be adaptively selected to achieve the best performance and quality.
  • criteria C3 may be applied by decomposing the AFE function into portions representing estimated values and accurate values. Since some of the estimation problem may include one or more exactly predicable portions that contribute to the operational measure, the predicable portion may be realized using a table look-up or simple function calculator, where the functional form is known.
  • a method for estimating operational measures associated with objects comprising the steps of extracting a priori input parameters from a priori data available during the search, calculating an estimated operational measure of an expected search objective from the a priori input parameters, exploring objects from the search space, identifying objects optimizing the estimated operational measure, perform operation on optimally identified objects, extracting the a posteriori parameters from a posteriori data available after performing the operations on the identified objects, calculating the actual operational measure based on a posteriori parameters, adjust or reconfigure the operational measure estimator based on the estimation error.
  • a posteriori data also includes information extracted from preceding queries and extracted from operational measures of search results associated with the preceding queries.
  • embodiments of the invention employ topological maps to maintain the information related to the structure of various object spaces.
  • object indexing spaces used by the SOM 23 and QOM 24 may be implemented as topological maps for capturing the structure of an object search space and an input query object space, respectively.
  • a topological map of objects is an object index space that includes definitions of neighborhood relationships between constituent objects. Examples of topological maps include N-dimensional lattice, tree, and graph structures. In some embodiments, topological maps may be hierarchical in form. A topological map may also have a hybrid structure composed of components maintained in different types of map, such as a combination of mixture of lattice and graph structured maps.
  • topological maps are depicted in Figures 5, 10 and 17.
  • Figure 5 shows an example of tree topological map
  • Figure 10 shows an example of a 2-D lattice topological map
  • Figure 17 shows an example of graph topological map.
  • Embodiments of the invention utilize hierarchical N-dimensional lattice topological maps.
  • Hierarchical N- dimensional lattices possess advantageous properties including:
  • voids in the vector space can be filled by calculations or derivations based on characteristics of nearby (or local) objects in the lattice.
  • a one dimensional lattice contains a plurality of nodes 1500 (N(I) , .., N(i), N(i+1)).
  • Object attributes 1504 of N(i) and attributes 1505 of N(i+1) may be used to "interpolate" attributes of non-existing object N(H- 1 A) located between object N(i) and N(i+1) on the lattice. It will be appreciated that the complexity of the local computation can influence the quality of the derived object. Further, during the search process, a simplified calculation is typically used to quickly evaluate candidate lattice points.
  • multiple local computation methods are implemented and adaptively selected for deriving objects.
  • a first and simplest method such as linear interpolation may be used to locate a best approximation before more complex and accurate computation methods are applied to derive the object sought. This process includes the following steps:
  • O(i) and O(i+1) are objects represented by N(i) and N(i+1) on the lattice, then O(i+l/2) can be derived simply as V 2 * (O(i) + O(i+1)).
  • the interpolation method may also be used for correcting error and omissions attributable to transmission and storage faults, and other problems associated with distributed network updates.
  • FIG 16 An example is shown in Figure 16, wherein in an embodiment of the invention, a 1-D lattice is organized hierarchically.
  • the top level lattice 16001 contains the node NO 16008, Nl 16009, ....
  • the nodes NO 16008, Nl 16009, .. are expanded into lattices on the next level 16002, where NO 16008 is expanded into lattice 16004, with nodes NO.O 16011, N0.1 16012, ....
  • Figure 9 shows an exemplary embodiment of the SOM 23.
  • the SOM 23 typically organizes and arranges the structure of a multimedia object search space to enable fast and efficient searching for objects located in a large multimedia data reservoir.
  • SOM 23 comprises a multimedia object buffer (MOB) 901, an adaptive object topological map (AOTM) 909, an object feature vector extractor (OFE) 904, an object bus 905, an object map index bus 907 and an object pointer bus 910.
  • MOB multimedia object buffer
  • AOTM adaptive object topological map
  • OFET object feature vector extractor
  • the MOB 901 is typically coupled to a MOM embedded communicator ("MEC") 28 and may assess the multimedia data exchanged by the MDR 13 (see Figure 1).
  • MEC MOM embedded communicator
  • the MOB 901 is typically a fast multimedia object cache storage that can access and retrieve low-level multimedia data and organize the multimedia data to create higher level object forms, thereby facilitating processing.
  • the MOB 901 may function as an object converter, bridging high level objects processed in the MOM 11 (See Figure 1) and multimedia data stored in the network.
  • the AOTM 909 can dynamically form a topological map of the search space and typically includes an object topological map (OTM) 902 (as discussed previously) and a topological map adaptation controller (TMAC) 903 for adjusting the structure of the object topological map (OTM) 902 based on certain learning algorithms.
  • OTM object topological map
  • TMAC topological map adaptation controller
  • the OFE 904 may extract feature vectors from an object to be sent to a feature vector bus 906.
  • the feature vector is typically a set of values that characterizes an object and the feature vector can be used for object matching during searches and to enable content-based access of objects. In the latter use, the feature vector may be used to retrieve an object pointer from the OTM 902 using an object pointer bus 910.
  • the object bus 905 may be provided to permit fast object data transfer for various purposes including
  • the object map index bus 907 is provided to transmit access requests by the OMP
  • the object pointer bus 910 typically transmits the object pointer information to and from the MOB 901 to access object data in the MDR 13 through a bus 202 and the MEC 28 (as shown in Figure 2). It can be appreciated that the bus 25 (as shown in Figure 2) may comprise the object access request bus 907 and the object bus 905.
  • Figure 10 depicts an object topological map (OTM) in an exemplary embodiment of the invention.
  • the OTM is depicted as a two dimensional ("2-D") space partition network (SPAN) map 902.1, comprising: a plurality of 2-D lattice nodes (N(O 5 O), N(O 5 I) 5 ...,) wherein each of the plurality of 2-D nodes is associated with node attributes 1002 including a pointer to an object, a list of objects (where the node represents a group of objects), and sub-maps (where a hierarchical topological map is used), a feature vector of the associated object and a SPAN Map Address Buffer 1004 for receiving a lattice address 907 used to retrieve objects indexed by the lattice node and a SPAN Node Attribute Buffer 1005 that stores node attribute information associated with the lattice.
  • 2-D lattice nodes N(O 5 O), N(O 5 I) 5 ...
  • node attributes 1002 including a pointer to an object, a list of objects (where the node represents a group
  • an exemplary embodiment of an AOTM 909 is shown in Figure 12.
  • an adaptive SPAN (ASPN) 909.1 is used as the AOTM.
  • Shown here is a 1-D SPAN with a plurality of nodes (N(I) 5 ..., N(i-l), N(i), N(i+1), ..., N(n)).
  • Each of the plurality of nodes corresponds to a neuron in the SPAN model and stores the attributes including an object feature vector W(i), which is the feature vector for the object represented by node N(i) and an object pointer P(i), which is the pointer pointing to the object, a group of objects, or a sub-map represented by the node N(i).
  • SPAN map adaptation is controlled by a span adaptation controller (SAC) 903.1.
  • SAC span adaptation controller
  • nodes in the SPAN 902.1 may be addressed by a lattice index and by a feature vector.
  • the lattice index is typically sent from the map index bus 907 to locate an associated node in the lattice.
  • the feature vector X 1206 may be sent through the feature vector bus 906 to be enable a "parallel compare" with feature vectors ⁇ W(i) ⁇ stored on each lattice node N(i) for identifying the nearest neighbor that matches.
  • Some embodiments of the invention implement an associative addressing method.
  • An input feature vector X 1206 is provided to each neuron in the lattice for measuring a difference from the feature vector W(i) stored in each node N(i).
  • the difference is typically a value measured using metrics that quantify relative distance of nodes.
  • the "difference value”, together with a weighted summation of the output from the neurons in the neighboring set S( ⁇ ) is added together to generate the "pre-sigmoidal" activation level h(i) for neuron N(i).
  • An output y(i) for neuron N(i) is typically generated by mapping h(i) through a non-linear signmod function f().
  • the system converges through several iterations and the neuron (i.e., the node in the SPAN map) with the highest output value is selected as the closest match.
  • the neighborhood set S( ⁇ ) of a node N(i) on a lattice map of the exemplary embodiment is the set of nodes within a certain neighborhood region of node N(i).
  • FIG. 11 three diagrammatic examples of the neighborhood sets on a 2-D lattice are shown.
  • a neighborhood set S(i) contains two nodes N(i-l) 1202 and N(i+1) 1204 with output signals y(i-l) 1213 and y(i+l) 1215 respectively. These output signals may be added into the input of neuron N(i) using, for example, a weighted summation process. Weights are typically selected to provide a negative value in order to "inhibit" the activity of neighboring neurons. A resulting neighborhood "negative feedback" process may enable one dominant neuron to emerge within a minimal number of iterations.
  • An addressed node N(i) typically provides attributes such as W(i) and P(i) for various purposes.
  • W(i) may be used for object matching and searching and P(i) may be used for accessing objects from the ODR 13 (as shown in Figure 1) through multimedia object buffer (MOB) 901.
  • Feature vectors can typically be communicated to other modules from the map through the feature vector bus 906.
  • Object pointers can be communicated to other modules from the map through the object pointer bus 910.
  • a node N(i) with a feature vector W(i) matching the input vector X in the nearest neighbor sense can be selected through a distance measurement.
  • the distance between two vectors may be represented using the notation D(W(i), X).
  • D( ) should be defined to be consistent with the operational measurement described previously (see Figure 3). It will be appreciated that the SPAN map structure described above is just one embodiment example of this invention. In general, other structures could be implemented including:
  • Embodiments of the invention provide a feature vector of an object that is an n dimension vector residing in a high dimensional space. For practical processing, this high dimensional space is mapped into a lower dimensional space. In mapping from high dimensional space to lower dimensional space, "topological relationships" (i.e. the neighborhood relationship) between objects are typically preserved.
  • Embodiments of the invention provide topology-preserving mapping.
  • Topology- preserving mapping is provided when neighboring nodes on the topological map are also neighboring nodes on an original feature vector space. Additionally, in topology-preserving mapping, two nodes on the feature vector space are neighbors if they share a boundary surface or a point on Voronoi regions determined by the feature vectors ⁇ W(i) ⁇ of nodes ⁇ N(i) ⁇ 5 with all the points in a Voronoi region V(i) for node N(i) closer to W(i) than the feature vectors of other nodes.
  • Figure 14 shows topology-preserving mapping featuring a 2-D feature vector and 1-D SPAN map as provided in an exemplary embodiment of the invention.
  • the 1-D SPAN map contains nodes ⁇ NO, Nl, ..., N15 ⁇ , where neighboring nodes have adjacent indexes.
  • the location of each node represents the location of the 2-D feature vector on the feature vector space.
  • Voronoi regions ⁇ V0, Vl, ..., V15 ⁇ for the nodes are a set of points closest to the corresponding feature vectors ⁇ WO, Wl, ..., W15 ⁇ .
  • a first mapping 140001 is an example of topology-preserving mapping, since all the adjacent nodes on the 1-D SPAN map are also adjacent nodes on the 2-D feature vector space.
  • a second mapping 14002 is an example of a mapping where topology is not preserved, since neighborhood relationships are not preserved. An examination of adjacent nodes N3 and N4 on the second mapping map are not neighbors in the feature vector space, since V3 and V4 are neighboring Voronoi regions.
  • the SPAN map 902.1 has the following characteristics: • nodes on the map may be "topologically ordered" as described above;
  • nodes on the map typically partition the feature vector space into "decision regions” with the feature vector of each node locating at the center of each decision region;
  • • objects or sub-maps pointed to by the selected node may be further evaluated such that the best matching object for the query object may be selected.
  • the SPAN map 902.1 may be used as an associative memory, which can retrieve associated objects based on the feature vectors.
  • the map may be constructed according to the following procedure:
  • the lattice map is indexed as follows:
  • o D() is a distance measure, which measures the distance between feature vectors
  • o a is the learning rate, which is used to control the rate of convergence in the learning process
  • is the lattice distance between node N(i) and N(j) on the map
  • o ⁇ []() is the spatial mast
  • ⁇ ⁇ []() is a time varying function used to control the range of influence of a lattice node to other nodes on the lattice;
  • ⁇ ⁇ []() is selected in such a way that the influence range is wide in the beginning of gradually decreases to a minimum value close to the end of the training process, then both fast convergence and final representation accuracy can be achieved.
  • Object indexing for (each object O(n) in G) ⁇ fetch the feature vector X(n) of O(n); select the node N(i) from the map, such that:
  • the procedure shown above demonstrates an exemplary embodiment of indexing the objects onto a lattice structure, through a parameter level feature vector training process.
  • the lattice structure of the map may also be adjusted through certain node generation and annihilation processes.
  • the generation and annihilation process can be based on activities and information representation contents associated with the node.
  • This structure level adaptation of the map can also be governed by an operational measure, which measures certain resource utilization, performance /quality trade-offs of the system. It will be appreciated that the QOM 24 in the exemplary embodiment shown in Figure 2 has a similar structure to the SOM shown in Figure 9.
  • the performance of the MOM 11 is optimized by the establishment and maintenance of topological maps including maps used by the SOM 23 and the QOM 24. These two maps provide for the capturing of topological structure of search and query spaces respectively.
  • the topological structure of the input query map and object search map provide the ability to execute efficient search processes that leverage the topological structure of the maps.
  • Figure 18 shows an example of a search process that leverages the neighborhood structure of the two maps.
  • a current query node 18003 on a query object map (QOM) 18001 has four neighboring nodes 18004, 18005, 18006, 18007, which index a previously obtained set of query results in an SOM 18002.
  • the nodes 18012, 18011, 18009, 18010 representing the previously obtained query results have neighborhood sets (see Figure 11) 18016, 18015, 18013, 18014.
  • a starting point on the SOM 18002 is preferably may be selected by evaluating all points in neighborhood sets on the SOM, where the neighborhood sets are referred to by the neighboring points of the current query point 18003 on QOM 18001. Then the point yielding a best operation measure value is selected as the starting point.
  • the search process will be followed by conducting a detailed search around the neighborhood region of the starting point. This process may establish the best operational measure result as a threshold. In many instances, this detailed search generates optimal results.
  • the MOM 11 executes a selected global search process, typically designed to explore large territories with an objective of reaching neighborhoods of better points. Additionally, the global search minimizes the risk of being trapped in a local minimum during the search process.
  • an "A* search,” as known in the art, may be used to skip search points if a lower bound of the cost value for an object can be provided during the search process. Specifically, if the lower bound is already larger than the best cost value obtained so far, then there is no point to evaluate this candidate point.
  • termination criteria for "success” or “failure” can be based on certain threshold parameters, which can also be adaptively adjusted based on the context of the search through certain learning processes. With a "successful match” or "acceptable match” termination condition set, in some embodiments, a spiral search pattern can be executed around an optimal starting point to minimize the time required to obtain an acceptable outcome.
  • the search process can be terminated if, at a certain point, the Xc value is larger than the best cost value obtained so far.
  • FIG. 19 an example of a 2-D spiral search is shown.
  • the search process spirals around a starting point 19001.
  • Embodiments of the invention utilize a neighborhood "experience" based on past query results (as discussed previously).
  • the starting point 19001 may be the best pick based on prior query experience.
  • the SOM 23 preserves the topology property of the feature vector space, a spiral process can find the optimal point from the starting point with generally the least number of the search points.
  • MOM 11 accepts an input query and, at step 26003, extracts the query object g.
  • the query object g is initially located on the query object map (QOM) at step 26004.
  • the neighborhood set Sg . of query object g on the QOM is retrieved at step 26005.
  • the best cost function value BestCost is initialized to the maximum value at step 26006.
  • a loop at steps 26007-26015 (comprising loops at steps 26007- 26010 and 26011-26015) exploits the neighborhood sets of the query result nodes of the nodes to select the starting point StartPt for the search at step 26016.
  • This "double neighborhood set" 'exploit process is also shown in Figure 18.
  • the MOM 11 executes a detailed search loop to closely evaluate a small region around the StartPt.
  • the spiral search process of Figure 19 can be used to visit all the points in the small region.
  • the MOM 11 executes global search loop at steps 26022-26026 for sampling throughout a large area on the SOM 23.
  • the search process if any node yields a cost function value F smaller than the previously obtained termination threshold value, then the search process is terminated, and the object represented by the current node is selected as query result.
  • the best object BestPt, and the best cost value BestCost are obtained, representing the best object and the corresponding best cost function value found throughout the search process.
  • the global search process scales up with a size A of the search region on O(log(A)).
  • QOPU Object Oriented Processing Unit
  • OMLD Object Oriented Memory Unit
  • the resource requirements on signal processing and matching calculation for MOM 11 to search a large space can be very demanding and the resource requirements for different queries can be quite different and unequal.
  • the OMP 22 processor shown in Figure 2 embodiments of the invention provide scheduling for search processes and allocate resources in OMP 22 to provide the best results.
  • the OMP 22 is typically controlled using dynamic and adaptive control techniques based on local query context statistics to enhance the system throughput and quality of the query results. Additionally, supervised learning methods may be used to dynamically control the OMP 22 to improve operational performance.
  • the OMP 22 (processor) and the maps QOM 24 & SOM 23 (memory) are preferably designed to match the nature of the object to provide the best results.
  • OOPU object oriented processing units
  • OOMU object oriented memory units
  • FIG. 6 The drawing of Figure 6 illustrates an embodiment in which an object oriented processing unit (OOPU) is implemented within the OMP 22.
  • An object mining processing unit (OMPU) 61 is provided as a processing resource to handle the object mining data and signal processing operations.
  • the OMPU 61 typically comprises:
  • a search object register file 6001 for storing and retrieving search object data to and from the SOM 23 (as shown in Figure 2) using bus 25;
  • An object data path 6002 typically composed of object based processing modules 1, 2, ..., n (6006, 6007, .., 6008), that may be structured to address semantics, spatial, and temporal independency and parallelism intrinsic in the objects to be processed, wherein the structure may be pipeline, parallel arid concurrent;
  • An OMPU control register file 6004 for storing control parameters to allow the object mining control unit (OMCU) 62, to adaptively control the object data path 6002 and achieve optimal performance throughput.
  • the control parameters may determine the resource allocation, scheduling, and processing options of the object data path 6002;
  • a search decision module 6005 for making decision about search results based on the cost function value calculated by the operational measure estimator (OME) 21 (as shown in Figure 2).
  • the OMCU 62 is typically used for controlling and guiding the operation of OMP 22 in performing search and computation processes, using certain control parameters.
  • Control parameters of the OMP control processes may include:
  • a search range in a map that may be dynamically adjusted based on search range results from previous queries
  • Criteria for search termination that may be based on some adaptable threshold parameters
  • a 3x3 array processor may be included in the object data path 6002 (of Figure 6) to evaluate nine search points simultaneously.
  • a spiral search process as described previously, may be modified to operate as one or more parallel processes as shown in Figure 20.
  • the nine points are evaluated as a block simultaneously, starting from block 20002, then following the sequence of 20003, 20004, 20005, 20006, 20007, ....
  • a processor array may evaluate all points in one neighborhood set (as shown in Figure 11) simultaneously.
  • the neighborhood set can be 3x3, 5x5, ... in 2-D case, or 3x3x3, 5x5x5,... in 3-D case, etc.
  • An obj ect mining processor comprising a processing unit for receiving object data and performing a plurality of object search and computation processes on the object data, the processing unit including at least one search object register for maintaining search object data, at least one query object register for maintaining query object data, and an object data path configured to receive the search object data from the search object register and receive the query object data from the query object register and perform selected processes of the plurality of processes on the search object data to obtain one or more search results, and a control unit for controlling the operation of the processing unit according to certain control parameters.
  • the object mining processor of declaration 1 wherein the plurality of signal processing operations includes processes for the manipulation of semantics, spatial independency, temporal independency and parallelism intrinsic in the objects.
  • the obj ect mining processor of declaration 1 wherein the obj ect data path is configurable as a pipeline processor. 5. The obj ect mining processor of declaration 1 , wherein the obj ect data path is configurable as a parallel processor.
  • control unit comprises a control register for storing control parameters used by the processing unit, and a search decision module for generating the one or more search results, wherein the results are generated based on search criteria obtained from the query object data.
  • search criteria include optimizing attributes of a cost function value calculated by an operational measure estimator.
  • control parameters configure options including resource allocation, scheduling and object data path processing.
  • control parameters include a search range in a map wherein the search range is dynamically adjusted according to prior search results obtained from previous queries, and criteria for search termination based on adaptable threshold parameters.
  • the object mining processor of declaration 1 wherein the processing unit includes a multitasking environment and wherein the control unit prioritizes the computation processes and manages allocation of processor resources for each of the processes.
  • the object mining processor of declaration 11 and further comprising a scheduler for allocating processor time for each of the processes.
  • the throughput for data access from the topological maps is very important for the overall performance of the MOM 11.
  • design of the storage structure i.e., the 0OMU is adapted to support intrinsic spatial and temporal data independency. Notice that OOPU and 0OMU are closely related with the data access method of OOPU reflected in the 0OMU structure.
  • the drawing of Figure 21 shows an example of an object oriented memory unit (OOMU) 21011 as provided by embodiments of the invention.
  • the 0OMU 21011 may be used to implement the MOB 901 (as shown in Figure 9).
  • the OOMU 21011 typically comprises a data memory 21001, and object memory 21008, a data-to-object converter/object-to-data converter ("DOC/ODC") 21002, an object addressing control 21003 and an object bus interface 21004.
  • the data memory 21001 may be implemented using general purpose mass storage memory, such as commonly available SDRAM, for storing large amounts of multimedia data typically retrieved from the MDR 13.
  • the object memory 21008 is typically memory that is configured to receive independent object partition classes . For example, an object may be partitioned and stored as one or more object classes in the object memory 21008 such that spatial and temporal data dependency in the objects may be exploited by retrieving multiple object partition classes concurrently.
  • the DOC/ODC 21002 may be implemented as a bidirectional bridge between data memory 21001 and object memory 21008.
  • the object addressing control 21003 provides access to objects from the OOMU 21011.
  • the object bus interface 21004 is a high speed interfacing circuit which allows concurrent access of the object partition classes and bridges the object memory 21008 to the external object bus 905. To further balance performance and cost, multiple level memory caching structures can be included in both the data memory 21001 and object memory 21008.
  • a multimedia object buffer comprising an object memory configured to receive independent object partition classes, an object addressing control for relating associated independent object partition classes, wherein the associated independent object partition classes are members of a single multimedia object, and an object bus interface for providing multiple concurrent accesses to the object memory, wherein the object partition classes include partitioned information through certain perspective (e.g., spatial and temporal ) related to one or more objects.
  • a multimedia object buffer according to declaration 1 further comprising a data-to-object converter for receiving data from storage, extracting one or more object partition classes from the data and storing the one or more object partition classes in the object memory, and an object-to-data converter for receiving associated ones of the independent partition classes, combining the associated ones to form structured data and storing the structured data in the storage.
  • a multimedia object buffer according to declaration 1 further comprising a data store for storing large amounts of multimedia data.
  • a multimedia object buffer according to declaration 3 wherein the storage includes a portion configured to store data in a multilevel hierarchy.
  • MOS MOS, MOSNET, and MOMNET
  • MOS 72 comprises a multimedia object miner (MOM) 11, a local mass storage structure 71 and a communication link 18, which connects certain communication network structure. Multiple MOS components be linked together, through the communication network to form a multimedia object store network (MOSNET).
  • MOSNET multimedia object store network
  • Figure 8 shows the logic structure of a MOSNET. It will be appreciated that, by way of example, inclusion of one or more MOM agents in the Internet could cause the Internet to function as a MOSNET.
  • a MOSNET with interconnected MOS 72 may provide the environment to enable the emergence of a distributed multimedia agent network using the proposed MOM 11 as fundamental logic building blocks.
  • Figure 25 depicts an example of the logical structure of a multimedia miner network (MOMNET) 25017 that emerges from the underlying multimedia object store network (MOSNET).
  • a first MOM 25001 receives queries from a second MOM 25002 and a third MOM 25003.
  • the OMP 22 of the first MOM 25001 searches its associated search object map (SOM), which typically connects with a fourth, fifth and sixth MOM 25004, 25005, 25006, which may further link to a plurality of other MOMs.
  • SOM search object map
  • the fifth MOM 25005 links to an eighth MOM 25008, and a ninth MOM 25009 while the fourth MOM 25004 links to a seventh MOM 25007.
  • the first MOM 25001 also has upstream second and third MOMs 25002,
  • MOMNET multimedia object miner network
  • MOSNET multimedia object miner network
  • Multiple MOMNETs may co-exist and evolve on the MOSNET to provide services to other multimedia application agents.
  • the evolution of the MOMNETs can also be governed by certain operational measures which determine the overall objectives of the network.
  • MOMs and MOMNETs can compete for resources in the underlying MOSNET (e.g., the internet, or the corporate storage area networks) and follow a "survival of the fittest" rule as the evolution process in nature to optimize the objectives for the network to satisfy human's needs.
  • MOSNET e.g., the internet, or the corporate storage area networks
  • Illustrative example 1 Image data base
  • Figure 22 shows an embodiment of this invention in an n-dimensional image data base applications (e.g., 2-D pictures, 3-D CT images in medical images, etc.). This embodiment also illustrates the application of some of the structures and methods taught in the present invention.
  • n-dimensional image data base applications e.g., 2-D pictures, 3-D CT images in medical images, etc.
  • An image write query is typically presented through query bus 22017 to the query object mapper 22003.
  • a database query buffer 22009 converts the image query into object form and a feature vector of the image query is extracted through query feature extractor 22010.
  • the query objects are typically organized on the database query map 22008 according to the feature vector extracted.
  • the input object may be sent through input object bus 22023 to the image database processor 22004 and an object searcher/estimator 22014 typically searches the database object map 22011 to find the closest (measured by relative operational entropy between objects defined earlier) object 22026 derived from the image database 22016, and this object is used to estimate the input query object.
  • relative entropy in terms of the number of bits
  • an operational measure estimator 22002 that typically receives certain extracted parameters 22028, which may become available during the search, and provides the relative entropy estimation 22029.
  • 22002 can adjust its accuracy through feedback from the actual bit number results 22030 from the delta object encoder 22015.
  • the encoded data 22032 may then be transmitted through the database object mapper 22005 to the image database 22016.
  • a query image is typically presented to the system through a communication link 22017 and the image is converted into object form.
  • An object searcher/estimator 22014 may then search through the database object map 22011 to retrieve the encoded image data 22019 (in the encoded format) from the image database 22016.
  • the encoded image is decoded and recovered into the object form through database object buffer
  • the image object may then be sent through an image object bus 22031 to the object searcher/estimator 22014 to evaluate the query target based on certain search target measures estimated by the OME 22002.
  • the image object with the best operational measure value may be then transmitted to the query object mapper 22003 through 22024, and then presented to the users through a database query bus 22017
  • a good search performance may be achieved when certain hierarchical structures are included in topological maps 22011 and 22008.
  • An exemplary embodiment is presented in Figure 23, wherein:
  • Each image is first partitioned into small image building blocks that may include variable sizes or shapes.
  • the image building blocks may be organized into a bottom level topological map 23003; o
  • a n-dimensional image may be partitioned into fixed size n-dimensional blocks and a low level topological map is organized as a regular n-dimensional lattice map.
  • a fixed indexing method is used to derive the block index on the low level map based on a n-dimensional voxel (volume element, the n-dimensional extension of pixel in 2-D pictures) location of the first voxel in the block.
  • n-dimensional image For example, to partition an n-dimensional image into blocks of volume scale ⁇ d(i), d(2), ..., d(n) ⁇ , with d(i) the size on the i'th dimension and the lattice index of a block with first voxel at location ⁇ z(l), z(2),...,z(n) ⁇ in the n-dimensional image can be calculated as:
  • Figure 14 shows a mapping from 2-D into 1-D lattice.
  • the mapping shown in Figure 14 can be viewed as taking the 2-D lattice indexes as the feature vector; o
  • other topological maps may be built such that the maps are organized according to the feature vectors extracted from the image blocks;
  • nodes 23009, 23010, 23011 are three bottom level blocks, which are part of the object 23022.
  • the three blocks are typically grouped together into node 23006, (thus representing the body of a running man 23002);
  • the object structure may be hierarchical, i.e., an object can contain smaller objects, with the bottom level objects the image building blocks.
  • the node 23006 (representing object 23022), node 23007 (representing object 23023), and node 23008(representing object 23024) are grouped together to form the top level node 23004 (representing the object running man 23021);
  • the top level objects are typically organized by a lattice topological maps.
  • the top level map 23002 sorts out the objects topologically based on their similarity.
  • Node 23004 (representing object 23005), node 23012 (representing object 23013), and node 23037 (representing object 23038) are neighboring nodes on 23002, because they represent objects with similar features (different type of men);
  • Each node on the lattice topological map are typically hierarchically organized into a tree structure
  • a hyper-link could be provided between any node (i.e., a graph topological structure) in the hierarchical map to provide a "worm hole” for "hyperspace” jump during the search process;
  • Node 23011 represents an image block 23039.
  • the root node 23004 representing the running man object 23005 can be retrieved from the data base through the hyperlink 23041, when the matching of the image block 23040 in the input query object is found in the map 23003.
  • the search may be conducted relatively quickly and can potentially retrieve the complete information by matching the partial information (in a manner very similar to human neural network associative recall process);
  • the method for storing and retrieving objects in a database can comprise the steps of, first, extracting from an input object a first plurality of parameters, which can, for example, be a desired set of characteristics or a search objective, then, exploring at least some of the objects already stored in the database, and deriving from each database object a second plurality of parameters, and calculating from those database object parameters a set of characteristics corresponding to the search objective, followed by identifying those objects in the database which have the greatest correlation or other correspondence with the desired set of characteristics, where the correlation can be based on a variety of operational measures.
  • a first plurality of parameters which can, for example, be a desired set of characteristics or a search objective
  • the operational differential entropy measures the number of bits to encode the input object based on the objects identified from the data base, where the encoding is performed through certain actual encoding operation process.
  • the operational differential entropy measure quantifies the information difference between two objects through certain encoding methods (i.e., the operation).
  • Another example is in searching the design objects from a data base of existing design objects to create new designs requested by certain design request query.
  • the operational measure can measure the actual amount of effort to complete the design for the design request query based on the existing design objects identified from the design data base. In this case, the actual amount of design work has to be estimated during the search process. However, after the design objects are identified and the requested design work done, the actual amount of work can be measured (through the operational measure), then feedback to the operational measure estimator to improve the estimation accuracy.
  • the plurality of parameters in the foregoing example can include, for example, feature vectors of the input objects or data base objects, which may be characterized in one or more dimensions.
  • the operational measures can include quantifying the differences in information content between objects, such as differential entropy.
  • the proximate relationship between objects can be measured in one or more dimensions, of which one dimension can be time-related, such as a location in a time-sequence of images or similar time-based media objects.
  • the database may be mapped to a lattice structure having a plurality of nodes, wherein the step of storing an object includes deriving or otherwise obtaining a set or sets of parameters for each of the one or more other objects, and then extracting neighborhood relationships between the input object and one or more other objects.
  • the neighborhood relationship in such embodiments typically is related to the correspondence between the input object and one or more other objects.
  • the step of mapping the input object can also include modifying the lattice structure, which can include node generation and/or node annihilation or deletion. The modifications may be based on factors including utilization and performance, and may also include the operational quality of the system adapted to maintain the lattice structure.
  • mapping of the input object can include training of the feature vectors, including training at the parameter level.
  • the step of mapping can alternatively include using interpolation to identify a position for the input object with in the lattice structure, and then mapping the input object to that position.
  • the step of extracting neighborhood relationships can also include processing a plurality of feature vectors using an adaptable or dynamic function which may be parameter-based, or parameterized.
  • the neighborhood relationships can exist between pairs of nodes on the lattice structure, and the pairs of nodes can share boundary surfaces or points on Voronoi regions.
  • the shared boundary surfaces or points can, in at least some embodiments, be determined based on the feature vectors.
  • the higher-dimensioned space can include characteristics for preserving neighborhood relationships between objects.
  • one dimension on the lattice can represent a time axis, at least in some embodiments.
  • the process of storing objects can, in some embodiments, predicting a storage location for an input object based on the other objects already stored in the database.
  • the predicted storage location can be associated with a predicted object, wherein the predicted object provides a minimum differential entropy measure related to the input object.
  • One or more difference objects can then be generated, representing differences between the input object and the other objects, followed by storing the one difference objects with one or more difference paths. Each of the one or more difference paths can locate the input object relative to at least one of the other objects.
  • the process of retrieving can include, in at least some arrangements, selecting a map location of an object to be retrieved, and then fetching information associated with that object to be retrieved.
  • the information can include, for example, difference objects and difference paths related to other objects.
  • The, the other objects can be retrieved, followed by constructing the object to be retrieved from the other objects and the fetched information.
  • successive input objects can be mapped onto a query object map, where the query object map preserves the neighborhood mapping of a query object space.
  • the query object map is a one dimensional sequence for ordering input objects.
  • the parameters noted above in the example may also include components extracted using a coefficient de-correlating transform.
  • Such components may include a plurality of signals, each signal having an energy.
  • the plurality of signal energies can include a first signal energy having no alternating component.
  • Each of the other signal energies can be associated with a different band of non-zero frequencies. In some arrangements, the non-zero frequencies are typically lower than a selected first frequency.
  • Illustrative example 2 Data security
  • a data transmitter 24003 transmits data through an unsecured channel 24009 to a data receiver process 24004.
  • the data transmitter 24003 and data receiver 24004 may include a combination of computing devices and software processes.
  • the transmitter and the receiver include similarly configured data storage that have topological maps of a generally consistent organization. Consequently, data may be securely transmitted by implementing a "delta transmission process" as described immediately hereafter.
  • transmission data 24010 is provided to enable retrieval of closest matching reference data 24016 obtained from a common data storage 24007.
  • a calculated difference (delta difference) 24017 between the transmission data 24010 and the matching reference data 24016, together with a map reference index 24014, are encoded by a transmission encoder 24006 and transmitted through an unsecured channel 24009 to the receiving side.
  • a transmission decoder 24020 decodes received data into a decoded delta difference 24018 and a decoded map reference index 24015.
  • the map reference index 24015 may then be used to retrieve a receiver-side matching reference data 24019 from a receiver side common data storage 24008. Retrieval is facilitated by commonalities between topological maps on receiver and transmitter sides.
  • the receiver-side matching reference data 24019 is added to the decoded delta difference 24018 to provide a received data 24011.
  • the received data 24011 may then be sent to the receiving process 24004.
  • Illustrative example 3 Media contents push and pull agents:
  • a MOMNET 25017 includes a plurality of MOMs that may be used as push and pull agents for media content on a public MOSNET such as the Internet.
  • a first MOM 25001 pushes queries and results to multimedia content consumers.
  • This mode of operation may be characterized as an up-stream linking process from the QOM 24 (see Figure 2) into the up-stream users or agents.
  • the first MOM 25001 may be a media content service agent that can push media content to up-stream MOMs 25002, and 25003, which are personal agents for user 25018 and user group 25019 respectively, hi this type of push application, queries and associated data may be delivered to the users before the queries are presented.
  • the associated information may include query results, typically subject to user acceptance of certain some consumer value proposition acceptance.
  • the provision of responses to queries before the queries are presented is possible because previously asked queries are maintained on the QOM 24.
  • the first MOM 25001 may identify users and anticipate likely queries. Identification of users is typically made by the personal agents 25002, 25003 and anticipation of queries is typically based on similar queries maintained in neighborhood sets on the QOM 24.
  • the present invention provides for targeted marketing and customer demand estimation for delivering targeted services.
  • MOM 25001 pulls multimedia objects from its down stream agents linked through its SOM 23 (see Figure 2).
  • Media objects may be pulled by a distributed and hierarchical process.
  • the first MOM 25001 pulls objects from other MOMs 25004, 25005, 25006.
  • one of the other MOMs 25005 may then pull objects from still other MOMs 25008, 25009 through links 25015, 25016.
  • one of the still other MOMs 25008 may retrieve the demanded objects from its associated media content database 25023, and a second of the still other MOMs 25009 pulls the demanded objects from its media content database 25024.
  • the retrieved media content then propagates upstream to media content service agent 25001, where both results are integrated for deliver to upstream agents 25002, 25003, representing user 25018 and user group 25019, respectively.
  • a group of mapping crawlers can be dispatched into the Internet to navigate through the Internet hyperspace to generate the topological map for the target object search space.
  • the crawlers may be distributed and hierarchical in form to cover the internet through "divide and conquer” and "parallel distributed processing”.
  • the basic structure of a crawler is the same as the MOM structure as shown in Figure 2.
  • each search agent may be equipped with a search object map (SOM) for a target application space, and
  • SOM search object map
  • each search agent may gradually build a QOM 24 (see Figure 2) that is tailored to the specific demands of users. Otherwise stated, each agent can learn to adapt to the users' needs. Every agent is unique and will evolve to address the different "personality" of the users.
  • Multimedia data base indexer ⁇ search through the multimedia data base to build up the indexing system for fast content-based retrieving.
  • This method can be applied to one object (like video, image) or to a reservoir of objects (like a image database)
  • ⁇ Data transmitted in this manner may also be fault tolerant, since the missing portion could be inferred from the context of the topological map on the receiving side. Missing data may result from noise that is typically random and uncorrelated. However, because nodes on the described maps are correlated, the maps can be used to derive missing parts and reject transmission errors.
  • G. Human interface mining
  • the QOM 24 may be used to capture and organize the interactions with human users. Interactions may include visual interfaces, voice interfaces, text interfaces, and other human oriented interfaces.
  • a visual interaction process to guide the visual search process for human users may include: o Certain visual information is typically presented to a user as a starting point, where the visual information is retrieved or synthesized from maps in a MOM and wherein the visual information is typically based on query results of neighboring nodes on the QOM 24; o an interface that permits a user to indicate through simple qualitative answers the features of a presented image for directing a search on the map and enables the MOM to navigate through the topological map with the guidance of the user; and o operational measures modeled from human understandable, answerable results and useable for guiding a search process.
  • a personal MOM agent can "map" the human brain during a certain interaction period with a human user.
  • This personalized agents may bridge the limitations of human interface to provide a link to the MOSNET that may offer the ultimate service to its human master.
  • This type of agent are embodied intelligence agents which "embody” and feed on information received from physical interactions with human users.
  • This type of agent may have the ability to perform mining operations not only on the MOSNET, but also on a human brain to pursue the human beings' furthest potential.
  • media objects may be searched, delivered, processed, and integrated for presentation to consumers to enable many interactive multimedia media activities.
  • activities include: o Personal KTV, movie production, and virtual studio; o Karaoke on demand; o Multiple player video game on demand o Virtual get together party for friends family on MOSNET [00135]

Abstract

The patent application taught an object based information storage, search and mining system and method, which can store, retrieve, and mine massively amount of object data efficiently. A first embodiment includes an object based search engine which can organize and identify the objects efficiently from the search space based on certain operational measure quantifying the search objectives. A second embodiment includes an operational measure estimator which can adaptively adjust or reconfigure itself to improve the accuracy of the estimation. A third embodiment includes a method for mapping objects onto a topological maps to enable identifying objects rapidly from the search space according to certain measures for search objectives. A forth embodiment includes a method for conducting object based search through mapping query objects and search objects onto topological maps and searching effectively through the maps based on certain operational measures.

Description

OBJECT-BASED INFORMATION STORAGE, SEARCH AND MINING
SYSTEM AND METHOD
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. provisional patent application, serial number 60/638,929, filed on December 22, 2004, entitled "OBJECT-BASED INFORMATION STORAGE, SEARCH AND MINING SYSTEM AND METHOD", which is hereby incorporated by reference into the present application.
This application claims the benefit of: U.S. utility patent application, serial number 10/867,447, filed on June 14, 2004, entitled "METHOD AND APPARATUS FOR ADAPTIVE MULTIPLE-DIMENSIONAL SIGNAL SEQUENCES ENCODING/DECODING"; and
U.S. utility patent application, serial number 10/867,027, filed on June 14, 2004, entitled "MEMORY AND ARRAY PROCESSOR STRUCTURE FOR MULTIPLE-DIMENSIONAL SIGNAL PROCESSING",
Wherein serial No. 10/867,447 and serial No. 10/867,027 each claim priority to U.S. provisional patent application, serial number 60/480,985, filed on June 23, 2003, entitled "METHOD AND APPARATUS FOR ADAPTIVE MULTIPLE-DIMENSIONAL SIGNAL SEQUENCES ENCODING /DECODING," all three of which are hereby incorporated by reference.
BACKGROUND OF THE INVENTION
FIELD OF THE INVENTION
[0002] Generally, the present invention relates to multimedia data searching. More specifically, the present invention relates to data mining, internet search engines, multimedia storage, multimedia data bases, data warehousing, multimedia data compression, multimedia communications, data security and intelligence agents.
DESCRIPTION OF RELATED ART
[0003] There are massive amount of multimedia objects on the Internet. Current Internet search engines are "text" or "hypertext" based. It is difficult to search for non-text media objects, like video, image, and audio, which are more targeted for human consumption. Most of the current methods for organizing multimedia data are based on "metadata", which is also text based information. There is no current effective method to arrange or sort media objects available in the disorder of the World Wide Web, or to construct an ordered media storage and media storage network structure based on the multimedia data content itself.
Most, if not all, of the current search engines available today utilize fixed search criteria and cannot tailor or adjust to the requester's individual tastes or measures. The techniques and systems used in prior art systems are therefore optimized for, if not dedicated to, text-based searching, which limits their effectiveness for searching objects which are not text-based.
However, the reduction of media objects to a set of metadata, as used by conventional systems, necessarily eliminates large amounts of the most useful data and therefore can often yield an unsatisfactory search result. There has therefore been a need for systems, processors, techniques and methods for characterizing, searching for and sorting media objects available on the internet without the need to attach metadata to those media objects.
BRIEF SUMMARY OF THE INVENTION
[0004] The present invention provides a method to effectively represent, search, and manipulate multimedia objects through a group of interconnected multimedia search agents functioning logically on an interconnected multimedia storage network. 1
[0005] A first aspect of the invention is directed to a multimedia object mining agent (MOM), which can search for multimedia objects in a distributed multimedia data reservoir effectively to produce the results to satisfy certain content based multimedia queries.
[0006] A second aspect of the invention is directed to the search method and system of the multimedia object mining agent based on topological map structure to efficiently searching for the desired multimedia data from a large search space to satisfy users' multimedia information requirements. The search system also includes a dynamically adjustable cost function, which estimates certain operational measures; dynamically adjustable topological maps, which sort out the objects in the search space and query space; fast search method which exploits the neighborhood information in the topological maps, followed by detail and global search processes.
[0007] A third aspect of the invention is directed to a multimedia object store (MOS) and a multimedia object store network (MOSNET), which are interconnected multimedia storage devices with processing and communication capability. MOS and MOSNET are used to support the implementation and operation of multimedia object agents.
[0008] A fourth aspect of the invention is directed to a multimedia object mining network (MOMNET), which is a distributed agent network that can dynamically structure and organize itself to satisfy the users' multimedia information requests.
[0009] A fifth aspect of this invention is directed to applications, which include an n- dimensional image database, a data security and encryption system and a media contents push- pull agent.
[0010] A sixth aspect of this invention is directed to practical implementations for the structures and methods taught in this invention. The object oriented processing unit (OOPU) and object oriented memory unit (OOMU) are described to provide guidelines for implementing the data processing and storage structure for the multimedia object miner. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] These and other aspects of an embodiment of the present invention are better understood by reading the following detailed description of the preferred embodiment, taken in conjunction with the accompanying drawings, in which:
[0012] Figure 1 shows a multimedia agent based service system;
[0013] Figure 2 shows the structure of a multimedia object miner (MOM);
[0014] Figure 3 shows an operational measure estimator (OME) used in the multimedia object minter (MOM);
[0015] Figure 4 illustrates a multimedia search problem with limited communication bandwidth
[0016] Figure 5 shows an example of tree structured topological map;
[0017] Figure 6 shows the structure of an object mining processor (OMP);
[0018] Figure 7 shows the structure of a multimedia object store (MOS);
[0019] Figure 8 shows the structure of a multimedia object store network (MOSNET);
[0020] Figure 9 shows the structure of a search object mapper (SOM);
[0021] Figure 10 shows an example of a lattice topological map;
[0022] Figure 11 shows examples of neighborhood sets on 2-D lattices;
[0023] Figure 12 shows the structure of a dynamically adaptable search object mapper (SOM);
[0024] Figure 13 shows the structure of a Least Mean Square (LMS) estimator;
[0025] Figure 14 shows an example illustrating neighborhood preserving mapping;
[0026] Figure 15 shows an example of object interpolation from a lattice topological map;
[0027] Figure 16 shows an example of hierarchical topological maps;
[0028] Figure 17 shows an example of a graph topological map;
[0029] Figure 18 illustrates a method for exploiting neighborhood sets to select a search starting point;
[0030] Figure 19 illustrates the concept of a spiral search method;
[0031] Figure 20 shows an example of a parallel spiral search on 2-D lattice map;
[0032] Figure 21 shows the structure of an object oriented memory unit (OOMU);
[0033] Figure 22 shows the structure of an n-dimensional image data base storage and retrieving system; [0034] Figure 23 illustrates the process of content based retrieving through topological maps on an image database system;
[0035] Figure 24 shows the structure of a data security system based on a storage topological map;
[0036] Figure 25 illustrates the structure of a multimedia object miner network (MOMNET); and
[0037] Figure 26 shows a flowchart of a search process for a MOM.
DETAILED DESCRIPTION OF THE INVENTION
[0038] The present invention will now be described in detail with reference to the drawings, which are provided as illustrative examples of the invention so as to enable those skilled in the art to practice the invention. Notably, the figures and examples below are not meant to limit the scope of the present invention. Where certain elements of the present invention can be partially or fully implemented using known components, only those portions of such known components that are necessary for an understanding of the present invention will be described, and detailed descriptions of other portions of such known components will be omitted so as not to obscure the invention. Further, the present invention encompasses present and future known equivalents to the known components referred to herein by way of illustration.
[0039] Referring to Figure 1, a generalized representation of an exemplary embodiment of the invention is shown, hi this example, a multimedia service system ("MSS") 101 provides a plurality of services to a multimedia user 102 under a multimedia application operation environment 19. The MSS 101 comprises a multimedia object miner ("MOM") 11, a multimedia application agent ("MAA") 12, a multimedia data reservoir ("MDR") 13 and a communications network 14 connecting the MOM 11, MAA 12 and MDR 13. While the MSS 101 may be included in a single system, many embodiments of the invention provide a distributed architecture for deploying components of the MSS 101.
[0040] The MAA 12 typically delivers multimedia services to the user 102, in response to a multimedia service request. The MDR 13 is a depository of multimedia information that may be maintained on storage systems located locally or dispersed across one or more networks. The MOM 11 supports processes that search, process and provide multimedia objects in response to queries relayed by the MAA 12. The communication network 14 provides a plurality of communication channels for the exchange of information between the various components of the MSS 101 and between the MSS 101 and the user 102.
Multimedia Object Miner (TVIOM)
[0041] Referring to Figures 1 and 2, Figure 2 provides a block diagram representation of the MOM 11 as provided by embodiments of the invention. An object mining processor ("OMP") 22 initiates searches in the MDR 13 based on queries that are initially processed by a query object mapper ("QOM") 24. The QOM 24 typically sorts and organizes queries to create and update one or more topological query maps that may be used to optimize query processing. The query maps may maintain a history of queries and associated search result information that can be used to optimize subsequent searches. Results obtained by the OMP 22 may be presented to the MAA 12 or directly to the user 102.
[0042] The MOM 11 may also include a search object mapper ("SOM") 23 for sorting and organizing one or more search spaces of the MDR 13. The SOM 23 typically creates and updates one or more topological maps related to search objects, wherein the topological maps are used to optimize the search process. In at least some embodiments, an operational measure estimator ("OME") 21 provides an estimation of a search objective measure that may be used to assess expected outcomes of searches based on factors including merit of search points as discussed below. The OME 21 can provide estimations of certain search results based on information available during the search, the estimations relating to measures that can characterize the quality of the certain search results. The OME 21 may provide a search cost function value to estimate certain post search operational measures. This cost function value can be used to guide the search point evaluation for the OMP 22 and guide the adaptation of topological maps 23 and 24 (as described below). Typically, the MOM 11 also includes a MOM embedded communicator ("MEC") 28 for maintaining the communication channels that link MOM to other components and entities coupled to the communication network 14.
[0043] Referring also to Figure 3, the operation of the OME 21 and method for obtaining estimation 309 of a post-search operational measure value 310 may be understood. In many embodiments, the MOM 11 searches for a multimedia object wherein the multimedia object includes video information, picture, audio, hypertext and digital library data, N-dimensional image, multi-dimensional scientific signal samples, biological DNA sequence data, financial time series, marketing time series, production time series, logic or procedural data (like programs or scripts), and man-made data (such as design data used in art creation or engineering design). The multimedia objects may have a hierarchical form and may comprise a plurality of data types. A successful search of multimedia objects may provide a desired result if a target is adequately characterized and sufficient search criteria are selected. The OME 21 provides the estimation 309 of the operational measure value 310 which measures the merit of the search result. The operational measure value 310 is calculated based on the merit of the actual operational outcome using the certain search results. The purpose of the search is usually to identify objects to be used in certain operations following the search process. During the search process, since the operation is not performed and the results of the operation is now known yet, hence the measure about how well the objects can be used in the target operation can only be estimated by the estimated operational measure . However, after the objects are identified from the search process and the post search operations done, the merit of the results from the operations can be actually evaluated based on certain operational measures. The post search actual operational measure can then be used to adjust or reconfigure the operational measure estimator for the searches afterwards to reduce the estimation error.
[0044] The estimation 309 is typically obtained by first obtaining the a priori data and stored in an a priori data buffer (PRB) 301. The a priori data buffer (PRB) stores relevant "pre- operation" data (i.e., the data available before the target actions or operations are taken to the ■ search results) that may be available during the search process. Then, the a priori input parameters 308 are extracted using an a priori parameter extractor (PRE) 302. Last, an adaptive function estimator (AFE) 303 receives the a priori parameters 308 and provides estimation 309 of the operational measure.
[0045] Parameters associated with the search results (hereinafter "a posteriori input parameters") 312 are typically processed in a similar manner to the a priori input parameters 308. The search results comprise data, hereinafter called a posteriori data that is derived by processing an object retrieved by the search. An a posteriori data buffer (POB) 306 is provided to store information derived from processing the retrieved object. An a posteriori parameter extractor (POE) 305 extracts the a posteriori input parameters 312. An operational measure calculator (OMC) 304 calculates the operational measure value 310 from the a posteriori input parameters 312. It will be appreciated that this a posteriori operation measure 310 can be fed back into the AFE 303 to adjust the internal structure or parameters of the AFE 303 such that the AFE 303 may provide better estimation. Thus the operation of the AFE 303 may be characterized as adaptive in nature since performance of the AFE 303 can be improved and optimized after each search. This "adaptation" can be performed through a "supervised learning" process to dynamically and iteratively improve estimation accuracy.
[0046] It will be appreciated that quality of results delivered by the MOM 11 is dependent, at least in part, on selection of appropriate operational measures. Appropriate operational measures include information measure and entropy measure, as defined in the well- known Shannon's information theory. Many embodiments of the present invention employ entropy as an operational measure for the result of the search.
[0047] The operational entropy of an object ("O") related to encoding method ("m") is represented as I m(O), and may be calculated as a number of bits required in encoding the object. A relative operational entropy may be defined, at least for the purpose of this application, as the number of bits required to encode a first object ("01"), given information related to the encoding of a second object ("O2"), using encoding method m; the relative operation entropy may be represented as Ir_m(0\, O2). It will be appreciated that I_m() and IrjnQ define upper bounds of Shannon's theoretic measure. It can also be appreciated that such entropy-based measurement differs from what can be referred to as "energy-based measurement" used in most prior art search processes.
[0048] The present invention provides an entropy based operational measure that can generate search results with a perceptual quality that is better suited to human searchers because it will be appreciated that the human perception system has evolved to process "information" and entropy-based measurements are information-oriented. In many embodiments of the invention, the AFE 303 is instrumental in providing accurate guidance in driving the search process. In at least some embodiments, the AFE 303 implements a parameterized function with adaptable parameters to provide a result RAFE 309 such that:
RAPE = F(Xl, X2, ..., Xn | Kl, K2, ..., Km), [El] where {XI, X2, ..., Xn} are a priori input parameters extracted by the PRE 302 and {Kl, K2, ..., Km} are controlling parameters which are adaptable through a supervised learning algorithm to minimize the estimation error. A very simple form of parameterized function is a linear model such as: F = ∑iΩ* Xz [E2] i
[0049] Referring to Figure 13 an example of the structure of a typical Least Mean Square ("LMS") function estimator 303.1 as implemented by an AFE 303 is shown. A set of a priori input parameters 308 comprises a plurality of parameters Xl 1301, X2, 1302, .., Xn 1303. In this example, the LMS estimator 303.1 also receives a post search operational measure ("Y") 310 associated with the result of the search, wherein the post search operational parameter may be used to calculate an estimation error 1310, Err = Y — F. The estimation error 1310 may be used to adjust the controlling parameters Kq 1304, K2 1305 and Kn 1306 that affect operation of the LMS estimator 303.1. The change in each of the controlling parameters may be calculated using an LMS algorithm for each parameter change
AK, = μ * (Y- F)* K1 for each i [E3]
In at least some embodiments, a more accurate estimation is obtained by an AFE 303 that implements multi-layer neural network models.
[0050] It will be appreciated that the accuracy of estimation attributable to the AFE 303 is typically significantly affected by selection of input parameters and structure of the estimation function. In some embodiments the selection of input variables for the AFE 303 (hereinafter referred to as "cost function") is based on criteria including simplicity criteria ("Cl"), relevancy criteria ("C2"), "divide and conquer" refinement criteria ("C3"), input variable factoring criteria ("C4"), and simple substitute criteria ("C5"). Simplicity criteria factor the ease of extraction of the input variables from various search states during the ME search process. Relevancy criteria account for the degree of relevancy of input variables to the target objective cost. The divide and conquer refinement criteria decompose a cost function F into separable contributing component functions Fl, F2, etc. to simplify the function form for easy evaluation and tracking. Input variables factoring criteria decompose an input parameter Xi into separable contributing , components Xj1, Xj2, etc., thereby creating more input variables and promoting better accuracy, control and tracking. Simple substitute criteria substitutes one or more parameters to replace difficult to obtain parameters.
[0051] In an exemplary embodiment, a MOM 11 is used for searching based on N- dimensional image matching. Since the type of object sought is highly correlated and normally encoded through some kind of coefficient de-correlating transform such as Discrete Cosine Transform ("DCT"), Discrete Wavelet Transform ("DWT"), Discrete Hardmard Transform ("DHT") and Karhunen-Loeve Transform (KLT). Following transformation, derived signal energies are typically concentrated on a few low frequency bands. Based on this observation, a priori input parameters for AFE 303 may be selected from the energies in a plurality of low frequency sub-bands {E_0, E_l, .., E_i} and remaining high frequency residue energy E_hi. Embodiments adopting the simplest form of this "sub-band" decomposition may divide the energy into direct current ("DC") and alternating current ("AC") terms of a transform. Here the AFE result RAFE 303 can be approximated by
RAPE ~= F = Kl * E_dc + K2 * E * E_ac + Others, where E_dc is DC energy and E_AC is AC energy [E4]
Energy is typically calculated as a "sum of square value" of the components of an object. It will be appreciated, however, that computation may be reduced by using a "sum of absolute value" approximation. It will be further appreciated that this AC/DC decomposition estimation example utilizes criteria Cl, C2, C3, and C4 as specified above. To achieve optimal search performance and quality, a set of different transforms may be used for search cost estimation and final result calculation. Transforms may also be adaptively selected to achieve the best performance and quality.
[0052] In other embodiments, criteria C3 may be applied by decomposing the AFE function into portions representing estimated values and accurate values. Since some of the estimation problem may include one or more exactly predicable portions that contribute to the operational measure, the predicable portion may be realized using a table look-up or simple function calculator, where the functional form is known.
[0053] Because the relevancy of a priori data significantly affects the accuracy of estimation, some embodiments place great weight on providing accurate estimation of a posteriori operational measures based on a priori data. For example, where queries involve object matching types, it is preferable to have complete object information available to compute a cost function. However, it is relatively commonplace that complete object information is not available because of bandwidth availability and cost, and for other reasons. For example, complete object information may not be available when query and search objects Oq and Os are physically residing in different locations of a network. [0054] Figure 4 illustrates an example in which object information is dispersed. In some embodiments, compensation is made by using certain extracted feature vectors of the objects (Wq and Ws) as inputs for the OME 21 (see Figure 2). The size of Wq and Ws data is typically much smaller than the size of the original objects and, thus require lower transmission bandwidth.
[0055] The following is describes an embodiment of an operational measure estimator. BEGIN: Exemplar Operational Measure Estimator Declaration
1. A method for estimating operational measures associated with objects, comprising the steps of extracting a priori input parameters from a priori data available during the search, calculating an estimated operational measure of an expected search objective from the a priori input parameters, exploring objects from the search space, identifying objects optimizing the estimated operational measure, perform operation on optimally identified objects, extracting the a posteriori parameters from a posteriori data available after performing the operations on the identified objects, calculating the actual operational measure based on a posteriori parameters, adjust or reconfigure the operational measure estimator based on the estimation error.
2. The method of declaration 1, wherein the a posteriori data also includes information extracted from preceding queries and extracted from operational measures of search results associated with the preceding queries.
3. The method of declaration 2, wherein the operational measures are operational entropies quantifying information related to the objects, wherein the operational entropies are obtained from certain processes.
4. The method of declaration 1, wherein the estimated operational measure is calculated using a process including at least one of simplicity criteria, relevancy criteria, divide and conquer refinement criteria, input variable factoring criteria, and simple substitute criteria. 5. The method of declaration 1, wherein the estimated operational measure is decomposed
/ into accurately predictable components and estimated components.
6. The method of declaration 5, wherein the accurately predictable components are obtained using a table look-up.
END: Exemplar Operational Measure Estimator Declaration
Topological Maps
[0056] Referring again to Figure 2, embodiments of the invention employ topological maps to maintain the information related to the structure of various object spaces. For example, object indexing spaces used by the SOM 23 and QOM 24 may be implemented as topological maps for capturing the structure of an object search space and an input query object space, respectively. As used in embodiments of the invention, a topological map of objects is an object index space that includes definitions of neighborhood relationships between constituent objects. Examples of topological maps include N-dimensional lattice, tree, and graph structures. In some embodiments, topological maps may be hierarchical in form. A topological map may also have a hybrid structure composed of components maintained in different types of map, such as a combination of mixture of lattice and graph structured maps.
[0057] Examples of topological maps are depicted in Figures 5, 10 and 17. Figure 5 shows an example of tree topological map, Figure 10 shows an example of a 2-D lattice topological map and Figure 17 shows an example of graph topological map. Embodiments of the invention utilize hierarchical N-dimensional lattice topological maps. Hierarchical N- dimensional lattices possess advantageous properties including:
• a "vector space" form in which each object on the space is associated with a lattice coordinate vector
• voids in the vector space (representing non-existent objects) can be filled by calculations or derivations based on characteristics of nearby (or local) objects in the lattice.
• a hierarchy structure that allows the map to be refined for optimizing search results and performance. [0058] An illustrative example is shown in Figure 15. In the exemplary embodiment, a one dimensional lattice contains a plurality of nodes 1500 (N(I) , .., N(i), N(i+1)). Object attributes 1504 of N(i) and attributes 1505 of N(i+1) may be used to "interpolate" attributes of non-existing object N(H-1A) located between object N(i) and N(i+1) on the lattice. It will be appreciated that the complexity of the local computation can influence the quality of the derived object. Further, during the search process, a simplified calculation is typically used to quickly evaluate candidate lattice points. In at least some embodiments, multiple local computation methods are implemented and adaptively selected for deriving objects. For example, a first and simplest method such as linear interpolation may be used to locate a best approximation before more complex and accurate computation methods are applied to derive the object sought. This process includes the following steps:
• During the search process, a simplest calculation such as linear interpolation is used to derive the objects on non-integer lattice points. For example, if O(i) and O(i+1) are objects represented by N(i) and N(i+1) on the lattice, then O(i+l/2) can be derived simply as V2 * (O(i) + O(i+1)).
• After a best point is found using a calculation, more complex and accurate computation methods and combinations of methods may be selected are used to derive the object sought by the query. Selection may be adaptively made from a group of methods. In some embodiments, local signal processing operations such as "multi-tap" filters may be applied to derive more accurate contents for missing objects.
[0059] In addition to its use for deriving missing objects that reside on non-integer points of the lattice, the interpolation method may also be used for correcting error and omissions attributable to transmission and storage faults, and other problems associated with distributed network updates.
[0060] An example is shown in Figure 16, wherein in an embodiment of the invention, a 1-D lattice is organized hierarchically. Here the top level lattice 16001 contains the node NO 16008, Nl 16009, .... The nodes NO 16008, Nl 16009, .. are expanded into lattices on the next level 16002, where NO 16008 is expanded into lattice 16004, with nodes NO.O 16011, N0.1 16012, .... [0061] Referring now to Figures 2 and 9, Figure 9 shows an exemplary embodiment of the SOM 23. The SOM 23 typically organizes and arranges the structure of a multimedia object search space to enable fast and efficient searching for objects located in a large multimedia data reservoir. In the exemplary embodiment, SOM 23 comprises a multimedia object buffer (MOB) 901, an adaptive object topological map (AOTM) 909, an object feature vector extractor (OFE) 904, an object bus 905, an object map index bus 907 and an object pointer bus 910.
[0062] The MOB 901 is typically coupled to a MOM embedded communicator ("MEC") 28 and may assess the multimedia data exchanged by the MDR 13 (see Figure 1). The MOB 901 is typically a fast multimedia object cache storage that can access and retrieve low-level multimedia data and organize the multimedia data to create higher level object forms, thereby facilitating processing. The MOB 901 may function as an object converter, bridging high level objects processed in the MOM 11 (See Figure 1) and multimedia data stored in the network. The AOTM 909 can dynamically form a topological map of the search space and typically includes an object topological map (OTM) 902 (as discussed previously) and a topological map adaptation controller (TMAC) 903 for adjusting the structure of the object topological map (OTM) 902 based on certain learning algorithms.
[0063] The OFE 904 may extract feature vectors from an object to be sent to a feature vector bus 906. The feature vector is typically a set of values that characterizes an object and the feature vector can be used for object matching during searches and to enable content-based access of objects. In the latter use, the feature vector may be used to retrieve an object pointer from the OTM 902 using an object pointer bus 910.
[0064] The object bus 905 may be provided to permit fast object data transfer for various purposes including
• transmitting object data retrieved from the ODR 13 to OMP 22 through the MOB 901,
• sending the object data from OMP 22 to the ODR 13 through the MOB 901, and
• sending the object data to the OFE 904 for extracting the feature vectors of the object. [0065] The object map index bus 907 is provided to transmit access requests by the OMP
22 to the object map. The object pointer bus 910 typically transmits the object pointer information to and from the MOB 901 to access object data in the MDR 13 through a bus 202 and the MEC 28 (as shown in Figure 2). It can be appreciated that the bus 25 (as shown in Figure 2) may comprise the object access request bus 907 and the object bus 905. [0066] Figure 10 depicts an object topological map (OTM) in an exemplary embodiment of the invention. The OTM is depicted as a two dimensional ("2-D") space partition network (SPAN) map 902.1, comprising: a plurality of 2-D lattice nodes (N(O5O), N(O5I)5...,) wherein each of the plurality of 2-D nodes is associated with node attributes 1002 including a pointer to an object, a list of objects (where the node represents a group of objects), and sub-maps (where a hierarchical topological map is used), a feature vector of the associated object and a SPAN Map Address Buffer 1004 for receiving a lattice address 907 used to retrieve objects indexed by the lattice node and a SPAN Node Attribute Buffer 1005 that stores node attribute information associated with the lattice.
[0067] Referring now to Figures 9 and 12, an exemplary embodiment of an AOTM 909 is shown in Figure 12. In this embodiment, an adaptive SPAN (ASPN) 909.1 is used as the AOTM. Shown here is a 1-D SPAN with a plurality of nodes (N(I)5 ..., N(i-l), N(i), N(i+1), ..., N(n)). Each of the plurality of nodes corresponds to a neuron in the SPAN model and stores the attributes including an object feature vector W(i), which is the feature vector for the object represented by node N(i) and an object pointer P(i), which is the pointer pointing to the object, a group of objects, or a sub-map represented by the node N(i). SPAN map adaptation is controlled by a span adaptation controller (SAC) 903.1. hi the exemplary embodiment, nodes in the SPAN 902.1 may be addressed by a lattice index and by a feature vector. The lattice index is typically sent from the map index bus 907 to locate an associated node in the lattice. The feature vector X 1206 may be sent through the feature vector bus 906 to be enable a "parallel compare" with feature vectors {W(i)} stored on each lattice node N(i) for identifying the nearest neighbor that matches.
[0068] Some embodiments of the invention implement an associative addressing method. An input feature vector X 1206 is provided to each neuron in the lattice for measuring a difference from the feature vector W(i) stored in each node N(i). The difference is typically a value measured using metrics that quantify relative distance of nodes. The "difference value", together with a weighted summation of the output from the neurons in the neighboring set S(ϊ) is added together to generate the "pre-sigmoidal" activation level h(i) for neuron N(i). An output y(i) for neuron N(i) is typically generated by mapping h(i) through a non-linear signmod function f(). The system converges through several iterations and the neuron (i.e., the node in the SPAN map) with the highest output value is selected as the closest match. The neighborhood set S(ϊ) of a node N(i) on a lattice map of the exemplary embodiment is the set of nodes within a certain neighborhood region of node N(i).
[0069] Referring next to Figure 11 three diagrammatic examples of the neighborhood sets on a 2-D lattice are shown. Using "r" to represent a maximum square of the Euclidian distance of the lattice index of the neighborhood node from the center node to label the set, the diagrams represent a neighborhood set S(i), with r=l 1101, a neighborhood set S(i), with r=2 1102 and a neighborhood set S(i), with r=8 1103.
[0070] Considering now the diagram of Figure 12 together with Figure 9, a neighborhood set S(i) contains two nodes N(i-l) 1202 and N(i+1) 1204 with output signals y(i-l) 1213 and y(i+l) 1215 respectively. These output signals may be added into the input of neuron N(i) using, for example, a weighted summation process. Weights are typically selected to provide a negative value in order to "inhibit" the activity of neighboring neurons. A resulting neighborhood "negative feedback" process may enable one dominant neuron to emerge within a minimal number of iterations.
[0071] An addressed node N(i) typically provides attributes such as W(i) and P(i) for various purposes. W(i) may be used for object matching and searching and P(i) may be used for accessing objects from the ODR 13 (as shown in Figure 1) through multimedia object buffer (MOB) 901. Feature vectors can typically be communicated to other modules from the map through the feature vector bus 906. Object pointers can be communicated to other modules from the map through the object pointer bus 910.
[0072] For each SPAN map a node N(i) with a feature vector W(i) matching the input vector X in the nearest neighbor sense can be selected through a distance measurement. The distance between two vectors may be represented using the notation D(W(i), X). Preferably, D( ) should be defined to be consistent with the operational measurement described previously (see Figure 3). It will be appreciated that the SPAN map structure described above is just one embodiment example of this invention. In general, other structures could be implemented including:
• a hybrid topological map
• a hierarchical topological map
• a map in which pointer P(i) of a node N(i) points to an object such that the feature vector is the feature vector value extracted from the object • a map in which pointer P(i) of a node N(i) points to a set of objects such that the feature vector W(i) is the representative feature vector value of the set of objects pointed to through P(i)
• a map in which pointer P(i) of a node N(i) points to another map (of hierarchical or hybrid structure) such that the feature vector W(i) is the representative feature vector value of the objects in the structures under this node
Embodiments of the invention provide a feature vector of an object that is an n dimension vector residing in a high dimensional space. For practical processing, this high dimensional space is mapped into a lower dimensional space. In mapping from high dimensional space to lower dimensional space, "topological relationships" (i.e. the neighborhood relationship) between objects are typically preserved.
[0073] Embodiments of the invention provide topology-preserving mapping. Topology- preserving mapping is provided when neighboring nodes on the topological map are also neighboring nodes on an original feature vector space. Additionally, in topology-preserving mapping, two nodes on the feature vector space are neighbors if they share a boundary surface or a point on Voronoi regions determined by the feature vectors {W(i)} of nodes {N(i)}5 with all the points in a Voronoi region V(i) for node N(i) closer to W(i) than the feature vectors of other nodes.
[0074] Figure 14 shows topology-preserving mapping featuring a 2-D feature vector and 1-D SPAN map as provided in an exemplary embodiment of the invention. The 1-D SPAN map contains nodes {NO, Nl, ..., N15}, where neighboring nodes have adjacent indexes. The location of each node represents the location of the 2-D feature vector on the feature vector space. Voronoi regions {V0, Vl, ..., V15} for the nodes are a set of points closest to the corresponding feature vectors {WO, Wl, ..., W15}. In Figure 14, a first mapping 140001 is an example of topology-preserving mapping, since all the adjacent nodes on the 1-D SPAN map are also adjacent nodes on the 2-D feature vector space. A second mapping 14002 is an example of a mapping where topology is not preserved, since neighborhood relationships are not preserved. An examination of adjacent nodes N3 and N4 on the second mapping map are not neighbors in the feature vector space, since V3 and V4 are neighboring Voronoi regions.
[0075] In the exemplary embodiment of Figure 14 and with reference to Figures 10 and 12, the SPAN map 902.1 has the following characteristics: • nodes on the map may be "topologically ordered" as described above;
• nodes on the map typically partition the feature vector space into "decision regions" with the feature vector of each node locating at the center of each decision region;
• when the feature vector (the "input feature vector") of a query object is presented to the map through the feature vector bus 906, the node on the map with the feature vector closest to the input feature vector is typically selected;
• objects or sub-maps pointed to by the selected node may be further evaluated such that the best matching object for the query object may be selected.
• the SPAN map 902.1 may be used as an associative memory, which can retrieve associated objects based on the feature vectors.
[0076] In this exemplary embodiment, the map may be constructed according to the following procedure:
• The object to be indexed is prepared as follows:
input the set G of objects {O(n)} to be indexed,
■ calculate the feature vector X(n) of each object O(n),
• The lattice map is indexed as follows:
initialize the lattice structure L with a set of nodes {N{i)},
■ Initialize the feature vector W(i) and object list pointer P(i) for each node N(i) such that P(i) <-'NIL, and W(i) <- Certain Initial Value, which is different from other nodes.
• An example of a map training and indexing routine is presented as follows: Map Training: loop (time index t=0, t++, until converge) { random select an object O(n) from (7; fetch the feature vector X(n) of O(n); select the node N(i) from the map, such that:
D(X(n), W(i)) <= D(X(n), W(k)), for all N(k) in Z; for (each N(j) in the neighborhood set S(i)) {
WG) <- WG) + a * φ[t]( |/(iHG)| ) * D(X(n), WG)); } end for; } end loop; Where, o D() is a distance measure, which measures the distance between feature vectors; o a is the learning rate, which is used to control the rate of convergence in the learning process; o |/(i)-/(j)| is the lattice distance between node N(i) and N(j) on the map; o φ []() is the spatial mast,
■ φ []() is a time varying function used to control the range of influence of a lattice node to other nodes on the lattice;
■ φ []() is selected in such a way that the influence range is wide in the beginning of gradually decreases to a minimum value close to the end of the training process, then both fast convergence and final representation accuracy can be achieved.
Object indexing: for (each object O(n) in G) { fetch the feature vector X(n) of O(n); select the node N(i) from the map, such that:
D(Kn), W(i)) <= D(X(n), W(k)), for all N(k) in L; attach O(n) to P(i); } end for;
[0077] The procedure shown above demonstrates an exemplary embodiment of indexing the objects onto a lattice structure, through a parameter level feature vector training process. The lattice structure of the map may also be adjusted through certain node generation and annihilation processes. The generation and annihilation process can be based on activities and information representation contents associated with the node. This structure level adaptation of the map can also be governed by an operational measure, which measures certain resource utilization, performance /quality trade-offs of the system. It will be appreciated that the QOM 24 in the exemplary embodiment shown in Figure 2 has a similar structure to the SOM shown in Figure 9.
MOM Search Process [0078] In many embodiments, the performance of the MOM 11 is optimized by the establishment and maintenance of topological maps including maps used by the SOM 23 and the QOM 24. These two maps provide for the capturing of topological structure of search and query spaces respectively. The topological structure of the input query map and object search map provide the ability to execute efficient search processes that leverage the topological structure of the maps.
[0079] Figure 18 shows an example of a search process that leverages the neighborhood structure of the two maps. A current query node 18003 on a query object map (QOM) 18001 has four neighboring nodes 18004, 18005, 18006, 18007, which index a previously obtained set of query results in an SOM 18002. In the SOM 18002, the nodes 18012, 18011, 18009, 18010 representing the previously obtained query results have neighborhood sets (see Figure 11) 18016, 18015, 18013, 18014.
[0080] A starting point on the SOM 18002 is preferably may be selected by evaluating all points in neighborhood sets on the SOM, where the neighborhood sets are referred to by the neighboring points of the current query point 18003 on QOM 18001. Then the point yielding a best operation measure value is selected as the starting point.
[0081] Once the starting point is selected, the search process will be followed by conducting a detailed search around the neighborhood region of the starting point. This process may establish the best operational measure result as a threshold. In many instances, this detailed search generates optimal results.
[0082] Next, the MOM 11 executes a selected global search process, typically designed to explore large territories with an objective of reaching neighborhoods of better points. Additionally, the global search minimizes the risk of being trapped in a local minimum during the search process.
[0083] As with any general search problem, existing search strategies and algorithms may be implemented to execute a detailed or global search process. However, aspects of the present invention permit the execution of other search techniques to obtain good search results using the described topological maps and operational measure cost functions.
[0084] For example, an "A* search," as known in the art, may be used to skip search points if a lower bound of the cost value for an object can be provided during the search process. Specifically, if the lower bound is already larger than the best cost value obtained so far, then there is no point to evaluate this candidate point. Additionally, termination criteria for "success" or "failure" can be based on certain threshold parameters, which can also be adaptively adjusted based on the context of the search through certain learning processes. With a "successful match" or "acceptable match" termination condition set, in some embodiments, a spiral search pattern can be executed around an optimal starting point to minimize the time required to obtain an acceptable outcome. Also, if the search is sequenced according to a monotonically increasing order of certain contributing factor Xc of the cost function search points, then the search process can be terminated if, at a certain point, the Xc value is larger than the best cost value obtained so far.
[0085] Referring to Figure 19, an example of a 2-D spiral search is shown. In the example, the search process spirals around a starting point 19001. Embodiments of the invention utilize a neighborhood "experience" based on past query results (as discussed previously). In these embodiments, the starting point 19001 may be the best pick based on prior query experience. Additionally, because the SOM 23 preserves the topology property of the feature vector space, a spiral process can find the optimal point from the starting point with generally the least number of the search points.
[0086] Referring now to Figure 26, the flow chart describes a MOM search process used in many embodiments of the invention. At step 26002, MOM 11 accepts an input query and, at step 26003, extracts the query object g. Next, the query object g is initially located on the query object map (QOM) at step 26004. Then the neighborhood set Sg. of query object g on the QOM is retrieved at step 26005. Thereafter, the best cost function value BestCost is initialized to the maximum value at step 26006. A loop at steps 26007-26015 (comprising loops at steps 26007- 26010 and 26011-26015) exploits the neighborhood sets of the query result nodes of the nodes to select the starting point StartPt for the search at step 26016. This "double neighborhood set" 'exploit process is also shown in Figure 18.
[0087] Next, at steps 26017-26021, the MOM 11 executes a detailed search loop to closely evaluate a small region around the StartPt. The spiral search process of Figure 19 can be used to visit all the points in the small region. After the detailed search process, the MOM 11 executes global search loop at steps 26022-26026 for sampling throughout a large area on the SOM 23. During the search process, if any node yields a cost function value F smaller than the previously obtained termination threshold value, then the search process is terminated, and the object represented by the current node is selected as query result. At the end of the process, the best object BestPt, and the best cost value BestCost are obtained, representing the best object and the corresponding best cost function value found throughout the search process.
[0088] The search process provided in these embodiments is very efficient because of search behaviors including:
• Exploitation of neighborhoods and detailed search process generally visit a constant number of points, i.e. with complexity 0(1).
• In most cases, a good match is found (hence the process will terminate early) during the neighborhood exploitation or detailed search process
• In embodiments using a hierarchical search process, the global search process scales up with a size A of the search region on O(log(A)).
Object Oriented Processing Unit (QOPU) and Object Oriented Memory Unit (OOMLD
[0089] In real world multimedia search problems, the resource requirements on signal processing and matching calculation for MOM 11 to search a large space can be very demanding and the resource requirements for different queries can be quite different and unequal. For practical implementation of the OMP 22 processor shown in Figure 2 embodiments of the invention provide scheduling for search processes and allocate resources in OMP 22 to provide the best results. The OMP 22 is typically controlled using dynamic and adaptive control techniques based on local query context statistics to enhance the system throughput and quality of the query results. Additionally, supervised learning methods may be used to dynamically control the OMP 22 to improve operational performance.
[0090] Intrinsically, data processing independency exists in the search and query objects. In many embodiments, systems with high performance throughput may be developed with the following considerations:
• Higher performance throughput can be achieved, when intrinsic spatial and temporal parallelism in the objects is exploited.
• As shown in Figure 2, the OMP 22 (processor) and the maps QOM 24 & SOM 23 (memory) are preferably designed to match the nature of the object to provide the best results. This would suggest object oriented implementation for the processor and storage structures for the system and thus into concepts of object oriented processing units (OOPU) and object oriented memory units (OOMU).
[0091] The drawing of Figure 6 illustrates an embodiment in which an object oriented processing unit (OOPU) is implemented within the OMP 22. An object mining processing unit (OMPU) 61 is provided as a processing resource to handle the object mining data and signal processing operations. The OMPU 61 typically comprises:
• A search object register file 6001, for storing and retrieving search object data to and from the SOM 23 (as shown in Figure 2) using bus 25;
• A query object register file 6003, for storing and retrieving search object data to and from the QOM 24 (as shown in Figure 2) through bus 26;
• An object data path 6002, typically composed of object based processing modules 1, 2, ..., n (6006, 6007, .., 6008), that may be structured to address semantics, spatial, and temporal independency and parallelism intrinsic in the objects to be processed, wherein the structure may be pipeline, parallel arid concurrent;
• An OMPU control register file 6004, for storing control parameters to allow the object mining control unit (OMCU) 62, to adaptively control the object data path 6002 and achieve optimal performance throughput. The control parameters may determine the resource allocation, scheduling, and processing options of the object data path 6002;
• A search decision module 6005, for making decision about search results based on the cost function value calculated by the operational measure estimator (OME) 21 (as shown in Figure 2).
[0092] The OMCU 62 is typically used for controlling and guiding the operation of OMP 22 in performing search and computation processes, using certain control parameters. Control parameters of the OMP control processes may include:
• A search range in a map that may be dynamically adjusted based on search range results from previous queries
• Criteria for search termination that may be based on some adaptable threshold parameters
[0093] As an illustrative example of the OOPU, in a 2-D topology map structure, given the search starting point 20001, a 3x3 array processor may be included in the object data path 6002 (of Figure 6) to evaluate nine search points simultaneously. With this array OOPU, a spiral search process, as described previously, may be modified to operate as one or more parallel processes as shown in Figure 20. The nine points are evaluated as a block simultaneously, starting from block 20002, then following the sequence of 20003, 20004, 20005, 20006, 20007, .... In general, a processor array may evaluate all points in one neighborhood set (as shown in Figure 11) simultaneously. The neighborhood set can be 3x3, 5x5, ... in 2-D case, or 3x3x3, 5x5x5,... in 3-D case, etc.
[0094] The following is the declarative description of an embodiment of an OMP 22 based on the OOPU structure described above. BEGIN: Exemplar OMP Declaration
1. An obj ect mining processor, comprising a processing unit for receiving object data and performing a plurality of object search and computation processes on the object data, the processing unit including at least one search object register for maintaining search object data, at least one query object register for maintaining query object data, and an object data path configured to receive the search object data from the search object register and receive the query object data from the query object register and perform selected processes of the plurality of processes on the search object data to obtain one or more search results, and a control unit for controlling the operation of the processing unit according to certain control parameters.
2. The object mining processor of declaration 1, wherein the plurality of signal processing operations includes processes for the manipulation of semantics, spatial independency, temporal independency and parallelism intrinsic in the objects.
3. The object mining processor of declaration 1, wherein one or more of the processes is performed by a signal processor.
4. The obj ect mining processor of declaration 1 , wherein the obj ect data path is configurable as a pipeline processor. 5. The obj ect mining processor of declaration 1 , wherein the obj ect data path is configurable as a parallel processor.
6. The object mining processor of declaration 1, wherein the object data path is configurable as a concurrent processor.
7. The object mining processor of declaration 1 , wherein the control unit comprises a control register for storing control parameters used by the processing unit, and a search decision module for generating the one or more search results, wherein the results are generated based on search criteria obtained from the query object data.
8. The object mining processor of declaration 7, wherein the search criteria include optimizing attributes of a cost function value calculated by an operational measure estimator.
9. The object mining processor of declaration 1 , wherein the control parameters configure options including resource allocation, scheduling and object data path processing.
10. The object mining processor of declaration 1 , wherein the control parameters include a search range in a map wherein the search range is dynamically adjusted according to prior search results obtained from previous queries, and criteria for search termination based on adaptable threshold parameters.
11. The object mining processor of declaration 1 , wherein the processing unit includes a multitasking environment and wherein the control unit prioritizes the computation processes and manages allocation of processor resources for each of the processes.
12. The object mining processor of declaration 11, and further comprising a scheduler for allocating processor time for each of the processes.
END: Exemplar OMP Declaration
[0095] The throughput for data access from the topological maps is very important for the overall performance of the MOM 11. To optimize the throughput, design of the storage structure, i.e., the 0OMU is adapted to support intrinsic spatial and temporal data independency. Notice that OOPU and 0OMU are closely related with the data access method of OOPU reflected in the 0OMU structure. [0096] The drawing of Figure 21 shows an example of an object oriented memory unit (OOMU) 21011 as provided by embodiments of the invention. The 0OMU 21011 may be used to implement the MOB 901 (as shown in Figure 9). The OOMU 21011 typically comprises a data memory 21001, and object memory 21008, a data-to-object converter/object-to-data converter ("DOC/ODC") 21002, an object addressing control 21003 and an object bus interface 21004. The data memory 21001 may be implemented using general purpose mass storage memory, such as commonly available SDRAM, for storing large amounts of multimedia data typically retrieved from the MDR 13. The object memory 21008 is typically memory that is configured to receive independent object partition classes . For example, an object may be partitioned and stored as one or more object classes in the object memory 21008 such that spatial and temporal data dependency in the objects may be exploited by retrieving multiple object partition classes concurrently. The DOC/ODC 21002 may be implemented as a bidirectional bridge between data memory 21001 and object memory 21008. The object addressing control 21003 provides access to objects from the OOMU 21011. The object bus interface 21004 is a high speed interfacing circuit which allows concurrent access of the object partition classes and bridges the object memory 21008 to the external object bus 905. To further balance performance and cost, multiple level memory caching structures can be included in both the data memory 21001 and object memory 21008.
[0097] The following is the declarative description of an embodiment of an MOB 901 based on the OOMU structure described above. BEGIN: Exemplar MOB Declaration
1. A multimedia object buffer, comprising an object memory configured to receive independent object partition classes, an object addressing control for relating associated independent object partition classes, wherein the associated independent object partition classes are members of a single multimedia object, and an object bus interface for providing multiple concurrent accesses to the object memory, wherein the object partition classes include partitioned information through certain perspective (e.g., spatial and temporal ) related to one or more objects.
2. A multimedia object buffer according to declaration 1, further comprising a data-to-object converter for receiving data from storage, extracting one or more object partition classes from the data and storing the one or more object partition classes in the object memory, and an object-to-data converter for receiving associated ones of the independent partition classes, combining the associated ones to form structured data and storing the structured data in the storage.
3. A multimedia object buffer according to declaration 1, further comprising a data store for storing large amounts of multimedia data.
4. A multimedia object buffer according to declaration 3, wherein the storage includes a portion configured to store data in a multilevel hierarchy.
5. A multimedia object buffer according to declaration 4, wherein the data store includes servers connected to the Internet and wherein the multimedia object buffer further comprises a network interface for connecting to the Internet.
END: Exemplar MOB Declaration
MOS, MOSNET, and MOMNET
[0098] Referring now to Figures 7 and 8, the logic structure of a media object store (MOS) 72 is shown in Figure 7. The MOS 72 comprises a multimedia object miner (MOM) 11, a local mass storage structure 71 and a communication link 18, which connects certain communication network structure. Multiple MOS components be linked together, through the communication network to form a multimedia object store network (MOSNET). Figure 8 shows the logic structure of a MOSNET. It will be appreciated that, by way of example, inclusion of one or more MOM agents in the Internet could cause the Internet to function as a MOSNET.
[0099] A MOSNET with interconnected MOS 72 may provide the environment to enable the emergence of a distributed multimedia agent network using the proposed MOM 11 as fundamental logic building blocks. Figure 25 depicts an example of the logical structure of a multimedia miner network (MOMNET) 25017 that emerges from the underlying multimedia object store network (MOSNET). A first MOM 25001 receives queries from a second MOM 25002 and a third MOM 25003. To obtain query results, the OMP 22 of the first MOM 25001 searches its associated search object map (SOM), which typically connects with a fourth, fifth and sixth MOM 25004, 25005, 25006, which may further link to a plurality of other MOMs. In the present example, the fifth MOM 25005 links to an eighth MOM 25008, and a ninth MOM 25009 while the fourth MOM 25004 links to a seventh MOM 25007.
[00100] The first MOM 25001 also has upstream second and third MOMs 25002,
25003 which are dependent on the first MOM 25001 to fill in certain portion of their associated SOMs. Thus, the logically connected MOMs form a multimedia object miner network (MOMNET) 25017, which can dynamically grown, adjust, shrink, and terminate. Multiple MOMNETs may co-exist and evolve on the MOSNET to provide services to other multimedia application agents. The evolution of the MOMNETs can also be governed by certain operational measures which determine the overall objectives of the network. With properly set operational measures for the network, the MOMs and MOMNETs can compete for resources in the underlying MOSNET (e.g., the internet, or the corporate storage area networks) and follow a "survival of the fittest" rule as the evolution process in nature to optimize the objectives for the network to satisfy human's needs.
Applications
[00101] Many potential applications of the structures and methods are provided by the present invention. The following examples are illustrated in detail to demonstrate some of the aspects of the present invention and are not intended to limit the scope of the current invention.
Illustrative example 1 : Image data base
[00102] Figure 22 shows an embodiment of this invention in an n-dimensional image data base applications (e.g., 2-D pictures, 3-D CT images in medical images, etc.). This embodiment also illustrates the application of some of the structures and methods taught in the present invention.
[00103] An image write query is typically presented through query bus 22017 to the query object mapper 22003. A database query buffer 22009 converts the image query into object form and a feature vector of the image query is extracted through query feature extractor 22010. The query objects are typically organized on the database query map 22008 according to the feature vector extracted. The input object may be sent through input object bus 22023 to the image database processor 22004 and an object searcher/estimator 22014 typically searches the database object map 22011 to find the closest (measured by relative operational entropy between objects defined earlier) object 22026 derived from the image database 22016, and this object is used to estimate the input query object.
[00104] While the object searcher/estimator 22014 performs the search, relative entropy (in terms of the number of bits) may be estimated through an operational measure estimator 22002, that typically receives certain extracted parameters 22028, which may become available during the search, and provides the relative entropy estimation 22029. 22002 can adjust its accuracy through feedback from the actual bit number results 22030 from the delta object encoder 22015. A difference 22025 between an input object 22023 and estimated object 22026, together with a reference index 22027 of the estimated object on a database object map
22011, are encoded through delta object encoder 22015. The encoded data 22032 may then be transmitted through the database object mapper 22005 to the image database 22016.
[00105] For an image search query, a query image is typically presented to the system through a communication link 22017 and the image is converted into object form. An object searcher/estimator 22014 may then search through the database object map 22011 to retrieve the encoded image data 22019 (in the encoded format) from the image database 22016. The encoded image is decoded and recovered into the object form through database object buffer
22012. The image object may then be sent through an image object bus 22031 to the object searcher/estimator 22014 to evaluate the query target based on certain search target measures estimated by the OME 22002. The image object with the best operational measure value may be then transmitted to the query object mapper 22003 through 22024, and then presented to the users through a database query bus 22017
[00106] A good search performance may be achieved when certain hierarchical structures are included in topological maps 22011 and 22008. An exemplary embodiment is presented in Figure 23, wherein:
• Each image is first partitioned into small image building blocks that may include variable sizes or shapes. The image building blocks may be organized into a bottom level topological map 23003; o In a relatively simple implementation, a n-dimensional image may be partitioned into fixed size n-dimensional blocks and a low level topological map is organized as a regular n-dimensional lattice map. In this instance, a fixed indexing method is used to derive the block index on the low level map based on a n-dimensional voxel (volume element, the n-dimensional extension of pixel in 2-D pictures) location of the first voxel in the block. For example, to partition an n-dimensional image into blocks of volume scale {d(i), d(2), ..., d(n)}, with d(i) the size on the i'th dimension and the lattice index of a block with first voxel at location {z(l), z(2),...,z(n)} in the n-dimensional image can be calculated as:
B = (b(l), b(2), ..., b(n)} = (Z(I) / d(l), z(2) / d(2),...,z(n) / d(n)}; where 2? is the index on the n-dimensional lattice [E5] o The fixed indexing formula may be used for input query images. For practical purposes, the dimensionality of this lattice may be reduced to facilitate processing using current sequential processors. In this latter case, this lattice may be further mapped into a lower dimensional lattice, most likely a 1-D lattice under the limitation of the popular hardware available today. It will be appreciated that, in this dimension reduction process, the topological relationship between adjacent nodes should be preserved to the greatest extent possible. Figure 14 shows a mapping from 2-D into 1-D lattice. The mapping shown in Figure 14 can be viewed as taking the 2-D lattice indexes as the feature vector; o On top of this "raw input lattice", other topological maps may be built such that the maps are organized according to the feature vectors extracted from the image blocks;
• The blocks may be grouped together into objects through certain object extraction process. As shown in Figure 23, nodes 23009, 23010, 23011 are three bottom level blocks, which are part of the object 23022. The three blocks are typically grouped together into node 23006, (thus representing the body of a running man 23002);
• The object structure may be hierarchical, i.e., an object can contain smaller objects, with the bottom level objects the image building blocks. For example, in Figure 23, the node 23006 (representing object 23022), node 23007 (representing object 23023), and node 23008(representing object 23024) are grouped together to form the top level node 23004 (representing the object running man 23021);
• The top level objects are typically organized by a lattice topological maps. For example, in Figure 23, the top level map 23002 sorts out the objects topologically based on their similarity. Node 23004 (representing object 23005), node 23012 (representing object 23013), and node 23037 (representing object 23038) are neighboring nodes on 23002, because they represent objects with similar features (different type of men);
• Each node on the lattice topological map are typically hierarchically organized into a tree structure;
• A hyper-link could be provided between any node (i.e., a graph topological structure) in the hierarchical map to provide a "worm hole" for "hyperspace" jump during the search process;
• Objects may be matched by partial information using this structure. E.g., Node 23011 represents an image block 23039. When the image block 23040 of the input image 23001 is presented to the image data base, the root node 23004 representing the running man object 23005 can be retrieved from the data base through the hyperlink 23041, when the matching of the image block 23040 in the input query object is found in the map 23003. In this way, the search may be conducted relatively quickly and can potentially retrieve the complete information by matching the partial information (in a manner very similar to human neural network associative recall process);
[00107] Fast search process:
• methods described above and shown in Figure 18 may preserve previous query search results on the query object mapper to pick up the best starting point for the search;
• the map can be searched from the starting point with detail and global search process as described earlier in this document.
[00108] The following describes an embodiment of a method for object storing and retrieving from a data base using some of the concepts described above. In one approach, the method for storing and retrieving objects in a database can comprise the steps of, first, extracting from an input object a first plurality of parameters, which can, for example, be a desired set of characteristics or a search objective, then, exploring at least some of the objects already stored in the database, and deriving from each database object a second plurality of parameters, and calculating from those database object parameters a set of characteristics corresponding to the search objective, followed by identifying those objects in the database which have the greatest correlation or other correspondence with the desired set of characteristics, where the correlation can be based on a variety of operational measures. For example, for an input object, the operational differential entropy measures the number of bits to encode the input object based on the objects identified from the data base, where the encoding is performed through certain actual encoding operation process. The operational differential entropy measure quantifies the information difference between two objects through certain encoding methods (i.e., the operation). Another example is in searching the design objects from a data base of existing design objects to create new designs requested by certain design request query. Here the operational measure can measure the actual amount of effort to complete the design for the design request query based on the existing design objects identified from the design data base. In this case, the actual amount of design work has to be estimated during the search process. However, after the design objects are identified and the requested design work done, the actual amount of work can be measured (through the operational measure), then feedback to the operational measure estimator to improve the estimation accuracy.
[00109] The plurality of parameters in the foregoing example can include, for example, feature vectors of the input objects or data base objects, which may be characterized in one or more dimensions. In addition, the operational measures can include quantifying the differences in information content between objects, such as differential entropy.
[00110] In at least some embodiments, the proximate relationship between objects can be measured in one or more dimensions, of which one dimension can be time-related, such as a location in a time-sequence of images or similar time-based media objects.
[00111] In some arrangements of the invention, including at least some of those using feature vectors, the database may be mapped to a lattice structure having a plurality of nodes, wherein the step of storing an object includes deriving or otherwise obtaining a set or sets of parameters for each of the one or more other objects, and then extracting neighborhood relationships between the input object and one or more other objects. The neighborhood relationship in such embodiments typically is related to the correspondence between the input object and one or more other objects. In such an arrangement, the step of mapping the input object can also include modifying the lattice structure, which can include node generation and/or node annihilation or deletion. The modifications may be based on factors including utilization and performance, and may also include the operational quality of the system adapted to maintain the lattice structure.
[00112] In some arrangements, mapping of the input object can include training of the feature vectors, including training at the parameter level. The step of mapping can alternatively include using interpolation to identify a position for the input object with in the lattice structure, and then mapping the input object to that position. The step of extracting neighborhood relationships can also include processing a plurality of feature vectors using an adaptable or dynamic function which may be parameter-based, or parameterized.
[00113] In some embodiments, it may be desirable for one or more of the feature vectors to reside in a higher dimensioned space than the lattice structure, m such an arrangement, the neighborhood relationships can exist between pairs of nodes on the lattice structure, and the pairs of nodes can share boundary surfaces or points on Voronoi regions. The shared boundary surfaces or points can, in at least some embodiments, be determined based on the feature vectors. In addition, it can be desirable in some embodiments to map the higher-dimensioned space of the feature vectors to the lattice structure. In at least some embodiment, the higher-dimensioned space can include characteristics for preserving neighborhood relationships between objects.
[00114] It will be apparent to those skilled in the art that one dimension on the lattice can represent a time axis, at least in some embodiments.
[00115] The process of storing objects can, in some embodiments, predicting a storage location for an input object based on the other objects already stored in the database. The predicted storage location can be associated with a predicted object, wherein the predicted object provides a minimum differential entropy measure related to the input object. One or more difference objects can then be generated, representing differences between the input object and the other objects, followed by storing the one difference objects with one or more difference paths. Each of the one or more difference paths can locate the input object relative to at least one of the other objects.
[00116] The process of retrieving can include, in at least some arrangements, selecting a map location of an object to be retrieved, and then fetching information associated with that object to be retrieved. The information can include, for example, difference objects and difference paths related to other objects. The, the other objects can be retrieved, followed by constructing the object to be retrieved from the other objects and the fetched information.
[00117] In some arrangements, successive input objects can be mapped onto a query object map, where the query object map preserves the neighborhood mapping of a query object space. In some such arrangements, the query object map is a one dimensional sequence for ordering input objects.
[00118] The parameters noted above in the example may also include components extracted using a coefficient de-correlating transform. Such components may include a plurality of signals, each signal having an energy. The plurality of signal energies can include a first signal energy having no alternating component. Each of the other signal energies can be associated with a different band of non-zero frequencies. In some arrangements, the non-zero frequencies are typically lower than a selected first frequency.
Illustrative example 2: Data security
[00119] Referring now to Figure 24, an exemplary embodiment is depicted in which a common data storage and a topological map provide data security. In this example, a data transmitter 24003 transmits data through an unsecured channel 24009 to a data receiver process 24004. The data transmitter 24003 and data receiver 24004 may include a combination of computing devices and software processes. In embodiments of the invention, the transmitter and the receiver include similarly configured data storage that have topological maps of a generally consistent organization. Consequently, data may be securely transmitted by implementing a "delta transmission process" as described immediately hereafter.
[00120] On the transmission side, transmission data 24010 is provided to enable retrieval of closest matching reference data 24016 obtained from a common data storage 24007. A calculated difference (delta difference) 24017 between the transmission data 24010 and the matching reference data 24016, together with a map reference index 24014, are encoded by a transmission encoder 24006 and transmitted through an unsecured channel 24009 to the receiving side.
[00121] On the receiving side, a transmission decoder 24020 decodes received data into a decoded delta difference 24018 and a decoded map reference index 24015. The map reference index 24015 may then be used to retrieve a receiver-side matching reference data 24019 from a receiver side common data storage 24008. Retrieval is facilitated by commonalities between topological maps on receiver and transmitter sides. The receiver-side matching reference data 24019 is added to the decoded delta difference 24018 to provide a received data 24011. The received data 24011 may then be sent to the receiving process 24004. Illustrative example 3: Media contents push and pull agents:
[00122] An exemplary embodiment is presented in Figure 25 that may be used to implement media content push and pull agents. A MOMNET 25017 includes a plurality of MOMs that may be used as push and pull agents for media content on a public MOSNET such as the Internet.
[00123] In push applications, a first MOM 25001 pushes queries and results to multimedia content consumers. This mode of operation may be characterized as an up-stream linking process from the QOM 24 (see Figure 2) into the up-stream users or agents.
[00124] In the exemplary embodiment, of Figure 25, the first MOM 25001 may be a media content service agent that can push media content to up-stream MOMs 25002, and 25003, which are personal agents for user 25018 and user group 25019 respectively, hi this type of push application, queries and associated data may be delivered to the users before the queries are presented. The associated information may include query results, typically subject to user acceptance of certain some consumer value proposition acceptance. The provision of responses to queries before the queries are presented is possible because previously asked queries are maintained on the QOM 24. Thus, in many embodiments, the first MOM 25001 may identify users and anticipate likely queries. Identification of users is typically made by the personal agents 25002, 25003 and anticipation of queries is typically based on similar queries maintained in neighborhood sets on the QOM 24. Thus, the present invention provides for targeted marketing and customer demand estimation for delivering targeted services.
[00125] To deliver media content to a consumer, MOM 25001 pulls multimedia objects from its down stream agents linked through its SOM 23 (see Figure 2). Media objects may be pulled by a distributed and hierarchical process. In the exemplary embodiment, the first MOM 25001 pulls objects from other MOMs 25004, 25005, 25006. Further, one of the other MOMs 25005 may then pull objects from still other MOMs 25008, 25009 through links 25015, 25016. In one example, one of the still other MOMs 25008 may retrieve the demanded objects from its associated media content database 25023, and a second of the still other MOMs 25009 pulls the demanded objects from its media content database 25024. The retrieved media content then propagates upstream to media content service agent 25001, where both results are integrated for deliver to upstream agents 25002, 25003, representing user 25018 and user group 25019, respectively.
Other Examples:
[00126] As mentioned above, the structures and methods taught in this document can be applied to a wide range of multimedia applications through varying the object types and operational measures. Some additional examples embodiments are briefly summarized in the followings:
[00127] A. Obj ect oriented internet mapping crawlers :
For a target object application with specific operation measures, a group of mapping crawlers can be dispatched into the Internet to navigate through the Internet hyperspace to generate the topological map for the target object search space. It will be appreciated that the crawlers may be distributed and hierarchical in form to cover the internet through "divide and conquer" and "parallel distributed processing". The basic structure of a crawler is the same as the MOM structure as shown in Figure 2.
[00128] B. Target personal multimedia search agent on demand:
Providing target multimedia search agent for specific applications on demand, such that:
each search agent may be equipped with a search object map (SOM) for a target application space, and
■ once the each search agent starts to serve a particular user or other search agent, it may gradually build a QOM 24 (see Figure 2) that is tailored to the specific demands of users. Otherwise stated, each agent can learn to adapt to the users' needs. Every agent is unique and will evolve to address the different "personality" of the users.
[00129] C. Multimedia data warehouse mining:
To map, search, analyze a large multimedia data warehouse for knowledge discovery and decision making.
[00130] D. Multimedia data base indexer: search through the multimedia data base to build up the indexing system for fast content-based retrieving.
build MPEG7 based video data bases. [00131] E. Delta data compression:
Current multimedia objects (e,g, image, video, audio, etc.) generally contain a lot of internal redundancy, since they are usually produced by physically processes highly correlated spatially and temporally,
The redundancy can be eliminated if o feature patterns within the contents of the objects can be identified o the correlated contents are represented by the feature patterns only the delta difference
This method can be applied to one object (like video, image) or to a reservoir of objects (like a image database)
If this method is applied to an image data base, the relationships between contents of the images are analyzed through the topological mapping and search process taught above, then only the pattern features and delta are encoded for all the contents in the image data base. This was shown in the illustrative example 1 above.
[00132] F. Data encryption, security, and error-resilient/fault-tolerant communications:
If data is represented through the delta data compression method described above with the reference indexes referring to an certain map structure, then data transmission can be very secured, since if only both sides have the compete map, it becomes very difficult to decode the transmitted differential information without prior knowledge of the complete map structure.
Data transmitted in this manner may also be fault tolerant, since the missing portion could be inferred from the context of the topological map on the receiving side. Missing data may result from noise that is typically random and uncorrelated. However, because nodes on the described maps are correlated, the maps can be used to derive missing parts and reject transmission errors.
[00133] G. Human interface mining: ■ The QOM 24 (see Figure 2) may be used to capture and organize the interactions with human users. Interactions may include visual interfaces, voice interfaces, text interfaces, and other human oriented interfaces.
■ A visual interaction process to guide the visual search process for human users may include: o Certain visual information is typically presented to a user as a starting point, where the visual information is retrieved or synthesized from maps in a MOM and wherein the visual information is typically based on query results of neighboring nodes on the QOM 24; o an interface that permits a user to indicate through simple qualitative answers the features of a presented image for directing a search on the map and enables the MOM to navigate through the topological map with the guidance of the user; and o operational measures modeled from human understandable, answerable results and useable for guiding a search process.
■ Using this approach, a personal MOM agent can "map" the human brain during a certain interaction period with a human user. This personalized agents may bridge the limitations of human interface to provide a link to the MOSNET that may offer the ultimate service to its human master.
This type of agent are embodied intelligence agents which "embody" and feed on information received from physical interactions with human users.
This type of agent may have the ability to perform mining operations not only on the MOSNET, but also on a human brain to pursue the human beings' furthest potential.
[00134] H. Personal interactive multimedia object on-demand activities:
Based on the MOMNET / MOSNET structure shown in Figures 8 and 25, media objects may be searched, delivered, processed, and integrated for presentation to consumers to enable many interactive multimedia media activities. Such activities include: o Personal KTV, movie production, and virtual studio; o Karaoke on demand; o Multiple player video game on demand o Virtual get together party for friends family on MOSNET [00135] Although the present invention has been particularly described with reference to embodiments thereof, it should be readily apparent to those of ordinary skill in the art that changes and modifications in the form and details thereof may be made without departing from the spirit and scope of the invention. For example, those skilled in the art will understand that variations can be made in the number and arrangement of components illustrated in the above block diagrams. It is intended that the appended claims include such changes and modifications.

Claims

1. A method for conducting an object-based search comprising the steps of determining from the query, a set of characteristics corresponding to the search objective for the query, exploring objects in a search space, and identifying objects optimally conforming to the search objective, wherein conforming identified objects have a predetermined correspondence with the desired set of characteristics.
2. The method of claim 1, wherein the step of identifying includes, for each identified object, extracting from the object a plurality of parameters, determining from the parameters, the set of characteristics corresponding to the search objective, and deriving a measure of conformability to the search objective based on the set of characteristics.
3. The method of claim 2 and further comprising estimating the measure of conformability of an expected outcome of the search.
4. The method of claim 3, and further comprising continually revising the estimated measure in the course of the search.
I)
5. The method of claim 2, wherein the measure quantifies information associated with the search objective.
6. The method of claim 2, wherein the measure is an operational measure associated with a process for quantifying the search objective.
7. The method of claim 1 , wherein objects in the search space are associated with nodes on t a topological map (the Search Object Map - SOM), and wherein the nodes are arranged to maximize correspondence between groups of objects associated with proximately located nodes.
8. The method of claim 7, wherein the map topology is graphical.
9. The method of claim 7, wherein the map topology is an N-dimensional lattice.
10. The method of claim 7, wherein the map is hierarchical.
11. The method of claim 7 wherein the step of identifying includes locating at least a neighborhood on the topological map, each neighborhood comprising a group of correlated objects, wherein the neighborhood includes objects meeting a threshold correspondence with the set of characteristics, and searching the neighborhood for objects optimizing the search objective.
12. The method of claim 11 wherein the step of identifying further includes searching beyond the neighborhood when no object in any of the neighborhood has the predetermined correspondence.
13. The method of claim 7, wherein the query is an obj ect.
14. The method of claim 13, wherein objects in the history of queries are associated with nodes on a topological map (the Query Object Map), wherein the nodes are arranged to maximize correspondence between groups of query objects associated with proximately located nodes.
15. The method of claim 14, wherein the results of the past queries are recorded on the QOM as node locations on the SOM (the Search Object Map), corresponding to the resulting objects for the past queries.
16. The method of claim 15, wherein the step of identifying includes locating the first neighborhood of the query object on the first topological object map (the Query Object Map), the neighborhood comprising a group of correlated past history query objects , wherein the neighborhood includes query objects meeting a threshold correspondence with the set of characteristics, and for each past history query object in the first neighborhood, locating the node corresponding to its query result object on the second topological object map (the Search Object Map), and searching the neighborhood for the nodes corresponding to past query result objects on the second topological object map (the Search Object Map) optimizing the search objective.
17. A multimedia obj ect miner, comprising a query object mapper for receiving and organizing query objects from service requesting agent, and a search object mapper for retrieving and organizing search objects from one or more search spaces, and an operational measure estimator for receiving a priori parameters and generating estimation for operation measure of an expected search objective, and an object mining processor for controlling searches of the one or more search spaces and adaptively modifying parameters controlling operation of the query object mapper and the search object mapper.
18. The multimedia obj ect miner of claim 17, wherein the query obj ect mapper includes a multimedia object buffer for maintaining query objects, and an query object feature vector extractor for generating feature vectors from query objects, and one or more topological maps for mapping a plurality of query objects based on the feature vectors.
19. The multimedia object miner of claim 17, wherein the search object mapper includes a multimedia object buffer for maintaining search objects, and an search object feature vector extractor for generating feature vectors from search objects, and one or more topological maps for mapping a plurality of search objects based on the feature vectors.
20. The multimedia object miner of claim 17, wherein the operational measure estimator includes a first buffer for storing the a priori data, and a first parameter extractor for extracting the a priori search parameters from the a priori data, a second buffer for storing the aposteri data, a second parameter extractor for extracting the aposteri parameters from the aposteri data, and an adaptive function estimator for providing an estimation of the operational measure of the search objective based on the a priori parameters, wherein the aposteri parameters are obtained from results of one or more preceding searches, and the operation of the function estimator is reconfigurable based on the characteristics of the aposteri parameters and estimation error.
21. A method for mapping a multidimensional object on a topological map, comprising the steps of locating a closest other object mapped on the topological map, the closest other object having a predetermined correspondence with the first object, and mapping the object on the topological map in relative proximity to the other object, wherein correspondence between objects is related to a difference measure associated with the objects.
22. The method of claim 21 , the predetermined correspondence is a threshold difference measure, and wherein the step of locating includes comparing a plurality of target objects with the object to obtain operational difference measures representing differences between the object and each of the plurality of target objects, and selecting as the closest other object, a remaining target object with a lowest difference measure.
23. The method of claim 22, wherein the difference measure is an operational differential entropy, which measures the difference in information associated with the objects.
24. The method of claim 21 further comprising the step of repeating the step of locating a selected number of times to identify one or more next closest objects, and mapping the object on the topological map in relation to proximities of the object/to the closest and the next closest objects.
25. The method of claim 21, wherein the topological map is a multidimensional lattice, and wherein the step of locating includes extracting multidimensional feature vectors from objects, and mapping the objects onto a lower-dimensional lattice according to difference measures of the multidimensional feature vectors.
26. The method of claim 25, wherein the step of mapping includes preserving neighborhood relationships between objects.
27. The method of claim 25, wherein at least one of the dimensions of the map is time-related.
28. The method of claim 25, wherein the n-dimensional lattice is adjusted through a SPAN algorithm.
29. The method of claim 21, the map is hierarchical, which further comprising the steps of obtaining one or more feature vectors of the input object, locating a subset on the hierarchical map, the subset including objects having a predetermined correspondence with the input object, and mapping the object within the subset, wherein the hierarchical map includes a plurality of nodes.
30. The method of claim 29, wherein correspondence between objects is measured as an operational difference measure between the objects.
31. The method of claim 30, wherein the predetermined correspondence is a threshold difference measure, and wherein the step of locating includes comparing a plurality of target objects to obtain relationships between the input object and each of the plurality of target objects, and assigning to the subset, objects with the predetermined correspondence.
32. The method of claim 30, wherein the operational difference is measured as an operational differential entropy, wherein operational differential entropy quantifies difference in information contents between objects.
33. The method of claim 29, wherein the nodes include topological maps.
PCT/US2005/046617 2004-12-22 2005-12-21 Object-based information storage, search and mining system and method WO2006069245A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP05855214A EP1849105A2 (en) 2004-12-22 2005-12-21 Object-based information storage, search and mining system and method
TW094145902A TW200707244A (en) 2004-12-22 2005-12-22 Object-based information storage, search and mining system and method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US63892904P 2004-12-22 2004-12-22
US60/638,929 2004-12-22
US11/314,031 2005-12-20
US11/314,031 US20060136402A1 (en) 2004-12-22 2005-12-20 Object-based information storage, search and mining system method

Publications (2)

Publication Number Publication Date
WO2006069245A2 true WO2006069245A2 (en) 2006-06-29
WO2006069245A3 WO2006069245A3 (en) 2007-02-15

Family

ID=36597369

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2005/046617 WO2006069245A2 (en) 2004-12-22 2005-12-21 Object-based information storage, search and mining system and method

Country Status (4)

Country Link
US (2) US20060136402A1 (en)
EP (1) EP1849105A2 (en)
TW (1) TW200707244A (en)
WO (1) WO2006069245A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8818898B2 (en) 2005-12-06 2014-08-26 Pumpone, Llc System and method for management and distribution of multimedia presentations

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060136402A1 (en) * 2004-12-22 2006-06-22 Tsu-Chang Lee Object-based information storage, search and mining system method
US20070162856A1 (en) * 2005-12-06 2007-07-12 Pumpone, Llc System and method for delivery and utilization of content-based products
US20070143315A1 (en) * 2005-12-21 2007-06-21 Alan Stone Inter-partition communication in a virtualization environment
US20070143302A1 (en) * 2005-12-21 2007-06-21 Alan Stone Inter-node communication in a distributed system
JP4878178B2 (en) * 2006-02-28 2012-02-15 株式会社日立製作所 Data processing method and apparatus, and processing program therefor
WO2008060573A2 (en) * 2006-11-14 2008-05-22 Grape Technology Group Inc. System and method for providing a search portal with enhanced results
US20080250008A1 (en) * 2007-04-04 2008-10-09 Microsoft Corporation Query Specialization
US7957596B2 (en) * 2007-05-02 2011-06-07 Microsoft Corporation Flexible matching with combinational similarity
US8799342B2 (en) * 2007-08-28 2014-08-05 Honda Motor Co., Ltd. Signal processing device
US8751479B2 (en) * 2007-09-07 2014-06-10 Brand Affinity Technologies, Inc. Search and storage engine having variable indexing for information associations
JP5453304B2 (en) * 2007-12-20 2014-03-26 クゥアルコム・インコーポレイテッド Motion estimation using adaptive search range
JP5657391B2 (en) * 2007-12-20 2015-01-21 クゥアルコム・インコーポレイテッドQualcomm Incorporated Image interpolation to reduce halo
US9477717B2 (en) * 2008-03-31 2016-10-25 Yahoo! Inc. Cross-domain matching system
US20090299853A1 (en) * 2008-05-27 2009-12-03 Chacha Search, Inc. Method and system of improving selection of search results
CN102356635A (en) * 2009-01-12 2012-02-15 美信集成产品公司 Video acquisition and processing systems
US8117224B2 (en) * 2009-06-23 2012-02-14 International Business Machines Corporation Accuracy measurement of database search algorithms
US8290952B2 (en) * 2009-06-24 2012-10-16 Nokia Corporation Method and apparatus for retrieving nearby data
US8473473B2 (en) * 2010-03-16 2013-06-25 Microsoft Corporation Object oriented data and metadata based search
US8537283B2 (en) 2010-04-15 2013-09-17 Qualcomm Incorporated High definition frame rate conversion
US9547693B1 (en) * 2011-06-23 2017-01-17 Palantir Technologies Inc. Periodic database search manager for multiple data sources
US8488907B1 (en) * 2011-08-19 2013-07-16 Google Inc. Hybrid images for maps combining low frequency map data and high frequency satellite image data
US9596127B2 (en) * 2012-02-20 2017-03-14 Microsoft Technology Licensing, Llc Scalable data feed system
US9922133B2 (en) 2012-04-16 2018-03-20 Entit Software Llc Live topological query
AU2012202352A1 (en) * 2012-04-20 2013-11-07 Canon Kabushiki Kaisha Method, system and apparatus for determining a hash code representing a portion of an image
CN103699550B (en) * 2012-09-27 2017-12-12 腾讯科技(深圳)有限公司 Data digging system and data digging method
US9805046B2 (en) * 2013-03-14 2017-10-31 International Business Machines Corporation Data compression using compression blocks and partitions
US10771247B2 (en) 2013-03-15 2020-09-08 Commerce Signals, Inc. Key pair platform and system to manage federated trust networks in distributed advertising
US10803512B2 (en) * 2013-03-15 2020-10-13 Commerce Signals, Inc. Graphical user interface for object discovery and mapping in open systems
US11222346B2 (en) 2013-03-15 2022-01-11 Commerce Signals, Inc. Method and systems for distributed signals for use with advertising
US9116975B2 (en) 2013-10-18 2015-08-25 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores
US9619557B2 (en) 2014-06-30 2017-04-11 Palantir Technologies, Inc. Systems and methods for key phrase characterization of documents
US9535974B1 (en) 2014-06-30 2017-01-03 Palantir Technologies Inc. Systems and methods for identifying key phrase clusters within documents
US20160004715A1 (en) * 2014-07-02 2016-01-07 International Business Machines Corporation Minimizing Metadata Representation In A Compressed Storage System
CN105224582B (en) 2014-07-03 2018-11-09 联想(北京)有限公司 Information processing method and equipment
US9348920B1 (en) 2014-12-22 2016-05-24 Palantir Technologies Inc. Concept indexing among database of documents using machine learning techniques
US10552994B2 (en) 2014-12-22 2020-02-04 Palantir Technologies Inc. Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items
US9817563B1 (en) 2014-12-29 2017-11-14 Palantir Technologies Inc. System and method of generating data points from one or more data stores of data items for chart creation and manipulation
CN104991959B (en) * 2015-07-21 2019-11-05 北京京东尚科信息技术有限公司 A kind of method and system of the same or similar image of information retrieval based on contents
CN106815236B (en) * 2015-11-30 2020-07-03 北京睿创投资管理中心(有限合伙) Search method, search device, user terminal and search server
TWI604322B (en) * 2016-11-10 2017-11-01 英業達股份有限公司 Solution searching system and method for operating a solution searching system
US10318630B1 (en) 2016-11-21 2019-06-11 Palantir Technologies Inc. Analysis of large bodies of textual data
US11037330B2 (en) 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
US11327993B2 (en) * 2018-03-26 2022-05-10 Verizon Patent And Licensing Inc. Systems and methods for managing and delivering digital content
TWI689889B (en) * 2018-05-25 2020-04-01 信義房屋股份有限公司 Search device and method for pre-notifying the number of matches
US11243957B2 (en) * 2018-07-10 2022-02-08 Verizon Patent And Licensing Inc. Self-organizing maps for adaptive individualized user preference determination for recommendation systems
US11775815B2 (en) * 2018-08-10 2023-10-03 Samsung Electronics Co., Ltd. System and method for deep memory network
CN110188217A (en) * 2019-05-29 2019-08-30 京东方科技集团股份有限公司 Image duplicate checking method, apparatus, equipment and computer-readable storage media
US11574004B2 (en) * 2019-11-26 2023-02-07 Dash Hudson Visual image search using text-based search engines
CN112184840B (en) * 2020-09-22 2022-09-02 上海交通大学 3D point cloud compression system based on multi-scale structured dictionary learning

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6347313B1 (en) * 1999-03-01 2002-02-12 Hewlett-Packard Company Information embedding based on user relevance feedback for object retrieval
US20060136402A1 (en) * 2004-12-22 2006-06-22 Tsu-Chang Lee Object-based information storage, search and mining system method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7136857B2 (en) * 2000-09-01 2006-11-14 Op40, Inc. Server system and method for distributing and scheduling modules to be executed on different tiers of a network
US7149961B2 (en) * 2003-04-30 2006-12-12 Hewlett-Packard Development Company, L.P. Automatic generation of presentations from “path-enhanced” multimedia

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6347313B1 (en) * 1999-03-01 2002-02-12 Hewlett-Packard Company Information embedding based on user relevance feedback for object retrieval
US20060136402A1 (en) * 2004-12-22 2006-06-22 Tsu-Chang Lee Object-based information storage, search and mining system method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
THURAISINGHAM B. ET AL.: 'Real-Time Data Mining of Multimedia Objects' PROCEEDINGS OF THE 4TH IEEE INTERNATIONAL SYMPOSIUM ON OBJECT-ORIENTED REAL-TIME DISTRIBUTED COMPUTING 2001, pages 360 - 365, XP010542196 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8818898B2 (en) 2005-12-06 2014-08-26 Pumpone, Llc System and method for management and distribution of multimedia presentations

Also Published As

Publication number Publication date
US20130170716A1 (en) 2013-07-04
US9542454B2 (en) 2017-01-10
US20060136402A1 (en) 2006-06-22
TW200707244A (en) 2007-02-16
EP1849105A2 (en) 2007-10-31
WO2006069245A3 (en) 2007-02-15

Similar Documents

Publication Publication Date Title
US9542454B2 (en) Object-based information storage, search and mining system
CN111581510B (en) Shared content processing method, device, computer equipment and storage medium
CN102782678B (en) What associate for item combines embedding
JP7322044B2 (en) Highly Efficient Convolutional Networks for Recommender Systems
CN103052962B (en) The classification of rough wavelet granular space and multi-spectral remote sensing image
CN109783582A (en) A kind of knowledge base alignment schemes, device, computer equipment and storage medium
Huda et al. Efficient feature selection and classification algorithm based on PSO and rough sets
WO2010054119A2 (en) Image relevance by identifying experts
Chen et al. Generative inverse deep reinforcement learning for online recommendation
Rahebi Vector quantization using whale optimization algorithm for digital image compression
Ramkumar et al. A survey on mining multiple data sources
Amin et al. Performance analysis of data mining algorithms
Mostafa et al. An intelligent dynamic replica selection model within grid systems
CN115544029A (en) Data processing method and related device
Leake et al. Topic Extraction and Extension to Support Concept Mapping.
US20240005170A1 (en) Recommendation method, apparatus, electronic device, and storage medium
Coble et al. Iterative structure discovery in graph-based data
Fang et al. Active exploration for large graphs
Kumar et al. Clustering web usage data using concept hierarchy and self organizing map
JP3788254B2 (en) Information filtering system, filtering method therefor, and information filtering program
Chuanyan et al. Neural graph filtering for context-aware recommendation
Liu et al. Multi-label classification using random walk with restart
KR102590388B1 (en) Apparatus and method for video content recommendation
CN117836765A (en) Click prediction based on multimodal hypergraph
Tran Content-based retrieval using a multi-objective genetic algorithm

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KN KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2005855214

Country of ref document: EP