Method and apparatus for efficient indexed storage for unstructured content
First Claim
Patent Images
1. 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).
0 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for efficient indexed storage for unstructured content have been disclosed.
-
Citations
3 Claims
-
1. 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). - View Dependent Claims (2, 3)
-
Specification