上海动易 网站浏阳网站建设卷云网络

bicheng/2026/1/19 16:34:56/文章来源:
上海动易 网站,浏阳网站建设卷云网络,wordpress超级主题,wordpress load-scripts.php小王是一家著名高尔夫俱乐部的经理。但是他被雇员数量问题搞得心情十分不好。某些天好像所有人都來玩高尔夫#xff0c;以至于所有员工都忙的团团转还是应付不过来#xff0c;而有些天不知道什么原因却一个人也不来#xff0c;俱乐部为雇员数量浪费了不少资金。 小王的目的是… 小王是一家著名高尔夫俱乐部的经理。但是他被雇员数量问题搞得心情十分不好。某些天好像所有人都來玩高尔夫以至于所有员工都忙的团团转还是应付不过来而有些天不知道什么原因却一个人也不来俱乐部为雇员数量浪费了不少资金。 小王的目的是通过下周天气预报寻找什么时候人们会打高尔夫以适时调整雇员数量。因此首先他必须了解人们决定是否打球的原因。 在2周时间内我们得到以下记录: 天气状况有晴云和雨气温用华氏温度表示相对湿度用百分比还有有无风。当然还有顾客是不是在这些日子光顾俱乐部。最终他得到了14列5行的数据表格。 决策树模型就被建起来用于解决问题。 决策树是一个有向无环图。根结点代表所有数据。分类树算法可以通过变量outlook找出最好地解释非独立变量play打高尔夫的人的方法。变量outlook的范畴被划分为以下三个组 晴天多云天和雨天。 我们得出第一个结论: 如果天气是多云人们总是选择玩高尔夫而只有少数很着迷的甚至在雨天也会玩。 接下来我们把晴天组的分为两部分我们发现顾客不喜欢湿度高于70%的天气。最终我们还发现如果雨天还有风的话就不会有人打了。 这就通过分类树给出了一个解决方案。 David老板在晴天潮湿的天气或者刮风的雨天解雇了大部分员工因为这种天气不会有人打高尔夫。而其他的天气会有很多人打高尔夫因此可以雇用一些临时员工来工作。 结论是决策树帮助我们把复杂的数据表示转换成相对简单的直观的结构。 公式 熵 算法ID3 , C4.5 和C5.0生成树算法使用熵。这一度量是给予信息学理论中熵的概念。 相对于其他数据挖掘算法决策树在以下几个方面拥有优势 决策树易于理解和实现. 人们在通过解释后都有能力去理解决策树所表达的意义。对于决策树数据的准备往往是简单或者是不必要的 . 其他的技术往往要求先把数据一般化比如去掉多余的或者空白的属性。能够同时处理数据型和常规型属性。 其他的技术往往要求数据属性的单一。是一个白盒模型 如果给定一个观察的模型那么根据所产生的决策树很容易推出相应的逻辑表达式。易于通过静态测试来对模型进行评测。 表示有可能测量该模型的可信度。在相对短的时间内能够对大型数据源做出可行且效果良好的结果。 由决策树扩展为决策图 在决策树中所有从根到叶节点的路径都是通过“与”AND运算连接。在决策图中可以使用“或”来连接多于一个的路径。 决策树算法是一种逼近离散函数值的方法。它是一种典型的分类方法首先对数据进行处理利用归纳算法生成可读的规则和决策树然后使用决策对新数据进行分析。本质上决策树是通过一系列规则对数据进行分类的过程。 决策树构造可以分两步进行。第一步决策树的生成由训练样本集生成决策树的过程。一般情况下训练样本数据集是根据实际需要有历史的、有一定综合程度的用于数据分析处理的数据集。第二步决策树的剪枝决策树的剪枝是对上一阶段生成的决策树进行检验、校正和修下的过程主要是用新的样本数据集称为测试数据集中的数据校验决策树生成过程中产生的初步规则将那些影响预衡准确性的分枝剪除。 java实现代码如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 packagedemo; importjava.util.HashMap; importjava.util.LinkedList; importjava.util.List; importjava.util.Map; importjava.util.Map.Entry; importjava.util.Set; publicclass DicisionTree {   publicstatic void main(String[] args) throwsException {     System.out.print(脚本之家测试结果);     String[] attrNames newString[] { AGE,INCOME,STUDENT,         CREDIT_RATING};     // 读取样本集     MapObject, ListSample samples readSamples(attrNames);     // 生成决策树     Object decisionTree generateDecisionTree(samples, attrNames);     // 输出决策树     outputDecisionTree(decisionTree,0,null);   }   /**    * 读取已分类的样本集返回Map分类 - 属于该分类的样本的列表    */   staticMapObject, ListSample readSamples(String[] attrNames) {     // 样本属性及其所属分类数组中的最后一个元素为样本所属分类     Object[][] rawData newObject[][] {         {30 ,High ,No ,Fair   ,0},         {30 ,High ,No ,Excellent,0},         {30-40,High ,No ,Fair   ,1},         {40 ,Medium,No ,Fair   ,1},         {40 ,Low  ,Yes,Fair   ,1},         {40 ,Low  ,Yes,Excellent,0},         {30-40,Low  ,Yes,Excellent,1},         {30 ,Medium,No ,Fair   ,0},         {30 ,Low  ,Yes,Fair   ,1},         {40 ,Medium,Yes,Fair   ,1},         {30 ,Medium,Yes,Excellent,1},         {30-40,Medium,No ,Excellent,1},         {30-40,High ,Yes,Fair   ,1},         {40 ,Medium,No ,Excellent,0} };     // 读取样本属性及其所属分类构造表示样本的Sample对象并按分类划分样本集     MapObject, ListSample ret newHashMapObject, ListSample();     for(Object[] row : rawData) {       Sample sample newSample();       inti 0;       for(intn row.length - 1; i n; i)         sample.setAttribute(attrNames[i], row[i]);       sample.setCategory(row[i]);       ListSample samples ret.get(row[i]);       if(samples null) {         samples newLinkedListSample();         ret.put(row[i], samples);       }       samples.add(sample);     }     returnret;   }   /**    * 构造决策树    */   staticObject generateDecisionTree(       MapObject, ListSample categoryToSamples, String[] attrNames) {     // 如果只有一个样本将该样本所属分类作为新样本的分类     if(categoryToSamples.size() 1)       returncategoryToSamples.keySet().iterator().next();     // 如果没有供决策的属性则将样本集中具有最多样本的分类作为新样本的分类即投票选举出分类     if(attrNames.length 0) {       intmax 0;       Object maxCategory null;       for(EntryObject, ListSample entry : categoryToSamples           .entrySet()) {         intcur entry.getValue().size();         if(cur max) {           max cur;           maxCategory entry.getKey();         }       }       returnmaxCategory;     }     // 选取测试属性     Object[] rst chooseBestTestAttribute(categoryToSamples, attrNames);     // 决策树根结点分支属性为选取的测试属性     Tree tree newTree(attrNames[(Integer) rst[0]]);     // 已用过的测试属性不应再次被选为测试属性     String[] subA newString[attrNames.length - 1];     for(inti 0, j 0; i attrNames.length; i)       if(i ! (Integer) rst[0])         subA[j] attrNames[i];     // 根据分支属性生成分支     SuppressWarnings(unchecked)     MapObject, MapObject, ListSample splits     /* NEW LINE */(MapObject, MapObject, ListSample) rst[2];     for (EntryObject, MapObject, ListSample entry : splits.entrySet()) {       Object attrValue entry.getKey();       MapObject, ListSample split entry.getValue();       Object child generateDecisionTree(split, subA);       tree.setChild(attrValue, child);     }     return tree;   }   /**    * 选取最优测试属性。最优是指如果根据选取的测试属性分支则从各分支确定新样本    * 的分类需要的信息量之和最小这等价于确定新样本的测试属性获得的信息增益最大    * 返回数组选取的属性下标、信息量之和、Map(属性值-(分类-样本列表))    */   static Object[] chooseBestTestAttribute(       MapObject, ListSample categoryToSamples, String[] attrNames) {     int minIndex -1; // 最优属性下标     double minValue Double.MAX_VALUE; // 最小信息量     MapObject, MapObject, ListSample minSplits null; // 最优分支方案     // 对每一个属性计算将其作为测试属性的情况下在各分支确定新样本的分类需要的信息量之和选取最小为最优     for (int attrIndex 0; attrIndex attrNames.length; attrIndex) {       int allCount 0; // 统计样本总数的计数器       // 按当前属性构建Map属性值-(分类-样本列表)       MapObject, MapObject, ListSample curSplits       /* NEW LINE */new HashMapObject, MapObject, ListSample();       for (EntryObject, ListSample entry : categoryToSamples           .entrySet()) {         Object category entry.getKey();         ListSample samples entry.getValue();         for (Sample sample : samples) {           Object attrValue sample               .getAttribute(attrNames[attrIndex]);           MapObject, ListSample split curSplits.get(attrValue);           if (split null) {             split new HashMapObject, ListSample();             curSplits.put(attrValue, split);           }           ListSample splitSamples split.get(category);           if (splitSamples null) {             splitSamples new LinkedListSample();             split.put(category, splitSamples);           }           splitSamples.add(sample);         }         allCount samples.size();       }       // 计算将当前属性作为测试属性的情况下在各分支确定新样本的分类需要的信息量之和       double curValue 0.0; // 计数器累加各分支       for (MapObject, ListSample splits : curSplits.values()) {         double perSplitCount 0;         for (ListSample list : splits.values())           perSplitCount list.size(); // 累计当前分支样本数         double perSplitValue 0.0; // 计数器当前分支         for (ListSample list : splits.values()) {           double p list.size() / perSplitCount;           perSplitValue - p * (Math.log(p) / Math.log(2));         }         curValue (perSplitCount / allCount) * perSplitValue;       }       // 选取最小为最优       if (minValue curValue) {         minIndex attrIndex;         minValue curValue;         minSplits curSplits;       }     }     return new Object[] { minIndex, minValue, minSplits };   }   /**    * 将决策树输出到标准输出    */   static void outputDecisionTree(Object obj, int level, Object from) {     for (int i 0; i level; i)       System.out.print(|-----);     if (from ! null)       System.out.printf((%s):, from);     if (obj instanceof Tree) {       Tree tree (Tree) obj;       String attrName tree.getAttribute();       System.out.printf([%s ?]\n, attrName);       for (Object attrValue : tree.getAttributeValues()) {         Object child tree.getChild(attrValue);         outputDecisionTree(child, level 1, attrName              attrValue);       }     } else {       System.out.printf([CATEGORY %s]\n, obj);     }   }   /**    * 样本包含多个属性和一个指明样本所属分类的分类值    */   static class Sample {     private MapString, Object attributes new HashMapString, Object();     private Object category;     public Object getAttribute(String name) {       return attributes.get(name);     }     public void setAttribute(String name, Object value) {       attributes.put(name, value);     }     public Object getCategory() {       return category;     }     public void setCategory(Object category) {       this.category category;     }     public String toString() {       return attributes.toString();     }   }   /**    * 决策树非叶结点决策树中的每个非叶结点都引导了一棵决策树    * 每个非叶结点包含一个分支属性和多个分支分支属性的每个值对应一个分支该分支引导了一棵子决策树    */   staticclass Tree {     privateString attribute;     privateMapObject, Object children newHashMapObject, Object();     publicTree(String attribute) {       this.attribute attribute;     }     publicString getAttribute() {       returnattribute;     }     publicObject getChild(Object attrValue) {       returnchildren.get(attrValue);     }     publicvoid setChild(Object attrValue, Object child) {       children.put(attrValue, child);     }     publicSetObject getAttributeValues() {       returnchildren.keySet();     }   } } 运行结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/88808.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做网站 找风投奇迹建站模板

