在手写Adaboost算法时,基本分类器 G m ( x ) G_{m}(x) Gm​(x)的系数为:
α m = 1 2 log ⁡ 1 − e m e m \alpha_m=\frac{1}{2}\log\frac{1-e_m}{e_m} αm​=21​logem​1−em​​
我们用代码实现为:(只展示部分代码)

estimator.alpha=0.5*np.log((1-min_error)/(min_error))
preds=np.ones(np.shape(y))
negative_idx=(estimator.lable*X[:,estimator.feature_index]<estimator.lable*estimator.threshold)
preds[negative_idx]=-1
w*=np.exp(-estimator.alpha*y*preds)
w/=np.sum(w)
self.estimators.append(estimator)

但是在运行后报错:

F:\anaconda\envs\sklearn-env\python.exe F:/PycharmProject/Adaboost_numpy_demo.py
Traceback (most recent call last):File "F:\PycharmProject\Adaboost_numpy_demo.py", line 116, in <module>clf.fit(X_train,y_train)File "F:\PycharmProject\Adaboost_numpy_demo.py", line 80, in fitestimator.alpha=0.5*np.log((1-min_error)/(min_error))
ZeroDivisionError: division by zeroProcess finished with exit code 1

这里的错误很明显,就是我们的公式计算中, e m e_m em​可能是一个非常小的数字,在进行计算时就会变为0,出现错误,这样一来,改正的方法也很明确:

estimator.alpha=0.5*np.log((1-min_error)/(min_error+1e-9))

这样的运行结果就不会报错了!

问题解决!

提示错误信息:ZeroDivisionError: division by zero的解决方法相关推荐

  1. cad2007错误1308 html,win7系统安装CAD2008提示“错误1308,源文件未找到“的解决方法...

    很多小伙伴都遇到过win7系统安装CAD2008提示"错误1308,源文件未找到的困惑吧,一些朋友看过网上零散的win7系统安装CAD2008提示"错误1308,源文件未找到的处理 ...

  2. PyInstaller天坑终极攻略(PyInstaller莫名报错?面对错误信息无从下手?全网找不到解决方法?面对PyInstaller中的那些莫名天坑不如和我一起手动打包python解释器和项目)

    PyInstaller天坑终极攻略 PyInstaller莫名报错?面对错误信息无从下手?翻遍全网找不到解决方法?面对PyInstaller中的那些莫名天坑不如和我一起手动打包python解释器和项目 ...

  3. Pycharm中出现的错误信息是:unresolved reference “print“解决方法

    错误信息是:unresolved reference "print",这是刚入门常见问题 错误如图 1.可能是之前在python stub里将*.pyi去掉了,将它补回去 无效 方 ...

  4. “编译器错误信息: CS0016: 未能写入输出文件”解决方法

    很多人碰到这个问题想到的都是给Temporary ASP.NET Files目录赋权限,我开始也是这样,最后在微软的网站搜到了这个问题的解决方法,其实很简单,只要在windows/temp权限设置里面 ...

  5. Linux安装中文总是提示失败,AnyBackup-Linux 客户端安装失败,提示错误信息:Self IP Address is invalid...

    关键字 Self IP.invalid 适用产品 AnyBackup CDM 7.0.x AnyBackup Express 7.0.x 问题描述 Linux 系统在安装客户端时,执行安装命令后,提示 ...

  6. Win10企业版系统安装 NET Framework 4.8的时候提示错误信息

    Win10企业版系统安装 NET Framework 4.8的时候提示错误信息 安装未成功 尚未安装 .NET Framework 4.8,原因是:组件的文件跟组件清单中的验证信息不匹配. 修改注册表 ...

  7. Oracle EBS 针对付款撤销不成功提示错误信息的解决方案

    Oracle EBS 针对付款撤销不成功提示错误信息的解决方案 付款录入界面付款撤销不成功 APXPAWKB Void Payment FRM-40654:Record has been update ...

  8. 电脑提示显示服务器错误怎么解决,电脑提示错误信息:在主机名解析时通常出现的暂时错误如何解决...

    ‍ 最近有用户和小编反映电脑在接受电子邮件时会出现提示"错误信息:这是在主机名解析时通常出现的暂时错误,它意味着本地服务器没有从权威服务器上收到响应."这个问题主要是DNS解析错误 ...

  9. nba2k服务器信息失败,NBA2KOL登陆游戏提示错误信息怎么办?

    问:NBA2KOL登陆游戏提示错误信息怎么办? 答: 1).提示服务器过载信息时,请尝试更换不同服务器重新连接: 2).提示版本不匹配信息时,请尝试下载安装最新NBA2KOL游戏客户端 3).提示重复 ...

最新文章

  1. mysql 主从 网络异常_mysql主从常见异常问题解决
  2. 写了一个栈和多线程栈,修补上次的数据结构的栈的知识
  3. ICCV 2017《Unsupervised Laerning of Important Objects from First-Person Videos》论文笔记
  4. 视频“双录”全新发布,助力金融业务办理高效合规
  5. 后台开发人员面试内容——Redis非关系数据库(三)
  6. hp代码改成linux代码,HP Database Archiving Software远程任意代码执行漏洞
  7. PHP授权系统+盗版追踪+域名IP双授权+在线加密系统
  8. canvas路径剪切和判断是否在路径内
  9. 使用.NET Core 3.0 预览版,Web API和Visual Studio 2019进行ASP.NET Core Blazor游戏开发
  10. python logging模块详解_python logging模块使用总结
  11. 数据传输服务 DTS > 数据订阅 > 数据订阅(新版) > 创建RDS MySQL数据订阅通道(新版)
  12. python基于协程的网络库gevent、eventlet
  13. Parallels Desktop虚拟机如何安装win10和win11,懒人安装教程
  14. python人脸对比相似度_相似度算法原理及python实现
  15. 服务器固态硬盘接口类型,固态硬盘接口都有哪些类型
  16. java对接PayPal支付 (添加物流跟踪信息)
  17. Android 最常用的设计模式五 安卓源码分析——建造者模式
  18. 安卓开发 给控件左边右边下边添加阴影_Android 控件布局实现卡片效果,阴影效果...
  19. Excel——从文本中提取数字
  20. 测试网络连通性的PING命令

热门文章

  1. 识别三角形(c++基础)
  2. 【开源项目】Imagine图片压缩工具
  3. 2016广东工业大学新生杯决赛
  4. Lake Shore—625 型超导磁体电源
  5. ZSTU月赛 1912: 我好像不会做(模拟)
  6. python 理论基础知识试题_Python理论基础知识复习
  7. Android TV书签
  8. 3分钟了解什么是期权—行权?
  9. 论文毕业设计答辩总结
  10. 隐马尔可夫模型 #博学谷IT学习技术支持#