标签: svm

支持向量机:使用2个相反符号功能的任何意义?

我正在训练支持向量机(SVM).每个训练矢量包括2个特征,这些特征在数量上相等并且具有相反的符号,即F1 = -F2.

这样做有什么意义吗?

其中一个功能是多余的,更好的删除?

以上的答案是否依赖于使用的内核?我目前正在使用高斯/径向基函数(RBF)内核.

machine-learning svm

0
推荐指数
1
解决办法
142
查看次数

SVM用于数字识别

我需要实现SVM数字分类器的概念.它应该是我在画布中写入的分类输入的简单.但我需要从头开始实施.语言并不重要.

任何人都可以一步一步地指导我如何做到这一点.任何材料链接都会有所帮助.但我需要一些与实践相关的东西而不是理论.因为我已经阅读了一些关于它的理论文章.并且有基本的想法它应该如何工作,但仍然有一些麻烦如何将这些想法转换为现实生活中的例子.

非常感谢.

computer-science classification image-recognition svm

0
推荐指数
1
解决办法
2433
查看次数

scikit-learn - explain_variance_score

我正在使用scikit-learn来构建一个由svm训练和测试的样本分类器.现在我想分析分类器并找到explain_variance_score,但我不明白这个分数.例如,我得到了clf的分类报告,它看起来像这样......

             precision    recall  f1-score   support

        0.0       0.80      0.80      0.80        10
        1.0       0.80      0.80      0.80        10

avg / total       0.80      0.80      0.80        20 
Run Code Online (Sandbox Code Playgroud)

还不错,但EVS只是0.2......有时-0.X...... 它怎么会发生这种情况呢?拥有一个好的EVS是否重要?也许有人可以解释我这个......

Y_true和Y_pred:

[ 1.  1.  1.  1.  1.  1.  1.  1.  1.  1.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.]

[ 1.  1.  1.  1.  1.  0.  0.  1.  1.  1.  1.  0.  0.  0.  0.  0.  1.  0.
  0.  0.]
Run Code Online (Sandbox Code Playgroud)

python classification machine-learning svm scikit-learn

0
推荐指数
1
解决办法
1079
查看次数

如何使用libsvm库(Matlab)实现1对1多类分类?

如何使用libsvm实现一对一多类分类?请帮我解决这个问题.

我还从这个答案中读到了一对一的方法...... 使用Matlab进行交叉验证的多类SVM的完整示例[关闭]

我的测试数据:功能和最后一列是标签

D = [

1           1          1           1             1
1           1          1           9             1
1           1          1           1             1
11          11         11          11            2
11          11         11          11            2
11          11         11          11            2
30          30         30          30            3
30          30         30          30            3
30          30         30          30            3
60          60         60          60            4
60          60         60          60            4
60          60         60          60            4
];
Run Code Online (Sandbox Code Playgroud)

我的测试数据是

