自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 9.sklearn-K-means算法

1 )一种典型的无监督学习算法, 2 )主要用于将相似的样本自动归到一个类别中 3 )计算样本和样本之间的相似性,一般使用欧式距离。

2024-09-22 16:16:03 450

原创 8.sklearn-模型保存

相关环境配置看此篇文章,本专栏深度学习相关的版本和配置,均按照此篇文章进行安装。可以和上边保存模型的运行结果做对比,对比的结果是一样的,说明保存模型参数成功。

2024-09-19 19:21:36 545

原创 7.sklearn-逻辑回归、精确率和召回率、ROC曲线和AUC指标

Anaconda-创建虚拟环境的手把手教程相关环境配置看此篇文章,本专栏深度学习相关的版本和配置,均按照此篇文章进行安装。1.逻辑回归1.1 API介绍1.3 运行结果可以看出准确率:98.24%2.6 运行结果关注的是阳性的召回率:0.993.2 ROC曲线注:ROC的面积就是AUC的指标3.4 AUC计算API注意:y_true的值要求必须是0或1,如果你的数据不符合要求可以使用3.6 运行结果可以看出auc = 0.97 接近1,说明这个模型的效果还不错

2024-09-13 20:00:56 590

原创 6.sklearn-线性回归、岭回归、欠拟合和过拟合

Anaconda-创建虚拟环境的手把手教程相关环境配置看此篇文章,本专栏深度学习相关的版本和配置,均按照此篇文章进行安装。1.线性回归1.1 正规方程正规方程函数介绍:运行结果运行结果1.数据量小于10万条时,不建议使用梯度下降;2.正规方程(LinearRegression())不能解决拟合问题,使用的比较少;3.SGD – 随机梯度下降(Stochastic gradient descent)是一个优化方法。它在一次迭代时只考虑一个训练样本。优点:高效、容易实现缺点:SGD需要许

2024-09-08 16:31:28 590

原创 力扣-9. 回文数

给你一个整数 x ,如果 x 是一个回文整数,返回 true;否则,返回 false。解释:从左向右读, 为 -121。从右向左读, 为 121-。因此它不是一个回文数。方法2比方法1,少使用了s_tmp 的空间。但都是将数字转换为了字符串进行操作。是指正序(从左向右)和倒序(从右向左)读都是一样的整数。解释:从右向左读, 为 01。因此它不是一个回文数。例如,121 是回文,而 123 不是。输入:x = -121。输入:x = 121。

2024-09-05 22:10:35 397

原创 5.sklearn-朴素贝叶斯算法、决策树、随机森林

能够有效地运行在大数据集上,处理具有高维特征的输入样本,而且不需要降维。

2024-09-01 21:54:42 1030

原创 4.sklearn-K近邻算法、模型选择与调优

KNN核心思想:你的“邻居”来推断出你的类别 1 K - 近邻算法(KNN) 原理k = 1 容易受到异常点的影响如何确定谁是邻居?计算距离:距离公式欧氏距离 -- 算法默认的是使用欧式距离曼哈顿距离 绝对值距离明可夫斯基距离如果取的k值不一样?会是什么结果?k 值取得过小,容易受到异常点的影响k 值取得过大,样本不均衡的影响。

2024-08-29 20:47:02 745

原创 2.pandas--读取文件夹中所有excel文件进行合并

将merge.xlsx文件中对应的姓名和年龄的列数据提取出来,去掉行索引和列索引后再存储到本地。可以看出合并后的文件已经按照年龄排好序了。代码工程目录下,合并文件夹中的三个文件。

2024-08-21 22:44:23 426

原创 1.pandas--excel数据转换为txt格式

1.使用fscanf()将数据读取带结构体变量Ts中,再将存入到vector容器中。2.通过封装的PrintVector()可以看到打印是正确的。

2024-08-11 15:48:47 324

原创 3.特征工程-特征抽取、特征预处理、特征降维

2.train_test_split()调用划分数据集的函数,test_size=0.2意思是将150个数据中的20%划分为测试集,剩下的80%为训练集。3.与TfidfVectorizer()计算出的结果不同,CountVectorizer()统计的是特征出现的个数,TfidfVectorizer()统计的是特征的重要程度。1.TfidfVectorizer(stop_words=[“is”, “too”]),可以通过入参stop_words=[“is”, “too”]来控制不统计某些单词。

2024-08-05 23:02:45 922

原创 力扣-744. 寻找比目标字母大的最小字母

解释:letters 中没有一个字符在字典上大于 ‘z’,所以我们返回 letters[0]。输入: letters = [“x”,“x”,“y”,“y”], target = “z”输入: letters = [“c”, “f”, “j”],target = “a”输入: letters = [“c”,“f”,“j”], target = “c”解释:letters 中字典顺序上大于 ‘c’ 的最小字符是 ‘f’。解释:letters 中字典上比 ‘a’ 大的最小字符是 ‘c’。

2024-07-03 22:34:23 360

原创 力扣-2529. 正整数和负整数的最大计数

