机器学习中的假设检验

  • 正态性检验
  • 相关分析
  • 回归分析

所谓假设检验,其实就是根据原假设来构造一种已知分布的统计量来计算概率,根据概率值大小来判断能否拒绝原假设,从而得到一种结论。假设检验的过程就是,构造一个原假设成立条件下的事件A,计算该A发生的概率P是否低于显著水平,即A是否为小概率事件(P值小于显著水平),若A为小概率事件,则原假设的发生的概率也不会很大,即可以拒绝原假设;而当p值大于显著水平,只是说明证伪结果不能推翻原假设即不能拒绝原假设而已,并不能说明原假设就是正确的就可以接受原假设。

例如机器学习中的最基本假设:样本分布与总体分布相似,样本可以代表总体,反之若样本不能反映总体,也就没有做机器学习的必要了,所以在训练模型之前,需要做一些假设检验,来决定能否使用该模型。

导入数据

import seaborn as sea
# 如遇中文显示问题可加入以下代码
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']  # 指定默认字体
mpl.rcParams['axes.unicode_minus'] = False  # 解决保存图像是负号'-'显示为方块的问题
import copy#导入数据
data_raw=pd.read_excel(r'方差分析.xlsx')
data_clean=copy.deepcopy(data_raw)data_clean.head(5)

正态性检验:数值特征的正态分布检验(一组数据的正态性检验)

  • 可视化:直方图、qq图,pp图,计算偏度与峰度
  • S-W检验:小样本≤50
  • K-S检验:大样本>50

Q-Q图是基于分位数的,P-P图是基于累积分布的

偏度:数据对称程度,

  • skewness = 0 —— 分布形态与正态分布偏度相同
  • skewness > 0 —— 正偏差数值较大,为正偏或右偏。长尾巴拖在右边,数据右端有较多的极端值
  • skewness < 0 —— 负偏差数值较大,为负偏或左偏。长尾巴拖在左边,数据左端有较多的极端值

峰度:数据陡峭程度

  • kurtosis = 0 —— 与正态分布的陡缓程度相同
  • kurtosis > 0 —— 比正态分布的高峰更加陡峭——尖顶峰
  • kurtosis < 0 —— 比正态分布的高峰来得平台——平顶峰

S-W、K-S检验:

原假设:服从正态分布

def checkNormal(df,tiger):#df:dataframe、数值import seaborn as seafrom scipy import statsplt.figure(figsize=(8,5))#绘制直方图plt.subplot(131)sea.histplot(data=df,x=tiger, bins='auto', kde=True) #绘制散点图plt.subplot(132)sea.scatterplot(data=df,x=df.index, y=tiger)#绘制qq图plt.subplot(133)stats.probplot(df[tiger], dist='norm', plot=plt)name=['偏度','峰度','S-W(≤5000):p','K-S(>5000):p']value=[data_clean[tiger].skew(),data_clean[tiger].kurt(),stats.shapiro(data_clean[tiger])[1],stats.kstest(data_clean[tiger], 'norm',args=(data_clean[tiger].mean(),data_clean[tiger].std()))[1]]result=pd.DataFrame({'name':name,'value':value})print(result)
#     #计算偏度,峰度
#     print('偏度:',data_clean[tiger].skew())
#     print('峰度:',data_clean[tiger].kurt())
#     #s-w检验
#     stats.shapiro(data_clean[tiger])[1]
#     #k-s检验
#     stats.kstest(data_clean[tiger], 'norm',args=(data_clean[tiger].mean(),data_clean[tiger].std()))[1]#检验方法,例如'norm','expon','rayleigh','gamma',这里我们设置为'norm',即正态性检验check(data_clean,'被投诉次数')

首选方法是图示法,即利用直方图、Q-Q、PP图进行观察,如果分布严重偏态(左偏/右偏)和尖峰分布则建议进行假设检验。在样本量较小的时候优先选择S-W检验,反之使用K-S检验。统计学上正态性检验:原假设服从正态分布,即一般P值大于0.05我们可认为该组数据是符合正态分布。

