@@ -258,47 +258,47 @@ def plotROC(predStrengths, classLabels):
258
258
259
259
260
260
if __name__ == "__main__" :
261
- # # 我们要将5个点进行分类
262
- # dataArr, labelArr = loadSimpData()
263
- # print 'dataArr', dataArr, 'labelArr', labelArr
264
-
265
- # # D表示最初值,对1进行均分为5份,平均每一个初始的概率都为0.2
266
- # # D的目的是为了计算错误概率: weightedError = D.T*errArr
267
- # D = mat(ones((5, 1))/5)
268
- # print 'D=', D.T
269
-
270
- # # bestStump, minError, bestClasEst = buildStump(dataArr, labelArr, D)
271
- # # print 'bestStump=', bestStump
272
- # # print 'minError=', minError
273
- # # print 'bestClasEst=', bestClasEst.T
274
-
275
-
276
- # # 分类器:weakClassArr
277
- # # 历史累计的分类结果集
278
- # weakClassArr, aggClassEst = adaBoostTrainDS(dataArr, labelArr, 9)
279
- # print '\nweakClassArr=', weakClassArr, '\naggClassEst=', aggClassEst.T
280
-
281
- # """
282
- # 发现:
283
- # 分类的权重值:最大的值,为alpha的加和,最小值为-最大值
284
- # 特征的权重值:如果一个值误判的几率越小,那么D的特征权重越少
285
- # """
286
-
287
- # # 测试数据的分类结果, 观测:aggClassEst分类的最终权重
288
- # print adaClassify([0, 0], weakClassArr).T
289
- # print adaClassify([[5, 5], [0, 0]], weakClassArr).T
290
-
291
- # 马疝病数据集
292
- # 训练集合
293
- dataArr , labelArr = loadDataSet ("input/07.AdaBoost/horseColicTraining2.txt" )
294
- weakClassArr , aggClassEst = adaBoostTrainDS (dataArr , labelArr , 40 )
295
- print weakClassArr , '\n -----\n ' , aggClassEst .T
296
- # 计算ROC下面的AUC的面积大小
297
- plotROC (aggClassEst .T , labelArr )
298
- # 测试集合
299
- dataArrTest , labelArrTest = loadDataSet ("input/07.AdaBoost/horseColicTest2.txt" )
300
- m = shape (dataArrTest )[0 ]
301
- predicting10 = adaClassify (dataArrTest , weakClassArr )
302
- errArr = mat (ones ((m , 1 )))
303
- # 测试:计算总样本数,错误样本数,错误率
304
- print m , errArr [predicting10 != mat (labelArrTest ).T ].sum (), errArr [predicting10 != mat (labelArrTest ).T ].sum ()/ m
261
+ # 我们要将5个点进行分类
262
+ dataArr , labelArr = loadSimpData ()
263
+ print 'dataArr' , dataArr , 'labelArr' , labelArr
264
+
265
+ # D表示最初值,对1进行均分为5份,平均每一个初始的概率都为0.2
266
+ # D的目的是为了计算错误概率: weightedError = D.T*errArr
267
+ D = mat (ones ((5 , 1 ))/ 5 )
268
+ print 'D=' , D .T
269
+
270
+ # bestStump, minError, bestClasEst = buildStump(dataArr, labelArr, D)
271
+ # print 'bestStump=', bestStump
272
+ # print 'minError=', minError
273
+ # print 'bestClasEst=', bestClasEst.T
274
+
275
+
276
+ # 分类器:weakClassArr
277
+ # 历史累计的分类结果集
278
+ weakClassArr , aggClassEst = adaBoostTrainDS (dataArr , labelArr , 9 )
279
+ print '\n weakClassArr=' , weakClassArr , '\n aggClassEst=' , aggClassEst .T
280
+
281
+ """
282
+ 发现:
283
+ 分类的权重值:最大的值,为alpha的加和,最小值为-最大值
284
+ 特征的权重值:如果一个值误判的几率越小,那么D的特征权重越少
285
+ """
286
+
287
+ # 测试数据的分类结果, 观测:aggClassEst分类的最终权重
288
+ print adaClassify ([0 , 0 ], weakClassArr ).T
289
+ print adaClassify ([[5 , 5 ], [0 , 0 ]], weakClassArr ).T
290
+
291
+ # # 马疝病数据集
292
+ # # 训练集合
293
+ # dataArr, labelArr = loadDataSet("input/07.AdaBoost/horseColicTraining2.txt")
294
+ # weakClassArr, aggClassEst = adaBoostTrainDS(dataArr, labelArr, 40)
295
+ # print weakClassArr, '\n-----\n', aggClassEst.T
296
+ # # 计算ROC下面的AUC的面积大小
297
+ # plotROC(aggClassEst.T, labelArr)
298
+ # # 测试集合
299
+ # dataArrTest, labelArrTest = loadDataSet("input/07.AdaBoost/horseColicTest2.txt")
300
+ # m = shape(dataArrTest)[0]
301
+ # predicting10 = adaClassify(dataArrTest, weakClassArr)
302
+ # errArr = mat(ones((m, 1)))
303
+ # # 测试:计算总样本数,错误样本数,错误率
304
+ # print m, errArr[predicting10 != mat(labelArrTest).T].sum(), errArr[predicting10 != mat(labelArrTest).T].sum()/m
0 commit comments