inputTest = [
    1           1           1           1             
    11          11          11          10 …
Run Code Online (Sandbox Code Playgroud)

matlab svm libsvm

0
推荐指数
1
解决办法
354
查看次数

复杂数据的良好异常检测模型

我正在处理数据并希望为这些数据生成异常检测模型。该数据仅包含三个特征:LatitudeLongitudeSpeed。我将它标准化,然后应用t-SNE然后再次标准化。有没有标记或目标数据。所以,它应该是一个无监督的异常检测。

我无法共享数据,因为它是私有的。但是,看起来是这样的:

图片

数据中存在一些异常值,例如异常值:

图片

这是数据的最终形状:

图片

如您所见,数据有点复杂。当我手动搜索异常实例时(通过查看特征值),我观察到红色圆圈内的实例(下图中)应该被检测为异常

红色区域内的实例应该是异常的:

图片

我曾经OneClassSVM检测异常。这里是参数;

nu = 0.02
kernel = "rbf"
gamma = 0.1
degree = 3
verbose = False
random_state = rng
Run Code Online (Sandbox Code Playgroud)

和模型;

# fit the model
clf = svm.OneClassSVM(nu=nu, kernel=kernel, gamma=gamma, verbose=verbose, random_state=random_state)
clf.fit(data_scaled)
y_pred_train = clf.predict(data_scaled)
n_error_train = y_pred_train[y_pred_train == -1].size
Run Code Online (Sandbox Code Playgroud)

这是我最后得到的:

图片

这是检测到的异常OneClassSVM和红色实例被检测为异常:

图片

因此,如您所见,该模型将许多实例预测为异常,但实际上,这些实例中的大多数应该是正常的。

我为nu,gamma和尝试了不同的参数值degree。但是,我找不到合适的决策线来检测真正的异常

  • 我的模型有什么问题?我应该尝试不同的异常检测算法吗?
  • 我的数据不适合异常检测吗?

svm scikit-learn anomaly-detection

0
推荐指数
1
解决办法
742
查看次数

python sklearn pipiline fit:“AttributeError:找不到更低的”

我正在尝试使用 sklearn 将 sveveral 文本数据分为 3 个类别。但我得到

“属性错误:未找到下限”

跑步时。

代码:

train, test = train_test_split(df, random_state=42, test_size=0.3, shuffle=True)
X_train = train.contents
X_test = test.contents
Y_train = train.category
Y_test = test.category

clf_svc = Pipeline([('vect', CountVectorizer()),
                    ('tfidf', TfidfVectorizer(tokenizer=',', use_idf=True, stop_words="english")),
                    ('clf', OneVsRestClassifier(LinearSVC(), n_jobs=1)),
                    ])

clf_svc = clf_svc.fit(X_train, Y_train)
predicted_svc = clf_svc(X_test)
print(np.mean(predicted_svc == Y_test))
Run Code Online (Sandbox Code Playgroud)

数据框 (df) 由 2 列组成:内容(长文本数据)和类别(文本数据)。内容是抓取的文本,因此包含数十或数百个单词,类别是单个单词,例如“A”,“B”。

我已经在 stackoverflow 中检查了过去的问题,但我无法解决发生的这个错误。
我很高兴知道解决方案或代码本身的问题。
任何建议和答案将不胜感激。

提前致谢。

python machine-learning svm scikit-learn text-classification

0
推荐指数
1
解决办法
4332
查看次数

SVR超参数选择和可视化

我只是数据分析的初学者。我想使用“交叉验证网格搜索方法”来确定径向基函数 (RBF) 内核 SVM 的参数 gamma 和 C。我不知道应该将数据放在这段代码的哪里,也不知道我的数据类型是什么应该使用(训练或目标数据)?

对于SVR

import numpy as np
import pandas as pd
from math import sqrt
from sklearn.tree import DecisionTreeRegressor
import matplotlib.pyplot as plt
from sklearn.ensemble import AdaBoostRegressor
from sklearn.metrics import mean_squared_error,explained_variance_score
from TwoStageTrAdaBoostR2 import TwoStageTrAdaBoostR2 # import the two-stage algorithm
from sklearn import preprocessing
from sklearn import svm
from sklearn.svm import SVR
from sklearn.model_selection import GridSearchCV
from sklearn.metrics import classification_report
from matplotlib.colors import Normalize
from sklearn.svm import SVC

# Data import (source)
source= pd.read_csv(sourcedata) …
Run Code Online (Sandbox Code Playgroud)

data-visualization svm data-analysis scikit-learn grid-search

0
推荐指数
1
解决办法
4395
查看次数

MATLAB中的一对一SVM

我希望在MATLAB中使用一对一方法对fisheriris数据实现多类SVM.

我怎么能这样做?

matlab svm

-1
推荐指数
1
解决办法
1635
查看次数

无法导入sklearn

图像

我安装了 numpy 和 scipy。我也安装了sklearn但无法导入它。请看图片。

python import svm python-import scikit-learn

-2
推荐指数
1
解决办法
1万
查看次数