Google Earth engine 机器学习算法分类 回归算法实现

分类算法,

这里以随机森林算法为例:

以土地利用分类为例,简单的采用温度和高程作为模型的输入变量,采用随机森林算法进行土地利用分类.

var tem=ee.ImageCollection("OREGONSTATE/PRISM/AN81d")
        .filterDate('2016-08-01','2016-09-01')
        .first().select('tmax')
var elev=ee.Image("CGIAR/SRTM90_V4")
var lucc=ee.ImageCollection("MODIS/006/MCD12Q1")
.filterDate('2016-01-01','2016-12-31').first()
.select('LC_Type1').rename('lucc')
var true_image=elev.addBands(tem).addBands(lucc)
print(tem)
print(elev)
print(true_image)
var train_test=true_image.sample({
  region:geometry,
  scale:90,
  numPixels:10000,
  geometries:true,
  seed:2
})
var random=train_test.randomColumn()
var training_data=random.filter(ee.Filter.gte('random',0.2))
var validation_data=random.filter(ee.Filter.lt('random',0.2))

print(training_data)
print(validation_data)
var classifier=ee.Classifier.smileRandomForest(10).train({
  features:training_data,
  classProperty:'lucc',
  inputProperties:['elevation','tmax']
})
var classified=true_image.select(['elevation','tmax']).classify(classifier)
Map.addLayer(lucc,{},'lucc')
Map.addLayer(classified.clip(geometry),{},'pred_landcover')


var dict = classifier.explain();
var variable_importance = ee.Feature(null, ee.Dictionary(dict).get('importance'));


 
var chart =
ui.Chart.feature.byProperty(variable_importance)
.setChartType('ColumnChart')
.setOptions({
title: 'Random Forest Variable Importance',
legend: {position: 'none'},
hAxis: {title: 'Bands'},
vAxis: {title: 'Importance'}
});
 
print(chart);

print(validation_data.classify(classifier))
print('train_acc',classifier.confusionMatrix().accuracy())
print('test_acc',validation_data.classify(classifier).errorMatrix('lucc','classification').accuracy())

其中,geometry为自己绘制的美国的一个区域。

变量重要性结果如下:

精度评估:

另外,随机森林算法的回归模型,资源详见https://download.csdn.net/download/qq_33657870/19403119。或者私聊。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是菜鸡,我不敢睡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值