自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 安装Python包常用的国内镜像源

上海交通大学:https://mirror.sjtu.edu.cn/pypi/web/simple/中国科技大学:https://pypi.mirrors.ustc.edu.cn/simple/清华:https://pypi.tuna.tsinghua.edu.cn/simple/阿里云:http://mirrors.aliyun.com/pypi/simple/华中科技大学:http://pypi.hustunique.com/simple/

2024-04-22 17:02:14 174

原创 (11) XGBoost

XGBoost(eXtreme Gradient Boosting)是一种基于梯度提升算法的机器学习模型,特别适用于解决回归和分类问题。它是一种强大的集成学习方法,通过迭代地训练多个弱学习器(通常是决策树),并将它们组合成一个强大的预测模型。XGBoost以其高性能和可扩展性而受到广泛关注,并在多个数据科学竞赛中获得了显著的成绩。XGBoost库是一个开源的机器学习库,最初由陈天奇开发,并在GitHub上公开发布。

2023-06-05 12:29:09 1200 1

原创 (10) 朴素贝叶斯

朴素贝叶斯(Naive Bayes)是一种常见且简单的机器学习算法,常用于文本分类、垃圾邮件过滤、情感分析等任务。它基于贝叶斯定理和特征条件独立性假设,具有高效、易于实现和良好的可解释性。朴素贝叶斯算法基于贝叶斯定理,其中通过观察到的特征预测未观察到的类别。

2023-05-28 16:10:12 1178

原创 归一化、中心化、标准化、正则化的区别

综上所述,归一化、中心化、标准化和正则化是数据处理和特征工程中常用的转换技术,它们的目的和效果有一些差异,根据具体任务和需求选择适当的方法。L1正则化:通过向模型的损失函数添加L1范数项,使得模型的权重稀疏化,即使得一些权重变为零。L2正则化:通过向模型的损失函数添加L2范数项,使得模型的权重趋向于较小的值,但不为零。中心化通常用于需要将数据聚焦在均值为零的中心位置,以便更好地研究数据的分布和变化趋势。正则化通常用于在训练机器学习模型时控制模型的复杂度,并减少模型在未见数据上的错误。

2023-05-20 11:51:56 1528

原创 (9) 线性回归

α。

2023-05-18 19:32:39 505 1

原创 (8) 支持向量机分类器SVC案例:预测明天是否会下雨

SVC在现实中的应用十分广泛,尤其实在图像和文字识别方面,但SVC真实应用的代码其实就是sklearn中的三行,真正能够展现出SVM强大之处的,反而很少是案例本身,而是应用之前所作的各种探索。在实际工作中,数据预处理往往比建模难得多,耗时多得多,因此合理的数据预处理是非常必要的。本案例数据集是未经过预处理的澳大利亚天气数据集。本文的目标是在这个数据集上来预测明天是否会下雨。这个案例的核心目的,是通过巧妙的预处理和特征工程来展示如何在现实数据集上做数据预处理,或者有哪些预处理的方式和思路。

2023-05-05 21:36:45 1256 5

原创 (8) 支持向量机(下)(模型评估指标、ROC曲线)

有一些数据,可能是线性可分,但在线性可分状况下训练准确率不能达到100%,即无法让训练误差为0,这样的数据被我们称为“存在软间隔的数据”。此时此刻,我们需要让我们决策边界能够忍受一小部分训练误差,我们就不能单纯地寻求最大边际了。因为对于软间隔的数据来说,边际越大被分错的样本也就会越多,因此我们需要找出一个”最大边际“与”被分错的样本数量“之间的平衡。因此,我们引入松弛系数和松弛系数的系数C作为一个惩罚项,来惩罚我们对最大边际的追求。那我们的参数C如何影响我们的决策边界呢?在硬间隔的时候,我们的决策边界完全由

2023-05-03 17:34:46 2199 2

原创 (7) 支持向量机(上)

支持向量机(Support Vector Machine,SVM)是一种常用的监督学习算法,主要用于分类和回归问题。在分类问题中,SVM试图找到一个超平面(在二维情况下就是一条直线)来分割两个不同类别的数据点,使得每个类别中的数据点都尽可能地靠近自己的一侧,同时尽可能地远离超平面。SVM所使用的超平面被称为“最大间隔超平面”,因为它使得两个不同类别的数据点之间的间隔最大化。SVM算法可以使用不同的核函数来处理非线性问题。

2023-05-01 16:24:30 1115

原创 《PyTorch 深度学习实践》第13讲 循环神经网络(高级篇)

