自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

红色石头的专栏

个人网站:redstonewill.com

  • 博客(367)
  • 资源 (2)
  • 收藏
  • 关注

原创 快速入门——深度学习理论解析与实战应用

1. 前言记得是 2016 年 3 月 15 日,红色石头坐在下班的地铁上,跟往常一样,打开手机,看看新闻。突然,一条醒目的新闻吸引力我的注意:《AlphaGo 最终局战胜李世石 人机大战总比分 1:4》!虽然,我之前也知道一点 AlphaGo,但是这条新闻着实让我比较惊讶。因为,它标志着人工智能第一次在围棋领域战胜了世界大师级别的选手!机器要逆天了?!AlphaGo 是谁?Alpha...

2018-07-11 21:01:54 13352 48

原创 完结篇 | 吴恩达deeplearning.ai专项课程精炼笔记全部汇总

个人网站:红色石头的机器学习之路 CSDN博客:红色石头的专栏 知乎:红色石头 微博:RedstoneWill的微博 GitHub:RedstoneWill的GitHub 微信公众号:AI有道(ID:redstonewill)从去年8月份开始,AI界大IP吴恩达在coursera上开设了由5们课组成的深度学习专项课程,掀起了一股人工智能深度学习热潮。这...

2018-05-05 18:13:43 62030 11

原创 机器学习100天(三十一):031 K近邻回归算法

我们之前讲了 K 近邻分类算法,用来处理分类问题。其实 K 近邻也可以用来处理回归问题。如左图所示,K 近邻分类算法的思路是选取与测试样本距离最近的前 k 个训练样本。然后对着 k 个训练样本的 label 进行投票,票数最多的那一类别即为测试样本的类别。而 K 近邻回归算法也是类似,如右图所示,即选取与测试样本距离最近的前 K 个训练样本,以这 K 个训练样本的平均值作为测试样本的回归预测值。例如在房价预测问题中,K3K=3K3xtx_txt​的预测值y\hat yy​yx。

2023-01-12 15:25:32 83

原创 机器学习100天(三十):030 K近邻分类算法-K值的选择

在这个 for 循环中,对于每个超参数 K 值,循环抽取 5 份数据集里不同的 4 份作为训练集 Xtr、ytr,剩下的 1 份作为验证集 Xcv、ycv。首先定义 num_folds=5,表示将训练数据分为 5 份,超参数K可选值是 3、5、7、11,存储在 K_classes 列表中。上一节我们讲了 K 折交叉验证的理论,下面我们将 K 折交叉验证算法应用到 K 近邻分类算法中,用来选择最合适的超参数 K 值。机器学习100天,今天讲的是:K近邻分类算法-K值的选择。,提取码:9zjw。

2023-01-06 10:29:55 295

原创 机器学习100天(二十九):029 K折交叉验证

简单交叉验证就是将原始数据集随机划分成训练集和验证集两部分。例如将样本按照 70%~30% 的比例分成两部分,70% 的样本用于训练模型;机器学习中,我们常会遇到一个问题,就是超参数的选择,超参数就是机器学习算法中的调优参数,比如上一节 K 近邻算法中的 K 值。K 折交叉验证就是帮助我们选择最优的超参数。需要特别注意的是,K 折交叉验证一般对于数据量不大的时候效果更好。K 折交叉验证是简单交叉验证的升级。机器学习100天,今天讲的是:K 折交叉验证!这就是使用 K 折交叉验证来选择最优的超参数。

2023-01-06 10:09:57 444

原创 机器学习100天(二十八):028 K近邻分类算法-Python实现

准备工作做完之后,重点来了!就是定义 K 近邻分类算法的核心代码。我们定义一个 K 近邻分类算法的类 KnearestNeighbor。初始化 init 函数不需要做任何操作。训练函数 train 做得是将训练集的 X 和 y 存储起来。预测函数 predict 是核心代码,参数 X 是测试集,默认 k=1,num_test、num_train 分别是测试集、训练集的样本个数,构造二维矩阵 dists 来存储测试集每个样本与训练集每个样本的距离。这里我们选择使用欧式距离。