1、生成数据库数据 2、配置pom文件 这个plugin文件里有配置项和依赖以及版本号 修改configurationFile路径为项目里存在的generatorConfig.xml文件&#xff0c;因为后续的配置都在这个文件中进行。 <plugin><groupId>org.mybatis.generator</groupId><…

php网站开发工程师招聘要求平阳网站建设

苹果分拣&#xff0c;可以检测成熟、切片、损坏、不成熟四种类型&#xff0c;YOLOV8NANO&#xff0c;训练得到PT模型&#xff0c;然后转换成ONNX&#xff0c;OPENCV的DNN调用&#xff0c;支持C,PYTHON 苹果分拣检测YOLOV8NANO&#xff0c;检测四种类型苹果

购物网站怎么做推广学做网站论坛vip学员码

子绝父相 相对定位是相对于自己原本的位置定位。 绝对定位&#xff0c;如果父元素设置了相对定位&#xff0c;则相对于父元素进行绝对定位&#xff0c;否则相对于最近的设置了相对定位的元素进行绝对定位&#xff0c;或者相对于根元素进行绝对定位。 定位有四个方向&#xff0…

手机网站切图新郑做网站

排序优化 对于order by关键字进行优化前&#xff0c;首先大家要先知道索引不仅用于检索还用于排序 MySQL支持两种方式的排序&#xff0c;index和filesort&#xff0c;index效率高&#xff0c;可以根据索引本身来完成排序&#xff0c;filesort效率较低 最好在进行explain进行分析…

