自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(131)
  • 资源 (5)
  • 收藏
  • 关注

原创 C/C++基础----内存相关

void*

2024-04-15 00:25:10 676 2

原创 C/C++基础----指针

在c/c++中,有一个特殊的变量指向我们电脑中某个内存地址,进而可以让我们操作这段内存,指的就是指针类型符号是取出某个变量的内存地址把这个内存地址赋值给一个变量p,而接收我们内存地址的变量类型就为类型*指针类型因为a的类型为int,所以a的指针类型为int**p是取出该地址的值通过指针操作a的值。

2024-04-14 22:42:10 801

原创 C/C++基础----数组和引入指针

类型 变量名[数组大小] = {数组内容1,数组内容2};代码// 定义数组,大小不写,数组内默认有多少元素大小就为多少// 定义数组长度为5,存放了5个元素return 0;

2024-04-13 00:10:21 974

原创 C/C++基础----判断和循环

例子:可以看到条件不满足,但是还是执行了一次。也会结束循坏前往标签处继续执行。例子:还是打印1~100的和。例子: 计算0~80的偶数和。关键字会跳过此次循环。cin >> 变量;

2024-04-12 00:16:59 998

原创 C/C++基础----运算符

例如我们有两个变量a和b分别为60和13。

2024-04-11 22:29:35 727

原创 C/C++基础----常量和基本数据类型

最左边的高位表示为符号位,用来表示该数字是正数还是负数,如果为0则为正数,为1则为负数。程序最后必须返回一个0告诉计算机我们的程序正常执行完毕。c/c++中的整数类型和字符类型可分为。因为没有负数,取值范围变成65535。,有符号取值范围内可以有负数,,无符号反之没有负数。超出之后还是有溢出问题。无符号类型及取值范围。

2024-04-10 23:41:56 959

原创 爬虫---某翻译响应解密和sign逆向

目标网址接口:aHR0cHM6Ly9kaWN0LnlvdWRhby5jb20vd2VidHJhbnNsYXRl。

2023-06-29 11:04:21 1606

原创 爬虫----js逆向某宝h5的sign参数

某宝sign参数

2022-09-19 10:56:50 1748 6

原创 爬虫----记录某新闻详情页app逆向过程(app逆向初学第一次实战)

记录第一次实战app爬虫逆向

2022-08-17 22:53:00 1781 3

原创 PyTorch----实现手写数字的识别

加载手写数字的数据组成训练集和测试集,这里已经下载好了,所以download为Falseimport torchvision# 是否支持gpu运算# device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')# print(device)# print(torch.cuda.is_available())# 加载训练集的数据 使用torchvision自带的MNIST数据集train_dataset =

2022-05-30 21:05:03 3045 6

原创 PyTorch----神经网络的建立

神经网络就是很多的线性函数和非线性函数组成的复合函数。自定义类继承torch.nn.Module自定义类中实现__init__和forward()函数__init__定义神经网络结构forward()模型的正向传播class NeuralNet(torch.nn.Module): """自定义神经网络""" def __init__(self,input_size,hidden_size): # 参数为输入维度 和 隐藏层维度 # 调用父类初始化函数

2022-05-21 12:26:47 272

原创 PyTorch----激活函数

什么是激活函数?在神经网络中我们经常使用线性运算来解决分类问题,这就需要激活函数来解决非线性问题 传统的全连接网络是让数据不断的通过线性函数和激活函数层,从而得到最终的预测结果。Sigmoid函数sigmoid函数是最经典、最早使用的激活函数,公式如下:ρ=11+e−z\rho = \frac{1}{1+ e^{-z}}ρ=1+e−z1​激活函数Sigmoid在定义域内处处可以求导,当输入一个较小或者较大的数据时,该函数的导数会变得很小,梯度趋近于0。如果每次梯度值都减小,神

2022-05-21 11:55:21 3726

原创 PyTorch----Softmax函数与交叉熵函数

