外贸商业网站建设wordpress 跳转特效

diannao/2026/1/13 14:35:42/文章来源:
外贸商业网站建设,wordpress 跳转特效,创意交易平台官网,中国西陆最新军事新闻第1关#xff1a;什么是决策树 1.AB 2.B 第2关#xff1a;信息熵与信息增益 import numpy as npdef calcInfoGain(feature, label, index):计算信息增益:param feature:测试用例中字典里的feature#xff0c;类型为ndarray:param label:测试用例中字典里的label#xf…第1关什么是决策树 1.AB 2.B 第2关信息熵与信息增益 import numpy as npdef calcInfoGain(feature, label, index):计算信息增益:param feature:测试用例中字典里的feature类型为ndarray:param label:测试用例中字典里的label类型为ndarray:param index:测试用例中字典里的index即feature部分特征列的索引。该索引指的是feature中第几个特征如index:0表示使用第一个特征来计算信息增益。:return:信息增益类型float# 计算熵def calcInfoEntropy(feature, label):计算信息熵:param feature:数据集中的特征类型为ndarray:param label:数据集中的标签类型为ndarray:return:信息熵类型floatlabel_set set(label)#创建一个无序不重复的元素集result 0#统计不同标签各自的数量一般为0和1for l in label_set:count 0for j in range(len(label)):if label[j] l:count 1# 计算标签在数据集中出现的概率p count / len(label)# 计算熵result - p * np.log2(p)return result# 计算条件熵def calcHDA(feature, label, index, value):计算信息熵:param feature:数据集中的特征类型为ndarray:param label:数据集中的标签类型为ndarray:param index:需要使用的特征列索引类型为int:param value:index所表示的特征列中需要考察的特征值类型为int:return:信息熵类型floatcount 0# sub_feature和sub_label表示根据特征列和特征值#分割出的子数据集中的特征和标签sub_feature []sub_label []for i in range(len(feature)):if feature[i][index] value:count 1sub_feature.append(feature[i])sub_label.append(label[i])pHA count / len(feature)e calcInfoEntropy(sub_feature, sub_label)return pHA * e#######请计算信息增益#############*********** Begin ***********#values []#定义一个列表存放index列即特征列的所有特征for i in range(len(feature)):values.append(feature[i][index])values_list set(values)#创建一个无序不重复的元素集g calcInfoEntropy(feature, label)#计算总熵for i in values_list:g - calcHDA(feature, label, index, i)#总熵-每个特征的条件熵return g#得到信息增益#*********** End *************#第3关使用ID3算法构建决策树 import numpy as np class DecisionTree(object):def __init__(self):#决策树模型self.tree {}def calcInfoGain(self, feature, label, index):计算信息增益:param feature:测试用例中字典里的feature类型为ndarray:param label:测试用例中字典里的label类型为ndarray:param index:测试用例中字典里的index即feature部分特征列的索引。该索引指的是feature中第几个特征如index:0表示使用第一个特征来计算信息增益。:return:信息增益类型float# 计算熵def calcInfoEntropy(label):计算信息熵:param label:数据集中的标签类型为ndarray:return:信息熵类型floatlabel_set set(label)result 0for l in label_set:count 0for j in range(len(label)):if label[j] l:count 1# 计算标签在数据集中出现的概率p count / len(label)# 计算熵result - p * np.log2(p)return result# 计算条件熵def calcHDA(feature, label, index, value):计算信息熵:param feature:数据集中的特征类型为ndarray:param label:数据集中的标签类型为ndarray:param index:需要使用的特征列索引类型为int:param value:index所表示的特征列中需要考察的特征值类型为int:return:信息熵类型floatcount 0# sub_feature和sub_label表示根据特征列和特征值分割出的子数据集中的特征和标签sub_feature []sub_label []for i in range(len(feature)):if feature[i][index] value:count 1sub_feature.append(feature[i])sub_label.append(label[i])pHA count / len(feature)e calcInfoEntropy(sub_label)return pHA * ebase_e calcInfoEntropy(label)f np.array(feature)# 得到指定特征列的值的集合f_set set(f[:, index])sum_HDA 0# 计算条件熵for value in f_set:sum_HDA calcHDA(feature, label, index, value)# 计算信息增益return base_e - sum_HDA# 获得信息增益最高的特征def getBestFeature(self, feature, label):max_infogain 0best_feature 0for i in range(len(feature[0])):infogain self.calcInfoGain(feature, label, i)if infogain max_infogain:max_infogain infogainbest_feature ireturn best_featuredef createTree(self, feature, label):# 样本里都是同一个label没必要继续分叉了if len(set(label)) 1:return label[0]# 样本中只有一个特征或者所有样本的特征都一样的话就看哪个label的票数高if len(feature[0]) 1 or len(np.unique(feature, axis0)) 1:vote {}for l in label:if l in vote.keys():vote[l] 1else:vote[l] 1max_count 0vote_label Nonefor k, v in vote.items():if v max_count:max_count vvote_label kreturn vote_label# 根据信息增益拿到特征的索引best_feature self.getBestFeature(feature, label)tree {best_feature: {}}f np.array(feature)# 拿到bestfeature的所有特征值f_set set(f[:, best_feature])# 构建对应特征值的子样本集sub_feature, sub_labelfor v in f_set:sub_feature []sub_label []for i in range(len(feature)):if feature[i][best_feature] v:sub_feature.append(feature[i])sub_label.append(label[i])# 递归构建决策树tree[best_feature][v] self.createTree(sub_feature, sub_label)return treedef fit(self, feature, label)::param feature: 训练集数据类型为ndarray:param label:训练集标签类型为ndarray:return: None#************* Begin ************#self.tree self.createTree(feature, label)#************* End **************#def predict(self, feature)::param feature:测试集数据类型为ndarray:return:预测结果如np.array([0, 1, 2, 2, 1, 0])#************* Begin ************#result []def classify(tree, feature):if not isinstance(tree, dict):return treet_index, t_value list(tree.items())[0]f_value feature[t_index]if isinstance(t_value, dict):classLabel classify(tree[t_index][f_value], feature)return classLabelelse:return t_valuefor f in feature:result.append(classify(self.tree, f))return np.array(result) 第4关信息增益率 import numpy as npdef calcInfoGain(feature, label, index):计算信息增益:param feature:测试用例中字典里的feature类型为ndarray:param label:测试用例中字典里的label类型为ndarray:param index:测试用例中字典里的index即feature部分特征列的索引。该索引指的是feature中第几个特征如index:0表示使用第一个特征来计算信息增益。:return:信息增益类型float# 计算熵def calcInfoEntropy(label):计算信息熵:param label:数据集中的标签类型为ndarray:return:信息熵类型floatlabel_set set(label)result 0for l in label_set:count 0for j in range(len(label)):if label[j] l:count 1# 计算标签在数据集中出现的概率p count / len(label)# 计算熵result - p * np.log2(p)return result# 计算条件熵def calcHDA(feature, label, index, value):计算信息熵:param feature:数据集中的特征类型为ndarray:param label:数据集中的标签类型为ndarray:param index:需要使用的特征列索引类型为int:param value:index所表示的特征列中需要考察的特征值类型为int:return:信息熵类型floatcount 0# sub_label表示根据特征列和特征值分割出的子数据集中的标签sub_label []for i in range(len(feature)):if feature[i][index] value:count 1sub_label.append(label[i])pHA count / len(feature)e calcInfoEntropy(sub_label)return pHA * ebase_e calcInfoEntropy(label)f np.array(feature)# 得到指定特征列的值的集合,:表示获取所有行f_set set(f[:, index])#将不重复的特征值获取出来比如:男女sum_HDA 0# 计算条件熵for value in f_set:sum_HDA calcHDA(feature, label, index, value)# 计算信息增益return base_e - sum_HDAdef calcInfoGainRatio(feature, label, index):计算信息增益率:param feature:测试用例中字典里的feature类型为ndarray:param label:测试用例中字典里的label类型为ndarray:param index:测试用例中字典里的index即feature部分特征列的索引。该索引指的是feature中第几个特征如index:0表示使用第一个特征来计算信息增益。:return:信息增益率类型float#********* Begin *********#up calcInfoGain(feature, label, index)#信息增益率的分子#定义一个方法求分母中某个类型的个数(如求当v1时表示性别为男的)def dcon(feature,value):s 0for i in range(len(feature)):if feature[i][index] value:s 1else:passreturn s down 0#取出特征值该列所有数据values []for i in range(len(feature)):values.append(feature[i][index])values_set set(values)#使用set()过滤重复值得到特征值列中所有类型(如性别中男和女)#循环递归求出分母for value in values_set:down - (dcon(feature,value)/len(feature)) * np.log2(dcon(feature,value)/len(feature))#求得信息增益率gain up/downreturn gain#********* End *********#第5关基尼系数 import numpy as np def gini_index(label):unique_label list(set(label))gini 1for i in unique_label:p np.sum(label i)/len(label)gini -p**2return gini def calcGini(feature, label, index):计算基尼系数:param feature:测试用例中字典里的feature类型为ndarray:param label:测试用例中字典里的label类型为ndarray:param index:测试用例中字典里的index即feature部分特征列的索引。该索引指的是feature中第几个特征如index:0表示使用第一个特征来计算信息增益。:return:基尼系数类型float#********* Begin *********#unique_value list(set(feature[:, index]))gini2 0for value in unique_value:len_v np.sum(feature[:, index] value)gini2 (len_v/len(feature))*gini_index(label[feature[:, index] value])return gini2#********* End *********# 第6关预剪枝与后剪枝 import numpy as np from copy import deepcopy class DecisionTree(object):def __init__(self):#决策树模型self.tree {}def calcInfoGain(self, feature, label, index):计算信息增益:param feature:测试用例中字典里的feature类型为ndarray:param label:测试用例中字典里的label类型为ndarray:param index:测试用例中字典里的index即feature部分特征列的索引。该索引指的是feature中第几个特征如index:0表示使用第一个特征来计算信息增益。:return:信息增益类型float# 计算熵def calcInfoEntropy(feature, label):计算信息熵:param feature:数据集中的特征类型为ndarray:param label:数据集中的标签类型为ndarray:return:信息熵类型floatlabel_set set(label)result 0for l in label_set:count 0for j in range(len(label)):if label[j] l:count 1# 计算标签在数据集中出现的概率p count / len(label)# 计算熵result - p * np.log2(p)return result# 计算条件熵def calcHDA(feature, label, index, value):计算信息熵:param feature:数据集中的特征类型为ndarray:param label:数据集中的标签类型为ndarray:param index:需要使用的特征列索引类型为int:param value:index所表示的特征列中需要考察的特征值类型为int:return:信息熵类型floatcount 0# sub_feature和sub_label表示根据特征列和特征值分割出的子数据集中的特征和标签sub_feature []sub_label []for i in range(len(feature)):if feature[i][index] value:count 1sub_feature.append(feature[i])sub_label.append(label[i])pHA count / len(feature)e calcInfoEntropy(sub_feature, sub_label)return pHA * ebase_e calcInfoEntropy(feature, label)f np.array(feature)# 得到指定特征列的值的集合f_set set(f[:, index])sum_HDA 0# 计算条件熵for value in f_set:sum_HDA calcHDA(feature, label, index, value)# 计算信息增益return base_e - sum_HDA# 获得信息增益最高的特征def getBestFeature(self, feature, label):max_infogain 0best_feature 0for i in range(len(feature[0])):infogain self.calcInfoGain(feature, label, i)if infogain max_infogain:max_infogain infogainbest_feature ireturn best_feature# 计算验证集准确率def calc_acc_val(self, the_tree, val_feature, val_label):result []def classify(tree, feature):if not isinstance(tree, dict):return treet_index, t_value list(tree.items())[0]f_value feature[t_index]if isinstance(t_value, dict):classLabel classify(tree[t_index][f_value], feature)return classLabelelse:return t_valuefor f in val_feature:result.append(classify(the_tree, f))result np.array(result)return np.mean(result val_label)def createTree(self, train_feature, train_label):# 样本里都是同一个label没必要继续分叉了if len(set(train_label)) 1:return train_label[0]# 样本中只有一个特征或者所有样本的特征都一样的话就看哪个label的票数高if len(train_feature[0]) 1 or len(np.unique(train_feature, axis0)) 1:vote {}for l in train_label:if l in vote.keys():vote[l] 1else:vote[l] 1max_count 0vote_label Nonefor k, v in vote.items():if v max_count:max_count vvote_label kreturn vote_label# 根据信息增益拿到特征的索引best_feature self.getBestFeature(train_feature, train_label)tree {best_feature: {}}f np.array(train_feature)# 拿到bestfeature的所有特征值f_set set(f[:, best_feature])# 构建对应特征值的子样本集sub_feature, sub_labelfor v in f_set:sub_feature []sub_label []for i in range(len(train_feature)):if train_feature[i][best_feature] v:sub_feature.append(train_feature[i])sub_label.append(train_label[i])# 递归构建决策树tree[best_feature][v] self.createTree(sub_feature, sub_label)return tree# 后剪枝def post_cut(self, val_feature, val_label):# 拿到非叶子节点的数量def get_non_leaf_node_count(tree):non_leaf_node_path []def dfs(tree, path, all_path):for k in tree.keys():if isinstance(tree[k], dict):path.append(k)dfs(tree[k], path, all_path)if len(path) 0:path.pop()else:all_path.append(path[:])dfs(tree, [], non_leaf_node_path)unique_non_leaf_node []for path in non_leaf_node_path:isFind Falsefor p in unique_non_leaf_node:if path p:isFind Truebreakif not isFind:unique_non_leaf_node.append(path)return len(unique_non_leaf_node)# 拿到树中深度最深的从根节点到非叶子节点的路径def get_the_most_deep_path(tree):non_leaf_node_path []def dfs(tree, path, all_path):for k in tree.keys():if isinstance(tree[k], dict):path.append(k)dfs(tree[k], path, all_path)if len(path) 0:path.pop()else:all_path.append(path[:])dfs(tree, [], non_leaf_node_path)max_depth 0result Nonefor path in non_leaf_node_path:if len(path) max_depth:max_depth len(path)result pathreturn result# 剪枝def set_vote_label(tree, path, label):for i in range(len(path)-1):tree tree[path[i]]tree[path[len(path)-1]] vote_labelacc_before_cut self.calc_acc_val(self.tree, val_feature, val_label)# 遍历所有非叶子节点for _ in range(get_non_leaf_node_count(self.tree)):path get_the_most_deep_path(self.tree)# 备份树tree deepcopy(self.tree)step deepcopy(tree)# 跟着路径走for k in path:step step[k]# 叶子节点中票数最多的标签vote_label sorted(step.items(), keylambda item: item[1], reverseTrue)[0][0]# 在备份的树上剪枝set_vote_label(tree, path, vote_label)acc_after_cut self.calc_acc_val(tree, val_feature, val_label)# 验证集准确率高于0.9才剪枝if acc_after_cut acc_before_cut:set_vote_label(self.tree, path, vote_label)acc_before_cut acc_after_cutdef fit(self, train_feature, train_label, val_feature, val_label)::param train_feature:训练集数据类型为ndarray:param train_label:训练集标签类型为ndarray:param val_feature:验证集数据类型为ndarray:param val_label:验证集标签类型为ndarray:return: None#************* Begin ************#self.tree self.createTree(train_feature, train_label)self.post_cut(val_feature, val_label)#************* End **************#def predict(self, feature)::param feature:测试集数据类型为ndarray:return:预测结果如np.array([0, 1, 2, 2, 1, 0])#************* Begin ************## 单个样本分类result []def classify(tree, feature):if not isinstance(tree, dict):return treet_index, t_value list(tree.items())[0]f_value feature[t_index]if isinstance(t_value, dict):classLabel classify(tree[t_index][f_value], feature)return classLabelelse:return t_valuefor f in feature:result.append(classify(self.tree, f))return np.array(result)#************* End **************# 第7关鸢尾花识别 #********* Begin *********# import pandas as pd from sklearn.tree import DecisionTreeClassifierdf pd.read_csv(./step7/train_data.csv).as_matrix() label pd.read_csv(./step7/train_label.csv).as_matrix() df_test pd.read_csv(./step7/test_data.csv).as_matrix()ft DecisionTreeClassifier() ft.fit(df,label) result ft.predict(df_test)result pd.DataFrame({target:result}) result.to_csv(./step7/predict.csv, indexFalse) #********* End *********#

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

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

