[go: up one dir, main page]

GB2403559A - Index updating system employing self organising maps - Google Patents

Index updating system employing self organising maps Download PDF

Info

Publication number
GB2403559A
GB2403559A GB0315501A GB0315501A GB2403559A GB 2403559 A GB2403559 A GB 2403559A GB 0315501 A GB0315501 A GB 0315501A GB 0315501 A GB0315501 A GB 0315501A GB 2403559 A GB2403559 A GB 2403559A
Authority
GB
United Kingdom
Prior art keywords
information
concordance
primary
nodes
features
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
GB0315501A
Other versions
GB0315501D0 (en
Inventor
Jonathan Richard Thorpe
Paul Edward Prayle
Barney Govan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Europe BV United Kingdom Branch
Original Assignee
Sony United Kingdom Ltd
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 Sony United Kingdom Ltd filed Critical Sony United Kingdom Ltd
Priority to GB0315501A priority Critical patent/GB2403559A/en
Publication of GB0315501D0 publication Critical patent/GB0315501D0/en
Publication of GB2403559A publication Critical patent/GB2403559A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Information items 910 such as files or media clips are mapped to respective nodes within a self organising map, SOM. A mapping relationship is defined between the frequency of occurrence within the file of each of a primary concordance of word stems and a plurality of nodes in an array. An update concordance 935 is maintained of those new word stems identified which are not currently part of the primary concordance. The primary concordance is revised 960 if a test 940 based on the update concordance determines that the primary concordance needs revision. The test may be to determine whether a predetermined number of new word stems in the update concordance exceed a threshold value. The test may also verify that the frequency of occurrence of the update concordance stems lies within a predetermined range. After the primary concordance has been revised a redefinition of the mapping relationship employing the revised primary concordance may be effected.

Description

INFORMATION HANDLING
This invention relates to information handling.
Although the invention is not restricted to the field of information search systems, to assist with an understanding of the invention a problem will be described with reference to that
field.
There are many established systems for locating information (e.g. documents, images, emails, patents, internet content or media content such as audio/video content) by searching under keywords. Examples include internet search "engines" such as those provided by 0 "Goggle" _ or "Yahoo" _ where a search carried out by keyword leads to a list of results which are ranked by the search engine in order of perceived relevance.
However, in a system encompassing a large amount of content, often referred to as a massive content collection, it can be difficult to formulate effective search queries to give a relatively short list of search "hits". For example, at the time of preparing the present application, a Google search on the keywords "massive document collection" drew 243000 hits.
This number of hits would be expected to grow if the search were repeated later, as the amount of content stored across the internet generally increases with time. Reviewing such a list of hits can be prohibitively time-consuming.
In general, some reasons why massive content collections are not well utilised are: 20. a user doesn't know that relevant content exists a user knows that relevant content exists but does not know where it can be located a user knows that content exists but does not know it is relevant À a user knows that relevant content exists and how to find it, but finding the content takes a long time The paper "Self Organisation of a Massive Document Collection", Kohonen et al, IEEE Transactions on Neural Networks, Vol 11, No. 3, May 2000, pages 574-585 discloses a technique using so-called "self-organising maps" (SOMs). These make use of socalled unsupervised self-learning neural network algorithms in which "feature vectors" representing properties of each document are mapped onto nodes of a SOM in accordance with a mapping relationship.
In the Kohonen et al paper, a first step is to pre-process the document text, and then a feature vector is derived from each pre-processed document. In one form, this may be a histogram showing the frequencies of occurrence of each of a large dictionary of words. Each data value (i.e. each frequency of occurrence of a respective dictionary word) in the histogram s becomes a value in an e-value vector, where n is the total number of candidate words in the dictionary (43222 in the example described in this paper). Weighting may be applied to the n vector values, perhaps to stress the increased relevance or improved differentiation of certain The e-value vectors are then mapped onto smaller dimensional vectors (i.e. vectors 0 having a number of values m (500 in the example in the paper) which is substantially less than n. This is achieved by multiplying the vector by an (n x m) "projection matrix" formed of an array of random numbers. This technique has been shown to generate vectors of smaller dimension where any two reduced-dimension vectors have much the same vector dot product as the two respective input vectors. This vector mapping process is described in the paper "Dimensionality Reduction by Random Mapping: Fast Similarity Computation for Clustering", Kaski, Proc IJCNN, pages 413-418, 1998.
The reduced dimension vectors are then mapped onto nodes (otherwise called neurons) on the SOM by a process of multiplying each vector by a "model" (another vector). The models are produced by a learning process which automatically orders them by mutual similarity onto the SOM, which is generally represented as a two-dimensional grid of nodes. This is a nontrivial process which took Kohonen et al six weeks on a six-processor computer having 800 MB of memory, for a document database of just under seven million documents. Finally the grid of nodes forming the SOM is displayed, with the user being able to zoom into regions of the map and select a node, which causes the user interface to offer a link to an internet page containing the document linked to that node.
It will be appreciated that the training phase or definition of the mapping relationship between feature vectors and nodes requires such data processing resources that a user would not wish to undertake it unnecessarily, but at the same time it will be appreciated that if the currently used mapping relationship is not reasonably closely related to the set of information items currently being handled, the usefulness of the SOM representation will be compromised.
This invention provides an information handling system in which information items are mapped to respective nodes in an array of nodes by mutual similarity of the information items, such that similar information items map to nodes at similar positions in the array of nodes; the system defining a mapping relationship between frequencies of occurrence, within an s information item, of each of a primary concordance of information features, and nodes in the array of nodes; the system comprising: means for detecting frequencies of occurrence, within an information item, of each of the primary concordance of information features, thereby mapping that information item to a node lo in the array of nodes in accordance with the mapping relationship; means for maintaining an update concordance of at least those information features within information items which have been handled by the system and which are not found in the primary concordance of information features; and means, responsive to the result of a predetermined test relating to the update concordance, for revising the primary concordance by adding information features from the update concordance and for initiating a redefinition of the mapping relationship based on the revised primary concordance.
The invention provides an objective assessment of whether the mapping relationship is potentially so far out of date, with respect to information items being handled by the system, as to compromise its usefulness. A predetermined test is applied to the update concordance, possibly with respect to the primary concordance, for example to detect whether the information items which have been handled by the system have contained at least a certain number of information items not present in the primary concordance. This could indicate that the primary concordance should be updated, and the mapping relationship retrained, in order that the as mapping relationship remains useful to the user.
By maintaining the update concordance, the task of revising the primary concordance is particularly straightforward, in that (for example) information features can simply be extracted from the update concordance and added to the primary concordance.
The update concordance could be stored in various different forms, such as one in which the update concordance stores all information features within information items handled by the system, or one in which the update concordance stores only those information features within information items which have been handled by the system and which are not found in the primary concordance of information features.
The predetermined test could be a simple one, for example a test whether the update concordance stores at least a predetermined number of information features which are not found in the primary concordance of information features. However, it is preferred that the update concordance is operable to store, for each information feature stored by the update concordance, a frequency of occurrence of that information feature amongst the information items which have been handled by the system. Using this data, to avoid spurious responses to information items which are either incorrect, very uncommon, or so common as not to be representative of the lo information items, it is preferred that the predetermined test is a test whether the update concordance stores at least a predetermined number of information features which are not found in the primary concordance of information features and which: have an associated frequency of occurrence greater than a lower limit; and/or have an associated frequency of occurrence less than an upper limit.
Although the remapping operation, initiated by the current system, could be performed by another data processing system, it is preferred that the system also comprises means for redefining the mapping relationship based on the revised primary concordance.
To reduce user inconvenience it is preferred that the initiating means is operable to initiate the redefinition of the mapping relationship as a background processing operation and/or to initiate the redefinition of the mapping relationship at a time of low usage of the system.
The system is particularly suited for use where the information items comprise textual information (though they may of course comprise other types of information as well); and the information features comprise words. In this case, to make the mapping process less prone to mapping errors, it is preferred that the information features comprise the linguistic stems of words having plural possible linguistic forms and/or that the information features exclude a predetermined set of words such as very common words.
For convenience, it is preferred that the information items are defined by information item identifiers such as so-called universal resource locators (I3RLs). URLs are particularly useful as they provide a single way of defining information items held on a local data store, on a local or wide area network, and on remote (e.g. internet) sites. s
To avoid the need to repeat a mapping operation on a particular information item, it is preferred that the detecting means is operable: to maintain a cache of information item identifiers and associated node mappings for information items which have been handled by the system; to detect whether the information item identifier corresponding to a current information item is held in the cache; and if so, to use the node mapping defined by the cache for the current information item.
The invention is particularly suitable for use in a portable data processing device and/or in a video acquisition and/or processing apparatus.
The invention also provides an information handling method in which information items lo are mapped to respective nodes in an array of nodes by mutual similarity of the information items, such that similar information items map to nodes at similar positions in the array of nodes; the system defining a mapping relationship between frequencies of occurrence, within an information item, of each of a primary concordance of information features, and nodes in the array of nodes; the method comprising the steps of: detecting frequencies of occurrence, within an information item, of each of the primary concordance of information features, thereby mapping that information item to a node in the array of nodes in accordance with the mapping relationship; maintaining an update concordance of at least those information features within information items which have been handled by the system and which are not found in the primary concordance of information features; and in response to the result of a predetermined test relating to the update concordance, revising the primary concordance by adding information features from the update concordance and initiating a redefinition of the mapping relationship based on the revised primary concordance.
Various other respective aspects and features of the invention are defined in the appended claims.
Embodiments of the invention will now be described, by way of example only, with reference to the accompanying drawings in which: Figure 1 schematically illustrates an information storage and retrieval system; Figure 2 is a schematic flow chart showing the generation of a selforganising map (SOM); Figures 3a and 3b schematically illustrate term frequency histograms; Figure 4a schematically illustrates a raw feature vector; Figure 4b schematically illustrates a reduced feature vector; Figure 5 schematically illustrates an SOM; Figure 6 schematically illustrates a dither process; Figures 7 to 9 schematically illustrate display screens providing a user interface to access information represented by the SOM; lo Figure 10 schematically illustrates a camcorder as an example of a video acquisition and/or processing apparatus; and Figure 11 schematically illustrates a personal digital assistant as an example of portable data processing apparatus Figure 12 schematically illustrates an embodiment of the invention that provides a search is interface for information stored both locally and/or remotely, at various sites across the internet; Figure 13 is a table that schematically illustrates the contents of the cache and comprises a list of URLs; Figure 14 schematically illustrates a Graphical User Interface associated with a search apples; Figure 15 is a flow chart that schematically illustrates a sequence of search steps; Figure 16 is a flow chart that schematically illustrates a process for tracking newly occurring word stems and an alternative criterion for initiating map retraining; Figure 17 is a table of global document statistics listing the global frequency of occurrence of the word stem and the total number of documents in which that word stem was encountered; Figure 18 is a table representing an example of a concordance derived from the list of global statistics of Figure 17.
Figures l9A and l9B schematically illustrate two alternative relationships between the primary concordance the update concordance.
Figure 1 is a schematic diagram of an information storage and retrieval system based around a general-purpose computer 10 having a processor unit 20 including disk storage 30 for programs and data, a network interface card 40 connected to a network 50 such as an Ethernet network or the Internet, a display device such as a cathode ray tube device 60, a keyboard 70 and a user input device such as a mouse 80. The system operates under program control, the programs being stored on the disk storage 30 and provided, for example, by the network 50, a removable disk (not shown) or a pre-installation on the disk storage 30.
The storage system operates in two general modes of operation. In a first mode, a set of information items (e.g. textual information items) is assembled on the disk storage 30 or on a network disk drive connected via the network 50 and is sorted and indexed ready for a searching operation. The second mode of operation is the actual searching against the indexed and sorted lo data.
The embodiments are applicable to many types of information items. A nonexhaustive list of appropriate types of information includes patents, video material, emails, presentations, internet content, broadcast content, business reports, audio material, graphics and clipart, photographs and the like, or combinations or mixtures of any of these. In the present Is description, reference will be made to textual information items, or at least information items having a textual content or association. So, for example, a piece of broadcast content such as audio andlor video material may have associated "MetaData" defining that material in textual terms.
The information items are loaded onto the disk storage 30 in a conventional manner.
Preferably, they are stored as part of a database structure which allows for easier retrieval and indexing of the items, but this is not essential. Once the information and items have been so stored, the process used to arrange them for searching is shown schematically in Figure 2.
It will be appreciated that the indexed information data need not be stored on the local disk drive 30. The data could be stored on a remote drive connected to the system 10 via the network 50. Alternatively, the information may be stored in a distributed manner, for example at various sites across the internet. If the information is stored at different internet or network sites, a second level of information storage could be used to store locally a "link" (e.g. a URL) to the remote information, perhaps with an associated summary, abstract or MetaData associated with that link. So, the remotely held information would not be accessed unless the user selected the relevant link (e.g. from the results list 260 to be described below), although for the purposes l of the technical description which follows, the remotely held information, or the abstract/summary/MetaData, or the link/URL could be considered as the "information item".
In other words, a formal definition of the "information item" is an item from which a feature vector is derived and processed (see below) to provide a mapping to the SOM. The data shown in the results list 260 (see below) may be the information item itself (if it is held locally and is short enough for convenient display) or may be data representing and/or pointing to the information item, such as one or more of MetaData, a VRL, an abstract, a set of key words, a representative key stamp image or the like. This is inherent in the operation "list" which often, though not always, involves listing data representing a set of items.
0 In a further example, the information items could be stored across a networked work group, such as a research team or a legal firm. A hybrid approach might involve some information items stored locally and/or some information items stored across a local area network and/or some information items stored across a wide area network. In this case, the system could be useful in locating similar work by others, for example in a large multi-national research and development organization, similar research work would tend to be mapped to similar output nodes in the SOM (see below). Or, if a new television programme is being planned, the present technique could be used to check for its originality by detecting previous programmes having similar content.
It will also be appreciated that the system 10 of Figure I is but one example of possible systems which could use the indexed information items. Although it is envisaged that the initial (indexing) phase would be carried out by a reasonably powerful computer, most likely by a non portable computer, the later phase of accessing the information could be carried out at a portable machine such as a 'personal digital assistant" (a term for a data processing device with display and user input devices, which generally fits in one hand), a portable computer such as a laptop computer, or even devices such as a mobile telephone, a video editing apparatus or a video camera. In general, practically any device having a display could be used for the information accessing phase of operation.
The processes are not limited to particular numbers of information items.
The process of generating a self-organising map (SOM) representation of the information items will now be described with reference to Figures 2 to 6. Figure 2 is a schematic flow chart illustrating a so-called "feature extraction" process followed by an SOM mapping process.
Feature extraction is the process of transforming raw data into an abstract representation.
These abstract representations can then be used for processes such as pattern classification, clustering and recognition. In this process, a socalled "feature vector" is generated, which is an abstract representation of the frequency of terms used within a document.
The process of forming the visualisation through creating feature vectors includes: À Create "document database dictionary" of terms À Create "term frequency histograms" for each individual document based on the 0 "document database dictionary" À Reduce the dimension of the "term frequency histogram" using random mapping Create a 2-dimensional visualisation of the information space.
Considering these steps in more detail, each document (information item) 100 is opened in turn. At a step 110, all "stop words" are removed from the document. Stop-words are extremely common words on a pre-prepared list, such as "a", "the", "however", "about", "and", and "the". Because these words are extremely common they are likely, on average, to appear with similar frequency in all documents of a sufficient length. For this reason they serve little purpose in trying to characterise the content of a particular document and should therefore be removed.
After removing stop-words, the remaining words are stemmed at a step 120, which involves finding the common stem of a word's variants. For example the words "thrower", "throws", and "throwing" have the common stem of"throw".
A "dictionary" of stemmed words appearing in the documents (excluding the "stop" words) is maintained. As a word is newly encountered, it is added to the dictionary, and running count of the number of times the word has appeared in the whole document collection (set of information items) is also recorded.
The result is a list of terms used in all the documents in the set, along with the frequency with which those terms occur. Words that occur with too high or too low a frequency are discounted, which is to say that they are removed from the dictionary and do not take part in the analysis which follows. Words with too low a frequency may be misspellings, made up, or not relevant to the domain represented by the document set. Words that occur with too high a frequency are less appropriate for distinguishing documents within the set. For example, the term "News" is used in about one third of all documents in the a test set of broadcast- related documents, whereas the word "football" is used in only about 2% of documents in the test set.
Therefore "football" can be assumed to be a better term for characterizing the content of a document than "News". Conversely, the word "fottball" (a misspelling of"football") appears only once in the entire set of documents, and so is discarded for having too low an occurrence.
Such words may be defined as those having a frequency of occurrence which is lower than two standard deviations less than the mean frequency of occurrence, or which is higher than two 0 standard deviations above the mean frequency of occurrence.
A feature vector is then generated at a step 130.
To do this, a term frequency histogram is generated for each document in the set. A term frequency histogram is constructed by counting the number of times words present in the dictionary (pertaining to that document set) occur within an individual document. The majority is of the terms in the dictionary will not be present in a single document, and so these terms will have a frequency of zero. Schematic examples of term frequency histograms for two different documents are shown in Figures 3a and 3b.
It can be seen from this example how the histograms characterize the content of the documents. By inspecting the examples it is seen that document 1 has more occurrences of the terms "MPEG" and "Video" than document 2, which itself has more occurrences of the term "MetaData". Many of the entries in the histogram are zero as the corresponding words are not present in the document.
In a real example, the actual term frequency histograms have a very much larger number of terms in them than the example. Typically a histogram may plot the frequency of over 50000 different terms, giving the histogram a dimension of over 50000. The dimension of this histogram needs to be reduced considerably if it is to be of use in building an SOM information space.
Each entry in the term frequency histogram is used as a corresponding value in a feature vector representing that document. The result of this process is a (50000 x 1) vector containing the frequency of all terms specified by the dictionary for each document in the document collection. The vector may be referred to as "sparse" since most of the values will typically be zero, with most of the others typically being a very low number such as 1.
The size of the feature vector, and so the dimension of the term frequency histogram, is reduced at a step 140. Two methods are proposed for the process of reducing the dimension of the histogram.
i) Random Mapping - a technique by which the histogram is multiplied by a matrix of random numbers. This is a computationally cheap process.
ii) Latent Semantic Indexing - a technique whereby the dimension of the histogram is reduced by looking for groups of terms that have a high probability of occurring simultaneously lo in documents. These groups of words can then be reduced to a single parameter. This is a computationally expensive process.
The method selected for reducing the dimension of the term frequency histogram in the present embodiment is "random mapping", as explained in detail in the Kaski paper referred to above. Random mapping succeeds in reducing the dimension of the histogram by multiplying it by a matrix of random numbers.
As mentioned above, the "raw" feature vector (shown schematically in Figure 4a) is typically a sparse vector with a size in the region of 50000 values. This can be reduced to size of about 200 (see schematic Figure 4b) and still preserve the relative characteristics of the feature vector, that is to say, its relationship such as relative angle (vector dot product) with other similarly processed feature vectors. This works because although the number of orthogonal vectors of a particular dimension is limited, the number of nearly orthogonal vectors is very much larger.
In fact as the dimension of the vector increases any given set of randomly generated vectors are nearly orthogonal to each other. This property means that the relative direction of vectors multiplied by this a matrix of random numbers will be preserved. This can be demonstrated by showing the similarity of vectors before and after random mapping by looking at their dot product.
It can be shown experimentally that by reducing a sparse vector from 50000 values to values preserves their relative similarities. However, this mapping is not perfect, but suffices for the purposes of characterising the content of a document in a compact way.
Once feature vectors have been generated for the document collection, thus defining the collection's information space, they are projected into a two-dimensional SOM at a step 150 to create a semantic map. The following section explains the process of mapping to 2-D by clustering the feature vectors using a Kohonen self-organising map. Reference is also made to s Figure 5.
A Kohonen Self-Organising map is used to cluster and organise the feature vectors that have been generated for each of the documents.
A self-organising map consists of input nodes 170 and output nodes 180 in a two- dimensional array or grid of nodes illustrated as a two-dimensional plane 185. There are as o many input nodes as there are values in the feature vectors being used to train the map. Each of the output nodes on the map is connected to the input nodes by weighted connections 190 (one weight per connection).
Initially each of these weights is set to a random value, and then, through an iterative process, the weights are "trained". The map is trained by presenting each feature vector to the input nodes of the map. The "closest" output node is calculated by computing the Euclidean distance between the input vector and weights of each of the output nodes.
The closest node is designated the "winner" and the weights of this node are trained by slightly changing the values of the weights so that they move "closer" to the input vector. In addition to the winning node, the nodes in the neighbourhood of the winning node are also trained, and moved slightly closer to the input vector.
It is this process of training not just the weights of a single node, but the weights of a region of nodes on the map, that allow the map, once trained, to preserve much of the topology of the input space in the 2-D map of nodes.
Once the map is trained, each of the documents can be presented to the mapto see which 2s of the output nodes is closest to the input feature vector for that document. It is unlikely that the weights will be identical to the feature vector, and the Euclidean distance between a feature vector and its nearest node on the map is known as its "quantisation error".
By presenting the feature vector for each document to the map to see where it lies yields and x, y map position for each document. These x, y positions when put in a look up table along with a document ID can be used to visualise the relationship between documents.
Finally, a dither component is added at a step 160, which will be described with reference to Figure 6 below.
A potential problem with the process described above is that two identical, or substantially identical, information items may be mapped to the same node in the array of nodes of the SOM. This does not cause a difficulty in the handling of the data, but does not help with the visualization of the data on display screen (to be described below). In particular, when the data is visualised on a display screen, it has been recognised that it would be useful for multiple very similar items to be distinguishable over a single item at a particular node. Therefore, a "dither" component is added to the node position to which each information item is mapped.
lo The dither component is a random addition of +/ of the node separation. So, referring to Figure 6, an information item for which the mapping process selects an output node 200 has a dither component added so that it in fact may be mapped to any node position within the area 210 bounded by dotted lines on Figure 6.
So, the information items can be considered to map to positions on the plane of Figure 6 at node positions other than the "output nodes" of the SOM process.
An alternative approach might be to use a much higher density of "output nodes" in the SOM mapping process described above. This would not provide any distinction between absolutely identical information items, but may allow almost, but not completely, identical information items to map to different but closely spaced output nodes.
Figure 7 schematically illustrates a display on the display screen 60 in which data sorted into an SOM is graphically illustrated for use in a searching operation. The display shows a search enquiry 250, a results list 260 and an SOM display area 270.
In operation, the user types a key word search enquiry into the enquiry area 250. The user then initiates the search, for example by pressing enter on the keyboard 70 or by using the mouse 80 to select a screen "button" to start the search. The key words in the search enquiry box 250 are then compared with the information items in the database using a standard keyword search technique. This generates a list of results, each of which is shown as a respective entry 280 in the list view 260. Also, each result has a corresponding display point on the node display area 270.
Because the sorting process used to generate the SOM representation tends to group mutually similar information items together in the SOM, the results for the search enquiry generally tend to fall in clusters such as a cluster 290. Here, it is noted that each point on the area 270 corresponds to the respective entry in the SOM associated with one of the results in the result list 260; and the positions at which the points are displayed within the area 270 correspond to the array positions of those nodes within the node array.
s Figure 8 schematically illustrates a technique for reducing the number of "hits" (results in the result list). The user makes use of the mouse 80 to draw a box 300 around a set of display points corresponding to nodes of interest. In the results list area 260, only those results corresponding to points within the box 300 are displayed. If these results turn out not to be of interest, the user may draw another box encompassing a different set of display points.
lo It is noted that the results area 260 displays list entries for those results for which display points are displayed within the box 300 and which satisfied the search criteria in the word search area 250. The box 300 may encompass other display positions corresponding to populated nodes in the node array, but if these did not satisfy the search criteria they will not be displayed and so will not form part of the subset of results shown in the box 260.
Figure 9 schematically illustrates a technique for detecting the node position of an entry in the list view 260. Using a standard technique in the field of graphical user interfaces, particularly in computers using the so-called "Windows" TM operating system, the user may "select" one or more of the entries in the results list view. In the examples shown, this is done by a mouse click on a "check box" 310 associated with the relevant results. However, it could equally be done by clicking to highlight the whole result, or by double-clicking on the relevant result and so on. As a result is selected, the corresponding display point representing the respective node in the node array is displayed in a different manner. This is shown schematically for two display points 320 corresponding to the selected results 330 in the results area 260.
The change in appearance might be a display of the point in a larger size, or in a more intense version of the same display colour, or in a different display colour, or in a combination of these varying attributes.
At any time, a new information item can be added to the SOM by following the steps outlined above (i.e. steps 110 to 140) and then applying the resulting reduced feature vector to the "pre-trained" SOM models, that is to say, the set of SOM models which resulted from the self-organising preparation of the map. So, for the newly added information item, the map is not generally "retrained"; instead steps 150 and 160 are used with all of the SOM models not being amended. To retrain the SOM every time a new information item is to be added is computationally expensive and is also somewhat unfriendly to the user, who might grow used to the relative positions of commonly accessed information items in the map.
However, there may well come a point at which a retraining process is appropriate. For example, if new terms (perhaps new items of news, or a new technical field) have entered into the dictionary since the SOM was first generated, they may not map particularly well to the existing set of output nodes. This can be detected as an increase in a so-called "quantisation error" detected during the mapping of newly received information item to the existing SOM. In 0 the present embodiments, the quantisation error is compared to a threshold error amount. If it is greater than the threshold amount then either (a) the SOM is automatically retrained, using all of its original information items and any items added since its creation; or (b) the user is prompted to initiate a retraining process at a convenient time. The retraining process uses the feature vectors of all of the relevant information items and reapplies the steps 150 and 160 in full.
Figure 10 schematically illustrates a camcorder 500 as an example of a video acquisition and/or processing apparatus, the camcorder including an image capture device 510 with an associated lens 520; a data/signal processor 530; tape storage 540; disk or other random access storage 550; user controls 560; and a display device 570 with eyepiece 580. Other features of conventional camcorders or other alternatives (such as different storage media or different display screen arrangements) will be apparent to the skilled man. In use, MetaData relating to captured video material may be stored on the storage 550, and an SOM relating to the stored data viewed on the display device 570 and controlled as described above using the user controls 560.
Figure 11 schematically illustrates a personal digital assistant (PDA) 600, as an example of portable data processing apparatus, having a display screen 610 including a display area 620 and a touch sensitive area 630 providing user controls; along with data processing and storage (not shown). Again, the skilled man will be aware of alternatives in this field. The PDA may be used as described above in connection with the system of Figure l.Figure 12 schematically illustrates an embodiment of the invention that provides a search interface for information stored both locally and/or remotely, at various sites across the internet. The arrangement comprises a search apples 710, a search web service 720, an index service 730 that interfaces with information sources such as a video archive 742, a web search engine 744 and a local area network (LAN) 746. The arrangement also comprises a semantic map service 750 and an associated cache 760.
The search apples 710 provides a user interface via which the user can enter a search query. The apples is a small application program written in Java, the object-oriented programming language, which can be referenced by the hypertext markup language (HTML) source code of a web page. The search apples 710 can be dynamically downloaded from a Web server to an Internet browser and it executes within the environment provided by the browser.
Java is a computer programming language that is designed for use in the distributed computing 0 environment of the Internet. Java programs are portable within a computer network since the source programs are compiled into Java bytecode, which can be run anywhere in a network on a server or client that has a Java virtual machine. The Java virtual machine serves to interpret the bytecode.
To initiate the search the user enters a keyword of interest into a dialog box 250 (see Figure 14) of a graphical user interface (GUI) associated with the apples and then hits the return key on a computer keyboard or clicks on a "search" action button of the GUI using a mouse.
The apples then initiates retrieval of information in dependence upon the user-entered keyword.
The search apples 710 communicates with the search web service 720 using Simple Object Access Protocol (SOAP).
SOAP is a protocol that allows a program running in one kind of operating system to communicate with a program in either the same or another operating system using both the Hypertext Transfer Protocol (HTTP) of the World Wide Web and its Extensible Markup Language (XML) as the mechanisms for information exchange. SOAP specifies how to encode an HTTP header and an XML file so that a program in one computer can call a program in a different computer and pass it information. It also specifies how the called program can return a response. By using HTTP SOAP enables a program call to penetrate the firewall servers that are used to screen out requests other than those for known applications, since HTTP requests are usually allowed through firewalls. SOAP comprises three main components: firstly it provides an envelope defining a framework for the contents of a message and how to process the message; secondly it provides a set of encoding rules for flagging instances of application defined data types; and thirdly it provides a convention for representing remote procedure calls and responses. The present embodiment uses an implementation of SOAP known as AXIS.
Alternative embodiments of the invention use protocols other than SOAP to interface between the search apples and the available services. For example alternative embodiments s could use a Java Remote Method Invocation (RMI), a Remote Procedure Call (RPC) or a simple Transmission Control ProtocoV Internet Protocol (TCP/IP) socket for this purpose.
HTTP is an application layer protocol that comprises a set of rules defining the exchange of text, images, sound, video and other multimedia files on the Web. One of the fundamental concepts of HTTP is that files can contain hypertext links which provide cross-references to information 0 existing anywhere on the Internet. Information, in the form of HTML files, can be transferred or downloaded at the request of a client.
XML is a markup language. The familiar markup language HTML provides instructions to a web browser on how to display a web page's text and images by defining document structure in terms of headings and titles and its presentation in terms of e.g. captions and fonts.
By way of contrast, XML provides ways both to define common information formats and to share these formats and associated data on the Web and on intranets. While HTML is restricted to defining how text and information can be displayed and interacted with, XML can give contextual information about a document's contents by allowing application developers to define custom tags which mark sections or words in a document as belonging to a specific data category, e.g. the tags <DATE> and <CHANNELS could be defined for use in a document containing television programme listings. Data processing tasks can be performed on the XML documents by making use of the custom tags to identify and extract selective information. This is particularly useful for selectively retrieving and categorising content from voluminous information repositories e.g. video archives and document collections.
The Web search service 720 has a Java application server platform and it communicates with the index service 730 and the semantic map source 750 via HTTP. The web search service 720 delivers the user-entered keyword to the index service 130. The index service 730 provides an interface to content in three different information repositories, that is, the video archive 742, the Internet 744 and a local area network 746. The user-entered keyword is supplied to a Web search engine such as "Goggle"_ to locate relevant web pages. A web search engine is a co ordinated set of computer programs that includes: a "spider" that goes to every page or representative pages on every Web site that is search enables, analyses the content of the web page and uses hypertext links on each page to access other pages of the Web site; a program that creates an extensive index from the web pages that have been read; and a program that receives a search request, compares it to entries in the index and returns matching search citations.
Information content in the video archive 742 and the LAN 746 may be prelogged using a content logging application. The index service 730 collates from the three repositories 742, 744, 746, all information content determined to be relevant to the user- entered keyword and returns an information locator, short title and brief descriptor for each information item "hit". A uniform resource locator (URL) is used as the information locator. For Web pages a URL 0 typically identifies the HTTP protocol, an Internet server location and a file path and name.
However, URLs are also used to identify and locate files in the video archive 742 and on the LAN 746. The URLs and corresponding document descriptors are supplied to the semantic map source 750 where an information item similarity mapping analysis is performed as described above with reference to Figures 2 to 6.
In order to generate the feature vector appropriate to each information item for which a URL has been supplied, information is downloaded by the semantic map source 750 and a word frequency analysis is performed on the downloaded data. Recall that the value of each feature vector component is equal to the relative frequency of occurrence of the corresponding word in the document or indeed the metadata describing the associated video clip. Alternatively a function of the frequency of occurrence and the importance of the word can be used to determine feature vector components. To facilitate generation of the feature vectors, the semantic map source 750 is capable of concurrently downloading information from the supplied URLs on 200 parallel program threads. A thread is a sequence of execution within a computer program process. A thread does not have its own address space but uses the memory and other resources of the process in which it executes. The threaded nature of the download improves the efficiency of the mapping. An (x, y) mapping point is calculated from the reduced feature vector for each URL associated with the search keyword, i.e., for each search citation. The (x, y) mapping is used together with the information item descriptor to provide an abstract representation and visualisation of the relationship between search citations via clustering of display points on nodes of the SOM display area 270. Before a mapping operation is performed for each URL, the contents of the cache 760 are first checked to determine if the particular URL has been recently mapped. If a cache hit is established then the (x, y) mapping value is read directly from cache so there is no need either to download the information item or to recalculate the feature vector. The table of Figure 13 schematically illustrates the contents of the cache and comprises a list of URLs including both Internet sites and file locations on the LAN and an (x, y) mapping location associated with each URL. In the case of files that reside on the LAN, the Windows Network filename (e.g. file:\\machinelWimaces\rnvfile.tst refers to the file myfile.txt in the shared folder images on machine!) is used rather than the absolute filepath (e.g. C:\documents\images\myfile.txt). Use of a URL consisting of the Windows network filepath ensures that the file is accessible from anywhere on the Windows network. Use of the absolute 0 filepath is undesirable since it would mean that the file would only be available to users on machine!. However, if a workgroup of users make use of a Network Attached Storage (NAS) device and their machines are mapped in a common way then an absolute filepath may be used as the URL. For example if workgroup members all map storage on their own computer as the S: drive then a URL such as S:\documents\images\myfile.txt could be listed in cache and all of the user machines in the workgroup would be able to resolve this as a file.
Figure 14 schematically illustrates a GUI associated with the search apples 710. The GUI comprises the enquiry area 250, the results list area 260 and the SOM display area 270.
The enquiry area 250 has a pull-down menu 712, via which the user can select the information repository on the basis of which the SOM is initially trained. In this case the options for the training repository are a predetermined list of Internet sites, the collective contents of the LAN or the contents of a predetermined local archive. The degree of overlap of the information content of the training repository relative to the search keywords entered at the post-training stage will have a bearing on the accuracy of the mapping. A poor overlap is likely to result in diminished clustering of search results. The overlap can be improved by retraining the map using appropriate information items. The results list area 260 displays the title and a short descriptor information, which are derived from the information returned by the indexing service 730. The results of the search query are displayed on the matrix of nodes in the SOM display area 270. In the results area the user may sort the citations by relevancy, date, type, genre or simply in alphabetical order.
Figure 15 is a flow chart that schematically illustrates the sequence of steps starting with initiation of a keyword search by the user and resulting in the return of (x,y) mapping co ordinates for each search citation. At stage 810 the user initiates a search query by entering a keyword in the search enquiry dialog box 250. At stage 820 the search apples 710 communicates the keyword search request to a Java application server that provides the web search service 720. At stage 830 indexed information items from all available information s repositories, in this case the video archive 742, the Internet via search engine 744 and the LAN 746, are cross-checked for a match with the keyword. At stage 840 a search citations list comprising URL information item locators and descriptors is supplied as input to the semantic map source 750. At stage 850, the semantic map source establishes how a feature vector should be generated for the information item associated with each URL of the search citations list.
lo Before an information item is downloaded from the network to the semantic map source 750, the contents of the cache 760 are checked to determine whether a feature vector has been recently calculated for that URL, in which case the cached (x,y) mapping associated with that URL is used. Non-cached information items are downloaded from the appropriate location in the information repositories 742, 744, 746 via 200 parallel program threads. A word stem frequency analysis is performed on each downloaded information item. At stage 860 a reduced feature vector is calculated for each downloaded information item by multiplying the feature vector by a given matrix of random numbers. At stage 870 the reduced feature is presented to the trained SOM to derive an (x, y) map position.
The accuracy of the mapping process depends upon how accurately the word stems associated with the feature vector reflect the contents of the searched information items. If word stems that are important for discriminating between documents retrieved by a search operation are excluded from the feature vector then the mapping operation will provide a less accurate indication of the similarity of search citations. Furthermore, as explained above, the quantisation error (i.e. Euclidean distance between the reduced feature vector and the nearest node on the SOM) is likely to increase. The one-to-one mapping between word stems and dimensions of the feature vector is defined according to the contents of the document collection that is used for the map "training" process. Recall that the training process involves fine-tuning the weights 190 that connect the map input nodes 170 to the output nodes 180 (see Figure 5).
Once the map has been trained new information items are added to the SOM by following the steps 110 to 140 of Figure 2 and by using the reduced feature vector thus derived obtain an (x, y) map position for that document. Thus, for the newly added information item, the map is generally not retrained. However, there will come a point at which it is appropriate to retrain the map by revising the word stems associated with the feature vector. For example, if information items searched since the map was last trained have included a significant number of new word stems andlor new word stems have been encountered with sufficient frequency to justify the computational expense of retraining. Although the map retraining may be initiated when the quantisation error exceeds a threshold value (as explained above), an alternative embodiment will now be described, in which a different criterion for initiating map retraining is used. Figure 16 is a flow chart that schematically illustrates a process for tracking newly occurring word stems and the alternative criterion for initiating map retraining.
lo The collection of stemmed words that appearing in the documents of the "training set" of information items will be denoted the "primary concordance". The primary concordance excludes those word stems that have been discounted because they occurred with too high or too low a frequency. Although frequency statistics associated with each word stem are also stored by the semantic map source 750, these are not considered to be part of the primary concordance.
The number of entries in the primary concordance corresponds to the number of dimensions of the feature vector, each dimension of the feature vector corresponding to a given word stem.
The dimensionality of the feature vector and hence the number of stems in the primary concordance is invariant between retraining events. As new information items are recovered via results of search operations and in the process of assigning (x, y) mapping co-ordinates to these search citations, new word stems are encountered that have no corresponding entry in the primary concordance and no corresponding dimension in the feature vector. These new word stems are stored in a further word-stem collection denoted an "update concordance".
Referring now to the flow chart of Figure 16, at stage 910 an information item containing text is downloaded by the semantic map source 750. This information item corresponds to a DRL delivered by the index service 730 in response to a user search enquiry. At stage 920 stop words are removed from the text associated with the information item and the remaining non stop words are "stemmed" to reduce variants of a given word to a common stem. At stage 930 the list of stems obtained from the information item is analysed and cross-checked with stems listed in the primary concordance. Any "new stems" that do not correlate with stems in the primary concordance are entered in the update concordance at stage 935. The frequency of occurrence within the information item of each word stem (including the new stems) is established. The value of each feature vector component is determined from the relative frequency of occurrence of the corresponding word stem (belonging to the primary i concordance) in the information item.
Global document statistics are maintained by the semantic map source 750 for all word stems.
As shown in the table of Figure 17 these global document statistics comprise the global 3 frequency of occurrence of the word stem and the total number of documents in which that word stem was encountered. Note that the global document statistics include every word stem encountered, including new word stems and even stems from the training set that were 3 discounted for the purposes of the mapping. As shown in Figure 17 the stem "INTRO" occurs lo with a particularly high frequency so is unlikely to be a useful content-discriminator for information items. The stem "INTERACTAVE" occurs with a particularly low frequency since it results from a typographical error in entering the word INTERACTIVE. Again stems occurring with particularly low frequency are unlikely to be useful for discriminating between i information items. A measure of how useful a particular word stem will be at discriminating between documents returned from a search may be derived from the product of the stem frequency and the inverse document frequency. This reflects the fact that more generic word stems are generally less useful in distinguishing between documents. The table of Figure 18 shows an example of a concordance derived from the list of global statistics of Figure 17. The ' concordance excludes both the stem INTRO whose frequency is too high and the stem i so INTERACATAVE, whose frequency is too low.
Returning to the flow chart of Figure 16, at stage 940 it is determined, based on a property of the update concordance, whether to re-evaluate the mapping (i.e. whether to retrain the map). The re-evaluation of the mapping may be initiated dynamically, according to the current contents of the update concordance or may alternatively be initiated only periodically e.g. at a predetermined time each day. In this embodiment, the update concordance is a superset i of the primary concordance i.e. it includes all stems appearing in the primary concordance as well as the newly encountered stems. A map retraining is initiated if a predetermined number of new stems each have a frequency of occurrence within a predetermined range i.e. within plus or minus two standard deviations of the mean frequency of occurrence. New stems that satisfy these criteria will be denoted "significant" new stems. If it is determined at stage 940 that a re evaluation of the mapping is not required then the process returns to stage 910 and the next information item is analysed for word frequency and mapped based on the existing feature vector. However, if it is determined at stage 940 that a re-evaluation of the mapping is appropriate then the process proceeds to stage 950 where significant new stems are identified in the update concordance. Next, at stage 960, the primary concordance is revised to include the significant new stems. In this embodiment thesignificant new stems are appended to the update concordance but alternatively, in a system where it is desirable for the dimensionality of the feature vector to remain fixed, the significant new stems could replace the least significant existing stems of the primary concordance. The updating of the primary concordance results in a revised feature vector. The revised feature vector will have dimensions associated with new lo word stems. Finally at stage 970, the map is retrained using the updated feature vector and a "training set" that includes information items associated with the new word stems. In this embodiment the search citations recovered since the previous map training computation are accessed via the URLs stored in the cache 760 and the reduced feature vectors associated with these citations are included in the set used for establishing the appropriate node weights during the retraining computation.
Figures l9A and l9B schematically illustrate two alternative ways of maintaining the update concordance. In the embodiment of Figure l9A, the update concordance comprises only new word stems and forms a set having no intersection with the primary concordance. In the embodiment of Figure 1 9B the update concordance is a superset of the primary concordance and contains both the stems associated with the current feature vector and the newly encountered stems.

