数据分析方法(回归分析,决策树与神经网络,提升树,时间序列分析,假设检验,用户画像,竞品分析)等

news2024/10/19 14:38:15

1.回归分析

回归分析是一种统计方法,用于探索自变量(预测变量)和因变量(目标变量)之间的关系。它可以帮助预测变量的变化对目标变量的影响大小。例如,简单线性回归用于分析两个变量之间的线性关系,而多元回归分析可以处理多个自变量的情况。

例子:简单线性回归

假设我们有一组数据,表示某个城市的广告费用和销售额。我们希望通过回归分析了解广告费用对销售额的影响,并预测在不同广告投入下的销售额。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split #分训练集和测试集
from sklearn.metrics import mean_squared_error, r2_score

# 示例数据
data = {
    '广告费用': [5, 10, 15, 20, 25, 30, 35, 40],
    '销售额': [7, 12, 15, 20, 25, 28, 35, 40]
}
df = pd.DataFrame(data)

# 特征变量 X 和目标变量 y
X = df[['广告费用']]
y = df['销售额']

# 拆分数据集
# test_size=0.2:测试集所占比例。这里 test_size=0.2 表示数据的 20% 将分配给测试集,剩下的 80% 用作训练集。
# random_state=42:随机种子,设置为一个固定值(例如 42)。
#可以保证每次运行时数据划分的结果相同,这在调试和复现实验时非常有用。
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 创建回归模型并训练
model = LinearRegression() #线性回归模型
model.fit(X_train, y_train)

# 预测
y_pred = model.predict(X_test)

# 输出模型评估
print("回归系数:", model.coef_)
print("截距:", model.intercept_)
print("均方误差:", mean_squared_error(y_test, y_pred))
print("R²得分:", r2_score(y_test, y_pred))

# 可视化
plt.scatter(X, y, color='blue', label='实际数据')
plt.plot(X, model.predict(X), color='red', label='回归线')
plt.xlabel('广告费用')
plt.ylabel('销售额')
plt.legend()
plt.show()

均方误差(MSE)和决定系数(R²)是评估回归模型性能的两个常用指标。

均方误差(Mean Squared Error,MSE)

均方误差用来衡量预测值与实际值之间的平均平方差。具体来说,MSE是预测值与实际值之差的平方的平均值。公式为:

MSE 越小,说明模型预测的值与实际值越接近。因为误差是平方计算,MSE 对异常值(outliers)较为敏感。

决定系数(R² Score)

决定系数 R² 表示模型解释目标变量变异的程度。其值在0到1之间,越接近1表示模型对数据的解释能力越强。公式为:

R² 可以理解为模型对数据变化的解释能力。如果R² =1,说明模型能够完美预测目标变量;如果 R² =0,说明模型没有解释目标变量的能力,预测效果相当于使用平均值来预测。

其他一些常见模型

 1.岭回归

from sklearn.linear_model import Ridge

# 使用 Ridge 回归模型,并设置正则化强度参数 alpha
model = Ridge(alpha=1.0)
model.fit(X_train, y_train)

2.支持向量回归(SVR)

​
from sklearn.svm import SVR

# 使用支持向量回归模型
model = SVR(kernel='rbf', C=1.0, epsilon=0.1)
model.fit(X_train, y_train)

3.决策树回归(Decision Tree Regression)

from sklearn.tree import DecisionTreeRegressor

# 使用决策树回归模型
model = DecisionTreeRegressor(max_depth=5)
model.fit(X_train, y_train)

4.随机森林回归(Random Forest Regression)

from sklearn.ensemble import RandomForestRegressor

# 使用随机森林回归模型
model = RandomForestRegressor(n_estimators=100, random_state=42)
model.fit(X_train, y_train)

 2.决策树

决策树是一种基于树状结构的模型,常用于分类和回归任务。它通过对数据特征进行条件判断,将数据逐层划分成不同的分支和节点,直到满足设定的终止条件。