相关文章

哪家公司的网站做得好快速建设房产网站

目录 栈的概念及结构栈的实现初始化栈入栈出栈其他一些栈函数 小结栈相关的题目 栈的概念及结构 栈是一种特殊的线性表。相比于链表和顺序表,栈只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的…

做教育行业营销类型的网站浙江建设信息港网站查询

文章目录 盲注增删改查 盲注 概念:在注入过程中,获取的数据不能回显至前端页面,此时我们需要利用一些方法进行判断或尝试,这个过程被称为盲注。 解决:常规的联合查询注入不行的情况。 分类: 基于布尔的SQ…

成都住房和城乡建设厅网站qq快速登录入口

ltrim()函数是PHP中的内置函数,可从字符串左侧删除空格或其他字符(如果指定)。用法:ltrim( $string, $charlist )参数:函数ltrim()接受两个参数,如上面的语法所示。在这两个参数中,一个是必需的,另一个是可选的。下面将…

用vs2010做免费网站模板下载地址翻译api wordpress

从上一篇博客我们得知浏览器是如何生成了HTTP消息了,但是浏览器作为应用程序,是不具备向网络中发送请求的能力,而是需要委托给操作系统的内核协议栈来发送请求。在委托协议栈之前,浏览器还要做的一件事情就是将域名转换为IP地址。…

