自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Pytorch(2)

1、梯度梯度是个向量不是标量,偏微分是特殊导数,是标量。函数的梯度是一个向量,向量的方向代表函数在当前点的增长方向,向量的长度代表函数在当前点的增长的速率。动量就相当于惯性,给定个动量,能够帮助冲出局部最小值,往更优解方向继续下降。2、Pytorch中Relu用法,应用频率极高,优先使用,会减少sigmoid方法所带来的梯度离散和梯度爆炸情况。Mean Squared Error:MSE均方差Cross Entropy Loss:分类中间的误差,即可用于二分类,也可以用于多分类.

2021-08-20 14:54:54 163

原创 PyTorch

1、Linear Regression要预测的值是连续的,时序空间的。Logistics Regression就在Linear Regression上加激活函数(Sigmoid),或者说是压缩函数,把取值空间压缩至[0,1]的范围,预测值在0~1之间的时序空间的问题,不是很连续的取值范围,二分问题。Classification比如说有10个点,所有点的概率加起来等于1,多分问题。取概率最大的点作为预测值。2、非线性函数3个Relu模型,增加了非线性的表达能力,通常最后一层的激活函数不会.

2021-08-12 18:01:36 359

原创 Python-数据结构与算法

1、“大O记法”:对于单调的整数函数f,如果存在一个整数函数g和实常数c>0,使得对于充分大的n总有f(n)<=c*g(n),就说函数g是f的一个渐近函数(忽略常数),记为f(n)=O(g(n))。也就是说,在趋向无穷的极限意义下,函数f的增长速度受到函数g的约束,亦即函数f与函数g的特征相似。时间复杂度:假设存在函数g,使得算法A处理规模为n的问题示例所用时间为T(n)=O(g(n)),则称O(g(n))为算法A的渐近时间复杂度,简称时间复杂度,记为T(n)2、时间复杂度的几条基本计算

2021-07-27 17:04:40 1914

原创 机器学习-深度学习

基础知识详见机器学习1,2,3,4,5,61、预测的结果好与不好,要看两个因素:bias和variance,如果bias大,variance小,欠拟合;如果bias小,variance大,过拟合;最好结果是bias和variance都小。2、梯度下降注意三点:(1)调整学习率(2)随机的梯度下降(3)特征缩放...

2021-07-26 20:50:40 750

原创 机器学习-sklearn补充

具体有关sklearn知识点见机器学习(1)、(2)、(3)、(4)、(5)、(6)1、加载图片import cv2cv2.imread()将彩色(三维的)图片转化成黑白的(图片灰度化处理),大大降低数据量。cv2.cvtColor(digit,code=cv2.COLOR_BRG2GRAY)plt.imshow(digit,cmap = plt.cm.BuPu)2、如果k近邻的邻居数不知道选多少,可以用样本数开根号得出的数作为邻居数,但这个邻居数也不一定是最适合的。距离公式:欧氏距

2021-07-19 14:16:47 341

原创 机器学习(6)

1、

2021-07-18 17:04:39 144

原创 机器学习(5)

1、回归算法-线性回归分析线性回归通过一个或者多个自变量与因变量之间进行建模的回归分析。其中特点为一个或多个称为回归系数的模型参数的线性组合。一元线性回归:涉及到的变量只有一个多元线性回归:涉及到的变量两个或两个以上2、损失函数(误差大小)3、最小二乘法之正规方程:直接求解到最小值缺点:当特征过于复杂,求解速度慢。正规方程API:sklearn.linear_model.LinearRegressioncoef_:回归系数4、最小二乘法之梯度下降:沿着...

2021-07-17 16:35:12 72

原创 机器学习(4)

1、分类算法-决策树、随机森林H的专业术语称之为信息熵,单位为比特。 公式:2、决策树的划分依据之一-信息增益特征A对训练数据集D的信息增益g(D,A),定义为集合D的信息熵H(D)与特征A给定条件下D的信息条件熵H(D|A)之差,即公式为:3、sklearn决策树API:class sklearn.tree.DecisionTreeClassifier(criterion=’gini’, max_depth=None,random_state=None)决策树分类器crit...

2021-07-16 11:19:30 99

原创 机器学习(3)

1、训练集:建立模型测试集:评估模型数据集划分API:

2021-07-15 17:10:19 234

原创 机器学习(2)

