问题标签 [linear-discriminant]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 减少数据集的 LDA 精度高于原始数据集
我正在尝试使用LDA减少数据集。我希望在减少的数据集上,我的准确性会降低。但是,根据我得到的随机种子,有时简化版本会给我更高的准确性。
你知道为什么降维后我的准确率更高吗?
r - 逻辑回归错误分类
我有一个与评估逻辑回归模型的预测有关的问题。我对此很陌生,所以请多多包涵。首先,我将展示我对 LDA 所做的工作,因为我希望在完成逻辑回归后获得类似的“错误分类率”。
这给出了 train.lda.rate = 0.5265152 和 test.lda.rate = 0.461039。
现在基本上我希望能够从逻辑回归中提取相同类型的错误分类率,但我知道在我的逻辑回归模型上使用 predict() 后,没有 $class 选项。所以我想知道如何找到预测的类,以便我可以查看它们是否等于原始类,从而像我上面那样获得分类率。
这是我的逻辑回归代码:
编辑
实施评论中提供的解决方案后,我执行了以下操作:
这给了我 0.9715909 的错误分类错误。这似乎有点高,让我觉得我在某个地方出错了。任何建议,将不胜感激!
另一个编辑
我已经按照评论中的建议进行了处理,并使用了多项逻辑回归,因此我可以处理 11 个类。
我离这里很近,因为 head(predicted.train) 看起来像正确的结构,我只是得到原子向量错误 - 我想我需要将类 (1-11) 更改为因子类型,但我不是积极的。
r - R - “CAPdiscrim”和“lda”错误“变量 1 在组内似乎是常数”
所以我一直在寻找解决这个问题的现有问题,但无济于事。
我有一个由个人 (117) 组成的数据集,每个人都有来自不同变量 (12) 的观察结果,并按具有 8 个级别的因子变量分组。
我想根据安德森和威利斯的方法对这些数据的主坐标进行规范分析。我从使用 BiodiversityR::CAPdiscrim 开始。让我们从一些示例数据开始:
CAPdiscrim 需要特定格式的数据:
现在我们可以对数据运行 CAPdiscrim
返回:
lda.default(x, grouping, ...) 中的错误:变量 1 在组内似乎是常数
我们可以使用 nearZeroVar 来查看这是否为真(这似乎不是真的):
现在我看到了关于这个特定于 lda() 的错误的其他问题,我注意到 CAPdiscrim() 调用了 vegdist()、cmdscale() 和 lda(),所以我试图逐个分解这个分析:
它返回一个非常相似的结果:
lda.default(x, grouping, ...) 中的错误:变量 1 2 3 4 5 在组内似乎是常数
现在lda()
有一个参数“tol”可以用来在处理非常小的数字时消除这个错误,所以我可以这样做:
这提供了一些输出,但不包括某些功能,CAPdiscrim
例如允许函数通过排列确定“m”的最佳数字。
谁能建议如何修改公差CAPdiscrim()
?或者如何CAPdiscrim()
使用这些其他功能手动执行幕后操作?
任何见解将不胜感激。
python - 在 Sklearn 中使用 LDA 时出现 Python 错误
我正在尝试实现LinearDiscriminantAnalysis
from sklearn,因为这是我迄今为止所做的:
我得到的错误信息是:
数据框的形状是正确的,所以我没有得到我所缺少的或者我应该转换什么以便函数接受参数,或者是其他原因?
我将不胜感激任何提示!
更新
这是dataframe_train.iloc[:,-1]
看起来的样子:
每行是一个包含 20 个元素的向量。
**2nd_UPDATE"
运行以下:Training_Frame = lda.fit_transform(np_scaled_train,np.asarray(dataframe_train.iloc[:,-1]))
传递此错误消息:
python - RuntimeWarning: 除 S**2))[:self._max_components] 中遇到无效值
我正在尝试对具有两个类的分类问题执行降维。
我有 6 个 csv 文件。我的代码在这里:
我想这可能是问题所在。
这是我得到的错误:
每个文件有 100 行和 5 列。我想使用第 3、第 4 和第 5 列进行特征提取,它们称为“x”、“y”和“z”。
r - 如何将灵活判别分析可视化为 R 中的双图?
我读过 Gardner 和 Le Roux 关于将 Biplot Methodology 扩展到判别分析的论文。我想问是否有人对这种方法有任何实际经验。我有一个来自 kaggle Human Resources Analytics 的数据集的 FDA 模型,可在此处获取 data set。我使用了代码
来拟合模型。训练样本选择使用
当我尝试使用该biplot
函数时,我收到一个缺少 y 值的错误。我知道有一个 ggbiplot 函数,但它似乎只适用于 LDA,因为它需要线性判别式进行绘图。而且我在我的模型输出中找不到那些更精确的判别值。我似乎错过了一些东西,但我无法弄清楚它是什么..
我的更多代码
返回缺失的 y 值。
还尝试缩放数据集
尝试使用虹膜数据上的示例但使用 LDA 来拟合 ggplot,但不知道用于aes
. 似乎也没有名为 geom_axis 的函数
r - LDA 分析时下标越界
我正在尝试在 R 中运行线性判别分析。我的数据框包含两组数据,维度分别为 102 和 24。我运行 R 代码如下:
但是当我尝试绘制输出时,我得到了这个错误:
我发现问题是我LD1
在输出中有突出部分并且LD2
不可用。任何人都可以解决这个问题吗?通过此链接,您可以找到 mydata:
https ://www.dropbox.com/preview/Foruhar/morph.txt
machine-learning - 线性判别分析与朴素贝叶斯
LDA vs Naive Bayes 在机器学习分类方面的优缺点是什么?
我知道一些差异,比如朴素贝叶斯假设变量是独立的,而 LDA 假设高斯类条件密度模型,但我不明白什么时候使用 LDA 以及什么时候使用 NB 取决于具体情况?
c++ - 为什么 LDA 中的特征向量和特征值为零?
我想在 OpenCV 中实现快速 PLDA(概率线性判别分析)。在此,LINK快速 PLDA 已在Matlab
和中实现Python
。PLDA 的组成部分之一是 LDA。我为在 OpenCV 中实现 LDA 编写了以下代码:
我已将上述链接中介绍的数据库从.mat
转换为.yml
. 结果是newStorageFile.yml
我已经上传到这里了。train_data
有 650 行和 600 列,而 train_labels 有 650 行和 1 列。我不知道为什么特征向量和特征值变为零!!?PLZ帮我修复这个代码。
最好带上将数据从转换为的.mat
代码.yml
:
编辑 1 ) 我用自己生成的一些样本尝试了 LDA:
python - sklearn.lda.LDA() 和 sklearn.discriminant_analysis.LinearDiscriminantAnalysis() 的区别
在使用 python 阅读有关 LinearDiscriminantAnalysis 的过程中,我有两种不同的方法来实现它,可在此处获得, http: //scikit-learn.org/stable/modules/generated/sklearn.discriminant_analysis.LinearDiscriminantAnalysis.html#sklearn.discriminant_analysis .线性判别分析
在这些方法中,签名在这里,
现在我又找到了另一种具有相同签名的方法,可在此处获得,
http://scikit-learn.org/0.16/modules/generated/sklearn.lda.LDA.html
我只是想知道两者之间有什么区别。我们应该在项目中使用哪种方法,为什么?