优秀网站开发商网页小游戏有哪些

项目地址:https://gitee.com/lwj/flowable.git 分支flowable-base 视频地址:https://www.bilibili.com/video/av79774697/ 业务场景: 实际场景中,有可能我们的流程变量会比较多,如果一个变量就作为一条记录存储的话&a…

做个网站多少钱合适做网站的专业公司

本文主要分为两个部分: 第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做? 第二部分&#xff1…

网站建设丨下拉找金手指上词快怎么做网站服务器

无人驾驶飞机简称“无人机”,英文缩写为“UAV”,是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机,或者由车载计算机完全地或间歇地自主地操作。是一种不需要人操控就能够自主飞行的飞行器,它可以执行多种任务&#xff…

做网站学哪些语言网络培训的功能主要有

人生有非常多的十字路口 诸如:大学选择专业、毕业选择公司、选择技术方向、两年发展方向、三年发展方向、五年发展方向。 在之前,我选择深入做elasticsearch,做专精es搜索和优化。做了大概4年时间。 但是现在又走到了很难抉择的十字路口 第…

网站免费正能量直接进入老狼中国建设银行官网站保本理财

之前给大家介绍了如果使用人工智能来提高SCI写作效率的神器,相信大家对SCI写作已经很有信心了。但有些小伙伴后台说对投稿过程很没有概念,不同期刊不同状态。那么今天我们就对SCI投稿过程、投稿状态做一个总结和解析以及拒稿后处理对策及接受后期相关问答…