销型网站建设必须的步骤包括中国前500强企业排名

[动态规划] (五) 路径问题: LeetCode 62.不同路径 文章目录 [动态规划] (五) 路径问题: LeetCode 62.不同路径题目解析解题思路状态表示状态转移方程初始化和填表返回值 代码实现总结 62. 不同路径 题目解析 (1) 机器人从左上角到右下角有多少方法 (2) 机器人只能向左或者向右…

优秀服装网站设计网站主服务器ip地址

1.事务的ACID属性事务(Database Transaction) &#xff0c;是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成&#xff0c;否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元&…

曲周住房和城乡建设局网站3d建模素材网

一、利用 Acrobat 合成pdf目录 &#xff08;一&#xff09;新建标签&#xff08;更改标签等级等&#xff09; 1&#xff0c;用Adobe acrobat 软件打开待添加书签的pdf文档。 2&#xff0c;打开之后点击软件左边栏的书签&#xff08;有时被隐藏了&#xff0c;点击一下界面左边…

西安网站建设云阔软件开发文档范例

DS3231M RTC实时时钟 芯片介绍 DS3231M是一款低成本、极其精确的 I2C 实时时钟 &#xff08;RTC&#xff09;。该设备集成了电池输入&#xff0c;并在设备主电源中断时保持准确的计时。微型电子机械系统 &#xff08;MEMS&#xff09; 谐振器的集成提高了器件的长期精度&…