决策树的基本概念

  1. 根节点:决策树的顶点,包含所有数据。
  2. 内部节点:每个节点对某个特征进行划分,生成子节点。
  3. 叶节点:最终的分类或回归结果,不再继续分割。

决策树的构建过程

决策树通过选择最佳特征来对数据集进行划分,常用的特征选择指标包括:

  • 信息增益(信息熵的减少)适用于分类任务;
  • 基尼指数用于衡量分类不纯度;
  • 方差减少,常用于回归任务。

优缺点

  • 优点:直观易理解、对数据预处理要求低、可以处理非线性关系。
  • 缺点:容易过拟合(特别是深度较大时),对数据的小变化敏感。

举例-分类任务:鸢尾花数据集

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score

# 加载鸢尾花数据集
iris = load_iris()
X, y = iris.data, iris.target

# 数据划分
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 创建决策树分类模型并训练
clf = DecisionTreeClassifier(max_depth=3, random_state=42)
clf.fit(X_train, y_train)

# 预测并评估
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)

print("分类准确率:", accuracy)

3.神经网络

输出层组成,每个节点通过加权连接进行计算。工作流程包括前向传播生成输出、误差计算、以及反向传播调整权重。常用激活函数如ReLU、Sigmoid用于引入非线性。

应用领域包括图像识别(CNN)、自然语言处理(RNN、LSTM)和自动驾驶等。通过训练大量数据,神经网络能自动提取特征并解决复杂问题。

1. 卷积神经网络(CNN)

CNN是专门为处理图像数据设计的神经网络,常用于图像分类、目标检测等任务。它通过卷积层、池化层和全连接层来提取图像特征,减少参数量并保留空间信息。

卷积神经网络(CNN)通常用于处理正常的图片,如自然场景图片、手写数字、猫狗图片等。CNN特别擅长处理二维的图片数据,通过自动提取图片中的特征进行分类或识别。典型的应用场景包括图像分类、目标检测、图像分割等任务

CNN的主要组件

  • 卷积层:通过卷积核在图像上滑动,提取局部特征。
  • 池化层:通常是最大池化,用于降低数据维度,减小计算量。
  • 全连接层:最终将特征向量映射到输出类别。
from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense

model = Sequential()

# 卷积层,提取图像特征
model.add(Conv2D(32, (3, 3), activation='relu', input_shape=(64, 64, 3)))
model.add(MaxPooling2D(pool_size=(2, 2)))

# 增加第二层卷积
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))

# 展平层,将特征映射为一维向量
model.add(Flatten())

# 全连接层
model.add(Dense(128, activation='relu'))
model.add(Dense(10, activation='softmax'))  # 输出10个类别

# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

# 打印模型结构
model.summary()

2. 循环神经网络(RNN)

RNN擅长处理序列数据,像时间序列或文本。与传统的前馈网络不同,RNN有循环结构,可以记住先前的输入。

RNN的核心

  • 循环层:通过隐藏状态的循环连接,保持记忆,捕捉序列中的时间依赖关系。
  • 缺点:RNN容易遇到梯度消失问题,难以处理长序列。
from keras.models import Sequential
from keras.layers import SimpleRNN, Dense

model = Sequential()

# RNN层,输入为序列数据
model.add(SimpleRNN(50, input_shape=(100, 1), activation='relu'))

# 全连接层
model.add(Dense(10, activation='softmax'))  # 输出10个类别

# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

# 打印模型结构
model.summary()

3. 长短期记忆网络(LSTM)

LSTM是RNN的一种变体,解决了梯度消失问题,适用于处理长序列。LSTM通过引入遗忘门输入门输出门来选择性地记住或丢弃信息。

LSTM的核心组件

  • 遗忘门:控制是否忘记上一步的状态。
  • 输入门:控制是否更新当前状态。
  • 输出门:决定当前状态对下一步的影响。
from keras.models import Sequential
from keras.layers import LSTM, Dense

model = Sequential()

# LSTM层,适合长序列数据
model.add(LSTM(50, input_shape=(100, 1)))