2023-01-06 09:42:24 302

原创 机器学习100天(二十七):027 Python中的函数和类

为了方便后面机器学习算法编写程序,秉承从零开始的原则,我们在此节简单介绍一下 Python 的编程知识。

2023-01-05 16:08:51 156

原创 机器学习100天(二十六):026 k近邻分类算法-理论

K 近邻算法也叫 KNN(k-Nearest Neighbor)算法,它是一个比较成熟也是最简单的机器学习算法之一。K 近邻分类算法的思路是:如果一个样本在特征空间中与 K 个实例最为相似(即特征空间中最邻近),那么这 K 个实例中大多数属于哪个类别,则该样本也属于这个类别。如上面这张图所示,二维平面上有两个类别:红色三角形表示类别 0,蓝色正方形表示类别 1,现在有一个绿色圆形样本,判断它属于哪一类?

2023-01-05 15:29:39 208

原创 机器学习100天(二十五):025 L2正则化的Python实现

for 循环结束之后,绘制代价函数 J_history 的变化,然后,作图绘制拟合直线与原始样本的拟合程度。for 循环结束之后,绘制代价函数 J_history 的变化,然后,作图绘制拟合直线与原始样本的拟合程度。可以发现,由于使用了 L2 正则化,拟合直线消除了正弦抖动的干扰,呈现原始数据的一次线性关系。对比未使用 L2 正则化,从权重参数可以看出,使用 L2 正则化之后,高阶参数。可以发现,拟合直线受到了正弦抖动的干扰,呈现高阶特性,模型发生了过拟合。设置为 0.04,值得注意的是,

2023-01-05 15:16:44 202

原创 机器学习100天(二十四):024 L1、L2正则化

机器学习100天,今天讲的是:L1、L2正则化!

2023-01-03 14:36:54 222

原创 机器学习100天(二十三):023 欠拟合与过拟合

机器学习100天,今天讲的是欠拟合与过拟合!

2023-01-03 13:52:00 141

原创 机器学习100天(二十二):022 分类模型评价指标-Python实现

除了 matplotlib.pyplot 之外,重点需要用到 sklearn.metrics 模块中的 accuracy_score、precision_score、recall_score、f1_score、roc_curve、auc 这些函数。先将真实标签和预测标签作为参数带入到 roc_curve 函数中,得到了假正例率 FPR、真正例率 TPR,还有用于计算 FPR 和 TPR 的决策函数的阈值。可以看到:准确率=0.75,精确率=0.73,召回率=0.80,f1_score=0.76。

2023-01-03 11:05:28 309

原创 机器学习100天(二十一):021 分类模型评价指标-ROC曲线和AUC

我们知道,分类模型是有一个阈值的,逻辑回归使用 sigmoid 函数,一般默认阈值是 0.5,大于 0.5 判断为正类,小于则为负类。而在实际的应用中,根据具体情况,我们可以采用不同的阈值,例如若更重视精确率,则可选择较大一点的阈值;然后,以假正例率为横坐标,以真正例率为纵坐标,把所有的点连接起来,就得到了右边这张图所示蓝色的曲线。因此,AUC 就是评价一个分类模型的指标,AUC 越大,表示 ROC 曲线越靠近左上角,说明模型越好。经过以上分析,我们可以说,ROC 曲线越靠近左上角,该分类器的性能越好。

2022-12-30 11:17:06 368

原创 机器学习100天(二十):020 分类模型评价指标-PR曲线

如图中所示,P-R 曲线的 P 就是精确率(也称为查准率),R 就是召回率(也称为查全率)。对于同一个模型,通过调整分类阈值,可以得到不同的 P-R 值。不同的阈值,计算得到不同的 P 值和 R 值,然后将所有不同阈值下的 P-R 坐标点连接起来,就得到了 P-R 曲线。比较两个分类器好坏时,显然是查得又准又全的比较好,也就是说 PR 曲线越往坐标(1,1)的位置靠近越好。也可以通过平衡点(即查准率=查全率的点,P-R 曲线与这条虚线的交点,称为 Break-Even Point,BEP)来判断。