官方网站如何建立做网站需要去工商备案吗

HiLo是在NHibernate中生成主键的一种方式&#xff0c;不过现在我们可以在Entity Framework Core中使用。所以在这篇内容中&#xff0c;我将向您在介绍如何在Entity Framework Core中使用HiLo生成主键。 什么是Hilo&#xff1f; HiLo是High Low的简写&#xff0c;翻译成中文叫高…

成品网站 高端建设网站0基础需要学什么

​ 本文将详细介绍Flink-CDC如何全量及增量采集Sqlserver数据源&#xff0c;准备适配Sqlserver数据源的小伙伴们可以参考本文&#xff0c;希望本文能给你带来一定的帮助。 一、Sqlserver的安装及开启事务日志 如果没有Sqlserver环境&#xff0c;但你又想学习这块的内容&#x…

没备案网站如何通过百度联盟审核游戏网站开发视频

[安全]修复jquery低版本的xss安全漏洞&#xff0c;升级用最新版jquery&#xff1b; [新增]后台的登录页、欢迎页支持自定义模板文件&#xff1b; [新增]后台多语言列表管理支持手工同步文档数据&#xff1b; [新增]后台商品发布时&#xff0c;单规格商品支持会员折扣价的设置…

服务器网站模板贵阳网站建设培训

