Abstract:
Content-based clustering, recognition, classification and search of high volumes of multimedia data in real-time. The embodiments disclosed herein are dedicated to real-time fast generation of signatures to high-volume of multimedia content-segments, based on relevant audio and visual signals, and to scalable matching of signatures of high-volume database of content-segments&#39; signatures. The embodiments disclosed herein can be implemented in any applications which involve large-scale content-based clustering, recognition and classification of multimedia data, such as, content-tracking, video filtering, multimedia taxonomy generation, video fingerprinting, speech-to-text, audio classification, object recognition, video search and any other application requiring content-based signatures generation and matching for large content volumes such as, web and other large-scale databases.

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of U.S. application Ser. No. 12/195,863 filed Aug. 21, 2008, now allowed. This application is also a continuation-in-part of U.S. application Ser. No. 12/084,150 filed on Apr. 7, 2009, now pending, which is the National Stage of International Application No. PCT/IL2006/001235, filed on Oct. 26, 2006, which claims foreign priority from Israeli Application No. 171577 filed on Oct. 26, 2005, and Israeli Application No. 173409 filed on 29 Jan. 2006. This application also claims priority under 35 USC 119 from Israeli Application No. 185414, filed on Aug. 21, 2007, now pending. All of the applications referenced above are herein incorporated by reference. 
     
    
     TECHNICAL FIELD 
       [0002]    The invention generally relates to content-based clustering, recognition, classification and search of high volumes of multimedia data in real-time, and more specifically to real-time, fast generation of signatures of high-volume of multimedia content-segments. 
       BACKGROUND 
       [0003]    With the abundance of multimedia data made available through various means in general and the Internet and world-wide web (WWW) in particular, there is also a need to provide for effective ways of searching for such multimedia data. Searching for multimedia data in general and video data in particular may be challenging at best due to the huge amount of information that needs to be checked. Moreover, when it is necessary to find a specific content of video, the prior art cases revert to various metadata that describes the content of the multimedia data. However, such content may be complex by nature and not necessarily adequately documented as metadata. 
         [0004]    The rapidly increasing multimedia databases, accessible for example through the Internet, calls for the application of effective means for search-by-content. Searching for multimedia in general and for video data in particular is challenging due to the huge amount of information that has to be classified. Moreover, prior art techniques revert to model-based methods to define and/or describe multimedia data. However, by its very nature, the structure of such multimedia data may be too complex to be adequately represented by means of metadata. The difficulty arises in cases where the target sought for multimedia data cannot be adequately defined in words, or respective metadata of the multimedia data. For example, it may be desirable to locate a car of a particular model in a large database of video clips or segments. In some cases the model of the car would be part of the metadata but in many cases it would not. Moreover, the car may be at angles different from the angles of a specific photograph of the car that is available as a search item. Similarly, if a piece of music, as in a sequence of notes, is to be found, it is not necessarily the case that in all available content the notes are known in their metadata form, or for that matter, the search pattern may just be a brief audio clip. 
         [0005]    A system implementing a computational architecture (hereinafter “The Architecture”) typically consists of a large ensemble of randomly, independently, generated, heterogeneous processing cores, mapping in parallel data-segments onto a high-dimensional space and generating compact signatures for classes of interest. The Architecture is based on a PCT patent application number WO 2007/049282 and published on May 3, 2007, entitled “A Computing Device, a System and a Method for Parallel Processing of Data Streams”, assigned to common assignee, and is hereby incorporated by reference for all the useful information it contains. 
         [0006]    It would be advantageous to use The Architecture to overcome the limitations of the prior art described hereinabove. Specifically, it would be advantageous to show a framework, a method, a system and respective technological implementations and embodiments, for large-scale matching-based multimedia deep content classification, that overcomes the well-known limitations of the prior art. 
       SUMMARY 
       [0007]    Certain embodiments disclosed herein include an apparatus for generating a signature for an input signal. The apparatus comprises a processor; and a memory coupled to the processor and configured to store at least instructions causing for execution of a plurality of computational cores, wherein the instructions includes a plurality of subsets of instructions, each subset of instructions causes the execution of one computational core from the plurality of computational cores and is coded to have properties that have at least some statistical independency from other subset of instructions, thereby the properties are independent of each other computational core, wherein each subset of instructions causes its respective computational core to generate responsive of the input signal a first signature element and a second signature element, the first signature element is a robust signature; wherein a plurality of first signature elements include a first signature of the input signal and a plurality of second signature elements include a second signature of the input signal, the first signature is determined respective of a first threshold value and the second signature is determined respective of a second threshold, wherein the first threshold is higher than the second threshold. 
         [0008]    Certain embodiments disclosed herein also include a method for large-scale classification of multimedia signals. The method comprises generating by a signature generator a set of robust signatures representing samples for at least one class of multimedia signals; for each multimedia signal to be classified performing: generating at least a signature by the signature generator; determining if the multimedia signal matches the at least one of class of multimedia signals based on the signature generated for the multimedia signal and the set of robust signatures representing samples for the at least one of class of multimedia signals; and classifying the multimedia signal to a class of the multimedia signal matching the at least one of class of multimedia signals. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0009]    The subject matter that is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The foregoing and other objects, features and advantages of the invention will be apparent from the following detailed description taken in conjunction with the accompanying drawings. 
           [0010]      FIG. 1  is the block diagram showing the basic flow of a for large-scale video matching system implemented in accordance with certain embodiments of the invention. 
           [0011]      FIG. 2  is a bars-plot showing an example of certain distribution of values of coupling node. 
           [0012]      FIG. 3  is an example of a Signature and a corresponding Robust Signature for a certain frame. 
           [0013]      FIG. 4  is a diagram depicting the process of generating a signature for a segment of speech implemented in accordance with certain embodiments of the invention. 
           [0014]      FIG. 5  is a diagram depicting a process executed by a Large-Scale Speech-to-Text System as implemented in accordance with certain embodiments of the invention. 
           [0015]      FIG. 6  is a diagram showing the flow of patches generation, response vector generation, and signature generation in a Large-Scale Speech-to-Text System implemented in accordance with certain embodiments of the invention. 
           [0016]      FIG. 7  is a diagram showing the difference between complex hyper-plane generated by prior art techniques, and the large-scale classification techniques where multiple robust hyper-plane segments are generated. 
           [0017]      FIG. 8  is a diagram showing the difference in decision making using prior art techniques and the disclosed techniques, when the sample to be classified differs from other samples that belong to the training set. 
           [0018]      FIG. 9  is a diagram showing the difference in decision making using prior art techniques and the disclosed techniques, in cases where the sample to be classified closely resembles samples that belong to two classes. 
       
    
    
     DETAILED DESCRIPTION 
       [0019]    It is important to note that the embodiments disclosed by the invention are only examples of the many advantageous uses of the innovative teachings herein. In general, statements made in the specification of the present application do not necessarily limit any of the various claimed inventions. Moreover, some statements may apply to some inventive features but not to others. In general, unless otherwise indicated, singular elements may be in plural and vice versa with no loss of generality. In the drawings, like numerals refer to like parts through several views. 
         [0020]    Certain embodiments of the invention include a framework, a method, a system and their technological implementations and embodiments, for large-scale matching-based multimedia Deep Content Classification (DCC). The system is based on an implementation of a computational architecture (“The Architecture”) based on “A Computing Device, a System and a Method for Parallel Processing of Data Streams” technology, having a PCT patent application number WO 2007/049282 and published on May 3, 2007. The Architecture consists of a large ensemble of randomly, independently, generated, heterogeneous processing computational cores, mapping in parallel data-segments onto a high-dimensional space and generating compact signatures for classes of interest. 
         [0021]    In accordance with the principles of the invention, a realization of The Architecture embedded in large-scale matching system (“The System”) for multimedia DCC is disclosed. The Architecture receives as an input stream, multimedia content segments, injected in parallel to all computational cores. The computational cores generate compact signatures for the specific content segment, and/or for a certain class of equivalence and interest of content-segments. For large-scale volumes of data, the signatures are stored in a conventional way in a database of size N, allowing match between the generated signatures of a certain content-segment and the signatures in the database, in low-cost, in terms of complexity, i.e. &lt;=O(log N), and response time. 
         [0022]    For the purpose of explaining the principles of the invention there are now demonstrated two embodiments: a Large-Scale Video Matching System; and a Large-Scale Speech-to-Text System. However, it is appreciated that other embodiments will be apparent to one of ordinary skill in the art. 
         [0023]    Characteristics and advantages of the System include but are not limited to: 
         [0000]    The System is flat and generates signatures at an extremely high throughput rate;
 