门面商铺装修seo优化实训报告

上一篇ASP.NET Core中使用IOC三部曲(二.采用Autofac来替换IOC容器,并实现属性注入)我们讲了如何将默认的容器替换为Autofac,并使用属性注入.那么这一篇我们就来讲讲如何利用Autofac实现我们的AOP(面向切面编程) .1.引用正确的库来实现AOP既然是跨平台,那么在asp.net core因为采…

烟台哪里有做网站辽宁网络推广

文章目录1. 比赛结果2. 题目1. LeetCode 5400. 旅行终点站 easy2. LeetCode 5401. 是否所有 1 都至少相隔 k 个元素 medium3. LeetCode 5402. 绝对差不超过限制的最长连续子数组 medium4. LeetCode 5403. 有序矩阵中的第 k 个最小数组和 hard1. 比赛结果 15分钟做出来了 1、2 …

百度网站网址是什么宁波做网站首荐荣盛网络

目录 习题6-4 推导LSTM网络中参数的梯度, 并分析其避免梯度消失的效果 >LSTM前向传播 >反向传播 求梯度 >梯度消失和梯度爆炸怎么来的? >关键点:LSTM如何缓解梯度消失? 习题6-3P 编程实现下图LSTM运行过程 1…

阿里云怎么放多个网站主题 sku 推广