# 全连接层
model.add(Dense(10, activation='softmax'))  # 输出10个类别

# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

# 打印模型结构
model.summary()

keras包

Keras 是一个用于构建和训练神经网络的高级深度学习库,它封装了底层的深度学习框架(如 TensorFlow 和 Theano),提供简单易用的接口,允许用户快速搭建复杂的深度学习模型。Keras 尤其适合初学者和原型开发,因为它的 API 设计简洁明了,可以帮助开发者专注于构建模型,而无需深入处理底层框架的复杂性。

词源解释:

"Keras" 这个名字来源于希腊语中的单词 "κέρας",意思是 "角"(horn),在一些神话中代表力量和神圣感。开发者选择这个名字是因为 Keras 这个库被设计成高效且强大的工具,用于构建深度学习模型。

主要特点:

  1. 简单易用:Keras的API直观,能够快速上手,适合快速实验和原型开发。
  2. 支持多后端:Keras支持多个底层深度学习框架,比如TensorFlow、Theano、CNTK等。
  3. 模块化:Keras中的模型、层、损失函数、优化器等都可以灵活组合,方便实验不同的神经网络结构。
  4. 可扩展性:Keras允许用户自定义层、激活函数、损失函数等。

Keras在深度学习领域的普及,正是由于它的易用性和高层抽象,能加速原型开发过程并降低实现神经网络的难度。

对比一下RNN和LSTM

RNN(Recurrent Neural Network):
  • RNN是一种递归结构的网络,它的隐藏层不仅接收当前时刻的输入,还接收上一个时刻的隐藏层状态。因此,RNN能够记住之前的输入,从而捕捉序列中的时间依赖关系。
  • RNN的工作方式是“逐步”处理序列输入,通过循环结构维持记忆。

RNN的缺点

  • 短期记忆:RNN在处理较长序列时,容易出现“梯度消失”或“梯度爆炸”问题,导致模型无法有效记住远距离的依赖信息。
  • 梯度消失问题:随着序列长度的增加,梯度会逐渐消失,导致网络无法学习到较早的输入信息。
LSTM(Long Short-Term Memory):
  • LSTM是一种特殊的RNN,专门设计来解决RNN的长序列问题。LSTM通过引入记忆单元门控机制(遗忘门、输入门、输出门),能够长期保留关键信息,并选择性地丢弃无关信息。
  • LSTM的门控机制使得它能更好地捕捉长距离依赖,并在长序列任务中表现更好。

LSTM的优点

  • 长期记忆能力:通过门控机制,LSTM可以学习到更长时间的依赖关系。
  • 解决梯度消失问题:LSTM通过门控机制来保留或丢弃信息,从而有效地解决了RNN的梯度消失问题。

 以下是更口语化的介绍(理解):

若下图所示,LSTM比RNN多出一条粉色的链条Ct,这个就是长期记忆,相对应的st为长期记忆。RNN是根据输入Xt和之前的短期记忆St-1来计算得到yt,而LSTM引入长记忆链,把ct加入yt的计算,让得到的值更为精确。

st到ct的线条可以进一步拆分为:

先通过遗忘门和输入门对长期记忆进行修改,把更新后的ct加入yt的计算。

4.提升树

提升树是一种集成学习算法,通过将多个弱学习器(如浅层决策树)组合在一起,逐步减少误差以构建强大的预测模型。每一轮新加入的学习器专注于修正前一轮中表现不佳的部分,从而提升模型的整体精度。常见的提升树算法有梯度提升决策树(GBDT)、AdaBoost、XGBoost、LightGBM等,广泛用于分类、回归以及排序等任务。它具有很强的适应性和预测性能,但需要较高的计算资源,并对超参数设置较为敏感。

梯度提升树(GBDT)代码示例(使用Python的sklearn库):

from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.metrics import accuracy_score

# 生成分类数据集
X, y = make_classification(n_samples=1000, n_features=20, random_state=42)