The System generates robust natural signatures, invariant to various distortions of the signal;
 
The System is highly-scalable for high-volume signatures generation;
 
The System is highly-scalable for matching against large-volumes of signatures;
 
The System generates Robust Signatures for exact-match with low-cost, in terms of complexity and response time;
 
The System accuracy is scalable versus the number of computational cores, with no degradation effect on the throughput rate of processing;
 
The throughput of The System is scalable with the number of computational threads, and is scalable with the platform for computational cores implementation, such as FPGA, ASIC, etc.; and
 
The signatures produced by The System are task-independent, thus the process of classification, recognition and clustering can be done independently from the process of signatures generation, in the superior space of the generated signatures.
 
       Large-Scale Video Matching System 
       [0024]    The goal of a large-scale video matching system is effectively to find matches between members of large-scale Master DB of video content-segments and a large-scale Target DB of video content-segments. The match between two video content segments should be invariant to a certain set of statistical distortions performed independently on two relevant content-segments. Moreover, the process of matching between a certain content-segment from Master DB to Target DB consisting of N segments, cannot be done by matching directly the Master content-segment to all N Target content-segments, for large-scale N, since such a complexity of O(N), will lead to non-practical response times. Thus, the representation of content-segments by both Robust Signatures and Signatures is critical application-wise. The System embodies a specific realization of The Architecture for the purpose of Large-Scale Video Matching System. 
         [0025]    A high-level description of the process for large-scale video matching is depicted in  FIG. 1 . Video content segments ( 2 ) from Master and Target databases ( 6 ) and ( 1 ) are processed in parallel by a large number of independent computational Cores ( 3 ) that constitute the Architecture. Further details are provides in the cores generator for Large-Scale Video Matching System section below. The independent Cores ( 3 ) generate a database of Robust Signatures and Signatures ( 4 ) for Target content-segments ( 5 ) and a database of Robust Signatures and Signatures ( 7 ) for Master content-segments ( 8 ). The process of signature generation is shown in detail in  FIG. 6 . Finally, Target Robust Signatures and/or Signatures are effectively matched, by matching algorithm ( 9 ), to Master Robust Signatures and/or Signatures database to find all matches between the two databases. 
         [0026]    To demonstrate an example of signature generation process, it is assumed, merely for the sake of simplicity and without limitation on the generality of the invention, that the signatures are based on a single frame, leading to certain simplification of the computational cores generation. This is further described in the cores generator for Large-Scale Video Matching System section. The system is extensible for signatures generation capturing the dynamics in-between the frames. 
       Signature Generation 
       [0027]    Creation of Signature Robust to Additive Noise 
         [0028]    Assuming L computational cores, generated for Large-Scale Video Matching System. A frame i is injected to all the cores. The cores generate two binary response vectors the Signature {right arrow over (S)} and Robust Signature {right arrow over (RS)}. 
         [0029]    For generation of signatures robust to additive noise, such White-Gaussian-Noise, scratch, etc., but not robust to distortions, such as crop, shift and rotation, the core C i ={n i } may consist of a single (LTU) node or more nodes. The node equations are: 
         [0000]    
       
         
           
             
               V 
               i 
             
             = 
             
               
                 ∑ 
                 j 
                 
                     
                 
               
                
               
                   
               
                
               
                 
                   w 
                   ij 
                 
                  
                 
                   k 
                   j 
                 
               
             
           
         
       
     
         [0000]    where, n i =θ(V i −Th x ) and
 