为什么要选择百度云 ? 因为他免费用一年 首先要先开通百度云内容安全服务 按照操作指引走完整套 ContentCensor Java SDK目录结构** com.baidu.aip├── auth //签名相关类├── http //Http通…

保定网站设计优势做网站公司融资多少

Nginx 中将前端请求中的所有以 “/apiUrl” 开头的路径代理到 http://192.12.200.101:9813 例如: /apiUrl/login > http://192.12.200.101:9813/login 配置nginx环境 进入Nginx 的配置文件编辑界面: sudo nano /etc/nginx/conf.d/default.conf开始编辑 defaul…

有名网站建设公司WordPress如何推广

Dubbo面试专题 JVM面试专题 Java并发面试专题 Kafka面试专题 MongDB面试专题 MyBatis面试专题 MySQL面试专题 Netty面试专题 RabbitMQ面试专题 Redis面试专题 Spring Cloud面试专题 SpringBoot面试专题 zookeeper面试专题 最后 给大家送一个小福利 资料都是免费分享的&#xf…

品牌型网站设计阿里云clouder网站建设

全世界只有3.14 % 的人关注了爆炸吧知识大家好,我是小南,本科就读于国内某双非二本院校,于2019年拿到了浙江大学的直博录取函。很多人问我从二本院校成功跨越到国内知名高校的秘诀是什么,我个人觉得,除开运气&#xff…