# 数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 创建GBDT分类器
gbdt = GradientBoostingClassifier(n_estimators=100, learning_rate=0.1, max_depth=3, random_state=42)

# 训练模型
gbdt.fit(X_train, y_train)

# 预测
y_pred = gbdt.predict(X_test)

# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy:.2f}")

5.时间序列分析

时间序列分析是一种用于分析和建模随时间变化的数据的方法,目标是通过研究数据的时间依赖性、趋势、周期性和季节性,预测未来的趋势或理解数据背后的模式。时间序列数据是一系列按时间顺序排列的观测值,例如股票价格、天气数据、经济指标等。

核心概念

  1. 趋势(Trend):数据在较长时间范围内表现出的整体上升或下降的方向。
  2. 季节性(Seasonality):数据中周期性重复的模式,通常是由于季节变化或特定时间周期的影响。
  3. 周期性(Cyclicality):比季节性周期更长的波动,通常是由经济或外部因素引起的。
  4. 随机波动(Noise):不规则的、不可预测的短期波动。

时间序列分析的常用方法

  1. 移动平均(Moving Average):平滑数据,消除短期波动,揭示长期趋势。
  2. 自回归模型(AR):根据过去的值预测当前的值,假设序列中的数据存在线性依赖关系。
  3. 差分整合移动平均模型(ARIMA):综合了自回归(AR)、差分(I)和移动平均(MA)三部分,广泛用于时间序列预测。
  4. 指数平滑法(Exponential Smoothing):通过给近期数据赋予更大权重来预测未来的值。
  5. 季节性ARIMA(SARIMA):在ARIMA模型的基础上加入季节性因素,处理具有季节性变化的时间序列数据。
  6. 长短期记忆网络(LSTM):一种适合处理长时间依赖的神经网络,特别用于序列预测。

时间序列分析的步骤

  1. 数据预处理:包括缺失值处理、去趋势、去季节性和数据平稳化等。
  2. 模型选择:根据数据的性质选择合适的模型,如ARIMA、SARIMA、LSTM等。
  3. 模型训练与验证:通过历史数据训练模型,并使用验证集评估其准确性。
  4. 预测与评估:利用训练好的模型预测未来的趋势,评估预测结果的精度。

时间序列分析示例代码

(ARIMA模型,使用Python的statsmodels库): 

import pandas as pd
from statsmodels.tsa.arima_model import ARIMA
import matplotlib.pyplot as plt

# 加载时间序列数据
data = pd.read_csv('time_series_data.csv')
time_series = data['value']

# 创建并拟合ARIMA模型
model = ARIMA(time_series, order=(5, 1, 0))  # (p, d, q)
model_fit = model.fit(disp=0)

# 预测
forecast = model_fit.forecast(steps=10)[0]

# 可视化预测结果
plt.plot(time_series, label='Observed')
plt.plot(range(len(time_series), len(time_series)+10), forecast, label='Forecast')
plt.legend()
plt.show()

 6.假设检验

假设检验是一种统计方法,用于根据样本数据判断一个假设是否成立。其流程包括:提出原假设(H₀)和备择假设(H₁)、设定显著性水平(α),然后通过样本数据计算统计量和p值。如果p值小于α,则拒绝原假设,认为存在显著差异;否则接受原假设。

常见的检验类型有Z检验、t检验、卡方检验等。假设检验广泛用于验证两组数据是否有显著差异,帮助做出基于数据的推断。

主要步骤

  1. 提出假设:确定原假设(H₀)和备择假设(H₁),如“没有差异”和“有差异”。
  2. 设定显著性水平(α):通常设定为0.05或0.01,表示可容忍的最大错误概率。
  3. 计算检验统计量:通过样本数据计算统计量(如t值、z值)并得到p值。
  4. 作出决策:若p值小于设定的α,拒绝原假设,认为数据有显著差异;否则,接受原假设。

7.用户画像

