Patent ID: 8032476

Claim:
A computer implemented method for transforming unstructured content and determining a split value for indexed storage, the method comprising: (a) inputting a node N; (b) inputting a query vector q; (c) inputting a distance h; (d) if said N is a leaf node then; (d1) computing a distance e.i=∥q−x.i∥ for each vector x.i (i=1, . . . , n) contained in node N, said each vector x.i (i=1, . . . , n) contained in said node N representing said unstructured content; (d2) returning all elements with a distance e.i<h; and (d3) outputting said elements to a user; (e) else; (e1) obtaining a splitter S from said node N; (e2) computing a deviation d=<q−S.avg, S.avg>; (e3) computing distance from q to hyperplane=sqrt(|S.split−d|); (f) if said distance h>sqrt(|S.split−d|) then: (f1) computing SearchFiniteNeighborhood (N.upper, q, h) by completing steps (a)-(g1) wherein N at (a) is N.upper; (f2) computing SearchFiniteNeighborhood (N.lower, q, h) by completing steps (a)-(h1) wherein N at (a) is N.lower; (f3) computing a union of results (e1) and (e2) and returning said union of results (e1) and (e2); (g) else if said d>S.split then: (g1) returning results from SearchFiniteNeighborhood(N.upper, q, h); (h) else: (h1) returning results from SearchFiniteNeighborhood(N. lower, q, h).