对数

时间复杂度、空间复杂度

匿名 (未验证) 提交于 2019-12-02 23:26:52
什么是算法? 计算机是人的大脑的延伸,它的存在主要是为了帮助我们解决问题。 而算法在计算机领域中就是为了解决问题而指定的 一系列简单的指令集合 。不同的算法需要不同的资源,例如:执行时间或消耗内存。 如果一个算法执行时间需要好几年或者需要占用非常大的内存,那么这算法几乎毫无用处,即使有价值使用场景也非常有限。 因此,一般上我们讨论一个算法的优劣的时候可以通过 时间 和 空间 两个维度来衡量,也就是常说的: 1、时间复杂度; 2、空间复杂度; 我们当然希望执行时间和消耗内存都越少越好,但很多时候其实我们无法同时兼顾,需要在时间和空间之间做一定的取舍达到平衡。 时间复杂度 一般上,如果我们要衡量一个程序片段的执行时间,我们会把程序运行一次并打印时间,这是最常见也是最简单的方式。 这种方式存在一些问题: 1、不同的计算机会产生不同的执行时间,甚至于相同的计算机也会产生不同的时间,根据计算机当前的情况而定; 2、通常可能我们使用很小的数据量来测量,但一个算法随着数据量的不同性能变化是不同的,所以小数据量衡量的时间不见得适用于大数据量; 3、甚至于有时候一个算法压根无法直接通过运行来测试时间。 为了解决这些问题,引入了数学领域中的 “大O标记法” 大O标记法 T(N)=O(f(N)) 数学概念看起来有些费解,我们可以把T(N)=1000N把f(N)=N 2 ,当N=1000,c=1的时候

matlab 机器学习 对数几率回归

匿名 (未验证) 提交于 2019-12-02 22:56:40
代码有很多种,都可以。对于复杂的数据预测精度都很低 逻辑回归中可以更改数据类型为我们的数据类型使用即可,这里写入的数据一共有6组,找到部分数据将其作为训练矩阵,根据我们的需要更改即可 代码段1: 训练出来的theta值就是我们需要的值 clear clc X = xlsread(‘C:\Users\user01\Desktop\test.xlsx’); [m,n] = size(X); %数据归一化处理 X(:,1)=X(:,1)/max(X(:,1)); X(:,2)=X(:,2)/max(X(:,2)); X(:,3)=X(:,3)/max(X(:,3)); X(:,4)=X(:,4)/max(X(:,4)); X(:,5)=X(:,5)/max(X(:,5)); X(:,6)=X(:,6)/max(X(:,6)); %将截距项添加至数据集X %X=[X,ones(m,1)]; Y=X(:,7); %我们把数据集中所有序号末位为6的设定为测试集,其他的数据为训练集 %将数据分为训练集XX1,YY1,测试集XX2,YY2。 j=1; k=1; for i=1:m if mod(i,10)==9 XX2(j,:)=X(i,:); YY2(j,:)=Y(i,:); j=j+1; else XX1(k,:)=X(i,:); YY1(k,:)=Y(i,:); k=k+1; end end

C#,记录--一个方法中,完成对数据增删改操作

匿名 (未验证) 提交于 2019-12-02 22:06:11
实际应用中,一般不会使用delete彻底的删除数据,大多都是逻辑删除 为了不把本文写成小作文,举个小栗子吧 表 A,deletestate为置删除字段,int类型,值为0和1 表中五条数据 结果 把置删除字段为1的过滤掉,这就是逻辑删除 我知道我写作文为什么总跑题了. 回归正题,上代码 首先,判断ID是否为空 ID为空,证明这条数据是不存在的,执行新增操作 ID不为空,代表这条数据已经存在,不是新增,只能是修改或删除 不是1,则执行修改操作 是不是异常简单 文章来源: C#,记录--一个方法中,完成对数据增删改操作

精细推导机器学习:逻辑斯蒂回归模型原理