如果不是就按照代码中的逻辑求出对应的个数再比较大小。换句话讲,如果 nums 中正整数的数目是 pos ,而负整数的数目是 neg ,返回 pos 和 neg二者中的最大值。给你一个按 非递减顺序 排列的数组 nums ,返回正整数数目和负整数数目中的最大值。解释:共有 3 个正整数和 3 个负整数。解释:共有 2 个正整数和 3 个负整数。解释:共有 4 个正整数和 0 个负整数。输入:nums = [-3,-2,-1,0,0,1,2]输入:nums = [-2,-1,-1,1,2,3]

2024-07-02 22:44:22 480

原创 2.深度学习-线性回归

一共训练了7000次,可以看到 loss 的值已经出现了过拟合的一个状态,所以大家在训练时这个模型的model.fit(x, y, epochs=7000),epochs可以设置为6000看看状态。红色的点图是y = 3 * x + np.random.randn() * 2的图。相关环境配置看此篇文章,本专栏深度学习相关的版本和配置,均按照此篇文章进行安装。对比我们设置的y = 3 * x + np.random.randn() * 2。可以看出二者的趋势是吻合的,说明我们训练的模型效果还不错。

2024-06-15 16:30:09 597

原创 力扣-2269. 找到一个数字的 K 美丽值

给你整数 num 和 k ,请你返回 num 的 k 美丽值。一个 子字符串 是一个字符串里的连续一段字符序列。输入:num = 430043, k = 2。输入:num = 240, k = 2。子字符串能整除 num。子字符串长度为 k。允许有 前缀 0。0 不能整除任何值。

2024-06-15 13:04:21 337

原创 力扣-2379. 得到 K 个黑块的最少涂色次数

给你一个长度为 n 下标从 0 开始的字符串 blocks ,blocks[i] 要么是 ‘W’ 要么是 ‘B’ ,表示第 i 块的颜色。一种得到 7 个连续黑色块的方法是把第 0 ,3 和 4 个块涂成黑色。请你返回至少出现 一次 连续 k 个黑色块的 最少 操作次数。输入:blocks = “WBBWWBBWBW”, k = 7。输入:blocks = “WBWBBBW”, k = 2。blocks[i] 要么是 ‘W’ ,要么是 ‘B’。给你一个整数 k ,表示想要 连续 黑色块的数目。

2024-06-13 23:00:24 371

原创 力扣-1984. 学生分数的最小差值

给你一个 下标从 0 开始 的整数数组 nums ,其中 nums[i] 表示第 i 名学生的分数。另给你一个整数 k。从数组中选出任意 k 名学生的分数,使这 k 个分数间 最高分 和 最低分 的 差值 达到 最小化。输入:nums = [9,4,1,7], k = 2。输入:nums = [90], k = 1。返回可能的 最小差值。

2024-06-12 20:00:25 1576

原创 1.Anaconda-创建虚拟环境的手把手教程

博主会创建一个深度学习的专栏,后续所有的实践分享都是基于此篇文章的模块版本。如果有想一起学习的小伙伴,版本的安装尽量与文章中一直,避免出现不必要的麻烦!

2024-06-11 22:07:02 829

原创 力扣-643. 子数组最大平均数 I

通俗的将就是窗口移动时 减去第一个元素,再加上新滑动进来的元素,就等于新窗口中元素的累加值。第2个窗口的累加和为 (1 + 2 + 3 + 4) - 1 + 5 = 14。解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75。这一行代码是点睛之笔,意思是控制一个长度为k的滑动窗口,并计算其累加和。输入:nums = [1,12,-5,-6,50,3], k = 4。第1个窗口的累加和为 1 + 2 + 3 + 4 = 10。输入:nums = [5], k = 1。

2024-06-11 21:39:37 278

原创 力扣-面试题 01.01. 判定字符是否唯一

实现一个算法,确定一个字符串 s 的所有字符是否全都不同。如果你不使用额外的数据结构,会很加分。输入: s = “leetcode”输入: s = “abc”s[i]仅包含小写字母。

2024-05-25 14:39:20 248

原创 力扣-LCR 169. 招式拆解 II

某套连招动作记作仅由小写字母组成的序列 arr,其中 arr[i] 第 i 个招式的名字。请返回第一个只出现一次的招式名称,如不存在请返回空格。使用到了自定义类型的map,如果有看不明白的可以参考。,文章里边有自定义数据类型排序可以参考一下,易懂!输入:arr = “abbccdeff”输入:arr = “ccdd”

2024-05-23 23:19:37 331

原创 力扣-1365. 有多少小于当前数字的数字

i 且 nums[j] < nums[i]。对于 nums[0]=8 存在四个比它小的数字:(1,2,2 和 3)。对于 nums[4]=3 存在三个比它小的数字:(1,2 和 2)。对于 nums[2]=2 存在一个比它小的数字:(1)。对于 nums[3]=2 存在一个比它小的数字:(1)。输入:nums = [8,1,2,2,3]输入:nums = [6,5,4,8]输入:nums = [7,7,7,7]输出:[4,0,1,1,3]输出:[2,1,0,3]输出:[0,0,0,0]

