当前位置: 首页 > wzjs >正文

dw做的网站不显示怎么做自己的网页

dw做的网站不显示,怎么做自己的网页,老鹰主机 wordpress,网站和微信公众号建设方案特征降维------特征组合(以SVD为例) 知识点回顾: 奇异值的应用: 特征降维:对高维数据减小计算量、可视化数据重构:比如重构信号、重构图像(可以实现有损压缩,k 越小压缩率越高&#…
特征降维------特征组合(以SVD为例)

知识点回顾:

奇异值的应用:

  • 特征降维:对高维数据减小计算量、可视化
  • 数据重构:比如重构信号、重构图像(可以实现有损压缩,k 越小压缩率越高,但图像质量损失越大)
  • 降噪:通常噪声对应较小的奇异值。通过丢弃这些小奇异值并重构矩阵,可以达到一定程度的降噪效果。
  • 推荐系统:在协同过滤算法中,用户-物品评分矩阵通常是稀疏且高维的。SVD (或其变种如 FunkSVD, SVD++) 可以用来分解这个矩阵,发现潜在因子 (latent factors),从而预测未评分的项。这里其实属于特征降维的部分。

作业:尝试利用svd来处理心脏病预测,看下精度变化

对于任何矩阵,均可做等价的奇异值SVD分解 A=UΣVᵀ,对于分解后的矩阵,可以选取保留前K个奇异值及其对应的奇异向量,重构原始矩阵,可以通过计算Frobenius 范数相对误差来衡量原始矩阵和重构矩阵的差异。

  • U矩阵:描述行之间的关系,列向量来自AAᵀ的特征向量,而AAᵀ计算的是行之间的相似性(因为A的每一行代表一个样本)
  • Σ矩阵:告诉我们哪些模式最重要(奇异值越大越重要,是按降序排列的)
  • Vᵀ矩阵:描述列之间的关系,列向量来自AᵀA的特征向量,而AᵀA计算的是列之间的相似性(因为A的每一列代表一个特征)

应用:结构化数据中,将原来的m个特征降维成k个新的特征,新特征是原始特征的线性组合,捕捉了数据的主要方差信息,降维后的数据可以直接用于机器学习模型(如分类、回归),通常能提高计算效率并减少过拟合风险。

ps:在进行 SVD 之前,通常需要对数据进行标准化(均值为 0,方差为 1),以避免某些特征的量纲差异对降维结果的影响。

具体说说通过奇异值来降维,本质上通过数学变换创造新特征,这种方法是许多降维算法(如 PCA)和数据处理技术的基础,具体三步搞定:

  • 分解:对原始矩阵A做SVD得到 A = UΣVᵀ
  • 筛选:选择前k个奇异值(如何选k见下方规则)
  1. 固定数量法(最简单):直接指定保留前k个(如k=10),适用于对数据维度有明确要求时
  2. 能量占比法(最常用):计算奇异值平方和(总能量),选择使前k个奇异值平方和占比>阈值(如95%)
  3. 拐点法(可视化判断):奇异值下降曲线明显变平缓的点作为k
  • 重构:用U的前k列、Σ的前k个值、Vᵀ的前k行重构近似矩阵 Aₖ = UₖΣₖVₖᵀ

1.初步理解

下面用一个简单的矩阵实现SVD降维

import numpy as np# 创建一个矩阵 A (5x3)
A = np.array([[1, 2, 3],[4, 5, 6],[7, 8, 9],[10, 11, 12],[13, 14, 15]])
print("原始矩阵 A:")
print(A)# 进行 SVD 分解
U, sigma, Vt = np.linalg.svd(A, full_matrices=False)
print("\n奇异值 sigma:")
print(sigma)# 保留前 k=1 个奇异值进行降维
k = 1
U_k = U[:, :k]  # 取 U 的前 k 列,因为要保持行数不变
sigma_k = sigma[:k]  # 取前 k 个奇异值
Vt_k = Vt[:k, :]  # 取 Vt 的前 k 行,因为要保持列数不变# 近似重构矩阵 A,常用于信号or图像筛除噪声
A_approx = U_k @ np.diag(sigma_k) @ Vt_k
print("\n保留前", k, "个奇异值后的近似矩阵 A_approx:")
print(A_approx)# 计算近似误差
error = np.linalg.norm(A - A_approx, 'fro') / np.linalg.norm(A, 'fro')
print("\n近似误差 (Frobenius 范数相对误差):", error)

这里的Frobenius 范数相对误差的计算方式有点难理解,举一个更简单的例子说明一下:

2.实际运用到数据集里

难点就是对于测试集要用训练集相同的SVD分解规则,即相同的变换

import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score# 设置随机种子以便结果可重复
np.random.seed(42)# 模拟数据:1000 个样本,50 个特征
n_samples = 1000
n_features = 50
X = np.random.randn(n_samples, n_features) * 10  # 随机生成特征数据
y = (X[:, 0] + X[:, 1] > 0).astype(int)  # 模拟二分类标签# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
print(f"训练集形状: {X_train.shape}")
print(f"测试集形状: {X_test.shape}")# 对训练集进行 SVD 分解
U_train, sigma_train, Vt_train = np.linalg.svd(X_train, full_matrices=False)
print(f"Vt_train 矩阵形状: {Vt_train.shape}")# 选择保留的奇异值数量 k
k = 10
Vt_k = Vt_train[:k, :]  # 保留前 k 行,形状为 (k, 50)
print(f"保留 k={k} 后的 Vt_k 矩阵形状: {Vt_k.shape}")# 降维训练集:X_train_reduced = X_train @ Vt_k.T
X_train_reduced = X_train @ Vt_k.T
print(f"降维后训练集形状: {X_train_reduced.shape}")# 使用相同的 Vt_k 对测试集进行降维:X_test_reduced = X_test @ Vt_k.T
X_test_reduced = X_test @ Vt_k.T
print(f"降维后测试集形状: {X_test_reduced.shape}")# 训练模型(以逻辑回归为例)
model = LogisticRegression(random_state=42)
model.fit(X_train_reduced, y_train)# 预测并评估
y_pred = model.predict(X_test_reduced)
accuracy = accuracy_score(y_test, y_pred)
print(f"测试集准确率: {accuracy}")# 计算训练集的近似误差(可选,仅用于评估降维效果)
X_train_approx = U_train[:, :k] @ np.diag(sigma_train[:k]) @ Vt_k
error = np.linalg.norm(X_train - X_train_approx, 'fro') / np.linalg.norm(X_train, 'fro')
print(f"训练集近似误差 (Frobenius 范数相对误差): {error}")

收获心得:

SVD降维的难点就是数学关系以及维度转换后是否正确,线性代数要学好啊,唉

@浙大疏锦行

http://www.dtcms.com/wzjs/108329.html

相关文章:

  • 做电影网站如何买版权真实有效的优化排名
  • 网站建设市场调查报告武汉企业网站推广
  • wordpress模板在哪个文件夹seo网站推广的主要目的不包括
  • 响应式网页设计案例实现与分析百度排名优化专家
  • wordpress能否做网站编程培训机构排名前十
  • wordpress编辑器不能复制seo内容优化心得
  • 网站建设公司及网络安全法kol营销
  • 企业网站建设的三种方式并举例湖南好搜公司seo
  • 网站开发模板wordseo超级外链工具
  • 旅游网站建设怎么做搜狗seo排名软件
  • wordpress 站内资讯搜索引擎优化概述
  • 邢台地区网站建设口碑好上海今天最新发布会
  • 哪里有网站可以做动态视频倒计时百度指数免费查询入口
  • 设计师接私单网站网站转让出售
  • 网站加关键词代码除了百度指数还有哪些指数
  • 四川成都高端网站建设最新百度关键词排名
  • 做金融行业网站淘宝定向推广
  • 怎么做公司门户网站结构优化是什么意思
  • 什么网站做烘干设备好关键词seo排名优化如何
  • 长沙网站制作推广谷歌关键词热度查询
  • 试玩网站设计建设今天中国新闻
  • 南通通州建设工程质量监督网站seo云优化软件
  • 海阳市住房和城乡建设局官方网站seo整体优化步骤怎么写
  • 在线创建网站免费网站佛山seo技术
  • 毕设做网站可以得高分吗南京seo按天计费
  • 商场设计师班级优化大师下载安装
  • 形容网站页面做的好的词语凤凰军事新闻最新消息
  • 豪华网站建设网络营销软件站
  • 深圳网站设计设计网站应该如何推广
  • 如何建设高等数学课程网站销售策略和营销策略