θ is a Heaviside step function; w ij  is a coupling node unit (CNU) between node i and image component j (for example, grayscale value of a certain pixel j);
 
k j  is an image component j (for example, grayscale value of a certain pixel j);
 
Th x  is a constant Threshold value where x is ‘S’ for Signature and ‘RS’ for Robust Signature; and
 
V i  is a coupling node value.
 
         [0030]    The Threshold Th x  values are set differently for Signature generation and for Robust Signature generation. For example, as shown in  FIG. 2 , for a certain distribution of V i  values (for the set of nodes), the thresholds for Signature Th S  and Robust Signature Th RS  are set apart, after optimization, according to the following criteria: 
       I: For 
       [0031]    
       
      
       V 
       i 
       &gt;Th 
       RS  
      
     
         [0000]      1 −p ( V&gt;Th   S )=1−(1−ε) l &gt;&gt;1
       i.e., given that/nodes (cores) constitute a Robust Signature of a certain image I, the probability that not all of these/nodes will belong to the Signature of same, but noisy image, {tilde over (-)} is sufficiently low (according to a system&#39;s specified accuracy).       
 
       II: 
       [0033]        p ( V   i   &gt;Th   RS )≈ l/L   II
       i.e., approximately/out of the total L nodes can be found to generate Robust Signature according to the above definition.
 
III: Both Robust Signature and Signature are generated for a certain frame i. An example for generating Robust Signature and Signature for a certain frame is provided in  FIG. 3 .
       
 
       Creation of Signatures Robust to Noise and Distortions 
       [0035]    Assume L denotes the number of computational cores in the System. Having generated L cores by the core generator that constitute the Large-Scale Video Matching System, a frame i is injected to all the computational cores. The computational cores map the image frame onto two binary response vectors: the Signature {right arrow over (S)} and the Robust Signature {right arrow over (RS)}. 
         [0036]    In order to generate signatures robust to additive noises, such as White-Gaussian-Noise, scratch, etc., and robust to distortions, such as crop, shift and rotation, etc., the core C i  should consist of a group of nodes (LTUs): C i ={n im }, where m is the number of nodes in each core i, generated according to certain statistical process, modeling variants of certain set of distortions. 
         [0037]    The first step in generation of distortions-invariant signatures is to generate m Signatures and Robust Signatures, based on each of the m nodes in all the L cores, according to the previously-described (above) algorithm. The next step is to determine a subset V of m potential signatures-variants for certain frame i. This is done by defining a certain consistent and robust selection criterion, for example, select top f signature-variants out of m, with highest firing-rate across all L computational cores. The reduced set will be used as Signature and Robust Signature, invariant to distortions which were defined and used in the process of computational cores generation. 
       Computational Cores Generation 
       [0038]    Computational Cores Generation is a process of definition, selection and tuning the Architecture parameters for a certain realization in specific system and application. The process is based on several design considerations, such as: 
         [0000]    (a) The cores should be designed so as to obtain maximal independence, i.e., the projection from a signal space should generate a maximal pair-wise distance between any two computational cores&#39; projections in a high-dimensional space.
 
(b) The computational cores should be optimally designed for the type of signals, i.e. the computational cores should be maximally sensitive to the spatio-temporal structure of the injected signal, for example, and in particular, sensitive to local correlations in time and space.
 
(c) The computational cores should be optimally designed with regard to invariance to set of signal distortions, of interest in relevant application.
 
         [0039]    Following is a non-limiting example of core-generator module for large-scale video-matching system is presented. The first step is a generation of L nodes, 1 for each of the L computational cores, following design optimization criteria (a) and (b). 
         [0040]    Criterion (a) is implemented by formulating it as a problem of generating L projections, sampling uniformly a D-dimensional hemisphere. This problem cannot be solved analytically for an arbitrary L. However, there are singular solutions, obtained by Neil Sloane for a certain number of points for a given dimension. The definition of core-generator stochastic process is based on this singular solution. Another constraint embedded in this process definition is local distribution of coupling node currents (CNCs) according to design optimization criterions (b), i.e. the sparse connectivity has local characteristics in image space. Other solutions of almost uniform tessellations exist. 
         [0041]    The second step is to fulfill design optimization criterion (c), by generating for each of the nodes of the computational cores, M variants, so that the cores will produce signatures robust to specific distortions of interest. This is done by applying to the functions of each node M. 
       Large-Scale Speech-to-Text System 
       [0042]    The goal of large-scale speech-to-text system is to reliably translate fluent prior art technologies are based on model-based approaches, i.e., speech recognition through phonemes recognition and/or word recognition by Hidden-Markov-Models (HMM) and other methods, natural-language-processing techniques, language models and more, the disclosed approach constitutes a paradigm-shift in the speech-recognition domain. The disclosed System for speech-to-text is based on a previously-disclosed computational paradigm-shift, The Architecture. 
         [0043]      FIG. 4  shows high-level steps for generating a signature for voice segment implemented in accordance with certain embodiments of the invention. The System receives a large-scale database of speech ( 10 ) with relevant database of text ( 11 ) and generates a database of Robust Signatures ( 5 ) to patches of the speech signals ( 13 ) provided in the original database. 
         [0044]      FIG. 5  shows more detailed overall process of speech-to-text translation implemented in accordance with certain embodiments of the invention. In the process of speech-to-text translation, the system performs first speech-to-speech match, i.e. the system finds M best matches ( 18 ) between the speech-segment received as an input ( 16 ), and the N speech-segments provided in the training database ( 17 ). Similar to the case of visual signal, the match between two speech-segments should be invariant to a certain set of statistical processes performed independently on two relevant speech-segments, such as generation of the speech by different speakers, plurality noisy channels, various intonations, accents and more. Moreover, the process of matching between a certain speech-segment to a database consisting of N segments, cannot be done by matching directly the speech-segment to all N speech-segments, for large-scale N, since such a complexity of O(N), will lead to non-practical response times. Thus, the representation of speech-segments by Robust Signatures is critical application-wise. The System embodies a specific realization of The Architecture for the purpose of Large-Scale Speech-to-Speech System invention and definition. Finally, after matching the speech-segment to M best matches in database, the relevant text attached to the M segments is post-processed ( 19 ), generating the text ( 20 ) of the speech-segment provided as an input. 
         [0045]    High-level description of the system is further depicted, in  FIG. 5 . Speech-segments are processes by computational Cores ( 3 ), a realization of The Architecture (see cores generator for Large-Scale Speech-to-Text System). The Cores ( 3 ) generate a database of Signatures ( 5 ) for a large-scale database of speech-segments ( 17 ) and Robust Signatures ( 15 ) for speech-segment presented as an input ( 16 ). The process of signature generation is described below. Next, Robust Signatures ( 15 ) and/or Signatures ( 5 ) are effectively matched to Robust Signatures ( 15 ) and/or Signatures ( 5 ) in the database to find all matches between the two, and finally extract all the relevant text to be post-processed and presented as a text output ( 20 ). 
       Signatures Generation 
       [0046]    The signatures generation process will be described with reference to  FIG. 6 . The first step in the process of signatures generation from a given speech-segment is to break-down the speech-segment to K patches ( 14 ) of random length P and random position within the speech segment ( 12 ). The break-down is performed by the patch generator component ( 21 ). The value of K and the other two parameters are determined based on optimization, considering the tradeoff between accuracy rate and the number of fast matches required in the flow process of the System. 
         [0047]    In the next step, all the K patches are injected in parallel to all L computational Cores ( 3 ) to generate K response vectors ( 22 ). 
         [0048]    Having L computational cores, generated by the cores generator for Large-Scale Speech-to-Text System, a patch i is injected to all the computational cores. Processing by the computational cores yields a response vector {right arrow over (R)}, for example, in the following way: 
         [0049]    A computational core C i  consists of a m nodes (LTUs), generated according to 
         [0050]    cores-generator: C i ={n im }. 
         [0000]    
       
         
           
             
               
                 n 
                 im 
               
                
               
                 ( 
                 t 
                 ) 
               
             
             = 
             
               θ 
                
               
                 ( 
                 
                   
                     
                       V 
                       i 
                     
                      
                     
                       ( 
                       t 
                       ) 
                     
                   
                   - 
                   Th 
                 
                 ) 
               
             
           
         
       
       
         
           
             
               
                 V 
                 i 
               
                
               
                 ( 
                 t 
                 ) 
               
             
             = 
             
               
                 
                   ( 
                   
                     1 
                     - 
                     L 
                   
                   ) 
                 
                  
                 
                   
                     V 
                     i 
                   
                    
                   
                     ( 
                     
                       t 
                       - 
                       1 
                     
                     ) 
                   
                 
               
               + 
               
                 V 
                 im 
               
             
           
         
       
       
         
           
             
               V 
               im 
             
             = 
             
               
                 ∑ 
                 j 
                 
                     
                 
               
                
               
                   
               
                
               
                 
                   w 
                   
                     i 
                     , 
                     jn 
                   
                 
                  
                 
                   k 
                   
                     i 
                     , 
                     j 
                   
                 
               
             
           
         
       
       
         
           
             w ij  is a CNU between node j (in Core i) and patch component n (for example, MFCC coefficient), and/or between node j and node n in the same core i. 
           
         
       
     
         [0052]    k i,j  is a patch component n (for example, MFCC coefficient), and/or node j and node n in the same core i.
       θ is a Heaviside step function; and   Th is a constant threshold value of all nodes.       
 
         [0055]    The response vector {right arrow over (R)} is the firing rate of all nodes, {n im }. The Signature ( 4 ) and the Robust Signature may be generated, for example, similarly as to the case of video content-segment, i.e., {right arrow over (S)} by applying the threshold {right arrow over (Th S )} to {right arrow over (R)} and {right arrow over (RS)} by applying the threshold {right arrow over (Th RS )} to {right arrow over (R)}. 
       Speech-to-Speech-to-Text Process 
       [0056]    Upon completion of the process of speech-to-speech matching, yielding M best matches from the database, the output of the relevant text is obtained by post-processing ( 19 ) of the attached text to the M records, for example, by finding the common dominator of the M members. 
         [0057]    As an example, if the match yielded the following M=10 attached text records: 
         [0000]    This dog is fast
 
This car is parking
 
Is it barking
 
       This is a dog 
       [0058]    It was barking
 
This is a king
 
His dog is playing
 
He is barking
 
This dog is nothing
 
This frog is pink
 
The output text to the provided input speech-segment will be:
 
. . . this dog is barking . . .
 
         [0059]    The proposed System for speech-to-text constitutes a major paradigm-shift from existing approaches to the design of prior art speech-to-text systems in several aspects. First, it is not model-based, i.e. no models are generated for phonemes, key-words, speech-context, and/or language. Instead, signatures generated for various speech-fragments, extract this information, which is later, easily retrieved, by low-cost database operation during the recognition process. This yields a major computational advantage in that no expert-knowledge of speech understanding is required during the training process, which in the disclosed method and its embodiment is signature generation. Second, the System does not require an inference of the input speech-segment to each of the generated models. Instead, for example, the Robust Signature generated for the input segment is matched against the whole database of signatures, in a way which does not require a complexity greater than O(log N). This yields inherent scalability characteristic of the System, and extremely short response times. 
       Synthesis for Generation of Large-Scale “Knowledge” Databases 
       [0060]    One of the main challenges in developing speech-to-text systems, with superior performance, is the process of collecting a large-scale and heterogeneous enough, “training” database. In the sequel, an innovative approach for meeting this challenge is presented. For the purpose of large-scale database generation of transcribed speech, a prior art synthesizers is used. A synthesizer receives two inputs: (1) Large text database (2) Speech data-base with multiple speakers, intonations, etc., and generates a large database of heterogeneous speech, transcribed according to the provided text database. The generated large-scale database of transcribed speech is used according to the presented System flow. 
       Large-Scale Classification Paradigm-Shift 
       [0061]    The presented System implements a computational paradigm-shift required for classification tasks of natural signals, such as video and speech, at very large scales of volume and speed. For very large-scale tasks, such as the classification tasks related to the web content and/or any other large-scale database in terms of volume and update frequencies, the required performance envelope is extremely challenging. For example, the throughput rate of The System signature generation process should be equal to the rate of update process of the content database. Another example is the false-alarm or false-positive rate required for the System to be effective. 1% false-positive rate for a certain content-segment may turn to 100% false-positive rate for a data-base of N content-segments being matched against another large-scale data-base. Thus, the false-positive rates should be extremely low. The presented System does afford such a low false-positive rate due to the paradigm-shift in its computational method for large-scale classification tasks. Unlike, prior art learning systems which generate a complex hyper-plane separating a certain class from the entire “world”, and/or model-based method, which generate a model of a certain class, the presented System generates a set of Robust Signatures for the presented samples of the class according to teachings described above. Specifically, the signatures are generated by maximally independent, transform/distortions-invariant and signal-based characteristics optimally designed computational cores. The generalization from a certain set of samples to a class is well defined in terms of invariance to transforms/distortions of interest, and the signatures&#39; robustness, yielding extremely low false-positive rates. Moreover, the accuracy is scalable by the signatures length due the low dependence of the computational cores. 
         [0062]    Several differences between the prior art techniques and the scale classification techniques disclosed herein are illustrated in  FIGS. 7 ,  8  and  9 . Specifically,  FIG. 7  shows a diagram illustrating the difference between complex hyper-plane the large-scale classification where multiple robust hyper-plane segments and are generated, prior art classification shown on the left and classification according to the principles of the invention on the right. Prior art classification attempts to find a sophisticated classification line ( 24 ) that best separates between objects ( 25 ) belonging to one group and objects ( 26 ) that belong to another group. Typically, one or more of the objects of one group are found to be classified into the other group, in this example, there is an object ( 26 ) within the group of different objects ( 25 ). In accordance with an embodiment of the invention, each object is classified separately ( 27 ) and matched to its respective objects. Therefore an object will belong to one group or another providing for a robust classification.  FIG. 8  illustrates the difference in decision making when the sample to be classified differs from other samples that belong to the training set, prior art classification shown on the left and classification according to the principles of the invention on the right. When a new object ( 28 ), not previously classified by the system is classified according to prior art as belonging to one group of objects, in this exemplary case, objects ( 26 ). In accordance with the disclosed invention, as the new object ( 28 ) does not match any object ( 27 ) it will be recorded as unrecognized, or no match.  FIG. 9  shows the difference in decision making in cases where the sample to be classified closely resembles samples that belong to two classes, prior art classification shown on the left and classification according to the principles of the invention on the right. In this case the new object ( 29 ) is classified by prior art systems as belonging to one of the two existing, even though line ( 24 ) may require complex computing due to the similarity of the new object ( 29 ) to wither one of the objects ( 25 ) and ( 26 ). However, in accordance with an embodiment of the invention, as each object is classified separately ( 27 ) it is found that the new object ( 29 ) does not belong to any one of the previously identified objects and therefore no match is found. 
         [0063]    The foregoing detailed description has set forth a few of the many forms that the invention can take. It is intended that the foregoing detailed description be understood as an illustration of selected forms that the invention can take and not as a limitation to the definition of the invention. It is only the claims, including all equivalents that are intended to define the scope of this invention. 
         [0064]    Most preferably, the principles of the invention are implemented as any combination of hardware, firmware and software. Moreover, the software is preferably implemented as an application program tangibly embodied on a program storage unit or computer readable medium. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (“CPUs”), a memory, and input/output interfaces. The computer platform may also include an operating system and microinstruction code. The various processes and functions described herein may be either part of the microinstruction code or part of the application program, or any combination thereof, which may be executed by a CPU, whether or not such computer or processor is explicitly shown. In addition, various other peripheral units may be connected to the computer platform such as an additional data storage unit and a printing unit.