相关分析

  • 数值变量与数值变量:相关系数显著性检验
    T检验:原假设:线性不相关(相关系数=0)
  • 分类变量与数值变量:方差分析:分类变量对数值变量是否有显著影响
    F检验:原假设:分类变量对数值变量没有影响,当分类变量只有两个类别时,也可用T检验。
  • 分类变量与分类变量:卡方分析:验证分类变量之间是否独立
    卡方检验:原假设:两个分类变量相互独立

T检验与方差分析均为差异显著性检验,用于比较两个(T检验)或者多个样本(方差分析)的差异是否显著的统计分析方法,原假设:H0:两组均值或多组均值相等。

T检验:

  • 均值差检验,检验两组数据(总体均为正态,且方差齐)的均值是否相等且数据为定量数据(分类变量对应数值变量)。
  • 此外,T检验也可以对相关系数、回归系数做显著性检验,原假设:H0:相关系数=0,H0:回归系数β=θ

方差分析:原假设H0:各个类别下的总体均值均相等,检验多个总体(方差齐)均值是否相等的方法,虽然它形式上是比较总体均值,但是本质上是研究变量之间的关系。这里的变量中,自变量是分类型的,因变量是数值型的,所研究的关系是是指分类自变量对数值因变量的影响。当分类特征只有两个类别时,此时方差分析(F检验)等价于T检验。

卡方分析:是一种非参数检验(对总体分布没有假定)

  • 可以用于独立性检验:可用于检验2个分类变量之间是否独立来判断是否相关,
    原假设H0:两个分类变量相互独立
  • 也可用于总体分布假设的检验(拟合优度检验)
    原假设:假设数据服从某种分布,从而根据概率密度函数得到概率值,计算观测频数与理论频数(np)的偏离程度,得到卡方统计量,来判断是否落在拒绝域内

导入数据

#加载数据
data_raw=pd.read_excel(r'./Data/泰坦尼克号/titanic3.xls')
data_clean=copy.deepcopy(data_raw)
#查看数据
data_clean.info()

相关系数显著性检验

#method{‘pearson’, ‘kendall’, ‘spearman’} :用来计算相关性的方法,默认为皮尔森相关系数
#min_periodsint:可选参数,为了获得有效结果所需要的最小的样本数量def getCorr(inx,method='pearson'):#method:'pearson', 'spearman', 'kendall'
#输出相关系数和显著性检验P值inx_num=inx.select_dtypes('number')cols=inx_num.columnsm,n=len(cols),len(cols)
#     print(cols)data_corr=pd.DataFrame(data=np.zeros((m,n)),index=cols,columns=cols)data_corr_p=pd.DataFrame(data=np.zeros((m,n)),index=cols,columns=cols)for i in data_corr.index:for j in data_corr.columns:if method=='pearson':corr_p=scipy.stats.pearsonr(inx_num[i], inx_num[j])elif method=='spearman':corr_p=scipy.stats.spearmanr(inx_num[i], inx_num[j])elif method=='kendall':corr_p=scipy.stats.kendalltau(inx_num[i], inx_num[j])data_corr.loc[i,j]=corr_p[0]data_corr_p.loc[i,j]=corr_p[1]return data_corr,data_corr_pcorr,corr_p=getCorr(data_clean)

方差分析

方差分析检验多个类别对应的总体均值是否相等的方法,是一种参数检验,对数据分布有一定要求。数据用什么样的检验方法进行分析,实际上取决于我们构造的统计量服从什么样的分布,只有服从这个分布,才可以利用这个分布的相关函数计算P值,如果实际上不服从这个分布,那么计算出的P值自然是不准确的。

  • 正态性:每个类别对应的数据服从正态分布
    原假设:服从正态分布
  • 方差齐:每个类别对应的总体的方差相同(每个分类特征对应的数值变量的方差相同)
    原假设:每个类别对应的方差相同

方差分析:理论上要求满足正态性和方差齐才可以使用方差分析,当数据不满足正态性和方差齐性假定时,参数检验可能会给出错误的答案。若正态性或方差齐不满足,则使用非参数检验方法检验分类特征对数值特征是否有显著影响,非参数检验对数据分布不作假设。
方差分析流程:

如下图所示,
正态性检验:原假设:行业中每个类别对应的总体分布为正态分布
方差齐检验:原假设:行业中每个类别对应的总体方差相同
方差齐检验前提:每个类别对应的总体均服从(近似)正态分布,每个类别的样本相互独立

每个类别对应的数据的正态性检验

#正态性检验:每个类别对应数据的正态分布检验
def checkGroupNormal(df,tiger,cat):#df:dataframe,tiger:数值变量,cat;分类变量import seaborn as seafrom scipy import statsgroup=df[[cat,tiger]].groupby(cat)means=group.mean()stds=group.std()n=len(means)#绘制每个分类对应数据的直方图
#     plt.figure(1)
#     for i in range(1,n+1):
#         plt.subplot(n,1,i)
#         sea.histplot(data=df[df[cat]==means.index[i-1]],x=tiger, bins='auto', kde=True,label=means.index[i-1]) 
#         plt.legend()#绘制散点图
#     plt.figure(2)
#     for i in range(1,n+1):
#         plt.subplot(n,1,i)
#         sea.scatterplot(data=df[df[cat]==means.index[i-1]],x=df[df[cat]==means.index[i-1]].index, y=tiger,label=means.index[i-1])
#         plt.legend()#绘制qq图
#     plt.figure(3)
#     for i in range(1,n+1):
#         plt.subplot(n,1,i)
#         stats.probplot(df[df[cat]==means.index[i-1]][tiger], dist='norm', plot=plt)#计算偏度,峰度,s-w检验,k-s检验value=[]for i in means.index:data=data_clean[[cat,tiger]][data_clean[cat]==i][tiger]#偏度a=data.skew()#峰度b=data.kurt()#s-w检验c=stats.shapiro(data_clean[tiger])[1]#k-s检验u,std=means.loc[i,tiger], stds.loc[i,tiger]d=stats.kstest(data, 'norm',(u,std))[1]value.append([a,b,c,d])name=['偏度','峰度','S-W(≤5000):p','K-S(>5000):p']result=pd.DataFrame(data=np.array(value),index=means.index,columns=name)return resultprint(checkGroupNormal(data_clean,'被投诉次数','行业'))

方差分析按照分类变量个数不同,可以分为单因素方差分析、双因素方差分析以及多因素方差分析。

  • 单因素方差分析
    单因素效应:其他因素水平固定时,某一因素不同水平之间的变化(其他分类特征水平类别时,某一分类特征不同类别之间的变化)。
  • 双因素方差分析
    主效应:不考虑其他因素的影响下,某因素不同水平之间的平均变化
    交互效应:两因素间的交互作用引起的其单独效应的平均变化
  • 多因素方差分析

注意:双因素分析或者多因素分析,均需要对每个分类特征的每个类别对应的数据做正态性检验和方差齐检验,均符合要求时才可以做方差分析,否则要使用非参数检验。

方差齐检验

def equalVarCheck(inx,tiger,categoric=[]):#tiger:数值变量,categoric:分类变量inx_tiger=inx[tiger]inx_class=list(inx.select_dtypes(exclude='number').columns) if len(categoric)<1 else categoricfor col in inx_class:data=inx[[col,tiger]]group=data.groupby(col)#分组group_list=[list(np.array(i[1])[:,-1]) for i in group]#嵌套列表_,p=stats.levene(*group_list)print(col,p)equalVarCheck(data_clean,'被投诉次数',['行业','地区'])

当数据满足正态性和方差齐时,

单因素方差分析:

from statsmodels.stats.anova import anova_lm #方差分析
from statsmodels.formula.api import ols  # 最小二乘法拟合#单因素方差分析
model = ols('被投诉次数~C(行业)',data=data_clean).fit()
model_a=anova_lm(model)
model_a
# 组间平方和
# SSE=1456
#组内平方和
# SSA=2708
#R_2=SSE/(SSE+SSA)

计算关系强度R²

R_2=model_a['sum_sq'][0]/model_a['sum_sq'].sum()
R_2