2022-12-30 11:08:02 74

原创 机器学习100天(十九):019 分类模型评价指标-混淆矩阵

机器学习100天,今天讲的是:分类模型评价指标-混淆矩阵。

2022-12-29 16:05:17 168

原创 机器学习100天(十八):018 逻辑回归Python实战

可以看到随着训练次数增加,分类的直线在不断校正,最终处在了理想的位置,直线上方全部为正类,直线下方全部为负类。自变量 X 有两个特征,一个是收入 Income,一个是年龄 Age,因变量 y 是该这个人是否购买了这件商品。我们打开数据集,可以看到,该数据集统计了 30 个人的基本信息和是否购买了某件商品。最后,我们把 J_history 打印出来,可以看到整体的 loss 值在不断减小,说明我们的训练是成功的。可以看到,蓝色的圆圈表示正类,红色的叉表示负类。m 是样本个数,lr 是学习率。

2022-12-22 21:07:18 292

原创 机器学习100天(十七):017 逻辑回归梯度下降

在讲解了逻辑回归的基本原理和损失函数之后,我们来推导逻辑回归模型中参数 w 和 b 的梯度表达式。现在,我们已经完全掌握了逻辑回归中参数的梯度下降更新公式是如何推导出来的了。机器学习 100 天,今天讲的是:逻辑回归-梯度下降!然后,根据这两个公式,我们就可以很容易计算得到。的偏导数带入到梯度下降算法公式中,就能得到。首先,我们根据上面三个式子,分别计算。经过 sigmoid 函数,好了,今天的内容到此结束!

2022-12-22 20:53:44 293

原创 机器学习100天(十六):016 逻辑回归损失函数

机器学习 100 天,今天讲的是:逻辑回归损失函数。

2022-12-21 13:58:56 406

原创 机器学习100天(十五):015 逻辑回归基本原理

机器学习100天,今天讲的是:逻辑回归基本原理。

2022-12-21 11:20:22 495 1

原创 机器学习100天(十四):014 梯度下降算法求解线性回归

机器学习100天,今天讲的是:使用梯度下降算法求解线性回归问题。

2022-12-20 14:26:13 455

原创 机器学习100天(十三):013 最通俗地理解梯度下降算法

机器学习100天,今天讲的是:最通俗地理解梯度下降算法!

2022-12-20 09:42:10 50

原创 机器学习100天(十二):012 回归模型评估指标Python实现

直接从 sklearn.metrics 模块中导入 mean_absolute_error 方法,一行语句直接计算 MAE,将两个参数 y_test 和 y_pred 写在括号里。直接从 sklearn.metrics 模块中导入 mean_squared_error 方法,一行语句直接计算 MSE,将两个参数 y_test 和 y_pred 写在括号里。根据定义,均方根误差就是均方误差的根,这里直接对均方误差求根,就得到了 RMSE。,同样将两个参数 y_test 和 y_pred 写在括号里。

2022-12-19 18:04:36 272

原创 机器学习100天(十一):011 回归模型评估指标

机器学习100天,今天讲的是:线性回归评估指标!

2022-12-19 11:30:26 221

原创 机器学习100天(十):010 多项式回归Python实战

机器学习100天,今天讲的是:多项式线性回归Python实战——房价预测。上一节我们介绍了多项式线性回归理论,即构建一个二次多项式来拟合房价与地区人口的关系。今天我们就来编写一个二次多项式回归程序来构建房价预测的模型。我们打开 spyder,创建一个 polynomial_regression.py 文件。

2022-12-19 10:25:49 346

原创 机器学习100天(九):009 多项式回归理论

机器学习100天,今天讲的是:多项式回归理论!在前两期视频我们讲解了简单线性回归理论,并解决了一个房价预测的问题,建立了一个房价与地区人口的线性关系。然而,如果数据的分布不是简单的线性关系,又该怎么做呢?

2022-12-18 10:36:40 246

原创 机器学习100天(八):008 简单线性回归Python实战

