1. A method of searching a plurality of stored objects comprising the steps of: generating a collection of multi-dimensional vectors representing each said object, each of said multi-dimensional vectors having an associated weight; defining a similarity distance between said objects using a distance function; and finding objects closest to a query object based upon said distance function.