根据名字中的字符来预测其是哪个语言地区:如"Nasikovsky"这个名字一看就是念什么什么斯基,立即推!这个人很可能就是俄语地区。我们的模型结构:双向循环神经网络(Bidirectional Recurrent Neural Network,BiRNN)是一种常见的循环神经网络结构。与传统的循环神经网络只考虑历史时刻的信息不同,双向循环神经网络不仅考虑历史时刻的信息,还考虑未来时刻的信息。在双向循环神经网络中,输入序列可以被看作是由两个部分组成的:正向和反向。在正向部分中,输入数据从前往后进行处理,而在反

2023-04-27 23:24:07 1641 8

原创 加载自己的图像数据集

​。

2023-04-26 20:02:29 1494

原创 Markdown常用数学公式

Markdown常用数学公式

2023-04-26 15:55:45 596

原创 《PyTorch 深度学习实践》第12讲 循环神经网络(基础篇)

RNN是循环神经网络(Recurrent Neural Network)的缩写。它是一种神经网络结构,可以处理序列数据,例如时间序列数据或自然语言文本数据。相比于传统的前馈神经网络,RNN可以利用当前的输入和之前的状态来决定当前的输出,因此它可以捕捉到序列数据中的时间依赖关系。在RNN中,每个时间步都有一个隐藏状态(hidden state),这个隐藏状态可以捕捉到之前时间步的信息,并且会在当前时间步中被用于计算输出。

2023-04-23 14:40:04 1343 1

原创 (6) 聚类算法KMeans(案例:矢量量化的降维)

但在完全收敛之前,我们也可以使用max_iter,最大迭代次数,或者tol,两次迭代间Inertia下降的量,这两个参数来让迭代提前停下来。在分类中,有直接结果(标签)的输出,并且分类的结果有正误之分,所以我们使用预测的准确度,混淆矩阵,ROC曲线等等指标来进行评估,但无论如何评估,都是在”模型找到正确答案“的能力。但轮廓系数也有缺陷,它在凸型的类上表现会虚高,比如基于密度进行的聚类,或通过DBSCAN获得的聚类结果,如果使用轮廓系数来衡量,则会表现出比真实聚类效果更高的分数。初步看数据大概有4簇。

2023-04-18 18:52:38 1094

原创 《PyTorch 深度学习实践》第11讲 卷积神经网络(高级篇)

GoogleNet(又称为Inception-v1)是由谷歌公司在2014年提出的一个卷积神经网络架构,它是当时ImageNet图像识别挑战赛的冠军,其准确性超过了以往所有的卷积神经网络架构。GoogleNet主要的创新在于使用了一个名为“Inception”的模块,这个模块使用了多个不同尺寸的卷积核和池化核,从而可以在不同的尺度上提取图像特征。通过将多个Inception模块串联在一起,可以构建一个非常深的卷积神经网络,同时保持计算效率和准确性。除了Inception模块之外,GoogleNet还采用了一

2023-04-17 20:11:33 563 1

原创 《PyTorch 深度学习实践》第10讲 卷积神经网络(基础篇)

如果步长大于1,则卷积核每次向右移动的像素数会相应增加,这会导致输出特征图的尺寸变小,因为每个卷积核的感受野(receptive field)覆盖的像素数减少。以下图为例,为了使输出数据的形状和输入数据一样也为 5 × 5 ,而我们的卷积核形状为 3 × 3 的,这时可以在输入数据中外围填充一圈0,即可达到目的。因此,我们可以通过调整卷积核的形状、填充方式、步长等参数,来控制卷积层的输出形状和大小,以适应不同的输入数据和模型需求。以下图为例,输入数据为n×w×h,卷积层中有m个卷积核,要进行卷积计算,

2023-04-16 00:30:59 633

原创 在PyCharm中配置Git

防止以后换软件或电脑忘记怎么配置PyCharm,记录一下。

2023-04-13 23:46:44 2059

原创 《PyTorch 深度学习实践》第9讲 多分类问题(Kaggle作业:otto分类)

该代码是一个简单的 PyTorch 神经网络模型,用于分类 Otto 数据集中的产品。这个数据集包含来自九个不同类别的93个特征,共计约60,000个产品。代码的执行分为以下几个步骤1.数据准备:首先读取 Otto 数据集,然后将类别映射为数字,将数据集划分为输入数据和标签数据,最后使用 PyTorch 中的 DataLoader 将数据集分成多个小批量。2.构建模型:构建了一个简单的四层全连接神经网络,输入层有93个特征,输出层有9个类别。3.构建损失和优化器。

2023-04-13 16:19:54 766 2

原创 《PyTorch 深度学习实践》第8讲 加载数据集(作业:泰坦尼克号生存预测)