二分类问题和多分类问题二分类问题:    分类任务中有两个类别。比如前面感知机识别香蕉还是苹果,一般会训练一个分类器,输入一幅图像,输出该图像是苹果的概率为p,对p进行四舍五入,输出结果为0或者1,这就是经典的二分类问题。多分类问题:    和二分类任务基本相似,最后的输出有多个标签(>=2),需要建立一个分类器可以识别多种水果。在二分类问题中,我们可以用max函数 ,因为只有两个标签,非黑即白。但是在

2022-05-21 11:24:08 2908

原创 PyTorch----数据预处理

为什么要进行数据预处理?    有时候想要识别一个东西,在照明条件良好的情况下可能可以识别成功,但是在照明不好的时候模型没有训练过就可能识别不出来,所以使用图像的数据增强,给图片加上一点干扰来进行训练,可以使模型的精度提升。使用什么来进行数据预处理?torchvision.transform是包含了常用的图像变化方法的工具包主要用于图像的预处理的数据增强数据预处理数据的预处理使用torchvision.transforms.Compose()类

2022-05-20 20:06:36 1611

原创 PyTorch----数据加载器

什么是数据加载器?深度学习是由数据支撑起来的,所以我们一般在做深度学习的时候往往伴随着大量、复杂的数据。如果把所有的数据全部加载到内存上,容易把电脑的内存“撑爆”,所以要分批次一点点加载数据每一种深度学习的框架都有自己所规定的数据格式,数据加载器就有了必要的作用数据加载器就是把大量的数据,分批次加载和处理成框架所需要的数据格式数据分批次加载使用PyTorch内置的模块 torch.utils.data.DataLoader()数据加载器:参数dataset:数据集batch_size

2022-05-19 20:52:55 1627

原创 PyTorch----从零实现乳腺癌预测

分类问题使用线性回归解决的都是线性问题,而乳腺癌预测是分类问题。那么PyTorch是怎么求解一个非线性问题?乳腺癌预测根据血常规的化验预测,查询出规律。有30多个特征,输出0或1 是否患有乳腺癌。一、获取数据import pandas as pd# 读取乳腺癌的数据df = pd.read_csv('./breast_cancer.csv')# 数据中的30个特征X = df[df.columns[0:-1]].values# 数据的标签 0为患有乳腺癌,1为没有乳腺癌

2022-05-19 16:36:24 1296 1

原创 机器学习----PyTorch模型训练

PyTorch在前面使用纯手工做了线性回归,线性回归的问题其实就是求解损失函数最小的情况下的w值。在PyTorch里面很多的函数都进行了封装,我们直接用就可以。损失函数手写损失函数def loss(y, y_pred): """损失函数""" # (真实值 - 预测值)^2 的平均值 return ((y_pred - y)**2).mean()PyTorch封装的损失函数损失函数就是计算 (预测值-真实值)^2的平均值(均方误差)torch.nn.MSELoss()方

2022-05-18 21:09:26 1527

原创 机器学习----PyTorch正向传播与反向传播

正向传播神经网络本质上就是一个复杂且有很多参数的复合函数,数据为函数的输入,结果为函数的输出。正向传播就是通过函数的输入以及神经网络,得到函数的输出。通常用来验证当前的参数是否是最优解,或者已经训练好的模型用来检测。例如函数: y=w∗xy = w*xy=w∗x通过调整过的参数www和数据xxx传入进去:获取到预测值 y′y'y′获取到损失值:loss=(y−y′)2loss = (y - y')^2loss=(y−y′)2import torchdef forward

2022-05-18 18:03:24 662

原创 机器学习----PyTorch中的梯度计算

什么是梯度?在一元函数中,某点的梯度标的就说某点的导数. 在多元函数中某点的梯度表示的是由每个自变量所对应的偏导数所组成的向量在前面的线性回归中 就像y = wx + b方程中求出w参数最优的解,就需要对w参数进行偏导数的求取,然后通过偏导数的值来调整w参数以便找到最优解。自动计算梯度和偏导数在PyTorch中可以使用torch.autograd.backward()方法来自动计算梯度在定义张量时,可以指定requires_grad=True表示这个张量可以求偏导数import

