自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 机器学习——

K均值是一种用于聚类的无监督学习算法,而KNN是一种用于分类和回归的监督学习算法。K均值着重于发现数据中的簇结构,而KNN则用于根据最近邻居的信息对新数据点进行分类或回归。当训练或者计算好一个模型的时候,我们需要保存模型,主要是保存好算法的参数。:对于每个簇,计算其所有成员的平均值,并将该平均值作为新的簇中心。:对于每个数据点,将其分配到距离最近的簇中心所属的簇。聚类算法,用于将数据集分成K个不同的组或簇。:算法收敛时停止迭代,簇中心不再改变或改变非常小。:首先,你需要确定要分成的簇的数量K。

2023-10-22 17:43:14 30

原创 机器学习——

AUC是ROC曲线下方的面积,即ROC曲线下的积分值。AUC越接近1,表示模型的性能越好,因为它意味着在各种阈值下,真正例率相对较高,而假正例率相对较低。ROC曲线和AUC指标是用于评估二分类模型性能的工具,模型在不同阈值下的表现,对比不同模型的性能。ROC曲线提供了可视化,而AUC是一个单一的数值,用于总结模型的性能。精确率和召回率存在一种权衡关系:提高精确率可能会降低召回率调整阈值可以影响模型的精确率和召回率。精确率和召回率是用于评估分类模型性能的两个重要指标,特别是在二分类问题中(有正类和负类)

2023-10-22 15:22:31 20 1

原创 机器学习——

逻辑回归是一种用于分类问题的统计学习方法,而不是回归问题。它通过将线性回归模型的输出映射到一个概率值,然后根据这个概率值来做出分类决策。当模型在训练集上表现得很好,但在未见过的数据上表现不佳时,就出现了过拟合问题。过拟合表示模型过于复杂,过于匹配训练数据中的噪声,而不是真正的模式。当模型无法适应训练数据,无法捕捉数据中的模式和关系时,就出现了欠拟合题。如果模型过于简单,可以增加其复杂度,例如使用更多特征或更复杂的模型。减小模型的复杂度,例如减少特征数或使用正则化方法。增加训练时间,允许模型更好地适应数据。

2023-10-15 19:31:17 29 1

原创 机器学习——

正规方程提供了一个封闭解,适用于小型数据集,而梯度下降则是一个迭代方法,适用于大型数据集和更广泛的机器学习问题。用来度量模型的预测值与实际值之间的差距或错误的函数。不同的任务(如回归、分类)和算法(如线性回归、逻辑回归)通常需要不同的损失函数。梯度下降是一种迭代方法,用于逼近线性回归的最佳参数,找到损失函数的局部最小值。用于二分类和多分类问题,度量分类模型的预测概率与真实标签之间的差距。用于多分类问题,度量分类模型的预测概率与真实标签之间的差距。用于回归问题,度量模型的预测值与实际值之间的均方差。

2023-10-15 16:45:38 22 1

原创 决策树——

a. 计算分裂标准:根据选定的分裂标准(如信息增益或基尼不纯度),计算每个特征的分裂得分。c. 创建子节点:使用选定的特征将数据集分成多个子集,每个子集对应一个子节点。决策树的关键是如何选择最佳的特征来进行数据分割。这个分裂过程将构建整个决策树,每个节点都是一个特征选择和数据分割的结果。d. 递归过程:对每个子节点递归执行上述步骤,直到达到停止条件。这个分裂过程将构建整个决策树,每个节点都是一个特征选择和数据。b. 选择最佳特征:选择具有最高分裂得分的特征作为分裂点。# 计算模型的准确率。

2023-10-08 18:32:09 35 1

原创 朴素贝叶斯算法

print("直接比对真实值和预测值:\n", y_test == y_predict)·相互独立: 如果P(A,B)= P(A)P(B), 则称事件A与事件B相互独立。例如: P(程序员|喜欢), P(程序员, 超重|喜欢)例如: P(程序员,匀称), P(程序员,超重|喜欢): 就是事件A在另外一个事件B已经发生条件下的发生概率。print("准确率为: \n", score)#3) 特征工程:文本特征抽取-tfidf。# 方法1: 直接比对真实值和预测值。记作: P(A,B)记作: P(A|B)

2023-10-08 16:38:42 22 1

原创 机器学习——

2.estimator.fit(x_train,y_train)计算。k取太大会有样本不均衡的情况导致估计不准确导致取占比大的种类的情况。因此在使用k—近邻算法时要对数据进行处理。1)直接比对真实值和预测值。k取太小会受异常点的影响导致估计错误。2.调用fit_transform。1.实例化一个estimator。sklearn机器学习算法的实现。特征工程的接口称为转换器。1.先实例化一个转换器。

2023-10-01 20:54:26 25 1

原创 机器学习——特征预处理,降维

高位数据转化为低维数据的过程,可能会舍弃原有数据创造新的变量,但降低了原数据的维数即复杂度,可应用在回归分析或者聚类分析中。阈值越大被删除的数越多(VarianceThreshold()中的参数默认为零)将其转化为统一的零到一标准feature_range=(0,1)找到一根直线保留这5个点的信息,化二维为一维(矩阵运算)Filtter过滤式:方差选择法,相关系数法。降维的两种方式:特征选取,主成分分析。都在均值为零标准差为一附近。数据都在0到1区间内。减少异常点带来的误差。

2023-10-01 18:07:06 35 1

原创 机器学习——

data=[{'city':'北京','temperature':100},{'city':'上海','tempperature':60},{'city':'深圳','temperature':30}]print("特征名字:\n",transfer.get_feature_name())print("查看特征值的名字:\n"iris.feature_names)print("查看特征值的名字:\n"iris.feature_names)print("鸢尾花数据集:\n",iris)