操作,准确率不是重点。因为准确率很大一部分依赖于数据处理、特征工程,为了方便我这里就直接把字符型数据删去了(实际中不能简单删去)。下面只加载train.csv,并把其划分为。,最后测试模型在验证集上的准确率,就不去预测网站提供的测试集了,因为还得提交才知道分数。竟然才这么点准确率,我宣布这个模型得不到我的认可。不进行数据预处理果然很烂!

2023-04-11 00:35:38 322

原创 Git如何提交代码到GitHub

然后在自己电脑上随便找个位置新建一个空文件夹(我这里文件夹名字为GitHub),进入该文件夹后,右击空白处,选择“Git Bash Here”打开git窗口,输入。打开GitHub主页,点击右上角的头像,点击Settings。此时在GitHub文件夹中生成了一个叫2023Test的文件夹,里面就包含了远程仓库里的文件。根据上图提示的路径,用记事本打开箭头所指的pub后缀文件,然后复制里面一大串的字符串。初始化操作,而且自动关联远程仓库。命令创建的本地仓库,其本身就是一个 Git 仓库了,不用我们再进行。

2023-04-08 15:20:30 542

原创 《PyTorch 深度学习实践》第7讲 处理多维特征的输入

上面图像竟然是这样!刚开始epoch只随便设置几千,普普通通没啥意思。后面想着搞点大的,随着次数增多,损失在40000时附近迅速下降,神奇。

2023-04-07 00:34:04 169

原创 (5) 逻辑回归案例:制作评分卡

在银行借贷场景中,评分卡是一种以分数形式来衡量一个客户的信用风险大小的手段,它衡量向别人借钱的人(受信人,需要融资的公司)不能如期履行合同中的还本付息责任,并让借钱给别人的人(授信人,银行等金融机构)造成经济损失的可能性。一般来说,评分卡打出的分数越高,客户的信用越好,风险越小。如果这个人的风险太高,我们可以拒绝贷款。本文以个人消费类贷款数据,简单介绍A评分卡的建模和制作流程。本文核心会在”数据清洗“和“模型开发”上。模型检验与评估也非常重要,内容太多,不再赘述。

2023-04-05 21:23:45 553

原创 《PyTorch 深度学习实践》第6讲 逻辑斯谛回归

如果进行10000轮更新,得出的参数如上。用此模型预测:当学习时间为4h时,考试通过的概率为0.9988。

2023-04-05 15:36:55 110

原创 《PyTorch 深度学习实践》第5讲 用PyTorch实现线性回归

【代码】P5 用PyTorch实现线性回归。

2023-04-05 00:55:24 90

原创 《PyTorch 深度学习实践》第4讲 反向传播

只有一个元素的tensor才能使用.item()转换成标量,否则的话使用.tolist()

2023-04-02 13:50:13 83

原创 《PyTorch 深度学习实践》第3讲 梯度下降算法

【代码】P3 梯度下降算法。

2023-04-02 13:45:15 125

原创 《PyTorch 深度学习实践》第2讲 线性模型

再回源代码中上面34行处写if语句,当索引为475时输出对应的w b,重新运行。以上可以发现w=2时均方误差MSE最小。

2023-04-02 13:35:17 149

原创 (4) 特征降维:主成分分析PCA和奇异值分解SVD

到现在,我们已经完成了对PCA的讲解。我们讲解了重要参数参数n_components,svd_solver,random_state, 讲解了三个重要属性:components_, explained_variance_以及explained_variance_ratio_,无数次用到了接口fit,transform,fit_transform,还讲解了与众不同的重要接口inverse_transform。

2023-03-26 19:42:34 401

原创 (3) 数据预处理与特征工程

到这里我们学习了常用的基于过滤法的特征选择,包括方差过滤,基于卡方,F检验和互信息的相关性过滤,讲解了各个过滤的原理和面临的问题,以及怎样调这些过滤类的超参数。通常来说,我会建议,先使用方差过滤,然后使用互信息法来捕捉相关性,不过了解各种各样的过滤方式也是必要的。以上就是除降维之外的所有特征选择的方法。这些方法的代码都不难,但是每种方法的原理都不同,并且都涉及到不同调整方法的超参数。经验来说,过滤法更快速,但更粗糙。包装法和嵌入法更精确,比较适合具体到算法去调整,但计算量比较大,运行时间长。当数据量很大。

2023-03-22 17:26:10 155

原创 (2) 随机森林的调参思想:在乳腺癌数据上的调参