1、sklearn降维,是指降特征值维度,比如将原来可能的10列特征值降低至5列。sklearn降维API:sklearn. decomposition2、特征选择就是单纯地从提取到的所有特征中选择部分特征作为训练集特征, 特征在选择前和选择后可以改变值、也不改变值,但是选择后的特征维数肯 定比选择前小,毕竟我们只选择了其中的一部分特征。主要方法(三大武器):Filter(过滤式):VarianceThresholdEmbedded(嵌入式):正则化、决策树Wrapper(包裹式)3

2021-07-13 16:31:27 102

原创 机器学习(1)

1、机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测。2、机器学习的数据:文件(大多数是csv)mysql:(1)性能瓶颈,文件如果大,读取速度慢(2)格式不符合机器学习要求的数据格式pandas:读取工具(是一个数据读取非常方便以及基本的处理格式的工具),其中的numpy读取速度快(为什么这么快?numpy释放了GIL,没有用这个锁,所以所有线程可以并行,而Cpython和Jpython不行)3、数据集Kaggle特点:(1)大数据竞赛平台 (2)80万科学家

2021-07-12 22:30:15 96

原创 最优化方法

1、最速下降法在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。反过来,如果我们需要求解损失函数的最大值,这时就需要用梯度上升法来迭代了。在机器学习中,基于基本的梯度下降法发展了两种梯度下降方法,分别为随机梯度下降法和批量梯度下降法。2、共轭梯度法所谓共轭梯度法, 最大的优势就是每个方向都走到了极致, 也即是说寻找极值的过程中绝不走曾经走过的方向,那么 n空间的函数极值也就走 n步就解决了.假如是二维空间, 那就直走两步, 跟最速下降法比优势是..

2021-07-12 09:10:10 1005

原创 概率统计笔记

1、随机变量与概率分布概率分布用来描述随机变量或者一簇随机变量在每一个可能取到的状态的可能性大小。我们描述概率分布的方式取决于随机变量是连续的还是离散的离散型随机变量的概率分布可以用概率质量函数(probability mass function,PMF)描述,PMF可以同时作用于多个随机变量,这种多个变量的概率分布被称为联合概率分布。P ( x = x , y = y ) 表示x = x和y = y同时发生的概率。我们也可以简写为P ( x , y )。2、贝叶斯定理:是关于随机事件A和B的条

2021-07-11 21:36:39 875

原创 矩阵-笔记

1、标量:很简单,就是一个数,1,2,5,108等等向量:[1,2],[1,2,3],[1,2,3,4],[3,5,67,·······,n]都是向量矩阵:[[1,3],[3,5]],[[1,2,3],[2,3,4],[3,4,5]],[[4,5,6,7,8],[3,4,7,8,9],[2,11,34,56,18]]是矩阵3维张量:[[[1,2],[3,4]],[[1,2],[3,4]]]2、张量的运算3、矩阵的逆:设A是数域上的一个n阶方阵,若在相同数域上存在另一个n阶矩阵B,使得.

2021-07-10 22:31:13 169

原创 微分笔记(2)

1、一元函数:y只跟一个自变量x有关2、多元函数:y跟多个自变量x有关,y=f(x1,x2,……,xn)3、偏导数:y只对固定的一个x是有变化的4、方向导数:是一个多元函数在一点处某个射线方向上变化时对于距离的变化率,在这变化率中同时考虑到指向恰好相反的那条射线,并令其中的距离带上负号,那就得到对称的方向导数。5、多元函数的二阶微分就是Hessian矩阵,如果Hessian矩阵为正定,对于任意方向这个函数y二阶导数都是正,在这一点y的取值是这个范围的最小值,如果Hessian矩阵为负定,y的

2021-07-10 18:24:14 171

原创 微分笔记(1)

1、A=o(B)是指:在取极限的时候A相对于B是可以忽略的小量,当X够大的时候,A可以任意的比B的常数倍要小2、A=O(B)是指:A和B的量级差不多,在取极限的时候,B可以控制住A,A中的阶不会比B中的阶大,当X足够大时,A可以任意的比B的常数倍要小3、当x→∞时,f(x)<ϵg(x),意思就是f(x)=o(g(x))x→x1 f(x)→y1对任意的ϵ,存在一个δ时,x-x1<δ时,有f(x)-y1<ϵ, f(x1)=y1任务3Delta(大写Δ,小写δ)在数学和科学,表示..

2021-07-10 00:14:56 167

原创 数据分析(6)

1、pd.date_range(start=None, end=None, periods=None, freq='D')start:开始时间 end:结束时间 periods=个数 freq:频率start、end、freq配合能够生成start和end范围内以频率freq的一组时间索引start、periods、freq配合能够生成从start开始,频率为freq的periods个时间索引2、...