以上单因素方差分析可以得出,行业因素对投诉次数有显著影响,行业因素有四种类别,四组之间的投诉次数有显著差异,但是我们不知道哪种行业与其他行业的不同,多重比较可以解决这个问题。
#

单因素各个水平之间的显著差异(多重比较):各组均值差异的成对检验

在检验出行业因素对投诉次数有显著影响,还需判断行业因素具体是哪两个类别对应的总体均值不相等,即行业因素中具体是哪两种行业才有显著差异。注意与方差齐检验的区别:方差齐是每个类别对应的总体方差相同。

# 这个看某个因素各个水平之间的差异
from statsmodels.stats.multicomp import pairwise_tukeyhsd# 行业与被投诉次数的影响  显著水平为0.05
print(pairwise_tukeyhsd(data_clean['被投诉次数'], data_clean['行业'], alpha=0.05)) # 第一个必须是被投诉次数, 也就是我们的指标

  • pairwise_tukeyhsd函数默认原假设H0:各个水平两两组合没有差异,若P>0.05,接受原假设,反之拒绝原假设
  • Falset:说明无显著差异,True:有显著差异
  • 这个可以得到的结论是在显著水平0.05的时候, 航空公司和零售业的p值小于0.05, reject=True, 即认为航空公司和零售业之间有显著性差异(均值明显不同)。
# 地区与被投诉次数的影响  
print(pairwise_tukeyhsd(data_clean['被投诉次数'], data_clean['地区'], alpha=0.05)) #

地区变量对投诉次数没有显著影响,其各个水平之间也没有显著差异。

在机器学习中特征选择中,若投诉次数为目标变量,行业和地区为分类特征,则根据单因素方差分析结果,可过滤地区特征;对行业特征做one-hot编码后,可只保留行业-航空公司、行业-零售业这两种特征,或者对行业特征做one-hot编码后,做数值变量之间的相关性分析

双因素方差分析

  • 无交互作用:"加法"组合,即类似于特征工程中特征的线性组合
  • 有交互作用:“乘法”组合,即类似于特征工程中特征的多项式组合(非线性)

无交互作用

model = ols('被投诉次数~C(行业)+C(地区)',data=data_clean).fit()
model_a_b=anova_lm(model)
model_a_b

有交互作用

model = ols('被投诉次数~C(行业)*C(地区)',data=data_clean).fit()
model_ab=anova_lm(model)
model_ab

从结果可以看出,依然是行业特征对目标(被投诉次数)有显著影响,地区以及行业和地区的交互作用没有显著影响。

可视化观察

fig = interaction_plot(data_clean['行业'],data_clean['地区'], data_clean['被投诉次数'],ylabel='被投诉次数', xlabel='行业')

从图中也可以看出

  • 每个地区在每个行业的走势上一致,即地区与行业的交互作用不明显;
  • 航空公司和零售业对应的被投诉次数差异明显

. ols函数里面公式的写法

  • '被投诉次数~C(行业)+C(地区)+C(行业):C(地区)' :相当于被投诉次数是y(指标), 行业和地区是x(影响因素), 三项加和的前两项表示两个主效应, 第三项表示考虑两者的交互效应, 不加C也可。
  • '被投诉次数~C(行业, Sum)*C(地区, Sum)'和上面效果是一致的, 星号在这里表示既考虑主效应也考虑交互效应,'被投诉次数~C(行业)+C(地区)':这个表示不考虑交互相应

多因素方差分析:

多因素方差分析和双因素方差分析原理上一致

  • 无交互作用
    model = ols(''被投诉次数~C(行业)+C(地区)+C(其他)' ,data=data_clean).fit()
    model_a_b=anova_lm(model)
  • 有交互作用
    model = ols(''被投诉次数~C(行业)*C(地区)*C(其他)' ,data=data_clean).fit()
    model_ab=anova_lm(model)

非参数检验:分类变量与数值变量关系

当数据的正态性或方差齐不满足时,需改用非参数检验(非参数检验利用的是数据间的次序关系,会造成了一定的信息损失)。Welch’s ANOVA就是其中一种非参数检验方法。在python中使用Welch’s ANOVA需要安装pingouin库。其中的welch_anova和pairwise_gameshowell分别用于Welch’s ANOVA和两两比较。

卡方分析

分类变量间的独立性检验,原假设:两个分类变量相互独立

from scipy.stats import chi2_contingency

检验地区与行业两个分类变量是否独立,生成地区与行业的频数交叉连接表

df=pd.crosstab(data_clean['地区'], data_clean['行业'])#交叉连接表:频数
df

X_2, p, dof, expected = chi2_contingency(df,correction=False)
#dof:degree of freedom,(3-1)(4-1)
#p:概率值
## 卡方值、P值、自由度、理论(期望)频数,无需耶茨连续性修正
#当某个单元格的频数(np)小于5时,需要进行校正correction=False

不能拒绝原假设,不能拒绝地区和行业分类变量相互独立。

回归方程显著性检验、回归系数显著性检验

为什么要对回归方程和回归系数做显著性检验?
许多数据统计分析结果来自于部分甚至少量的样本,因此所得的统计结果可能存在偶然性,需要对样本统计结果进行显著性检验,以查看统计结果的可靠性程度。

  • 回归方程的显著性检验:F,原假设:各个回归系数均为0
    检验回归方程是判断自变量和因变量之间是否显著的线性关系
  • 回归系数的显著性检验:T,原假设:某个回归系数=0
    检验回归系数时判断自变量(特征)对因变量(目标)是否有显著影响
  • 逻辑回归方程、回归系数显著性检验:卡方检验
import statsmodels.api as sm
#最小二乘法拟合
result=sm.OLS(Y,X).fit()
result.summary()
#拟合度:
#R2=0.959:R2接近1,拟合程度好
#Adj.R-squared:修正R2
#回归方程的显著性检验:F,原假设:各个回归系数=0
#F-statistic:F值=891.3
#Prob:回归方程的P值=0.,小概率事件,原假设不成立
#回归系数的显著性检验:T,原假设:某个回归系数=0
# P>|t|:t》|t_a/2|,P越小于a,原假设越是小概率事件,越拒绝原假设,即某个回归系数对应的特征对标签Y是显著的#置信区间有什么用呢?

图中P>|t|表示双侧T检验

model = sm.Logit(y, x)
result = model.fit()
result.summary()

对回归方程和回归系数做显著性检验,可以帮助我们做模型诊断。

回归分析,通常需要满足一些基本假设

  • 自变量和因变量之间存在线性关系
  • 样本之间是独立的,即样本的观测值不受其他样本的影响
  • 自变量之间不存在高度相关性,即不出现多重共线性问题

某个变量的回归系数不显著可能的原因

  • 特征与目标存在非线性关系,未提取出来,因为线性模型只能捕捉到线性关系,而不能处理非线性关系。
    解决办法:① 增加新的非线性特征。② 变换自变量和因变量。取对数、开方、平方根等,以达到线性关系。③ 使用非线性回归模型,例如多项式回归、指数回归等

     
  • 存在共线特征导致伪回归,变量之间存在强相关性,会导致回归分析结果不稳定,使得回归系数不显著。

    解决办法:① 删除相关性较高的自变量,② 合并相关性较高的自变量,即将相关性高的变量组合成一个新的变量,③ 使用PCA,将原始的高度相关的自变量转换成一组线性无关的主成分,④ 正则化方法(如岭回归、Lasso回归)或者自变量选择方法(逐步回归,最小角回归)来缩减回归系数,减小多重共线性影响

  • 回归不显著也可能是由于未引入自变量之间存在交互作用导致的。 在回归分析中,交互作用指的是自变量之间相互影响的情况。 当存在交互作用时,单独考虑自变量与因变量的关系可能会导致结果的不显著。 因此,在回归不显著时,可以尝试引入交互作用项,以更全面地考虑自

  • 样本量不足,回归系数的标准误差可能较大,计算t值或F值时出现较大的误差,从而导致回归系数的p值变大或出现NaN,进而导致回归系数不显著
    解决办法:① 增加样本量② 减少自变量③ 使用非参数回归方法,降低对样本量的依赖性
  • 异常值可能对回归系数的计算产生影响,使得回归系数不显著。
  • 该变量是无关变量:解决办法:直接剔除

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/140673.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Nodejs搭建简单的web网页并实现公网访问

&#x1f525;博客主页&#xff1a; 小羊失眠啦. &#x1f3a5;系列专栏&#xff1a;《C语言》 《数据结构》 《Linux》《Cpolar》 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 使用Nodejs搭建简单的web网页并实现公网访问 前言 Node.js是建立在谷歌Chrome的JavaScript引擎…

Python:Unittest框架快速入门:用例、断言、夹具、套件、HTML报告、ddt数据驱动

快速看了套Unittest的入门教程 软件测试全套资料赠送_哔哩哔哩_bilibili软件测试全套资料赠送是快速入门unittest测试框架&#xff01;全实战详细教学&#xff0c;仅此一套&#xff01;的第1集视频&#xff0c;该合集共计11集&#xff0c;视频收藏或关注UP主&#xff0c;及时了…

copilot 产生 python工具函数并生成单元测试

stock.py 这个文件&#xff0c;我只写了注释&#xff08;的开头&#xff09;&#xff0c;大部分注释内容和函数都是copilot # split a string and extract the environment variable from it # input can be , pathabc, pathabc;pathdef, pathabc;pathdef;pathghi # output i…

如何结合内网穿透实现公网远程访问Linux AMH服务器管理面板

文章目录 1. Linux 安装AMH 面板2. 本地访问AMH 面板3. Linux安装Cpolar4. 配置AMH面板公网地址5. 远程访问AMH面板6. 固定AMH面板公网地址 AMH 是一款基于 Linux 系统的服务器管理面板&#xff0c;它提供了一系列的功能&#xff0c;包括网站管理、FTP 管理、数据库管理、DNS 管…

假冒 Skype 应用程序网络钓鱼分析

参考链接: https://slowmist.medium.com/fake-skype-app-phishing-analysis-35c1dc8bc515 背景 在Web3世界中&#xff0c;涉及假冒应用程序的网络钓鱼事件相当频繁。慢雾安全团队此前曾发表过分析此类网络钓鱼案例的文章。由于Google Play在中国无法访问&#xff0c;许多用户…

STM32--系统滴答SysTick

一、SysTick是什么&#xff1f; Systick定时器是一个24bit的倒计时&#xff08;向下计数&#xff09;定时器&#xff0c;功能就是实现简单的延时。 SysTick 是一种系统定时器&#xff0c;通常在嵌入式系统中使用。它是 ARM Cortex-M 处理器的一个特殊定时器&#xff0c;用于提…

Notepad++,搜索窗口独立后,恢复

双击一下find result框&#xff0c;恢复到原来的模式。

Apipost IDEA插件如何使用

Apipost-Helper是由Apipost推出的IDEA插件&#xff0c;写完接口可以进行快速调试&#xff0c;且支持搜索接口、根据method跳转接口&#xff0c;还支持生成标准的API文档&#xff0c;注意&#xff1a;这些操作都可以在代码编辑器内独立完成&#xff0c;非常好用&#xff01;这里…

Selenium+Python自动化测试环境搭建

selenium python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中&#xff0c;就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9)、Mozilla Firefox、Mozilla Suite等。 Selenium 框架底层使用JavaS…

独立站商品信息是怎么获取的呢

独立站商品信息的获取主要通过以下几种方式&#xff1a; 人工收集&#xff1a;卖家可以通过在各个电商平台、网站等渠道进行手动搜索和收集商品信息&#xff0c;包括商品名称、价格、描述、图片等&#xff0c;然后将其导入到自己的独立站中。使用采集工具&#xff1a;目前市面…

初阶JavaEE(17)Linux 基本使用和 web 程序部署

接上次博客&#xff1a;初阶JavaEE&#xff08;16&#xff09;博客系统&#xff08;Markdown编辑器介绍、博客系统功能、博客系统编写&#xff1a;博客列表页 、博客详情页、实现登录、实现强制登录、显示用户信息、退出登录、发布博客&#xff09;-CSDN博客 目录 Linux 基本…

PyCharm鼠标控制字体缩放

File->Settings->Keymap 右边搜索栏输入increase(放大)&#xff0c;可以看到下面出现increase Font Size(放大字体尺寸)&#xff0c;双击。 双击后出现几个选项&#xff0c;选择Add Mouse Shortcut,会出现一个页面给录入动作。 按住Ctrl同时鼠标向上滚动&#xff0c;该动…

双十一“静悄悄”?VR购物拉满沉浸式购物体验

以往每年的双十一&#xff0c;都会因为电商购物狂欢而变得热闹非凡&#xff0c;而各大电商平台也会在这天推出各种促销活动。但是&#xff0c;近几年来&#xff0c;双十一正在变得“静悄悄”。一个原因是消费群体越发理性消费&#xff0c;更加重视商品本身的质量和体验&#xf…

java8函数式编程(Lambda表达式,Optional,Stream流)从入门到精通

文章目录 函数式编程Lambda表达式Stream流创建流中间操作终结操作注意事项 Optional创建对象消费值获取值过滤判断数据转换 方法引用高级用法基本数据类型优化并行流 函数式编程 不关心具体的对象&#xff0c;只关心数据参数和 具体操作 Lambda表达式 格式&#xff1a; () -&…

深度学习(生成式模型)——Classifier Guidance Diffusion

文章目录 前言问题建模条件扩散模型的前向过程条件扩散模型的反向过程条件扩散模型的训练目标 前言 几乎所有的生成式模型&#xff0c;发展到后期都需要引入"控制"的概念&#xff0c;可控制的生成式模型才能更好应用于实际场景。本文将总结《Diffusion Models Beat …

【TiDB】TiDB CLuster部署

目录 0 大纲 一 集群部署工具TiUP简介 1 TiUP 简介 2 TiUP使用 3 TiUP使用举例 二 TiDB Cluster安装配置需求 1 生产环境硬件需求 2 操作系统需求 三 TIDB部署 1 软硬件需求以及前置检查​编辑 2 安装TiUP 组件 ​3 集群拓扑文件 4 执行部署命令 &#xff08;1&…

视频号小店怎么做?运营四步骤,快来学习!

大家好&#xff0c;我是电商糖果 2023年因为视频号小店的爆火&#xff0c;想尝试开店的朋友也不少。 但是因为自己是新手小白&#xff0c;对做电商方面了解的也并不多&#xff0c;再加上它是一个才出来一年多的电商平台。对它的很多规则和玩法并不清楚。 所以&#xff0c;这…

竞赛选题 深度学习的口罩佩戴检测 - opencv 卷积神经网络 机器视觉 深度学习

文章目录 0 简介1 课题背景&#x1f6a9; 2 口罩佩戴算法实现2.1 YOLO 模型概览2.2 YOLOv32.3 YOLO 口罩佩戴检测实现数据集 2.4 实现代码2.5 检测效果 3 口罩佩戴检测算法评价指标3.1 准确率&#xff08;Accuracy&#xff09;3.2 精确率(Precision)和召回率(Recall)3.3 平均精…

Makefile的简单语法学习

通配符 假如一个目标文件所依赖的依赖文件很多&#xff0c;那样岂不是我们要写很多规则&#xff0c;这显然是不合乎常理的&#xff0c;我们可以使用通配符&#xff0c;来解决这些问题。 我们对上节程序进行修改&#xff0c;代码如下&#xff1a; test : a.o b.ogcc -o test $…

【原创】java+swing+mysql办公用品管理系统设计与实现

摘要&#xff1a; 办公用品管理系统是一个设计和实现办公用品库存和使用管理的信息系统。此系统可以提高办公用品的利用率&#xff0c;减少浪费&#xff0c;使办公用品管理更加高效、规范、便捷。本文主要介绍使用javaswingmysql技术去开发实现一个办公用品管理系统。 功能分…