2022-05-18 17:16:19 3082 2

原创 机器学习----PyTorch入门

PyTorchPyTorch是一个开源的python机器学习库PyTorch的前身是Torch,其底层和Torch框架一样,使用Python重新写了很多内容更加灵活,支持动态图,是一个以Python优先的深度学习框架,不仅能实现强大的GPU加速,同时还支持动态神经网络。张量PyTorch中所有的操作都是在张量的基础上进行的,可以说是PyTorch的基本单位一、 张量的定义1. 创建随机的张量初始化一个符合正态分布的张量randn()方法参数:张量的维度import

2022-05-18 16:44:15 4589

原创 机器学习----感知机(神经网络的基础)

什么是感知机?机器学习中有分类和回归两大问题:回归预测线性问题,例如房子价格、每一年的降水量 。分类给物体分类,输出之后输出判断是一个香蕉还是一个苹果。感知机是神经网络的基础引入问题颜色越红,形状越圆的是苹果颜色越黄,形状为长条的是香蕉这是数据分布的散点图,怎么才能找到一个线来把香蕉和苹果分类出来呢?决策边界y=mx + b是线性回归预测的数据都是分布在线上的点分类问题产生一个决策线,在决策线上方的是一种输出(苹果),在决策线下方的又是一种输出(香蕉)。决策边界线公式

2022-05-17 21:01:02 922 2

原创 机器学习----纯手撸线性回归代码