岳阳做网站费用这么自己建设网站

登录—专业IT笔试面试备考平台_牛客网 题意 思路 首先想法非常单一,一定是去枚举操作点,然后看它染白和不染的价值差值 也就是说,把一个黑色结点染白之后,对哪些结点的价值会影响 不难想象其实就是操作结点的子树和该点连通的…

网站站点建设的端口摄影化妆艺术学校网站源码

实现效果:点击图表,弹出该数据下对应得详情 官方文档: 封装的图表组件中: 点击获取点击得对象,进而将需要的参数传给父组件,在父组件中再去请求接口获取更多信息 this.chart.on(click, (params)> {th…

网站模版 拓如何上传程序到网站空间

安卓手机下载一个络达官方的刷机软件然后连接上耳机,打开软件,就可以看到耳机芯片的相关信息。软件下载地址:https://pan.baidu.com/s/1MOXjkHv1wfxWWIVdcsMSFg 提取码: tasc我们的耳机都是络达芯片,不怕你检测,希望用…

dw个人网站制作模板做纺织机械的网站域名

Windows电脑向ipad和iOS系统共享文件夹 这个方案不需要下载任何软件,但是要求 iOS 和 Windows 在同一个局域网内。再大的文件都可以在 iOS13 自带的的“文件App”里实时显示,可以直接打开。这个解决方案需要你 Windows 电脑上登陆了微软账号&#xff0c…