用户画像的构建通常通过数据收集、处理和分析来实现,常用的方法包括聚类分析(如K-Means聚类)来对用户进行分类,特征工程将用户行为数据转化为结构化标签,分类模型(如决策树、随机森林)用于预测用户行为。还可以使用推荐系统算法(如协同过滤、矩阵分解)为用户提供个性化推荐。对于复杂的数据或用户行为模式分析,深度学习模型(如LSTM、卷积神经网络)也常用于构建更精准的用户画像。 

8.竞品分析

竞品分析是一种通过研究竞争对手的产品、市场策略、用户反馈等来优化自身产品和策略的过程。它通常包括确定竞品、收集数据、对比产品功能、分析市场策略以及用户体验反馈等方法。通过竞品分析,可以发现自身产品的差异化优势,优化市场定位、产品功能和营销策略,从而提升市场竞争力并规避潜在风险。

竞品分析的实现主要依赖于数据收集、处理和分析工具,并结合一些机器学习或自然语言处理(NLP)模型来分析用户反馈和市场趋势。以下是一些常用的方法和工具:

1. 数据收集

  • 网络爬虫(Web Scraping):使用Python的BeautifulSoupScrapySelenium库自动抓取竞品网站、评论、社交媒体数据等。
  • API:利用API接口获取产品数据,如应用商店的API、社交媒体API(如Twitter、Facebook)等。

2. 文本分析与自然语言处理(NLP)

自然语言处理(NLP,Natural Language Processing)是人工智能和计算机科学的一个分支,旨在让计算机理解、生成和处理人类语言。NLP的核心目标是实现人与计算机之间自然语言的交互,帮助机器从文本、语音等语言形式中提取信息并做出相应处理。NLP结合了语言学、统计学和机器学习的技术,用于处理非结构化的文本数据。 

分析用户评论、社交媒体反馈时,使用NLP技术提取情感信息、主题分析等。常用的模型有:

  • 情感分析:使用TextBlobVADER进行情感分类,判断用户对产品的正面或负面评价。
  • 主题建模:通过Latent Dirichlet Allocation (LDA)模型提取竞品评论中的主要讨论话题。

3. 数据分析与可视化

  • 数据处理:用pandas处理竞品数据,进行产品功能、价格、用户评分等维度的对比分析。
  • 可视化:使用matplotlibseaborn等库生成图表,展示竞品分析结果,如市场份额、用户满意度等。

4. 市场趋势预测

  • 时间序列分析:使用ARIMA、Prophet等模型预测竞品在市场中的发展趋势。

5. 聚类和分类模型

  • K-Means聚类:用于竞品用户群体的细分,根据行为数据将用户分类为不同群体。
  • 随机森林、SVM等分类模型:可用于竞品分类,分析不同特征对市场表现的影响。

通过这些工具和方法,竞品分析不仅能定量研究竞争对手的市场表现,还能通过用户反馈挖掘潜在的改进方向和策略优化。

9.主成分分析法

主成分分析法(PCA,Principal Component Analysis)是一种降维技术,主要用于减少高维数据集的维度,同时尽可能保留数据的主要信息。它通过将原始变量转化为一组新的、不相关的变量(即主成分),这些主成分是按照方差大小排序的,前几个主成分保留了数据中最多的信息。

PCA的主要作用

  1. 降维:将高维数据转换为低维数据,减少特征数量,从而降低计算复杂度和存储需求,适用于大规模数据集。
  2. 去噪:通过保留主成分,PCA可以过滤掉数据中的噪声或不重要的信息,使得分析结果更加清晰。
  3. 可视化:PCA常用于将高维数据(如100维数据)压缩到2维或3维,以便进行可视化展示,帮助理解数据的结构和模式。
  4. 特征提取:通过分析数据的主成分,识别出最重要的特征,增强模型的性能。

工作原理

  • PCA通过计算数据的协方差矩阵,找到数据的主轴方向。
  • 这些主轴方向(主成分)代表了数据中方差最大方向。
  • 按照方差大小排列,选择前几个主成分来表示数据,最大化数据的解释性,同时降低数据维度。

