ELKI

ELKI
Tipusprogramari científic, machine learning framework (en) Tradueix i programari lliure Modifica el valor a Wikidata
Versió estable
0.8.0 (8 octubre 2022) Modifica el valor a Wikidata
LlicènciaGNU Affero General Public License Modifica el valor a Wikidata
Característiques tècniques
Sistema operatiuMicrosoft Windows Modifica el valor a Wikidata
PlataformaWindows, Linux, macOS
Escrit enjava
Equip
Desenvolupador(s)Universitat de Múnic Modifica el valor a Wikidata
Més informació
Lloc webelki-project.github.io Modifica el valor a Wikidata
Free Software DirectoryELKI Modifica el valor a Wikidata

GitHub: elki-project

ELKI (Environment for Developing KDD-Applications Supported by Index-Structures) és un marc de programari de mineria de dades (KDD, descobriment de coneixement en bases de dades) desenvolupat per al seu ús en recerca i ensenyament. Originalment estava a la unitat de recerca de sistemes de bases de dades del professor Hans-Peter Kriegel a la Universitat Ludwig Maximilian de Munic, Alemanya, i ara continua a la Universitat Tècnica de Dortmund, Alemanya. Pretén permetre el desenvolupament i l'avaluació d'algoritmes avançats de mineria de dades i la seva interacció amb estructures d'índex de bases de dades.

Descripció

[modifica]

El marc ELKI està escrit en Java i construït al voltant d'una arquitectura modular. La majoria dels algorismes inclosos actualment pertanyen a l'agrupació, la detecció de valors atípics,[1] i els índexs de bases de dades. L'arquitectura orientada a objectes permet la combinació d'algorismes arbitraris, tipus de dades, funcions de distància, índexs i mesures d'avaluació. El compilador just-in-time de Java optimitza totes les combinacions en una mesura similar, fent que els resultats de l'anàlisi comparativa siguin més comparables si comparteixen grans parts del codi. Quan es desenvolupen nous algorismes o estructures d'índex, els components existents es poden reutilitzar fàcilment, i el tipus de seguretat de Java detecta molts errors de programació en temps de compilació.

ELKI s'ha utilitzat en ciències de dades, per exemple, per agrupar codis de catxalot,[2] agrupació de fonemes,[3] per a la detecció d'anomalies en operacions de vols espacials,[4] per a la redistribució de bicicletes compartides,[5] i predicció del trànsit.[6]

Objectius

[modifica]

El projecte universitari està desenvolupat per utilitzar-lo en la docència i la recerca . El codi font està escrit tenint en compte l'extensibilitat i la reutilització, però també està optimitzat per al rendiment. L'avaluació experimental dels algorismes depèn de molts factors ambientals i els detalls de la implementació poden tenir un gran impacte en el temps d'execució.[7] ELKI té com a objectiu proporcionar una base de codi compartida amb implementacions comparables de molts algorismes.

Arquitectura

[modifica]

ELKI es modela al voltant d'un nucli inspirat en bases de dades, que utilitza un disseny de dades vertical que emmagatzema dades en grups de columnes (similar a les famílies de columnes a les bases de dades NoSQL). Aquest nucli de la base de dades proporciona la cerca de veí més proper, la cerca per rang/radi i la consulta de distància amb acceleració d'índex per a una àmplia gamma de mesures de dissimilaritat. Els algorismes basats en aquestes consultes (per exemple, l'algoritme k-nearest-neighbor, el factor atípic local i DBSCAN) es poden implementar fàcilment i beneficiar-se de l'acceleració de l'índex. El nucli de la base de dades també proporciona col·leccions ràpides i eficients de memòria per a col·leccions d'objectes i estructures associatives com ara llistes de veïns més propers.

Visualització

[modifica]

El mòdul de visualització utilitza SVG per a la sortida de gràfics escalables i Apache Batik per a la representació de la interfície d'usuari, així com l'exportació sense pèrdues a PostScript i PDF per incloure'ls fàcilment en publicacions científiques a LaTeX. Els fitxers exportats es poden editar amb editors SVG com ara Inkscape. Com que s'utilitzen fulls d'estil en cascada, el disseny gràfic es pot redissenyar fàcilment. Malauradament, el Batik és bastant lent i requereix molta memòria, de manera que les visualitzacions no són molt escalables per a grans conjunts de dades (per a conjunts de dades més grans, només es visualitza una submostra de les dades per defecte).

Algorismes inclosos

[modifica]

Referències

[modifica]
  1. Hans-Peter Kriegel, Peer Kröger, Arthur Zimek 13th Pacific-Asia Conference on Knowledge Discovery and Data Mining (PAKDD 2009) [Bangkok, Thailand], 2009 [Consulta: 26 març 2010].
  2. Gero, Shane; Whitehead, Hal; Rendell, Luke Royal Society Open Science, 3, 1, 2016, pàg. 150372. Bibcode: 2016RSOS....350372G. DOI: 10.1098/rsos.150372. ISSN: 2054-5703. PMC: 4736920. PMID: 26909165.
  3. Stahlberg, Felix. «Pronunciation Extraction from Phoneme Sequences through Cross-Lingual Word-to-Phoneme Alignment». A: Statistical Language and Speech Processing (en anglès). 7978, 2013, p. 260–272 (Lecture Notes in Computer Science). DOI 10.1007/978-3-642-39593-2_23. ISBN 978-3-642-39592-5. 
  4. Verzola, Ivano. «Project Sibyl: A Novelty Detection System for Human Spaceflight Operations». A: Space Ops 2016 Conference (en anglès), 2016. DOI 10.2514/6.2016-2405. ISBN 978-1-62410-426-8. 
  5. Adham, Manal T.; Bentley, Peter J. Biosystems, 146, 2016, pàg. 43–59. DOI: 10.1016/j.biosystems.2016.04.008. ISSN: 0303-2647. PMID: 27178785.
  6. Wisely, Michael. «An extensible simulation framework for evaluating centralized traffic prediction algorithms». A: 2015 International Conference on Connected Vehicles and Expo (ICCVE) (en anglès), 2015, p. 391–396. DOI 10.1109/ICCVE.2015.86. ISBN 978-1-5090-0264-1. 
  7. Kriegel, Hans-Peter; Schubert, Erich; Zimek, Arthur Knowledge and Information Systems, 52, 2, 2016, pàg. 341–378. DOI: 10.1007/s10115-016-1004-2. ISSN: 0219-1377.