什么是线性回归?线性回归是利用函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析, 简单来说线性回归其实是试图找到自变量与因变量之间的关系比如房子的面积和价格:房子的面积越大,房子的价格就越高假设房子的面积和价格符合方程y = mx + b准备房子面积和价格的数据import numpy as npdata = np.array([[80,200], [95,230], [104,245],

2022-05-16 21:13:32 494

原创 OpenCV图像处理----图片卷积

图片卷积图像滤波是尽量保留图像细节特征的条件下对目标图像的噪声进行抑制,是图像预处理中不可缺少的操作,其处理效果的好坏将直接影响到后续图像处理和分析的有效性和可靠性。线性滤波是图像处理最基本的方法,它允许我们对图像进行处理,产生很多不同的效果。首先,我们需要一个二维的滤波器矩阵(卷积核)和一个要处理的二维图像。然后,对于图像的每一个像素点,计算它的邻域像素和滤波器矩阵的对应元素的乘积,然后加起来,作为该像素位置的值。这样就完成了滤波过程。对图像和滤波矩阵进行逐个元素相乘再求和的操作就相当

2022-05-15 18:41:42 2778

原创 OpenCV图像处理----图像的二值化

图像二值化( Image Binarization)就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程。二值化的原理import cv2img = cv2.imread('img/lena.jpg')# 转为灰度图new_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)height, width = new_img.shape[0:2]# 设置阈值thresh = 60# 遍历每一个像素点for row

2022-05-15 15:01:41 22862

原创 OpenCV图像处理----视频处理和HSV颜色模型

读取视频cv2.VideoCapture(0)方法参数:如果参数为路径就是打开该路径的视频如果参数为数字就是摄像头设备的号 一般为0返回video对象video对象:get()方法 cv2.CAP_PROP_FPS 获取fpscv2.CAP_PROP_FRAME_WIDTH 获取宽度cv2.CAP_PROP_FRAME_HEIGHT 获取高度read()方法 读取视频的每一帧返回flag(是否成功读取)frame(每一帧的图片)import cv2# 读

2022-05-15 14:20:25 1424

原创 OpenCV图像处理----绘制图形

# 导包并创建全黑数组import cv2import numpy as npimg = np.zeros((400, 400, 3), np.uint8)线条line()方法参数:图片矩阵起始点结束点颜色值(BGR)线条像素线条类型cv2.line(img, (10, 60), (200, 60), (61, 141, 240), 2, cv2.LINE_AA)矩形rectangle()方法参数:图片矩阵左上角坐标右下角坐标颜色值(BGR)边框像素(如果为

2022-05-12 17:07:17 408

原创 OpenCV图像处理----图像特效

图像融合按照一定的比例将两张图片融合在一起addWeighted()方法:参数1第一张图片矩阵参数2第一张图片矩阵的权重参数3第二张图片矩阵参数4第二张图片矩阵的权重融合之后的偏移量进行叠加的两张图片宽高应该相同叠加之后的像素偏移值如果填的话不要填太大,超过255会导致图像偏白import cv2import cv2 as cvimg = cv.imread("img/lena.jpg")tony = cv.imread("img/tony.jpg", )#

2022-05-12 16:16:45 1181

原创 OpenCV图像处理----图片的几何变换

图片的几何变换1. 图片剪切python中通过切片的方式就可以截取图片矩阵import cv2# 读取图片 cv2读取出的图片都是一个二维矩阵img = cv2.imread('./lena.jpg', cv2.IMREAD_UNCHANGED)# 切片 两个点的坐标可以截取图片 # x1:x2,y1:y2img1 = img[180:250, 180:310]cv2.imshow('img', img)cv2.imshow('img1', img1)cv2.waitKey()

2022-05-10 21:04:01 652

原创 python数据处理----分组和聚合(高级)

什么是聚合?在SQL中我们经常使用 GROUP BY 将某个字段,按不同的取值进行分组, 在pandas中也有groupby函数分组之后,每组都会有至少1条数据, 将这些数据进一步处理返回单个值的过程就是聚合,比如 分组之后计算算术平均值, 或者分组之后计算频数,都属于聚合...

2022-05-10 16:05:11 3878

原创 OpenCV图像处理入门----计算机视觉第一步

什么是计算机视觉机器视觉是人工智能的一个分支。直白的说就是用机器来代替人类看到的东西做思考和测量,然后做出正确的判断。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。opencv-python开始1. 读取图片cv2的imr

2022-05-10 16:04:06 830

原创 python数据处理----Apply自定义函数和向量化函数

什么是Apply自定义函数?Pandas提供了很多处理数据的API,如果自己的需求不能被这些API满足的时候,我们就需要写自定义函数使用apply函数apply函数接收一个自定义函数,将DataFrame的 行/列 数据传递给自定义函数处理。apply函数类似for循环,遍历行/列的每一个元素,比原生的for循环效率高。Series使用apply自定义函数创建数据创建自定义函数调用apply函数传入自定义函数(传入的自定义函数不能加括号)原数据:import pan

2022-04-27 10:37:33 2099 3

原创 python数据处理----Pandas类型转换

转换为字符串类型tips['sex_str'] = tips['sex'].astype(str)转换为数值类型转为数值类型还可以使用to_numeric()函数DataFrame每一列的数据类型必须相同,当有些数据中有缺失,但不是NaN时(如missing,null等),会使整列数据变成字符串类型而不是数值型,这个时候可以使用to_numeric处理#创造包含'missing'为缺失值的数据tips_sub_miss = tips.head(10)tips_sub_miss.loc

2022-04-26 21:35:41 3906

原创 python数据处理----Pandas的数据类型

Numpy介绍Numpy是一个开源的Python科学计算库,用于快速处理任意维度的数组。Numpy使用ndarray对象来处理多维数组,该对象是一个快速而灵活的大数据容器。通过python的list嵌套也可以实现多维数组,为什么还要使用ndarray?对比ndarray和原生python列表的计算速度import randomimport timeimport numpy as npa = []# 随机100000000数字放到列表for i in range(100000000)

2022-04-26 21:10:58 376

原创 python数据处理----整理数据

为什么要整理数据对于这种“宽”数据,在展示方面来说没有什么问题,但是数据分析的时候我们需要“长”数据,这时候就需要整理数据整理成我们想要的样子。melt函数把字段拆分成数据id_vars参数:保留哪个字段(可以保留多个字段)var_name参数:为其余转换的字段起别名value_name参数:为值的那一列起别名pew_long = pd.melt(pew,id_vars='religion',var_name='income',value_name='count')print(pew

2022-04-26 11:35:27 2031

原创 python数据处理----处理缺失值(二)

删除缺失值删除缺失值会损失信息,并不推荐删除,当缺失数据占比较低的时候,可以尝试使用删除缺失值按行删除age为NaN的所有行都删了train1.dropna(subset=['Age'],how='any',inplace=True)按列删除train1.drop(['Age'],axis=1)填充缺失值常量填充# 把数据表内所有空值填充为0train_constant.fillna(0,inplace = True)使用统计量替换(缺失值所处列的平均值、中位数

2022-04-25 20:52:08 970

原创 python数据处理----处理缺失值(一)

何为缺失值?缺失值介绍很多的数据集中因为数据量过大,并不是每一条数据都有完整的字段,缺失值字面意思就是某一条数据中有为空的字段,为空的字段就为缺失值。在pandas中缺失值用NaN表示pandas中的NaN来自于Numpy库,Numpy中的缺失值有NaN、NAN和nan,三个值都是一样的。缺失值和别的类型不同,毫无意义,NaN不为0,也不是空字符串,NaN也不等于NaN。判断是否是缺失值isnull是缺失值时为True,否则为Falsenotnull与isnull相反

2022-04-25 11:20:56 1110

原创 python数据处理----数据合并

连接数据加载多份数据连接# 读取数据df1 = pd.read_csv('../data/concat_1.csv')df2 = pd.read_csv('../data/concat_2.csv')df3 = pd.read_csv('../data/concat_3.csv')print(df1)print(df2)print(df3)# 连接数据 concat([数据1,数据2])方法row_concat = pd.concat([df1,df2,df3])Dat

2022-04-24 20:32:16 3484

原创 python数据处理----pandas计算常用统计值和排序

计算常用统计值describe( )方法:college.describe()# count: 样本数据的大小# mean: 数据的平均值# std: 数据的标准差# min: 数据的最小值# 25%: 1/4位数,数据在25%时的值# 50%: 中位数# 75%: 3/4位数# max: 数据的最大值定义describe的include参数来决定统计什么类型:# 统计字符串类型的数据college.describe(include=object).T# count: 非空

2022-04-22 09:52:24 1042

原创 python数据处理----分组和聚合计算(入门)

分组# 读取tsv文件,分隔符为\tdf = pd.read_csv('../data/gapminder.tsv',sep='\t') print(df)groupby('以xx字段分组')以年份分组,查看所有国家年龄的平均值:df.groupby('year')['lifeExp'].mean()大洲为亚洲,以年份分组,查看年龄的平均值:df[df['continent'] == 'Asia'].groupby('year')['lifeExp'].mean()分组聚合

2022-04-21 11:44:16 958

原创 python数据处理----pandas导入和导入文件

pickle文件的导入和导出:保存为pickle文件:读取pickle文件:csv文件的导入和导出保存为csv文件:Excel文件的导入和导出保存为Excel文件:Series数据对象不能保存为Excel,需要转成DataFrame才能保存为Excelscientists.to_excel('./scientists_df.xlsx',sheet_name='scientists',index=False)读取Excel文件:scientists_df = pd.read_exc

2022-04-20 09:53:32 1546

cv2所需要的dll文件

运行opencv-python报错importDLLloaderror,cv2缺少dll文件

2023-06-02

数据加载器练习-葡萄酒数据

数据加载器练习-葡萄酒数据

2022-05-20

机器学习+PyTorch预测乳腺癌的csv数据

机器学习+PyTorch预测乳腺癌的csv数据

2022-05-19

fastdfs_docker.tar

fastdfs镜像

2021-05-25

ubuntu_docker_sc.zip

Linux系统安装Docker资源

2021-05-25

captcha.zip

python生成验证码的包

2021-04-09

空空如也

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

TA关注的人

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