示例应用

  • 图像压缩:PCA可以将高清图像数据压缩成较少的主成分,减少存储空间,但保留视觉上主要的图像信息。
  • 特征选择:在机器学习中,PCA用于减少冗余特征,提高模型训练效率,同时降低过拟合风险。

总结

PCA是一种强大的工具,主要用于降维和数据简化,帮助去除冗余信息,保留数据的关键特征,从而提升分析和建模的效率。

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

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

相关文章

快速创建一个vue项目并运行

前期准备工作: 1.安装node 2.安装npm 3.设置淘宝镜像 4.全局安装webpack 5.webpack 4.X 开始,需要安装 webpack-cli 依赖 6.全局安装vue-cli 正文开始: 1.创建项目 ,回车 vue init webpack vue-svg > Project name vue-demo 项目名称 回车 > Pro…

84.【C语言】数据结构之顺序表的头部插入和删除

目录 3.操作顺序表 1.分析头部插入函数 SeqList.c写入 容量检查函数 注意 main.c改为 SeqList.h添加SLPushFront的声明 运行结果 2.分析头部删除函数 SLPopFront代码 main.c改为 SeqList.h添加SLPopFront的声明 图分析 运行结果 承接83.【C语言】数据结构之顺序表…

文心一言 VS 讯飞星火 VS chatgpt (372)-- 算法导论24.4 4题

四、请将单源单目的地最短路径问题表示为一个线性规划问题。如果要写代码,请用go语言。 文心一言: 单源单目的地最短路径问题可以通过线性规划(Linear Programming, LP)进行建模。假设我们有一个加权有向图 $ G (V, E) $&#…

【LeetCode】每日一题 2024_10_14 鸡蛋掉落(记忆化搜索)

前言 每天和你一起刷 LeetCode 每日一题~ LeetCode 启动! 题目:鸡蛋掉落 代码与解题思路 今天的题目是昨天的进阶版,昨天给了 2 个鸡蛋,让我们求在一栋有 n 层楼的建筑中扔鸡蛋的最大操作次数 但是今天的题目给了 k 个鸡蛋&am…

linux 离线安装redis

1.官网下载 https://redis.io/download 或者去github下载 2.安装 Redis 解压 unzip redis-6.2.16.zip安装gcc #由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v) gcc -v若无安装gcc,参考我的文章 Lin…

kaggle中如何更新上传自定义的数据集dataset?

前言: kaggle notebook中可以上传自己的数据集进行训练,但是如果我们发现这个数据集有一部分需要更新下呢,这时候我们不必新建一个数据集,直接在原来的版本上进行更新即可。 以datasett的更新为例,在这个界面是看不到更新按钮的 …

Axure使用echarts详细教程

本次使用的axure版本为rp9,下面是效果图。 接下来是详细步骤 【步骤1】在axure上拖一个矩形进来,命名为myChart(这个根据实际情况来,和后面的代码对应就好) 【步骤2】 点击交互->选择加载时->选择打开链接->链接外部地址 点击fx这个符号 【步骤3】在弹…

【建筑行业】在线培训知识库与人才培养

在快速变化的建筑行业中,人才培养一直是企业持续发展和创新的关键。随着数字化时代的到来,建筑行业面临着前所未有的挑战和机遇。在线培训知识库作为一种新兴的教育工具,正在成为建筑行业人才培养的重要支撑。本文将深入探讨建筑行业在线培训…

Bolt 一款AI 全栈 Web 在线开发工具

参考: https://bolt.new/ github项目也可以支持Bolt在线打开编辑 直接连接前输入,比如 https://github.com/lyz1810/live2dSpeek更换成 https://bolt.new/github.com/lyz1810/live2dSpeek https://bolt.new/github.com/oh-my-live2d/oh-my-live2d 主要偏…

《OpenCV计算机视觉》——人脸检测__Haar特征、级联分类器

