功能上线 | AI Earth地球科学云平台新增机器学习类函数算子

简介: 功能上线 | AI Earth地球科学云平台新增机器学习类函数算子

机器学习类函数算子

AI Earth在用户访谈中收到了多位用户反馈,希望平台能提供机器学习相关算子能力。我们快速规划和研发,近期上线了20多类与机器学习相关的函数算子,包括常用的分类器,如随机森林、支持向量机、贝叶斯等,同时上线对分类模型精度进行评价的混淆矩阵。

/函数列表/

函数名称

函数用途

aie.Classifier.linearsvm

创建线性支持向量机分类器

aie.Classifier.decisionTree

创建决策树分类器

aie.Classifer.cart

创建CART分类器

aie.Classifer.randomForest

创建随机森林分类器

aie.Classifier.gradientTreeBoost

创建梯度提升树分类器

aie.Classifier.AdaBoost

创建自适应集成分类器

aie.Classifer.naiveBayes

创建贝叶斯分类器

aie.Classifer.train

利用样本数据对分类器进行训练

aie.Classifier.confusionMatrix

基于已经训练好的分类器,对训练样本进行再预测,获取真实结果与预测结果的混淆矩阵

aie.Image.classify

对影像进行分类

aie.FeatureCollection.classify

对FeatureCollection进行分类

aie.ConfusionMatrix

构建混淆矩阵

aie.ConfusionMatrix.accuracy

计算混淆矩阵的准确率

aie.ConfusionMatrix.consumersAccuracy

计算混淆矩阵每一类别的查全率

aie.ConfusionMatrix.fscore

计算混淆矩阵每一类别的F度量

aie.ConfusionMatrix.kappa

计算混淆矩阵的kappa系数

aie.ConfusionMatrix.producersAccuracy

计算混淆矩阵每一类别的查准率

aie.FeatureCollection.errorMatrix

基于FeatureCollection中指定的两列属性构建混淆矩阵

aie.Image.sample

从影像中获取样本点,每一个样本点将包含对应坐标点下所有波段的像元值

 

/应用案例/

平台的案例广场中提供了进行地表覆盖监督分类的应用案例,我们利用ESA地表覆盖数据作为随机采样的训练样本真值标签,对单景Sentinel-2A影像采用自适应集成分类器(aie.Classifier.adaBoost)进行地物覆盖的分类,并利用混淆矩阵进行分类精度的分析。

欢迎平台用户进行相关体验与测试。

 

附案例代码

  • 利用ESA地表覆盖数据,作为训练样本的地物真值标签。
1. 
2. # 指定研究区域
3. roi = aie.Geometry.BBox(119.8679, 29.7058, 121.0332, 30.7178)
4. 
5. # 使用ESA地表覆盖分类作为标签类别, 并将其裁剪到研究区
6. lc = aie.ImageCollection('ESA_WORLD_COVER_V100').filterBounds(roi).mosaic().clip(roi)
7. 
8. # 将ESA地表覆盖分类值重新映射到[0, 10]
9. class_values = [10, 20, 30, 40, 50, 60, 70, 80, 90, 95, 100]
10. remap_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
11. label = 'lc'
12. lc_remap = lc.remap(class_values, remap_values).rename([label])
13. 
14. # 选取一景S2A影像的地表辐射波段, 作为训练和预测示例
15. img = aie.Image('S2A_MSIL2A_20220103T024121_N0301_R089_T51RTP_20220103T050347').select('B.*')
16. 
17. # 指定获取样本的范围, 如果样本范围过大, 同时采样分辨率过高的话, 将导致sample函数运行时间过长
18. sample_roi = aie.Geometry.BBox(120.1730, 30.1086, 120.3846, 30.2862)
19. # 指定在10m分辨率下获取1000个样本点, 由于sample函数无法保证各类别样本数量均衡, 因此可自行上传训练样本
20. samples = img.addBands(lc_remap).sample(sample_roi, 10, 1000)
21. 
22. # 在训练样本中增加一列随机数, 选取80%的样本为训练样本, 选取20%的样本为验证样本
23. sample = samples.randomColumn()
24. training_sample = sample.filter(aie.Filter.lte('random', 0.8))
25. validation_sample = sample.filter(aie.Filter.gt('random', 0.8))
  •  
  • 创建分类器,并利用随机获取的样本进行训练,同时利用混淆矩阵进行精度评估。
1. 
2. # 创建自适应集成分类器,并进行训练
3. trained_classifier = aie.Classifier.adaBoost(10).train(training_sample, label, img.bandNames().getInfo())
4. 
5. # 训练集混淆矩阵包含的类别,对应class_values中的类别为[10, 30, 40, 50, 60, 70]
6. train_accuracy = trained_classifier.confusionMatrix()
7. print('Training error matrix:', train_accuracy.getInfo())
8. print('Training overall accuracy:', train_accuracy.accuracy().getInfo())
9. 
10. # 使用验证集对分类器进行评估
11. validation = validation_sample.classify(trained_classifier)
12. # 验证集混淆矩阵包含的类别,对应class_values中的类别为[10, 40, 50, 60, 70]
13. validation_accuracy = validation.errorMatrix(label, 'classification')
14. print('Validation error matrix:', validation_accuracy.getInfo())
15. print('Validation accuracy:', validation_accuracy.accuracy().getInfo())
  • 对Sentinel-2影像进行分类,并将结果可视化
