Comments (4)
AbstractNumberVectorDistanceFunction
is the approriate parent class only if your input data are number vectors. If your data type is abstract object identifiers, subclass AbstractDBIDRangeDistanceFunction
. You then have to implement double distance(int i1, int i2);
There are already different implementations of a distance function for precomputed distances, for example DiskCacheBasedDoubleDistanceFunction
that memory-maps a distance matrix stored on disk. We should add a DoubleMatrixDistanceFunction
though, for direct use from Java.
See also: https://elki-project.github.io/howto/precomputed_distances
from elki.
Does this support asymmetric matrices?
from elki.
A distance is supposed to be symmetric; it may or may not work with asymmetric distances.
The current implementations will likely assume symmetry to reduce memory usage by 50%.
But it even more depends on the algorithm. Many will assume distances are symmetric, and asymmetric distances can likely cause infinite loops etc. Some parts of the code may be switching x and y if they have reason to assume that one is faster than the other because of caches etc.
from elki.
Alright. Thanks a lot!
from elki.
Related Issues (20)
- Hierarchical Clustering Questions HOT 17
- Cannot find a usable implementation of interface elki.database.ids.DBIDFactory HOT 5
- `ClusterOrder` vs `Clustering<OPTICSModel>` in OPTICS HOT 2
- Suspicious code fragments found by PVS-Studio HOT 1
- Yin-Yang sometimes takes more iterations than Lloyd
- LOF algo suggestion HOT 2
- Links in https://elki-project.github.io/algorithms/ broken HOT 1
- Distance-based cluster evaluation algorithms will fail, if input numbers are too big HOT 1
- Any docs about DeLiClu clustering algorithm? HOT 2
- Incorrect processing of column names in NumberVectorLabelParser#getTypeInformation() HOT 7
- MaximumMatchingAccuracy Index out of Bounds Exception HOT 1
- Imprecise variance calculation in MeanVariance.java HOT 7
- signed long overflow in Xoroshiro128NonThreadsafeRanom HOT 2
- Fastutil >8.5.3 not supported HOT 2
- Eclipse Mars launch of MiniGUI fails HOT 4
- Hamerly k-means fails for k=1
- issue parsing polygons using SimplePolygonParser HOT 1
- Build Issue: :elki-logging:compileJava - NullPointerException HOT 4
- SUBCLU: Why call DBSCAN d-times with the same DB? HOT 1
- Unsupervised models and prediction HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from elki.