文章目录 Haar特征一、定义与原理二、分类三、计算方法四、应用五、优缺点 级联分类器一、定义与原理二、结构与组成三、举例说明 Haar特征 Haar特征是一种在计算机视觉和图像处理中常用的特征描述方法,特别适用于物体识别,尤其是人脸检测。以下是对Haa…

自制编程语言(一、基本的编译器)

此教程实现一个simple语言 这是一个编译型语言&#xff0c;编译成nasm simple.h #include <iostream> #include <fstream> #include <sstream> #include <string> #include <unordered_set> #include <set>void clearFileContent(const…

如在下载自己的需要的rmp包呢

下载地址&#xff1a;https://pkgs.org/和https://rpmfind.net/linux/rpm2html/search.php 根基自己的需要进行下载使用。

IRMV Lab新作:Mamba Diffusion模型实现高精度2D手部轨迹预测

作者主页&#xff1a; https://bit-mjy.github.io/ https://xieyuanli-chen.com/ 论文标题&#xff1a; MADiff: Motion-Aware Mamba Diffusion Models for Hand Trajectory Prediction on Egocentric Videos 1. 背景与挑战 在具身人工智能&#xff08;Embodied AI&#xff0…

NAT机制

目录 1、NAT机制的定义 2、NAT机制的工作原理 1、NAT机制的定义 如今IP地址的分配已经不够使用&#xff0c;为了解决这一问题&#xff0c;NAT机制起到了很关键的作用。 NAT机制&#xff08;网络地址转换&#xff09;&#xff0c;本质上&#xff0c;让一个IP地址代表一批设备…

【SpringBoot】14 缓存(cache)

Gitee仓库 https://gitee.com/Lin_DH/system 介绍 Spring 框架支持透明地向应用程序添加缓存对缓存进行管理&#xff0c;其管理缓存的核心是将缓存应用于操作数据的方法&#xff08;包括增删查改等&#xff09;&#xff0c;从而减少操作数据的执行次数&#xff08;主要是查询…

录微课专用提词器,不会被录进视频中的提词器,还能显示PPT中备注的内容

不坑提词器&#xff0c;全称&#xff1a;不坑隐形提词器。是一款能够在截图、录屏、直播过程中隐藏界面的提词器软件。 系统要求&#xff1a;Win10 1024 以上&#xff08;特别提醒&#xff1a;Win7状态下不可隐身&#xff09; ⏬下载 提词器默认放在不坑盒子的安装目录下&…

基于springboot家乡特色推荐系统

作者&#xff1a;计算机学长阿伟 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、ElementUI等&#xff0c;“文末源码”。 系统展示 【2024最新】基于JavaSpringBootVueMySQL的&#xff0c;前后端分离。 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;…

【YOLOv11】制作使用YOLOv11的docker环境

目录 一 安装docker 1 安装依赖 2 添加docker官网 GPG 密钥、设置stable 仓库 3 安装 4 使用 二 环境制作 ① 拉基础镜像 ② 起容器 ③ 安装Anaconda3 ④ 安装YOLO11 ⑤ /root/.bashrc ⑥ 退出容器 ⑦ 保存镜像 ⑧ 镜像的使用 一 安装docker ubuntu:20.04 1 安装…

与双指针的亲密接触:快与慢的浪漫交错

公主请阅 1.合并两个有序数组1.1 题目说明示例 1示例 2示例 3 1.2 题目分析 1.3代码部分1.4 代码解析 2.移动零2.1题目说明示例 1示例 2 2.2题目分析2.3代码部分2.4代码解析 1.合并两个有序数组 题目传送门 1.1 题目说明 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums…

25计软新增考研院校!或可捡漏上岸!

C哥专业提供——计软考研院校选择分析专业课备考指南规划 新增的计算机与软件工程考研院校为考研同学带来了多方面的机遇&#xff0c;这些机遇不仅体现在过国家线后可能面临的更低竞争压力&#xff0c;还包括更多元化的教育选择和更广阔的就业前景&#xff1a; 一、降低竞争压…