Algorithmes d'apprentissage automatique pour la classification de la couverture terrestre
37
Je suis intéressé à apprendre quel logiciel existe pour la classification des terres à l'aide d'algorithmes d'apprentissage automatique (par exemple, k-NN, Random Forest, arbres de décision, etc.). Je connais le paquetage randomForest dans R, MILK et SPy dans Python.
Quels sont les algorithmes d’apprentissage automatique open-source ou commerciaux adaptés à la classification de la couverture terrestre?
Je dirais que l'environnement logiciel le plus complet pour l'apprentissage automatique et la modélisation non paramétrique est R. régression spline paramétrique, imputation, etc. Je recommande fortement de lire: T. Hastie, R. Tibshirani, J. Friedman (2009) Les éléments de l’apprentissage statistique: exploration de données, inférence et prévisions. Springer Series in Statistics.
Outre R, le logiciel commercial de Salford Systems propose des forêts aléatoires, des splines à régression adaptative multivariée, CART et un accélérateur de gradient (TreeNet) disponibles dans un environnement graphique. RuleQuest vend toujours See5 / C5, qui est une version mise à jour de l'algorithme C4 / ID3 CART. Le Weka 3 de l'Université de Waikato est une initiative Java à source ouverte à interface graphique / Commandline avec un grand nombre de modèles disponibles.
@Aaron FYI, Falk Hutterman et moi-même animons un atelier lors de la réunion US-IALE (écologie du paysage) 2013 à Austin, au Texas. Nous nous concentrerons sur l’utilisation de R pour l’apprentissage automatique et la modélisation non paramétrique. Je fournirai également une introduction à l'utilisation des objets spatiaux dans R pour la préparation des données et la spécification des modèles.
Malheureusement, aucune interface graphique à moins que vous ne vouliez consacrer du temps à la construction d’une telle interface , mais je recommanderais l’ EDI iPython comme excellent environnement de script interactif, y compris les tracés en ligne avec matplotlib dans la console QT.
Un bon aperçu des techniques d’apprentissage automatique dans R est la fenêtre des tâches d’apprentissage automatique . Il propose une multitude d'algorithmes recommandés par les experts.
Votre question suppose que les algorithmes d'apprentissage automatique pour la classification des terres sont en quelque sorte distincts des logiciels utilisés pour d'autres applications d'apprentissage automatique. Certaines applications nécessitent un traitement spécial en raison de caractéristiques inhabituelles, mais je ne connais aucune raison de penser que l'utilisation des terres nécessite un traitement spécial. Si les données sur l’utilisation des terres peuvent être placées sous une forme standard délimitée par des virgules, les outils existants tels que R devraient très bien fonctionner. Maintenant, il peut y avoir ou non un logiciel d’utilisation des sols qui utilise des modèles découverts à partir de techniques d’apprentissage automatique, mais c’est une question différente.
Edité après la première réponse. -> La plupart des principaux forfaits d’apprentissage automatique comportent des outils de visualisation spatiale, bien qu’ils ne répondent évidemment pas à vos besoins particuliers. Par exemple, connaissez-vous la bibliothèque sp de R qui est destinée à la visualisation de données spatiales? Voyons si je peux trouver un lien approprié qui donne une idée de ce que vous pouvez en faire.
Avez-vous consulté eCognition? Avec leur nouvelle version (8.9), ils fournissent l’algorithme Random Forests dans un environnement graphique. Vous pouvez créer de jolis arbres de processus et inclure des fonctionnalités d'objet.
La boîte à outils MGET n’est qu’une enveloppe pour R. Si vous avez la capacité d’utiliser R, vous pouvez éviter un mal de tête considérable lorsque vous appelez R via ArcGIS, via Python (Rpy2). Vous ne disposez pas non plus de flexibilité dans l'utilisation d'autres outils dans R pouvant être appliqués aux objets résultants RF, GAM, régression ou modèle CART.
Jeffrey Evans
4
Vous pouvez également faire la classification des terres avec le plugin DTclassifier (Decision Tree classifier) pour QGIS . Il fournit une interface simple pour la classification des données raster à l'aide d'arbres de décision, à exécuter dans QGIS.
Je recommande fortement scikits-learn pour Python. Il prend en charge la classification supervisée et non supervisée et la documentation est excellente (en particulier, consultez le didacticiel Machine Learning pour l'analyse de données astronomiques et la vidéo YouTube correspondante. (remarque: il dure 3 heures).
Le projet est en cours de développement. La dernière version, 0.12, a été publiée en septembre.
En ce qui concerne ce dont le package est capable, voir Voisins les plus proches , Forêt aléatoire (sous Méthodes Ensembe) et Arbres de décision pour utiliser les exemples que vous avez donnés.
Malheureusement, aucune interface graphique à moins que vous ne vouliez consacrer du temps à la construction d’une telle interface , mais je recommanderais l’ EDI iPython comme excellent environnement de script interactif, y compris les tracés en ligne avec matplotlib dans la console QT.
la source
Un bon aperçu des techniques d’apprentissage automatique dans R est la fenêtre des tâches d’apprentissage automatique . Il propose une multitude d'algorithmes recommandés par les experts.
la source
Votre question suppose que les algorithmes d'apprentissage automatique pour la classification des terres sont en quelque sorte distincts des logiciels utilisés pour d'autres applications d'apprentissage automatique. Certaines applications nécessitent un traitement spécial en raison de caractéristiques inhabituelles, mais je ne connais aucune raison de penser que l'utilisation des terres nécessite un traitement spécial. Si les données sur l’utilisation des terres peuvent être placées sous une forme standard délimitée par des virgules, les outils existants tels que R devraient très bien fonctionner. Maintenant, il peut y avoir ou non un logiciel d’utilisation des sols qui utilise des modèles découverts à partir de techniques d’apprentissage automatique, mais c’est une question différente.
Edité après la première réponse. -> La plupart des principaux forfaits d’apprentissage automatique comportent des outils de visualisation spatiale, bien qu’ils ne répondent évidemment pas à vos besoins particuliers. Par exemple, connaissez-vous la bibliothèque sp de R qui est destinée à la visualisation de données spatiales? Voyons si je peux trouver un lien approprié qui donne une idée de ce que vous pouvez en faire.
http://rwiki.sciviews.org/doku.php?id=tips:spatial-data:spatial_data_visualization Pour une liste plus complète d'outils utiles pour l'analyse spatiale en R, vous pouvez consulter http: //cran.r- project.org/web/views/Spatial.html car cela inclut des outils pour la géostatistique, l'analyse écologique, etc.
la source
Avez-vous consulté eCognition? Avec leur nouvelle version (8.9), ils fournissent l’algorithme Random Forests dans un environnement graphique. Vous pouvez créer de jolis arbres de processus et inclure des fonctionnalités d'objet.
la source
Un groupe de l'Université de Duke a développé des outils de script intéressants pour ArcGIS, notamment des modèles de forêt aléatoire.
Outils d'écologie géospatiale marine
la source
Vous pouvez également faire la classification des terres avec le plugin DTclassifier (Decision Tree classifier) pour QGIS . Il fournit une interface simple pour la classification des données raster à l'aide d'arbres de décision, à exécuter dans QGIS.
la source