2024-05-22 18:56:55 170

原创 力扣-219. 存在重复元素 II

给你一个整数数组 nums 和一个整数 k ,判断数组中是否存在两个 不同的索引 i 和 j ,满足 nums[i] == nums[j] 且 abs(i - j) <= k。如果存在,返回 true;否则,返回 false。输入:nums = [1,2,3,1,2,3], k = 2。输入:nums = [1,2,3,1], k = 3。输入:nums = [1,0,1,1], k = 1。

2024-05-19 11:24:08 201

原创 力扣-350. 两个数组的交集 II

给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。可以不考虑输出结果的顺序。输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输入:nums1 = [1,2,2,1], nums2 = [2,2]的改变版本,大家可以先看一下,题型差不多。

2024-05-18 14:32:08 183

原创 力扣-2351. 第一个出现两次的字母

如果 a 的 第二次 出现比 b 的 第二次 出现在字符串中的位置更靠前,则认为字母 a 在字母 b 之前出现两次。字母 ‘c’ 是第一个出现两次的字母,因为在所有字母中,‘c’ 第二次出现的下标是最小的。给你一个由小写英文字母组成的字符串 s ,请你找出并返回第一个出现 两次 的字母。思路分析:很简单的操作,判断当前元素在容器里是否存在,不存在就插入,存在就返回。字母 ‘c’ 在下标 2 、3 和 7 处出现。只有字母 ‘d’ 出现两次,所以返回 ‘d’。字母 ‘b’ 在下标 1 和 4 处出现。

2024-05-15 21:31:06 165

原创 力扣-13. 罗马数字转整数

数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4。同样地,数字 9 表示为 IX。C 可以放在 D (500) 和 M (1000) 的左边,来表示 400 和 900。s 仅含字符 (‘I’, ‘V’, ‘X’, ‘L’, ‘C’, ‘D’, ‘M’)X 可以放在 L (50) 和 C (100) 的左边,来表示 40 和 90。I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。

2024-05-11 22:10:33 309

原创 力扣-128. 最长连续序列

给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。1.使用unordered_set容器过滤到重复的元素,同时也方便后续的元素数量查询操作;2.判断当前元素再数组中是否存在前一个元素,如果存在说明不是开头元素,继续往后查找。解释:最长数字连续序列是 [1, 2, 3, 4]。输入:nums = [0,3,7,2,5,8,4,6,0,1]请你设计并实现时间复杂度为 O(n) 的算法解决此问题。输入:nums = [100,4,200,1,3,2]

2024-05-02 11:17:46 193

原创 力扣-349. 两个数组的交集

给定两个数组 nums1 和 nums2 ,返回 它们的 交集。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序。思路分析:两种实现方式原理是一样的都是运行set容器或map容器插入的值唯一的特性。使用set容器实现起来更加简洁。输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输入:nums1 = [1,2,2,1], nums2 = [2,2]解释:[4,9] 也是可通过的。

2024-04-28 20:52:57 294

原创 c语言-快速排序

【代码】c语言-快速排序。

2024-04-19 22:53:06 501

原创 17.C++常用的算法_集合算法

【代码】17.C++常用的算法_集合算法。

2024-04-19 21:39:11 283

原创 16.C++常用的算法_算数生成算法

【代码】16.C++常用的算法_算数生成算法。

2024-04-19 21:25:19 187

原创 15.C++常用的算法_拷贝和替换算法

【代码】15.C++常用的算法_拷贝和替换算法。

2024-04-18 23:18:11 271

原创 14.C++常用的算法_排序算法

【代码】14.C++常用的算法_排序算法。

2024-04-16 21:50:20 323

原创 13.C++常用的算法_查找算法

返回值为符合条件个数。

2024-04-15 20:25:52 769

原创 12.C++常用的算法_遍历算法

要注意:需要提前给目标容器开辟空间。参数里要加const修饰。

2024-04-09 19:49:30 552

原创 11.内建函数对象_算数、关系、逻辑仿函数

【代码】11.内建函数对象_算数、关系、逻辑仿函数。

2024-04-07 22:42:08 229

原创 10.map容器的使用

public:it!= m.end();it++)cout << "name = " << it->first.m_name << "\t" << "age = " << it->first.m_age << "\t" << "赏金 = " << it->second << endl;Person p1("曹操", 28);Person p2("刘备", 30);Person p3("赵云", 35);

2024-04-06 00:00:39 562

原创 9.set容器的使用

s.end();it++)cout

2024-04-05 10:30:21 252

原创 8.list容器的使用

【代码】7.list容器的使用。

2024-04-04 22:42:58 204

原创 7.stack容器的使用

【代码】7.stack容器的使用。

2024-04-04 21:21:11 254

原创 6.deque容器的使用

【代码】6.deque容器的使用。

2024-04-04 00:22:01 273

空空如也

空空如也

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

TA关注的人

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