调整Criterion param_grid = {在整个调参过程之中,我们首先调整了(无论如何都请先走这一步),然后调整max_depth,通过max_depth产生的结果,来判断模型位于复杂度-泛化误差图像的哪一边,从而选择我们应该调整的参数和调参的方向。如果感到困惑,也可以画很多学习曲线来观察参数会如何影响我们的准确率,选取学习曲线中单调的部分来放大研究(如同我们对n_estimators做的)。学习曲线的拐点也就是我们一直在追求的,最佳复杂度对应的泛化误差最低点(也是方差和偏差的平衡点)。

2023-03-13 20:24:42 72

原创 (2) 随机森林回归:填补缺失值的一种方法

我们从现实中收集的数据,几乎不可能是完美无缺的,往往都会有一些缺失值。面对缺失值,很多人选择的方式是直接将含有缺失值的样本删除,这是一种有效的方法,但是有时候填补缺失值会比直接丢弃样本效果更好,即便我们其实并不知道缺失值的真实样貌。在sklearn中,我们可以使用sklearn.impute.SimpleImputer来轻松地将均值,中值,或者其他最常用的数值填补到数据中,在这个案例中,我们将使用均值,0,和随机森林回归来填补缺失值,并验证四种状况下的拟合状况,找出对使用的数据集来说最佳的缺失值填补方法。

2023-03-11 00:40:52 1123

原创 拷打ChatGPT:置信区间和峰度

A:t分布的峰度随自由度的变化是比较复杂的,一般而言,随着自由度的增加,t分布的峰度值会逐渐接近于正态分布的峰度值0。一般而言,t分布的峰度值在自由度较小的时候比正态分布的峰度值要大,随着自由度的增加,峰度值逐渐减小,趋近于正态分布的峰度值0。因此,对于大多数应用而言,我们可以认为t分布的峰度值随自由度的变化是单调的,即随着自由度的增加,峰度值逐渐减小,趋近于正态分布的峰度值0。需要注意的是,t分布的峰度值随自由度的变化不是单调的,有时候会出现一些反常的情况,比如在某些自由度下峰度值比相邻的自由度大或小。

2023-03-07 17:30:26 311

原创 (1) 决策树案例:泰坦尼克号幸存者的预测

决策树小案例:泰坦尼克号幸存者预测

2023-03-07 15:17:27 109

原创 T分布与标准正态分布的图形及峰度问题

最近在学习数理统计时对与的变化以及它们的变化有所困惑。现用Python可视化它们的图像。

2023-03-06 17:44:52 2028

原创 pandas数据分析案例:用户消费数据

原数据共有69660条数据,有四列,没有列名。

2023-03-02 18:54:29 1176

原创 关于偏度和峰度的解释(易错)

最近在学习过程中,遇到偏度和峰度总令人难以理解其含义,特别是。现记录下国内大学两本权威教材中的解释。

2023-03-01 18:52:08 2935

原创 pandas数据分析小案例:以美国大选数据为例

用pandas进行数据分析:以美国大选数据为例

2023-02-26 19:36:05 205

原创 爬虫怎么在requests中设置自己clash软件的代理ip

需要注意的是,这里的"http"和"https"是代理协议的名称,而不是实际的协议类型。在这里,我们使用"http"作为代理协议的名称,是因为Clash代理的默认配置使用HTTP协议作为代理协议的类型,而不是HTTPS。在这段代码中,HTTP代理和HTTPS代理的IP地址都设置为了"http://127.0.0.1:7890",这是因为Clash代理默认只提供了一个IP地址和端口,用于同时提供HTTP和HTTPS代理服务。因此,当我们设置代理时,使用"http"作为代理协议的名称即可。

2023-02-25 16:09:48 6792

原创 Selenium常用参数和操作

【代码】Selenium常用参数和操作。

2023-02-25 15:58:25 728 1

原创 selenium设置需要登录网页的cookie

在 Selenium 中,可以使用 add_cookie() 方法向浏览器添加 Cookie,模拟登录状态。下面是一个示例代码,演示如何使用 Selenium 设置登录后的网页 Cookie:上述代码首先创建了一个 Chrome 浏览器对象,并访问了登录页面。然后通过 find_element_by_name() 方法找到了用户名、密码输入框和提交按钮,并模拟输入用户名和密码,点击提交按钮进行登录。等待登录完成后,使用 get_cookies() 方法获取当前浏览器的所有 Cookie,保存到变量 coo

2023-02-25 15:57:45 2351

原创 两种爬取职位信息的方法(Selenium和抓包)

爬取BOSS直聘职位信息的两种方法

2023-02-16 22:51:07 388

空空如也

空空如也

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

TA关注的人

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