Claims (30)

1. An information handling system in which information items are mapped to respective nodes in an array of nodes by mutual similarity of the information items, such that similar information items map to nodes at similar positions in the array of nodes; the system defining a mapping relationship between frequencies of occurrence, within an information item, of each of a primary concordance of information features, and nodes in the array of nodes; the system comprising: means for detecting frequencies of occurrence, within an information item, of each of the lo primary concordance of information features, thereby mapping that information item to a node in the array of nodes in accordance with the mapping relationship; means for maintaining an update concordance of at least those information features within information items which have been handled by the system and which are not found in the primary concordance of information features; and means, responsive to the result of a predetermined test relating to the update concordance, for revising the primary concordance by adding information features from the update concordance and for initiating a redefinition of the mapping relationship based on the revised primary concordance.
2. A system according to claim 1, in which the update concordance stores all information features within information items handled by the system.
3. A system according to claim 1, in which the update concordance stores only those information features within information items which have been handled by the system and which are not found in the primary concordance of information features.
4. A system according to any one of claims 1 to 3, in which the predetermined test is a test whether the update concordance stores at least a predetermined number of information features which are not found in the primary concordance of information features.
5. A system according to any one of claims 1 to 3, in which the update concordance is operable to store, for each information feature stored by the update concordance, a frequency of occurrence of that information feature amongst the information items which have been handled by the system.
6. A system according to claim 5, in which the predetermined test is a test whether the update concordance stores at least a predetermined number of information features which are not found in the primary concordance of information features and which: (a) have an associated frequency of occurrence greater than a lower limit; and/or lo (b) have an associated frequency of occurrence less than an upper limit.
7. A system according to claim 6, in which the lower limit corresponds to a predetermined number of occurrences.
8. A system according to claim 6 or claim 7, in which the upper limit is derived from the statistical distribution of frequencies of occurrence within the update concordance.
9. A system according to claim 8, in which the upper limit corresponds to a mean frequency of occurrence plus two standard deviations of the frequency of occurrence.
10. A system according to any one of the preceding claims, comprising means for redefining the mapping relationship based on the revised primary concordance.
11. A system according to claim 10, in which the redefining means comprises: means for maintaining a schedule of all information items which have been handled by the system; means for generating a feature vector derived from each information item in the schedule, the feature vector for an information item representing a set of frequencies of occurrence, within that information item, of each of the primary concordance of information features; and means for mapping each feature vector to a node in the array of nodes.
12. A system according to any one of the preceding claims, in which the initiating means is; operable to initiate the redefinition of the mapping relationship as a background processing operation.
13. A system according to any one of the preceding claims, in which the initiating means is operable to initiate the redefinition of the mapping relationship at a time of low usage of the system.
lo
14. A system according to any one ofthe preceding claims, in which: the information items comprise textual information; and the information features comprise words.
15. A system according to claim 14, in which the information features comprise the is linguistic stems of words having plural possible linguistic forms.
16. A system according to claim 14 or claim 15, in which the information features exclude a predetermined set of words.
17. A system according to any one of the preceding claims, in which the information items are defined by information item identifiers.
18. A system according to claim 17, in which the information item identifiers are universal resource locators (VRLs).
19. A system according to claim 17 or claim 18, in which the detecting means is operable: to maintain a cache of information item identifiers and associated node mappings for I information items which have been handled by the system; to detect whether the information item identifier corresponding to a current information item is held in the cache; and if so, to use the node mapping defined by the cache for the current information item.
20. A system according to any one of the preceding claims, comprising a graphical user; interface for displaying a representation of at least some of the nodes as a two-dimensional display array of display points within a display area on a user display.
21. A system according to any one of the preceding claims, comprising means for executing a search query amongst the information items, to select a group of information items for handling by the system.
lo
22. An information handling system substantially as hereinbefore described with reference to the accompanying drawings.
23. A portable data processing device comprising a system according to any one of the preceding claims.
24. Video acquisition and/or processing apparatus comprising a system according to any one of claims 1 to 22.
25. An information handling method in which information items are mapped to respective nodes in an array of nodes by mutual similarity of the information items, such that similar information items map to nodes at similar positions in the array of nodes; the system defining a mapping relationship between frequencies of occurrence, within an information item, of each of a primary concordance of information features, and nodes in the array of nodes; the method comprising the steps of: i detecting frequencies of occurrence, within an information item, of each of the primary concordance of information features, thereby mapping that information item to a node in the array of nodes in accordance with the mapping relationship; I maintaining an update concordance of at least those information features within information items which have been handled by the system and which are not found in the primary concordance of information features; and in response to the result of a predetermined test relating to the update concordance, revising the primary concordance by adding information features from the update concordance and initiating a redefinition of the mapping relationship based on the revised primary concordance.
26. An information handling method substantially as hereinbefore described with reference to the accompanying drawings.
27. Computer software having program code for carrying out a method according to claim 0 25 or claim 26.
28. A providing medium for providing program code according to claim 27.
29. A medium according to claim 28, the medium being a storage medium.
30. A medium according to claim 28, the medium being a transmission medium.
GB0315501A 2003-07-02 2003-07-02 Index updating system employing self organising maps Withdrawn GB2403559A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0315501A GB2403559A (en) 2003-07-02 2003-07-02 Index updating system employing self organising maps

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0315501A GB2403559A (en) 2003-07-02 2003-07-02 Index updating system employing self organising maps