2021-07-09 15:14:20 81

原创 数据分析(5)merge()、groupby()、索引相关操作

1、join:默认情况下他是把行索引相同的数据合并到一起。merge:按照指定的列把数据按照一定的方式合并到一起。通过merge函数合并两个DataFrame。on代表指明拿什么作为key来进行匹配。how这里分为left,right,inner,outer等方式。t1.merge(t2,left_on="a",right_on="f",how="inner")默认的合并方式inner,交集merge outer,并集,NaN补全merge left,左边为准,NaN补全merg

2021-07-08 15:30:11 474

原创 数据分析(4)pandas

1、Series 一维,带标签数组DataFrame 二维,Series容器2、t2=pd.Series([1,23,2,2,1],index=list("abcde")) index指定索引,数量要与前边列表对应,如果不指定索引,默认索引0,1,2,3,4……通过列表、可迭代对象range、字典创建Series。3、Series切片和索引一个数组构成对象的键(index索引),一个数组构成对象的值(values),通过索引和位置都能取到值。In: t.indexOut: ind

2021-07-08 08:57:20 144

原创 数据分析(3)numpy

1、numpy是一个在Python中做科学计算的基础库,重在数值计算,也是大部分PYTHON科学计算库的基础库,多用于在大型、多维数组上执行数值运算。2、numpy生成数组:np.arange(1,6)np.array([1,2,3,4,5])np.array(range(1,6))变量类型:numpy.ndarray数据类型:int8、float32、bool,求t3的数据类型 t3.dtype调整数据类型:t.astype("int8")保留小数:python中 ro

2021-07-07 08:44:00 247

原创 数据分析(2)matplotlib

1、ctrl+b为查看源代码2、plt.grid(alpha=0.2) alpha(指透明度)是0~1。3、折线图:能够显示数据的变化趋势,反映事物的变化情况。(变化)直方图:绘制连续性的数据,展示一组或者多组数据的分布状况。(统计)条形图:绘制离散的数据,能够一眼看出各个数据的大小,比较数据之间的差别。(统计)散点图:判断变量之间是否存在数量关联趋势,展示离群点。(分布规律)4、plt.scatter(x,y)绘制散点图5、plt.bar绘制条形图(竖状),plt.ba...

2021-07-06 09:39:16 74

原创 数据分析(1)matplotlib

1、matplotlib:用于画图,axis轴,指的是x或者y坐标轴,matplotlib默认不支持中文字符。numpy:处理数值型的数据pandas:处理数值型、时间序列、列表、数组等数据类型2、数据分析流程:提出问题-准备数据-分析数据-获得结论-成果可视化3、jupyter notebook:一款编程/文档/笔记/展示软件 启动命令:jupyter notebook4、matplotlib基本用法:from matplotlib import pyplot as plt 导入p

2021-07-05 09:53:11 84

原创 Python-模块和包

1、API(Application Programming Interface 应用程序编程接口)是用于描述模块中提供的函数和类的功能描述和使用方式描述。2、通过__doc__可以获得模块的文档字符串的内容。通过特殊变量__name__可以获取模块的名称,特例:当一个模块被作为程序入口时(主程序、交互式提示符下),它的__name__的值为“__main__”。3、import 语句导入:import 模块名 #导入一个模块import 模块 1,模块 2… #导入多个模块import

2021-07-03 21:52:14 45

原创 Python-文件处理

1、open()函数用于创建文件对象,基本语法格式:open(文件名[,打开方式])2、如果我们没有增加模式“b”,则默认创建的是文本文件对象,处理的基本单元是“字符”。如果是二进制模式“b”,则创建的是二进制文件对象,处理的基本单元是“字节”。3、文本文件的写入三个步骤:1. 创建文件对象 2. 写入数据 3. 关闭文件对象4、ASCII 码用 7 位表示,只能表示 128 个字符。只定义了 2^7 =128 个字符;ISO-8859-1 又称 Latin-1,是一个 8 位单字节字符集,

2021-07-03 19:09:15 156

原创 异常和错误

1、异常处理本质在遇到问题时依然可以正确的执行剩余的程序,而不会因为异常而终止程序执行。2、所有异常的父类:BaseException3、异常的处理过程:抛出异常、捕获异常。解决异常的关键是找准定位。4、try...except 是最常见的异常处理结构。结构如下:try:被监控的可能引发异常的语句块except BaseException [as e]:异常处理语句块如果 try块中发生了异常,则跳过 try 块中的后续代码,跳到相应的 except ...