5.4 树和森林 5.4.1 树的存储结构 树的存储1&#xff1a;双亲表示法 用数组顺序存储各结点&#xff0c;每个结点中保存数据元素、指向双亲结点(父结点)的“指针” #define MAX_TREE_SIZE 100// 树的结点 typedef struct{ElemType data;int parent; }PTNode;// 树的类型 type…

河北衡水建设网站公司怎样做原创短视频网站

目标 为了让不同语言表达相同意思&#xff0c;所需的编码长度差不多&#xff0c;有了UTF-64编码。 现实 可是&#xff0c;今天刚发现&#xff1a;虽然不同语言用UTF-8表达相同意思&#xff0c;编码长度差很多&#xff0c;但是&#xff0c;压缩之后就差不多了。代码如下&…

贵阳网站建设平台网业云原神

先认识一下Object Object 类的 toString 方法 返回一个字符串&#xff0c;该字符串由类名&#xff08;对象是该类的一个实例&#xff09;、at 标记符“”和此对象哈希码的无符号十六进制表示组成。换句话说&#xff0c;该方法返回一个字符串&#xff0c;它的值等于&#xff1a;…

哪个网站可以做拼图装饰行业网站模板

本组件一般用于展示头像的地方&#xff0c;如个人中心&#xff0c;或者评论列表页的用户头像展示等场所。 #平台差异说明 App&#xff08;vue&#xff09;App&#xff08;nvue&#xff09;H5小程序√√√√ #基本使用 通过src指定头像的路径即可简单使用&#xff0c;如果传…

网站建设公司宣传文案网站开发 入门 pdf

一、前言 前面几篇文章介绍了微服务核心的两个组件&#xff1a;注册中心和网关&#xff0c;今天我们来思考一下微服务如何拆分&#xff0c;微服务拆分难度在于粒度和层次&#xff0c;粒度太大拆分的意义不大&#xff0c;粒度太小开发、调试、运维会有很多坑。 二、微服务划分…

芜湖网站设计公司赤峰酒店网站建设哪家便宜

文章目录 前言一、树型结构1.1概念1.2 知识点1.3 树的表示形式1.4 树的应用 二、二叉树2.1 概念2.2 两种特殊的二叉树2.3 二叉树的性质2.4 二叉树的存储2.5 二叉树的基本操作2.5.1 二叉树的遍历2.5.2 二叉树的基本操作 前言 对学习的二叉树的知识进行总结。 一、树型结构 1.1…

网页制作与网站建设wordpress获取点赞数

1.横向对标参数 厂商华为车型极狐阿尔法S全新HI版上市时间2022/9/23方案13V5R3L+1DMS摄像头前视摄像头*4【双目+长焦+广角】侧视摄像头*4后视摄像头*1环视摄像头*4

网站建设网站排名优化徐州专业建站公司

一、概述 方法区是一个供各线程共享的运行时内存区域。它存储了每一个类的结构信息&#xff0c;例如运行时常量池&#xff08;Runtime Constant Pool&#xff09;、字段和方法数据、构造函数和普通方法的字节码内容。上面讲的是规范&#xff0c;在不同的虚拟机里面实现是不一样…

学院后勤处网站建设方案书本地企业网站建设服务

翻译自 Separator 本章介绍如何使用分隔符组织JavaFX应用程序的UI组件。 SeparatorJavaFX API中可用的类表示水平或垂直分隔线。它用于划分应用程序用户界面的元素&#xff0c;不会产生任何操作。但是&#xff0c;您可以设置样式&#xff0c;对其应用视觉效果&#xff0c;甚…