1. 
2. # 使用训练好的分类器对影像进行分类
3. img_classified = img.classify(trained_classifier)
4. 
5. color = ['#006400' ,'#ffbb22', '#ffff4c', '#f096ff', '#fa0000', '#b4b4b4',
6. '#f0f0f0', '#0064c8', '#0096a0', '#00cf75', '#fae6a0']
7. map = aie.Map(
8.     center=roi.getCenter(),
9.     height=800,
10.     zoom=9
11. )
12. # 待分类影像真彩色图层
13. map.addLayer(
14.     img,
15.     {
16. 'bands': ['B4', 'B3', 'B2'],
17. 'min': 200,
18. 'max': 1800
19.     },
20. 'True Color (432)',
21.     bounds=roi.getBounds()
22. )
23. # 自适应集成分类图层
24. map.addLayer(
25.     img_classified,
26.     {
27. 'bands': 'classification',
28. 'min': 0,
29. 'max': 10,
30. 'palette': color
31.     },
32. 'aie_classification',
33.     bounds=roi.getBounds()
34. )
35. map


相关文章
|
7月前
|
人工智能 自然语言处理 前端开发
深度解析Playwright MCP:功能、优势与挑战,AI如何提升测试效率与覆盖率
Playwright MCP通过AI与浏览器交互,实现自然语言驱动的自动化测试。它降低门槛、提升效率,助力测试工程师聚焦高价值工作,是探索性测试与快速验证的新利器。
|
7月前
|
SQL 人工智能 搜索推荐
Dataphin功能Tips系列(71)X-数据管家:数据资产运营的「AI外挂」
在企业数据治理中,数据资产规模庞大、字段繁多,手动录入效率低且易出错。Dataphin推出「X-数据管家」,利用大模型智能生成标签、描述及字段类型等信息,支持一键批量上架,大幅提升资产运营效率。
243 0
人工智能 移动开发 JavaScript
351 0
|
7月前
|
人工智能 测试技术 项目管理
测试不再碎片化:AI智能体平台「项目资料套件」功能上线!
在实际项目中,需求文档分散、整理费时、测试遗漏等问题常困扰测试工作。霍格沃兹推出AI智能体测试平台全新功能——项目资料套件,可将多个关联文档打包管理,并一键生成测试用例,提升测试完整性与效率。支持套件创建、文档关联、编辑删除及用例生成,适用于复杂项目、版本迭代等场景,助力实现智能化测试协作,让测试更高效、更专业。
|
7月前
|
存储 人工智能 测试技术
用AI提升测试效率:智能体平台的「需求文档管理」功能上线啦!
霍格沃兹测试开发学社推出AI智能体测试平台,全新「需求文档管理」功能助力高效测试准备。集中管理需求文档,支持多种上传方式,智能生成测试用例,提升测试效率与准确性,助力迈向智能化测试新时代。
|
9月前
|
机器学习/深度学习 人工智能 监控
AI 基础知识从0.1到0.2——用“房价预测”入门机器学习全流程
本系列文章深入讲解了从Seq2Seq、RNN到Transformer,再到GPT模型的关键技术原理与实现细节,帮助读者全面掌握Transformer及其在NLP中的应用。同时,通过一个房价预测的完整案例,介绍了算法工程师如何利用数据训练模型并解决实际问题,涵盖需求分析、数据收集、模型训练与部署等全流程。文章适合初学者和开发者学习AI基础与实战技能。
1101 25
AI 基础知识从0.1到0.2——用“房价预测”入门机器学习全流程
|
9月前
|
存储 人工智能 前端开发
从零构建智能对话助手:LangGraph + ReAct 实现具备记忆功能的 AI 智能体
本文系统介绍了基于 LangGraph 框架构建具备记忆能力的 ReAct(Reasoning + Action)智能体的技术实现方法。ReAct 智能体结合语言模型的推理能力与外部工具的执行能力,通过“思考-行动-观察”循环机制,实现复杂任务的自主处理。文章详细讲解了 LangGraph 的图结构设计、状态管理、工具集成与记忆系统等关键技术,并通过代码示例演示了从基础工作流到高级智能体系统的构建过程。最终实现的智能体具备多轮对话、工具调用、结果反馈与上下文记忆能力,为开发下一代智能应用提供了技术基础。
1410 1
|
10月前
|
人工智能 测试技术 API
Apipost vs Apifox:AI能力及功能对比
2025年,AI技术深度融入企业业务系统,成为提升生产力与竞争力的关键。本文对比了API管理工具Apipost与Apifox的AI能力。Apipost在智能识别、测试用例生成、脚本函数生成及文档处理等方面表现突出,显著提升开发效率与质量;而Apifox功能相对局限,依赖手动操作,难以满足高要求的现代开发需求。Apipost凭借全面的AI赋能,正引领API开发迈向智能化新时代。
152 0
|
10月前
|
人工智能 开发者
阿里云百炼X支付宝:「AI打赏」功能上线,Agent变现更灵活🎉🎉🎉
阿里云百炼平台联合支付宝,推出业内首个Agent「AI打赏」功能,开发者可为应用一键配置赞赏功能,用户打赏金额将直接转入开发者支付宝账户,助力快速变现。
890 1

热门文章

最新文章

下一篇
开通oss服务