2021-07-01 17:08:32 52

原创 Python基础认知篇(8)面向对象

1、Python 中没有方法的重载。定义多个同名方法,只有最后一个有效。2、Python 是动态语言,我们可以动态的为类添加新的方法,或者动态的修改类的已有的方法。3、私有属性:两个下划线开头的属性是私有的(private),类内部可以访问私有属性(方法),类外部可以通过“_类名__私有属性(方法)名”访问私有属性(方法)。方法本质上也是属性!只不过是可以通过()执行而已。4、@property 可以将一个方法的调用方式变成“属性调用”。5、面向对象三大特征:封装(隐藏)、继承(支持多重继承

2021-07-01 14:36:32 77

原创 Python基础认知篇(7)面向对象

1、嵌套函数(1)封装 - 数据隐藏,外部无法访问“嵌套函数”。(2)在函数内部避免重复代码。(3)闭包2、nonlocal 用来声明外层的局部变量。global 用来声明全局变量。3、

2021-06-30 15:25:40 52

原创 Python基础认知篇(6)函数

1、Python 函数的分类:内置函数(如str()、list())、标准库函数(通过import导入)、第三方库函数(通过import导入)、用户自定义函数。2、def 函数名 ([参数列表]) :'''文档字符串'''函数体/若干语句参数列表(1) 圆括号内是形式参数列表,有多个参数则使用逗号隔开(2) 形式参数不需要声明类型,也不需要指定函数返回值类型(3) 无参数,也必须保留空的圆括号(4) 实参列表必须与形参列表一一对应3、 函数printM...

2021-06-30 11:46:25 145

原创 Python基础认知篇(5)循环语句&推导式

1、for 循环通常用于可迭代对象的遍历。for 循环的语法格式如下:for 变量 in 可迭代对象:循环体语句2、while 循环的语法格式如下:while 条件表达式:循环体语句3、range 对象是一个迭代器对象,用来产生指定范围的数字序列。格式为:range(start, end [,step])4、break 语句可用于 while 和 for 循环,用来结束整个循环。当有嵌套循环时,break 语句只能跳出最近一层的循环。5、contin...

2021-06-29 09:34:14 161

原创 Python基础认知篇(4)字典/集

1、字典是“键值对”的无序可变序列,字典中的每个元素都是一个“键值对”,包含:“键对象”和“值对象”。“键”是任意的不可变数据,不可重复,“值”可以是任意的数据,并且可重复。2、通过{}、dict()、zip()来创建字典对象。通过 fromkeys 创建值为空的字典。>>> a = dict.fromkeys(['name','age','job'])>>> a{'name': None, 'age': None, 'job': None}[键]获得.

2021-06-28 15:37:37 116

原创 Python基础认知篇(3)序列

1、Python中常用的序列结构有:字符串、列表、元组、字典、集合。2、列表可以创建多类型字符串和空列表对象。list()可以将任何迭代的数据转化成列表。range()可以帮助我们非常方便的创建整数列表,这在开发中及其有用。语法格式为:range([start,] end [,step])start 参数:可选,表示起始数字。默认是 0end 参数:必选,表示结尾数字。step 参数:可选,表示步长,默认为 1python3 中 range()返回的是一个 range 对象,而不是列表。我

2021-06-28 00:43:41 73

原创 Python基础认知篇(2)

1、链式赋值用于同一个对象赋值给多个变量。>>> x=y=123 相当于:x=123;y=1232、系列数据赋值给对应相同个数的变量(个数必须保持一致)>>> a,b,c=4,5,6 相当于:a=4;b=5;c=63、Python 不支持常量,实际上是可以改的,只能逻辑上不做修改。4、Python 中最基本的内置数据类型和运算符:数据类型:整型、浮点型(小数)、布尔型(Ture/False)、字符串型("abc")运算符:+、-、*、/、//(整

2021-06-27 19:37:13 248

原创 Python基础知识篇(1)

1、Python是一种解释型、面向对象的语言。由龟叔1989年发明,1991年正式公布。优点:可读性强、简洁、可扩展、面向对象、可移植和跨平台、免费和开源、丰富的库,应用广泛。缺点:性能低,C/C++/JAVA/GO语言可以弥补其缺陷,可嵌入和扩展使用。2、Python2.7可通过2to3迁移至Python3。3、常用的Python解释器有CPython(C语言)、JPython(Java)、IronPython(.NET)、PyPy(Python)。4、Python开发环境之一:IDL

2021-06-26 22:45:22 64

空空如也

空空如也

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

TA关注的人

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