Publications (2)

Publication Number Publication Date
GB0315501D0 GB0315501D0 (en) 2003-08-06
GB2403559A true GB2403559A (en) 2005-01-05

Family

ID=27676537

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0315501A Withdrawn GB2403559A (en) 2003-07-02 2003-07-02 Index updating system employing self organising maps

Country Status (1)

Country Link
GB (1) GB2403559A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6314418B1 (en) * 1998-03-20 2001-11-06 Fujitsu Limited Index managing unit, index updating method, index managing method, computer-readable recording medium retaining an index updating program, and computer-readable recording medium retaining an index managing program
GB2386712A (en) * 2002-03-20 2003-09-24 Magus Res Ltd Selective updating of an index of webpages by a search engine

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6314418B1 (en) * 1998-03-20 2001-11-06 Fujitsu Limited Index managing unit, index updating method, index managing method, computer-readable recording medium retaining an index updating program, and computer-readable recording medium retaining an index managing program
GB2386712A (en) * 2002-03-20 2003-09-24 Magus Res Ltd Selective updating of an index of webpages by a search engine

Also Published As

Publication number Publication date
GB0315501D0 (en) 2003-08-06

Similar Documents

Publication Publication Date Title
US7647345B2 (en) Information processing
US8230364B2 (en) Information retrieval
EP1565846B1 (en) Information storage and retrieval
US7502780B2 (en) Information storage and retrieval
EP1426882A2 (en) Information storage and retrieval
US20080263022A1 (en) System and method for searching and displaying text-based information contained within documents on a database
US20020055919A1 (en) Method and system for gathering, organizing, and displaying information from data searches
US7024405B2 (en) Method and apparatus for improved internet searching
US7668853B2 (en) Information storage and retrieval
EP1906317A2 (en) Information storage and retrieval based on self-organising maps
US20040130569A1 (en) Information storage and retrieval
US20040107195A1 (en) Information storage and retrieval
EP1635271A1 (en) Circular self organizing neural network
GB2403559A (en) Index updating system employing self organising maps

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)