机器学习100天,今天讲的是:简单线性回归Python实战——房价预测。上一节课,我们通过引入房价预测的例子,讲解了线性回归的理论知识,以及如何最小化损失函数,来计算最优的参数w。今天我们就使用 Python 来编写一个简单的线性回归程序来构建一个房价预测的模型。

2022-12-17 15:30:02 199

原创 机器学习100天(七):007 简单线性回归理论

在图中,我们可以发现如果把人口当成自变量 X,把房价当成因变量 y 的话,y 与 X 是呈现一种近似线性关系的。这样的话,如果有样本外的数据,得知该地区的人口,我们就可以利用这个模型来预测该地区的房价!横坐标是人口,纵坐标是房价,红色的点就表示每个地区的实际人口与房价信息。是可逆矩阵,简单线性回归里,这个条件一般是满足的。我们把损失函数写成矩阵的形式,并展开得到这个表达式,这里需要一点线性代数的知识。它是 mxn 的矩阵,其中 m 表示样本,我们多加了一列 1,是为了与。,它表示的是这些差值平方的平均数。

2022-12-17 14:53:33 331

原创 机器学习100天(六):006 数据预处理之标准化

我们导入模块,实例化一个对象 scaler,直接使用 fit_transform 函数对 X_train 计算均值和标准差,并对 X_train 进行标准化操作。什么是标准化,我们来看标准化的定义:标准化就是将原数据转换为符合均值为 0,标准差为 1 的标准正态分布的新数据。在进行特征标准化之后,在梯度下降的过程中,明显路径更加平缓,收敛速度更快,即右边这张图。在没有进行特征标准化之前,在梯度下降的过程中,走的路径更加的曲折,即左边这张图。这是一个梯度下降算法优化的过程,横坐标和纵坐标分别是两个特征参数,

2022-12-17 12:41:02 366

原创 机器学习100天(五):005 数据预处理之划分训练集

在监督式机器学习中,我们一般使用训练集的数据来训练模型,然后把训练好的模型在测试集上进行测试,用测试集上的误差作为最终模型在现实场景中的泛化误差,即真实表现。打开 X_train,因为我们总共有 10 个样本,test_size=0.2,这里 X_train 有 8 个样本,打开 X_test 有 2 个样本。返回的结果中,X_train 表示训练集的 X,X_test 表示测试集的 X,y_train 表示训练集的 y,y_test 表示测试集的 y。下面我们就要对数据集进行划分,划分成训练集和测试集。

2022-12-17 12:30:08 176

原创 机器学习100天(四):004 数据预处理之类别特征编码

但是这种做法有个很大的缺点,0,1,2 在数值上是连续的,它很容易给机器学习模型一个误导,就是这些特征之间存在大小等某种数值上的关系。例如,法国编码为 100,德国编码为 010,韩国编码为 001。无需指定哪一列是类别特征,非常简单。对于标签,因为它是因变量,我们并不希望对它进行 one-hot 编码,只是想把它转换为连续数值,例如 No 转化为 0,Yes 转化为 1。最简单的做法是标签编码,就是直接将类别特征从字符串转换为数字,例如我们直接把法国编码为 0,德国编码为 1,韩国编码为 2。

2022-12-17 11:00:45 226

原创 机器学习100天(三):003 数据预处理之处理缺失值

机器学习 100 天,今天讲的是:数据预处理-处理缺失值。在上一节,我们导入了数据集,得到特征 X 和标签 y。我们打开 X,发现 index5 样本的‘年龄’和 index3 样本的‘薪资’数值是 NaN。NaN(Not a Number)是计算机科学中数值数据类型的一类值,表示空值可能是由于在样本收集的时候没有统计到该特征。对于 NaN 值,最简单粗暴的做法是直接删除对应的样本,但我们一般不这么做。常见的做法是对 NaN 进行插值,即用该特征的平均值、中值等替代一般来说,平均数是总体均值很好的估

2022-12-17 10:43:09 178

原创 机器学习100天(二):002 数据预处理之导入数据集

本期讲的是数据预处理之导入数据集。首先,我们打开 spyder。新建一个 load_data.py 脚本。