旧城冷巷雨未停 提交于 2019-12-02 05:32:19
逻辑斯蒂回归(分类) sigmoid函数与二项逻辑回归模型 \(sigmoid\) 函数为: \[ sigmoid(x)=\pi(x)=\frac{1}{1+e^{-x}}\\ \] 其中 \(x \in \mathbb{R}\) , \(sigmoid(x)\in (0,1)\) . 又,其导数 \[ \pi'(x)=\pi(x)(1-\pi(x))\\ \] 二项逻辑斯蒂回归模型是如下的条件概率分布: \[ P(Y=1|x)=\frac{exp(w \cdot x+b)}{1+exp(w \cdot x+b)}\\ P(Y=0|x)=\frac{1}{1+exp(w \cdot x+b)}\\ \] 其中 \(x \in \mathbf{R}^{n}\) , \(Y \in\{0,1\}\) 为输出, \(w \in \mathbf{R}^{n}\) 和 \(b \in \mathbf{R}\) 为参数, \(w\) 为权值向量, \(b\) 称为偏置, \(w \cdot x\) 为 \(w\) 和 \(x\) 和内积。 增广权值向量和增广特征向量 记 \(w=\left(w^{(1)}\right.\left.w^{(2)}, \cdots, w^{(n)}, b\right)^{\mathrm{T}}, \quad x=\left(x^{(1)}, x^{(2)},

浅谈密码学中数论基础

匆匆过客 提交于 2019-12-02 01:12:23
浅谈密码学中数论基础 1.模运算1765243235 模运算也可以称为取余运算,例如 23≡11(mod12),因此如果a=kn+b,也可以表示为a ≡ b(mod n),运算规则: (a+b) mod n = ((a mod n) + (b mod n))mod n (a*b) mod n = ((a mod n) * (b mod n)) mod n 完全剩余集合 1~n-1构成了自然数n的完全剩余集合,对于任意一个整数m%n都存在于1~n的集合中。 构造加法链 在加密算法中,运用到了大量的取模运算,对于一个k位数模n,所有的运算例如加减乘除中间结构将不会超过2k位,因此例如a x mod n将会大大简化计算时的复杂度。 例如a 8 mod n 在计算时可以这样计算 ((a 2 mod n) 2 mod n) 2 mod n 当指数x不是2的倍数时则需要构造加法链,例如25,25 = 16 + 8 +1 = 2 4 + 2 3 + 2 0 因此a 25 mod n = (a * a 8 * a 16 ) mod n = ((((a 2 * a) 2 ) 2 ) 2 *a)mod n C语言表示 unsigned long ss(unsigned long x , unsigned long y , unsigned long n) { unsigned long s,t,u;

R 对数变换 《回归分析与线性统计模型》page103

守給你的承諾、 提交于 2019-12-01 22:33:28
BG:在box-cox变换中,当λ = 0时即为对数变换。 当所分析变量的标准差相对于均值而言比较大时,这种变换特别有用。对数据作对数变换常常起到降低数据波动性和减少不对称性的作用。。这一变换也能有效消除异方差性 library(MASS) library(openxlsx) data= read.xlsx("data104.xlsx",sheet = 1) #导入数据 attach(data)    op<-par(mfrow=c(2,2),mar=0.4+c(4,4,1,1),oma=c(0,0,2,0)) #将四张图放在一起,调整边界。(以后也采用此行) plot(size,effort) #图4-4(a) plot(log(size),log(effort)) #图4-4(b) #绘制频率分布直方图 hist(effort) #图4-5(a) hist(size) #图4-5(b)    effor 和 size 这两个变量的频率分布图表明,它们并不满足正态分布。为了接近正态分布,必须变换这些变量(通过频率分布图判断变量是否满足正态分布) 1.先进行基本的线性回归,利用得到的模型进行box-cox变换 lm1=lm(effort~size+t14) #拟合线性回归模型 summary(lm1) #绘制残差图进行残差分析 plot(fitted(lm1),resid(lm1)

对数正态分布的随机数

不问归期 提交于 2019-12-01 09:55:12
一、功能 产生对数正态分布的随机数。 二、方法简介 对数正态分布的概率密度函数为 \[ f(x)=\left\{\begin{matrix} \frac{1}{x\sqrt{2\pi }\sigma }exp\left ( - \frac{(lnx-\mu )^{2}}{2\sigma ^{2}} \right ) & x> 0\\ 0 & x \leqslant 0 \end{matrix}\right. \] 对数正态分布的均值为 \(e^{\mu + \sigma ^{2} / 2}\) ,方差为 \((e^{\sigma ^{2}}-1)e^{2\mu + \sigma ^{2}}\) 。 首先产生正态分布的随机变量 \(y\) ,然后通过变换 \(x=e^{y}\) ,产生对数正态分布的随机变量 \(x\) ,具体方法如下: 产生正态分布的随机数 \(y\) ,即 \(u \sim N(\mu , \sigma )\) ; 计算 \(x=e^{y}\) 。 三、使用说明 是用C语言实现产生对数正态分布分布随机数的方法如下: /************************************ u ---对数正态分布的参数mu sigma ---对数正态分布的参数sigma s ---随机数种子 ************************************

Log-Polar Mapping(对数极坐标映射)

本小妞迷上赌 提交于 2019-12-01 04:06:00
对数极坐标图像几何学首先是从生物视觉系统的视网膜生理结构获得灵感的,具有数据压缩特性。在人工视觉系统中,与常见的笛卡尔坐标系中的图像对比,在没有减小视域大小和视网膜中心部分图像的分辨率的情况下,对数极坐标图像允许更加快速的采样率。 The log-polar image geometry was first motivated by its resemblance with the structure of the retina of some biological vision systems and by its data compression qualities. When compared to the usual cartesian images, the log-polar images allow faster sampling rates on artificial vision systems without reducing the size of the field of view and the resolution on the central part of the retina (fovea). In the last years, however, it has been noticed that the log-polar geometry

机器学习之对数几率回归理解

拜拜、爱过 提交于 2019-11-30 07:32:50
对数几率回归不是回归,是分类。 1.对数几率回归的形式 由线性回归的y=WX转化为 y_pre=sigmoid(WX)即是对数几率回归 2.对数几率回归的名字来由(对数几率优化的本质): 2.1由于上述1中的优化目标是希望预测y_pre=即sigmoid(WX)尽可能等于分类标记y 2.2由sigmoid函数可以得到,即希望WX尽可能等于ln(y/(1-y))。 2.3由于预测目标y为1时是正例,y为0时是负例,因此y的值可以视为样本为正例的概率,同时1-y即可以视为样本为负例的概率。 2.4另y/(1-y)即正例概率与负例概率的比值(一个相对概率),通常称为几率,而ln(y/(1-y))则称为对数几率概率 综合2.2、2.4说明对数几率回归的目标是使WX尽可能等于对数几率,这就是对数几率回归名字的来由。 3.如何进行具体的最优化 3.1对于任意样本,预测值为正例的概率为sigmoid(WX),预测值为负例的概率为1-sigmoid(WX) 3.2我们希望对于正例,我们希望最大化预测值为正例的概率sigmoid(WX),对于负例,我们希望最大化预测值为负例的概率1-sigmoid(WX),综合我们希望最大化 Z=y*sigmoid(WX)+(1-y)*(1-sigmoid(WX)).也可以写成y*y_pre+(1-y)*(1-y_pre) 3