2023-09-24 20:58:43 31 1

原创 mat&pa——

df.sort_index(axis=1,ascending=False)#axis等于1则按列排序等于零按行排序,ascending代表升序排列。#输出就是一组在两个时间点内时间间隔为30分钟的时间数据。df.sort_values(by=‘B’)#按值排序。提供三个参数start,end,freq。设置好bottom就可以产生堆叠效果。df[df>0]把大于零的数据显示出来。plt.title("基本柱状图")创建时间范围data_range()#把B列所有大于零的行都选取出来。#按标签选择一行数据。

2023-09-21 20:00:34 28

原创 matplotlib——

plt.text(x,y,'%s万'%y)

2023-09-17 16:02:11 22 1

原创 Matplotlib-

plt.xticks(range(1,len(times),2),["%s年"%i for i in times]rotation=45)plt.rcParams["font.sans-serif"]=["SimHei"]#将此行设置在前面。首先导入matplotlib包中的pyplot模块,并以as别名的形式简化引入包的名称。#刻度会少一半并且会倾斜并且坐标中的时间会替换成labels中的数字。#刻度会少一半并且会倾斜,并且时间后会加上年。上述的值作用到x轴上,将该值的平方作为y值。

2023-09-13 20:42:26 33

原创 numpy——

axis:如果没有指定排序,则默认在最后一个轴上排序,如果=0,按列排序等于1按行排序。axis:默认为none,如果值为0,追加的值会追加到行,如果为1追加的值会追加到列。size为数组维度大小,dtype为数据类型,默认的数据类型是np.int。在numpy中有自己的随机函数,包含在random模块中。values:向arr数组中添加的值,需要和arr数组的形状保持一致。order:如果数组指定了字段,则order表示要排序的字段。high没有填写时,默认随机数的范围时0到low。

2023-09-10 19:54:06 22 1

原创 数据分析——

区别在于数组切片是原始数组视图(原始都会跟着修改),如果不想更改原始数组,需要显式的复制,从而得到他的副本(.copy())ndarray对象的内容可以通过索引或者切片来访问和修改,与python中list的切片操作一样。由于上面数据不同列数据的含义和数据类型不同,所以需要自定义数据类型。如果想求某一维度的平均值,设置axis参数,多维数组的元素指定。arr_45[...][2]代表的不是第三列而是第三行。arr_45[...,2]代表的是第二列。loadtxt读取txt文件,csv文件。

2023-09-08 17:08:57 36 1

原创 数据分析-

例如·一个元素类型为float64的数组itemsize属性值为8(float64占用64个bits,每个字节长度为8,所以64/8,占用8个字节)np.resize(new_shape,recheck=False) 不足的填充0元素。numpy数据类型转换,调用astype返回数据类型修改后的数据,但源数据类型不会变。dtype:返回的数据类型,如果没有提供,则会使用输入数据的类型。np.resize(a,new_shape)不足的填充重复副本。np.arrange(20,3)#报错。

2023-09-01 21:23:12 34 1

原创 数据分析1

类型为bool值,默认为False,使用数组的数据类型,为true,使用object的内部数据类型。它直接以数组、矩阵为粒度计算并且支撑大量的数学函数,而python需要用for循环从底层实现。1.如果列表中元素类型不相同,最后哪种储存最大就是哪种形式(整型和浮点型最后是浮点型)即numpy定义了一个n维数组对象,采用的是数组的索引机制 ,基于网页的用于交互运算的应用程序,可直接通过浏览器运行代码,如果将浮点型设置为整型,会直接丢弃小数部分,不会四舍五入。3.如果嵌套序列的数量不一样(会变成一维的)

2023-09-01 10:39:15 27 1

原创 可视化图表

title_opts=TitleOpts(title="GDP展示",pos_left="center",pos_bottom="1%"),通过json.dumps(data)方法把python数据转化为json数据此时data为字符串。line.add_xaxis(["中国","美国","英国"])line.add_xaxis(["中国","美国","英国"])bar.add_xaxis(["中国","美国","英国"])格式,可以按照json特定的格式去组织和封装数据。json的格式也有要求。

2023-08-27 13:48:53 37

原创 python三

模块是已经存在可以拿来调用的东西可以通过导入模块的方式拿来使用 面向对象包含主要三大特性:封装,继承,多态 class Student: name = None #参数列表里必须要有self def say_hi(self): print("he") def say_hi2(self,msg): print(f"hi,{msg}") s1 = Student() s1.say_hi()

2023-08-21 22:06:07 45 1

原创 python二

w 打开一个i文件只用于写入,如果该文件存在则打开文件,并且从头开始编辑,原有内容会被删除。a打开一个文件用于追加,,如果文件已经存在,则追加写入,如果不存在,创建新文件进行写入。with open("测试.txt","r",encoding="UTF-8"f=open("测试.txt","r",encoding="UTF-8" )name2:{"数学":100,"英语":90},name2:{"数学":100,"英语":90},dict={name1:{"数学":100,"英语":90},

2023-08-21 17:38:37 34 1

原创 python一

print(f"2元组的元素有: {eLement}")2.print("%s身上有%s的香水味"%(name,name2)input也可以放进判断语句,但如果有关于数字的判断,要强转成int型。1.print(f"{name1}身上有{name2}的香水味")就算元组中只有一个元素的话,需要在元素的后面加上一个逗号。追加一个到列表的尾部,list.append(元素)在函数体内的变量前面使用,可以修改函数体外部的值。name=input("请输入你的名字")插入, list.insert(下标,值)

2023-08-20 08:28:15 52

原创 就是学Python

看完就忘主打一个看寂寞。

2023-08-18 14:45:03 19 1

空空如也

空空如也

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

TA关注的人

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