自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 主成分分析(PCA)原理详解

这段代码的主要目的是从给定目录加载一系列JPEG图像,将它们转换为灰度并调整大小,然后使用PCA进行降维,并重建其中一个图像以查看降维的效果。通过选择4个主成分,代码展示了如何使用PCA在保持图像大部分信息的同时减少数据的维度。

2024-06-12 13:35:49 618

原创 机器学习——支持向量机(SVM)

支持向量机(Support Vector Machine,简称SVM)是一种经典的机器学习算法,主要用于数据分类问题。其核心思想是通过寻找一个超平面来对训练数据进行划分,使得不同类别的数据分布在超平面的两侧,且两侧数据点距离超平面的间隔最大化。

2024-06-03 21:09:35 848

原创 逻辑回归:深入解析与实现

Logistic回归优点计算成本相对较低,效率较高。输出结果介于0和1之间,可以表示概率,易于解释。适用于二分类问题,模型简单直观,易于理解和实现。缺点对非线性问题的分类效果可能不理想,容易欠拟合。对特征之间的相关性敏感,可能导致过拟合。分类精度可能不如一些更复杂的模型,如支持向量机或随机森林。适用数据类型数值型数据,对于分类特征需要进行编码(如独热编码)以转换为数值型。适用于标称型(分类)数据,尤其是二分类问题。Logistic回归的一般过程收集数据。

2024-05-15 23:19:25 1065 3

原创 用贝叶斯分类器进行简单天气预测

贝叶斯分类器是一种基于贝叶斯定理和特征条件独立性假设的分类方法。它通过计算给定特征下每个类别的后验概率来进行分类,具有高效、易于实现等优点。在实际应用中,贝叶斯分类器被广泛应用于文本分类、垃圾邮件过滤、情感分析等领域。

2024-04-30 22:09:39 628

原创 决策树的构造和评估

然后,对于特征 (A) 的每个取值 (v),计算子集 (X_v) 的信息熵 (H(X_v)),并根据子集的大小进行加权求和;其中,(X) 是一个离散随机变量,(n) 是 (X) 的取值个数,(p(x_i)) 是 (X) 取值为 (x_i) 的概率。其中,(X) 是待划分的数据集,(A) 是待评估的特征,(Values(A)) 是特征 (A) 的所有可能取值,(X_v) 是特征 (A) 取值为 (v) 的子集,(|X|) 和 (|X_v|) 分别表示数据集 (X) 和子集 (X_v) 的样本数。

2024-04-16 20:32:40 1024

原创 模型评估:分类模型评估指标、ROC曲线与PR曲线的差异解析

一个理想的分类器应该具有接近左上角的ROC曲线,这意味着模型在高召回率的同时保持低假正例率。在实际应用中,我们需要根据具体的问题和需求选择合适的评估方法和可视化工具来全面评估模型的性能。:ROC曲线主要关注真正例率(TPR,即查全率)和假正例率(FPR),通过在不同阈值下绘制TPR和FPR的点并连接成线来展示模型性能。为了计算上述指标,我们首先需要得到模型的预测结果,包括真正例(TP)、假正例(FP)、真反例(TN)和假反例(FN)的数量。高查准率意味着模型预测为正例的样本中,真实正例的占比较高。

2024-04-02 22:27:35 929 1

原创 KNN原理介绍

KNN(K-Nearest Neighbors)算法是一种基础且直观的分类与回归方法。下面我将详细介绍KNN算法的原理、思想、涉及的数学知识以及代码实现。

2024-03-31 20:56:23 745 1

原创 Anaconda安装教程

Anaconda下载

2024-03-10 23:01:59 239 1

原创 阅读论文Attention Is All You Need的总结与体会

传统的循环神经网络(RNN)和长短期记忆(LSTM)网络在处理长序列时,由于其固有的顺序性质,难以实现并行化,从而限制了训练速度和规模。模型在性能上取得了显著的提升,但它的复杂性也相对较高,导致需要更多的计算资源和训练时间来达到最佳性能。模型在序列转换任务上的出色表现,可以假设它也可能在其他类型的序列处理任务中表现出色,如时间序列分析、音频处理等。模型的核心是注意力机制,它允许模型在处理输入序列时,对不同的部分赋予不同的权重,从而更有效地捕捉关键信息。小时的情况下就超过了之前的最佳模型。

2024-02-20 14:52:26 289

原创 算法与设计分析之 动态规划

这个问题可以通过动态规划来解决,其中状态可以表示为物品的索引和背包的剩余容量,状态转移方程可以根据当前物品是否选择来确定。这个问题可以通过动态规划来解决,其中状态可以表示为持有股票或不持有股票,状态转移方程可以根据当前价格和前一天的状态来确定。这个问题可以通过动态规划来解决,其中状态可以表示为序列的前缀,状态转移方程可以根据当前元素和前面的元素来确定。动态规划是一种解决多阶段决策问题的数学方法,它通过将问题分解为多个子问题,并保存子问题的解来避免重复计算,从而提高效率。

2023-11-03 23:50:17 45

原创 01背包问题

0/1背包问题是一个经典的优化问题,通过选择一些物品放入背包,使得物品的总价值最大化。如果我们使用贪婪算法,每次都拿最贵的物品,那么我们可以看到:一开始拿到的是最贵的台灯,但是此时小偷已经拿到了4千克的重量,刚好把背包填充满了,无法再去偷第二个物品,那么此时获得的最大价值就是30元。对于第i个物品和第j个背包容量,状态转移方程可以表示为:dp[i][j] = max(dp[i-1][j], dp[i-1][j-w[i]] + v[i]),其中w[i]表示第i个物品的重量,v[i]表示第i个物品的价值。

2023-11-02 23:13:32 35

原创 分治法简介

分治法(Divide and Conquer)是一种强大的算法范式,它将一个大问题分解成多个小问题,然后逐个解决这些小问题,最后将它们的解合并起来得到原问题的解。分治法的基本思想是将一个大问题划分为多个规模较小的子问题,然后递归地解决这些子问题。分治法的优点在于可以将复杂的问题划分为更小的子问题,从而降低了问题的复杂度,并且可以并行地解决子问题,提高了算法的效率。总结起来,分治法是一种强大的算法范式,它通过将一个大问题划分为多个小问题,递归地解决这些小问题,并将它们的解合并起来得到原问题的解。

2023-11-01 23:25:16 111 1

原创 递归函数的空间复杂度

在递归函数中,每次递归调用都会创建一个新的函数调用栈,用于存储函数的局部变量、参数和返回地址。1. 递归调用栈的最大深度:递归函数的空间复杂度取决于递归调用栈的最大深度。每次递归调用都会在栈中创建一个新的函数调用帧,因此递归调用栈的最大深度决定了所需的额外空间。递归函数的空间复杂度是指算法在执行过程中所需的额外空间的量度。通过计算递归调用栈的最大深度和每个函数调用帧的空间消耗,我们可以估计递归函数的空间复杂度。通过计算递归调用栈的最大深度和每个函数调用帧的空间消耗,我们可以估计递归函数的空间复杂度。

2023-10-31 23:41:26 198

空空如也

空空如也

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

TA关注的人

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