2022-12-17 10:34:20 192

原创 机器学习100天:目录

《机器学习100天》!理论+python!实战真正的从零开始机器学习,循序渐进,适合初学者快速入门和进阶!

2022-12-16 23:24:40 306 1

原创 机器学习100天(一):001 开发环境搭建

机器学习实战需要编写代码,选择一个好的 IDE 能大大提高我们的开发效率。基于 Python 的广泛使用,我们给大家介绍当前最流行的机器学习开发工具包:Anaconda。

2022-12-16 22:39:22 247

原创 手撕 CNN 经典网络之 VGGNet(PyTorch实战篇)

大家好,我是红色石头!在上一篇文章:手撕 CNN 经典网络之 VGGNet(理论篇)详细介绍了 VGGNet 的网络结构,今天我们将使用 PyTorch 来复现VGGNet网络,并用VGG...

2022-03-18 13:55:00 2685 2

原创 手撕 CNN 经典网络之 VGGNet(理论篇)

2014年,牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司一起研发了新的卷积神经网络,并命名为VGGNet。VGGNet是比Alex...

2022-02-28 17:09:00 704 1

原创 手撕 CNN 之 AlexNet(PyTorch 实战篇)

大家好,我是红色石头!在上一篇文章:手撕 CNN 经典网络之 AlexNet(理论篇)详细介绍了 AlexNet 的网络结构,今天我们将使用PyTorch来复现AlexNet网络,并用...

2022-02-16 13:51:00 1762 5

原创 手撕 CNN 经典网络之 AlexNet(理论篇)

大家好,我是红色石头!第一个典型的CNN是LeNet5网络,而第一个大放异彩的CNN却是AlexNet。2012年在全球知名的图像识别竞赛 ILSVRC 中,AlexNet 横空出世,直接...

2022-02-11 13:42:00 1414

原创 我用 PyTorch 复现了 LeNet-5 神经网络(自定义数据集篇)!

大家好,我是红色石头!在上三篇文章:这可能是神经网络 LeNet-5 最详细的解释了!我用 PyTorch 复现了 LeNet-5 神经网络(MNIST 手写数据集篇)!我用 PyTorc...

2022-01-04 17:29:00 1252 3

原创 我用 PyTorch 复现了 LeNet-5 神经网络(CIFAR10 数据集篇)!

大家好,我是红色石头!在上两篇文章:这可能是神经网络 LeNet-5 最详细的解释了!我用 PyTorch 复现了 LeNet-5 神经网络(MNIST 手写数据集篇)!详细介绍了卷积神经...

2021-12-25 12:10:00 1516 3

Python Machine Learning

About This Book, Leverage Python' s most powerful open-source libraries for deep learning, data wrangling, and data visualization, Learn effective strategies and best practices to improve and optimize machine learning systems and algorithms, Ask – and answer – tough questions of your data with robust statistical models, built for a range of datasets, Who This Book Is For, If you want to find out how to use Python to start answering critical questions of your data, pick up Python Machine Learning – whether you want to get started from scratch or want to extend your data science knowledge, this is an essential and unmissable resource., What You Will Learn, Explore how to use different machine learning models to ask different questions of your data, Learn how to build neural networks using Keras and Theano, Find out how to write clean and elegant Python code that will optimize the strength of your algorithms, Discover how to embed your machine learning model in a web application for increased accessibility, Predict continuous target outcomes using regression analysis, Uncover hidden patterns and structures in data with clustering, Organize data using effective pre-processing techniques, Get to grips with sentiment analysis to delve deeper into textual and social media data, Style and approach, Python Machine Learning connects the fundamental theoretical principles behind machine learning to their practical application in a way that focuses you on asking and answering the right questions. It walks you through the key elements of Python and its powerful machine learning libraries, while demonstrating how to get to grips with a range of statistical models.

2017-06-15

三星S3C2440中文手册

此文档是三星S3C2440的中文手册,字迹清晰,内容齐全。做ARM、嵌入式必备的工具手册。

2013-05-30

空空如也

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

TA关注的人

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