自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 树之二叉树的创建,遍历及其应用史上最全!(C++代码实现)

问题背景树是数据结构中很重要的一部分内容,而在实际问题当中二叉树又是最基础的内容,基于此,本文将向读者展示如何创建一颗二叉树和先序遍历,中序遍历和后序遍历二叉树,以及二叉树的遍历的应用。问题要求4.创建二叉树代码void creatbtree(pointer&t){ int num;cin>>num; if(num==0) t=NULL; else{ t=new btree; t->data=nu.

2020-12-14 20:47:28 2168

原创 通信信道带宽为1Gbit/s,端到端时延为10ms。TCP的发送窗口为65535字节。试问: 可能达到的最大吞吐量是多少?信道的利用率是多少?

由发送时延=数据长度/信道带宽=655358bit/1Gb/s=0.52428ms来回的传播时延=10ms2=20ms总时延=20.52428ms所以每秒可以产生1000/20.52428个窗口最大吞吐量=6553681000/20.52428=25544769bit/s信道利用率=最大吞吐量/信道带宽=25544769bit/s/1Gbit/s100%=2.55%...

2021-11-26 20:28:59 8671 2

原创 1024程序员节

此文章仅用来庆祝1024程序员节。

2021-10-24 11:26:52 213

转载 《计算机网络(第7版)-谢希仁》学习笔记+知识点总结-汇总

基于<<计算机网络(第7版)>>–谢希仁分享一下个人一学期记录的笔记和期末复习的总结,其中“*”表示重点内容;每章节选出部分重要习题以供参考第一章-概述:https://blog.csdn.net/weixin_43093481/article/details/86683911第二章-物理层:https://blog.csdn.net/weixin_43093481/article/details/86683978第三章-数据链路层:https://blog.csdn.net

2021-09-26 10:38:09 792

原创 安装spacy的英文和中文模型的捷径(最全详解)

文章目录前言一、下载spacy二、在Anaconda中添加镜像源三、下载Anaconda已经集成了spacy的英文model四、下载各类spacy模型的网址总结前言本文需要提前下载Anaconda一、下载spacy在终端中执行:pip install spacy二、在Anaconda中添加镜像源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config

2021-09-14 19:29:28 2347 6

原创 matplotlib无法显示中文问题的解决(全网最全)

文章目录前言一、第一种方案,直接使用系统资源库中的中文字体二、第二种方案,下载字体后定向指定1.下载字体:2.找到配置文件:3.找到ttf字体文件存放目录并添加ttf文件4.重新加载新的字体库:5.在画图中应用simhei字体:6.结果展示:三、总结:前言你是否也遇到了这样的问题,在进行数据可视化时候,输入了类似这样的几行代码。import matplotlib.pyplot as pltx = ['张三', '李四', '-1']y = [1, 2, 3]plt.xlabel('姓名')

2021-09-13 23:16:36 19261 10

原创 Pytorch的安装教程

笔者最近在安装Pytorch,发现安装过程还是有一点复杂的,所以在这里将安装教程总结出来,希望同行们少走弯路。1.要安装Pytorch,请参阅Pytorch网站上的安装说明。Pytorch官网查询自己电脑的适配版本2.在终端输入类似的命令:conda install pytorch torchvision torchaudio -c pytorch3.最好安装一个Anaconda在终端中输入:然后创建环境 conda create -n your_env_name(虚拟环境名称)激

2021-09-13 19:07:46 670

原创 神经网络模型中的max_iter参数是什么

max_iter是设定的最大迭代次数。

2021-09-12 19:30:02 4238

原创 机器学习之数据预处理——Normalizer

文章目录前言一、手工生成数据二、使用步骤1.引入库2.对数据进行预处理3.结果分析:前言数据预处理是机器学习中常用的处理数据的方法,这样能够让模型的训练速度得到质的提升,本文将为大家展现常用的几种数据预处理方法。一、手工生成数据import numpy as npimport matplotlib.pyplot as pltfrom sklearn.datasets import make_blobsX,y=make_blobs(n_samples=40,centers=2,random.

2021-09-12 19:22:35 1778

原创 机器学习之数据预处理——RobustScaler

文章目录前言一、手工生成数据二、使用步骤1.引入库2.对数据进行预处理3.结果分析:前言数据预处理是机器学习中常用的处理数据的方法,这样能够让模型的训练速度得到质的提升,本文将为大家展现常用的几种数据预处理方法。一、手工生成数据import numpy as npimport matplotlib.pyplot as pltfrom sklearn.datasets import make_blobsX,y=make_blobs(n_samples=40,centers=2,random.

2021-09-12 19:11:28 3759

原创 机器学习之数据预处理——MinMaxScaler

文章目录前言一、手工生成数据二、使用步骤1.引入库2.对数据进行预处理3.结果分析:前言数据预处理是机器学习中常用的处理数据的方法,这样能够让模型的训练速度得到质的提升,本文将为大家展现常用的几种数据预处理方法。一、手工生成数据import numpy as npimport matplotlib.pyplot as pltfrom sklearn.datasets import make_blobsX,y=make_blobs(n_samples=40,centers=2,random.

2021-09-12 18:56:41 1710

原创 机器学习之数据预处理——StandardScaler

文章目录前言一、手工生成数据二、使用步骤1.引入库2.对数据进行预处理3.结果分析:前言数据预处理是机器学习中常用的处理数据的方法,这样能够让模型的训练速度得到质的提升,本文将为大家展现常用的几种数据预处理方法。一、手工生成数据import numpy as npimport matplotlib.pyplot as pltfrom sklearn.datasets import make_blobsX,y=make_blobs(n_samples=40,centers=2,random.

2021-09-12 18:20:13 4621

原创 机器学习之train_test_split详解

文章目录前言一.train_test_split是什么?二、使用步骤1.引入库2.读入数据3.参数意义总结前言train_test_split是python在机器学习中常常需要用到的一个方法安装方法:pip install sklearn导入方法:from sklearn.model_selection import train_test_split一.train_test_split是什么?train_test_split方法能够将数据集按照用户的需要指定划分为训练集和测试集/二、.

2021-09-12 17:01:59 45434

原创 手把手教你机器学习之神经网络

1.神经网络的原理:输入特征和预测的结果用节点进行表示,系数w用来连接这些节点。而在MLP模型中,算法在过程中添加了隐藏层,然后在隐藏层重复进行上述加权求和计算,最后再把隐藏层所计算的结果用来生成最终结果。这样一来,模型要学习的特征系数,或者说权重,就会很多了。在每一个输入的特征和隐藏单元之间,都有一个系数,这一步也是为了生成这些隐藏单元,而每个隐藏单元到最终结果之间,也都有一个系数。而计算一系列的加权求和和计算单一的加权求和。2.神经网络中的非线性矫正:在生成隐藏层之后,我们要对结果进行非线性矫

2021-09-12 12:27:15 3272

原创 手把手教你机器学习之支持向量机

1.支持向量机SVM的基本原理:SVM就是解决线性不可分的算法。将数据投射到高维空间,这正是SVM算法的核函数的功能.在SVM中用得最普遍的两种把数据投射到高维空间的方法分别是多项式内核和径向基内核(RBF)。其中多项式内核比较容易理解,它是通过把样本原始特征进行乘方来把数据投射到高维空间。至于RBF内核,将在之后的例子中展示。2.SVM算法的优势与不足:SVM可以说是在机器学习领域非常强大的算法,SVM应对高维数据集和低维数据集都还算是得心应手。但是,前提条件是数据集的规模不算大。如果数据集

2021-09-11 20:36:52 568

原创 数据处理之get_dummise方法的应用

get_dummies是pandas中的一个功能,它可以在现有的数据集上添加虚拟变量,让数据集变成可以用的格式。get_dummies很聪明,它把字符串类型的特征拆分开,如把单位性质分为 “单位性质_Federal-gov”,''单位性质_Local-gov''等,如果样本人群的工作单位是联邦政府,那么’‘单位性质_Federal-gov’‘这个特征的值就是1,而其它的工作单位性质的特征值就会是0,这样就把字符串巧妙地转换成了0和1这两个整型数值。...

2021-09-11 18:51:19 1989

原创 手把手教你机器学习之随机森林

常言道,不要为了一棵树去放弃一片森林。这句话在机器学习算法方面也是非常正确的。虽然决策树算法简单易理解,而且不需要对数据进行转换,但是它的缺点也很明显——决策树往往容易出现过拟合的问题。不过这难不倒我们,因为我们可以让很多树组成团队来工作,也就是——随机森林。1.随机森林的基本概念:随机森林有的时候也被称为是随机决策森林,是一种集合学习方法,既可以用于分类,也可以用于回归。而所谓的集合学习算法,其实就是把多个机器学习算法综合在一起,制造出更大模型的意思。ps:在机器学习领域,实际有很多集合学习,.

2021-09-11 18:32:12 2274 1

原创 手把手教你机器学习之决策树与随机森林

决策树: 决策树是一种在分类与回归中都有非常广泛应用的算法,它的原理是通过对一系列问题进行if/else的推导,最终实现决策。1. 决策树的基本原理:决策树是通过一系列规则对数据进行分类的过程。它提供一种在什么条件下会得到什么值的类似规则的方法。决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树。近来的调查表明决策树也是最经常使用的数据挖掘算法,它的概念非常简单。决策树算法之所以如此流行,一个很重要的原因就是使用者基本上不用了解机器学习算法,也不用深究它是如何工作的.

2021-09-10 19:46:29 323

原创 朴素贝叶斯实战——判断肿瘤是良性还是恶性

1.接下来我们将使用朴素贝叶斯算法来进行一个小的项目实战——判断一个患者的肿瘤是良性还是恶性。这里我们将使用一个来自真实世界的数据集——威斯康星乳腺肿瘤数据集。2.对数据集进行分析:威斯康星乳腺肿瘤数据集是一个非常经典的用于医疗病情分析的数据集,它包括569个病例的数据样本,每个样本具有30个特征值,而样本共分为两类:分别是恶性和良性。from sklearn.datasets import load_breast_cancercancer=load_breast_cancer()from skl

2021-09-10 12:14:01 1810

原创 手把手教你机器学习之朴素贝叶斯

朴素贝叶斯算法是一种基于贝叶斯理论的有监督学习算法。之所以说“朴素”,是因为这个算法是基于样本特征之间互相独立的“朴素”假设。正因为如此,由于不用考虑样本特征之间的关系,朴素贝叶斯分类器的效率是非常高的。1.贝叶斯定理:贝叶斯定理2.朴素贝叶斯算法的不同方法:朴素贝叶斯算法包含多种方法,在sklearn中,朴素贝叶斯有三种方法,分别是贝努力贝叶斯,高斯贝叶斯和多项式贝叶斯。贝努力朴素贝叶斯:贝努力朴素贝叶斯,这种方法比较适合于符合贝努力分布的数据集,贝努力分布也被称为"二项分布"或者是“.

2021-09-09 22:53:23 254

原创 L1正则化的线性模型——套索回归

1.套索回归的原理:和岭回归一样,套索回归也会将系数限制在非常接近0的范围内,但是它限制的方式稍微有些不同,我们称之为L1正则化。与L2正则化不同的是,L1正则化会导致在使用套索回归的时候,有一部分特征的系数会正好等于0.也就是说,有一部分特征会彻底被模型忽略掉,这也可以看成是模型对特征进行自动选择的一种方式。把一部分系数变成0有助于让模型更容易理解,而且可以突出体现模型中最重要的那些特征。2.套索回归实战:import numpy as npfrom sklearn.datasets import

2021-09-09 19:19:14 2211

原创 L2正则化的线性模型——岭回归

1.岭回归的介绍:岭回归也是回归分析中常用的线性模型,它实际上是一种改良的最小二乘法。2.岭回归的原理:岭回归实际上是一种能够避免过拟合的线性模型。在岭回归中,模型会保留所有的特征变了,但是会减小特征变量的系数值,让特征变量对预测结果的影响变小,在岭回归中是通过改变其alpha参数来控制减小特征变量系数的程度。而这种通过保留全部特征变量,只是降低特征变量的系数值来避免过拟合的方法,我们称之为L2正则化。3.岭回归的实战:from sklearn.datasets import load_d

2021-09-09 18:52:02 1759

原创 手把手教你机器学习之广义线性模型

1.线性模型的基本概念:在机器学习领域,常用的线性模型包括线性回归,岭回归,套索回归,逻辑回归和线性SVC等。线性模型的一般公式:y=w[0]·x[0]+w[1]·x[1]+···+w[p]·x[p]+b式中x[0],x[1],···,x[p]为数据集中特征变量的数量(这个公式表示数据集中的数据点一共有p个特征),w和b为模型的参数,y为模型对于数据的预测值。2.线性模型的特点:使用线性模型的前提条件,是假设目标y是数据特征的线性组合。但需要注意的是,使用一维数据集进行验证会让我们有一点

2021-09-08 22:05:36 773

原创 手把手教你K最近邻算法项目实战——酒的分类

K最邻算法的原理:简单来说就是“近朱者赤,近墨者黑。”K最近算法也可以用于回归,原理和其用于分类是相同的。当我们使用K最近邻回归计算某的数据点的预测值时,模型会选择离该数据点最近的若干个训练数据集的中的点,并且将它们的y值取平均值,并把该平均值作为新数据点的预测值。1.对数据集进行分析在本节中,我们将使用scikit-learn内置的酒数据来进行实验。首先导入数据集:from sklearn.datasets import load_winewine=load_wine() #实例化对象pr

2021-09-08 18:29:55 1536

原创 神经网络的MNIST数据集无法导入问题解决方案

1.笔者最近在学习神经网络模型的搭建,发现最新版的skleran无法导入MNIST数据集2.解决方案:from sklearn.datasets import fetch_openml mnist = fetch_openml('mnist_784')原因是最新版的sklearn已经不支持fetch_mldata了。...

2021-09-07 18:54:57 557

原创 C++基础之逆序输出数

2.代码如下:#include<iostream>#include<iomanip>#include<algorithm>using namespace std;bool cmp(int x,int y){ return x > y;}int main(){ int num; cin>>num; int cy[5]={}; int i=0; while (num!=0) { ...

2021-09-06 22:15:46 3834

原创 C++基础之求两个数组的并集并升序输出

2.`#include<iostream>#include<iomanip>using namespace std;int main(){ int a[6],b[8],c[10],i,j,k=1,x,y,p; for(i=1;i<=6;i++) { cin>>x; a[i]=x; } for(j=1;j<=8;j++) { cin>>y; b[j]=y; } for(i=1;i<=6;i++)...

2021-09-06 21:28:26 1084 1

原创 C++基础之求对角线和

2代码如下:#include<iostream>#include<iomanip>using namespace std;int main(){ int c[3][3],i,j,sum=0,x; for(i=0;i<=2;i++) { for(j=0;j<=2;j++) { cin>>x; c[i][j]=x; } } .

2021-09-06 21:06:08 1174 2

原创 C++基础之求区间圆面积

2.代码如下:#include<iostream>#include<iomanip>#include<math.h>#define pi acos(-1)using namespace std;int main(){ int i; double s; for(i=1;i<=10;i++){ s=pi*i*i; if(pi*i*i>40&&pi*i*i<90){...

2021-09-05 22:40:57 88

原创 C++基础之求一个数的阶乘中0的个数

2.代码如下:#include<iostream>using namespace std;int main(){ int num; cin>>num; int sum=0; while(num>0) { sum+=num/5; num=num/5; } cout<<sum; return 0;}

2021-09-05 22:16:13 197 2

原创 C++基础之求x+y=指定数

2.代码如下:#include<iostream>using namespace std;int main(){ int i,j,a,b,c; for(i=100;i<1000;i++) { a=i/100; b=i/10%10; c=i%10; for(j=100;j<1000;j++) { if(c*100+b*1...

2021-09-05 22:04:10 964

原创 C++基础之输出质数因子

2.代码如下:#include<iostream>using namespace std;int main(){ int i,n; cin>>n; for(i=2;i<=n;) { if(n%i==0) { cout<<i<<" "; n/=i; } else i++; } return 0;}

2021-09-05 21:50:44 998 1

原创 C++基础之求数中的偶数和

2.代码如下:#include <iostream>using namespace std;int main(){ int num; cin>>num; int sum=0; while (num--!=0) { int input; cin>>input; if(input%2==0){ sum+=input; } } cout<&...

2021-09-05 21:21:11 3281

原创 机器学习中决策树和随机森林每次得出的模型不一样的原因

每次决策树分叉时,所有的特征都是随机排序的,随机种子就是random_state如果你的max_features小于你总特征数n_features,那么每个分叉必须采样,随机性很大。即使你的max_features = n_features,表现相同的分叉还是会选第一个,所以依然有随机性,sklearn的算法大多有random_state,如果需要复盘或是需要模型稳定不变必须设置。...

2021-09-05 16:28:51 4630

原创 C++基础之山寨版斐波那契数列

1.2.代码如下:#include<iostream>using namespace std;int func(int a,int b,int c){ if(c==1){ return a; } if(c==2){ return b; } if(c%2!=0){ return (func(a,b,c-1)+func(a,b,c-2)); } if(c%2==0){ re

2021-09-04 21:52:01 158

原创 C++科学计数法保留小数

2.代码如下:#include<iostream>#include<iomanip>using namespace std;int main(){ int i,p=1; double sum=0; for(i=1;i<=30;i++) { p*=i; sum+=p; } cout<<setiosflags(ios::scientific)<<setprecision(2)<<sum; return 0;...

2021-09-04 21:21:00 1001

原创 C++基础之统计字符数目

2.代码如下:#include<iostream>using namespace std;int main(){ int ying=0,kong=0,shu=0,qi=0; char c; while((c=getchar())!='\n') { if((c>='a'&&c<='z')||(c>='A'&&c<='Z')) ying++; else if(c>='0'&&c<...

2021-09-04 21:04:59 311

原创 C++基础之求最大公约数与最小公倍数

2.代码如下#include<iostream>using namespace std;int main(){ int a,b; cin>>a>>b; int c=0; if(a<b){ for(int i=a;i<=a;i--){ if(b%i==0){ c=i; break; } ...

2021-09-04 21:03:29 113

原创 C++基础之A+B(基本输入输出1)

2.代码如下:#include<iostream>using namespace std;int main(){ int a; int b; int c[10000]={}; int i=0; while (cin>>a&&cin>>b) { c[i]=a+b; i++; } for(int j=0;j<i;j++) cout<...

2021-09-04 19:01:34 1065

原创 C++基础题之计数均正

2.代码如下:#include<iostream>#include<iomanip>using namespace std;int main(){ int a,i,num=0,c[100],j=1,sum=0; double p; for(i=1;i<=20;i++) { cin>>a; c[j++]=a; } for(i=1;i<=20;i++) { if(c[i]<0) num+...

2021-09-04 18:59:35 49

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除