我正在尝试安装scikit learn,这样它就无法访问ATLAS(其他BLAS和LAPACK库也可以)。有没有办法设置安装,使ATLAS不被使用?很抱歉问了一个基本的问题,但我看不出有什么好办法
我想这样做的原因是:我在一个集群上工作,无法构建atlas,但它的预安装版本已损坏(在16个内核上编译,节点上只有8个内核,pthread问题),因此当我安装scikit learn时,我的scikit learn尝试启动这些库,但我遇到了错误
谢谢
编辑:看起来我有些地方做错了,事实上,在我针对op
在scikit learn In的文档中(摘录如下所示),为什么随机森林的实现与Breiman的原始论文不同?据我所知,Breiman在聚合分类器集合时,选择了分类的多数票(模式),回归的平均票(Liaw和Wiener撰写的论文,他们是原始R代码的维护者,引用如下)
为什么scikit学习使用概率预测而不是多数投票
使用概率预测有什么优势吗
有关章节:
与原始出版物[B2001]相比,scikit学习
实现通过平均分类器的概率来组合分类器
预测,而不是让每个分类器为单个
班级
资料来源:Liaw
我正在使用Scikit学习支持向量机对STL-10数据集的模型进行训练,该数据集包含5000个训练图像(10个预定义的折叠)。所以我有5000*96*96*3大小的数据集用于培训和测试。我使用以下代码来训练它,并测量测试集的准确性。(80% 20%). 最终结果的准确度为0.323。如何提高支持向量机的精度
这是
因此,您似乎直接在图像上使用原始SVM。这通常不是一个好主意(实际上相当糟糕)
我将描述过去几十年流行的经典图像分类管道!请记住,目前性能最好的方法可能会使用深度神经网络来结合其中一些
我已运行,但遇到错误:
“ValueError:包含多个元素的数组的真值不明确。请使用a.any()或a.all()”我不知道是什么问题
代码如下:
import optunity
import optunity.metrics
import numpy as np
# k nearest neighbours
from sklearn.neighbors import KNeighborsClassifier
# support vector machine classifier
f
如何使用tensorflow创建一个单词热编码,每个单词都由vocab大小的稀疏向量表示,并且该特定单词的索引等于1
差不多
oneHotEncoding(单词=['a','b','c','d'])->[[1,0,0,0,0],[0,0,1,0],[0,0,1,0],[0,0,0,1]]?Scikits一个热编码器接受一个int数组()。以您的示例为基础,您可以使用字典将单词映射为整数,并从那里开始:
import numpy as np
from sklearn.preprocessing i
我注意到实现套索回归稳定性选择的linear_模型、随机化套索和linear_模型、随机化逻辑回归已被弃用。有人知道为什么吗?稳定性选择不是一种可靠的方法吗?Scikit learn是作为开源和高标准开发的。这意味着,大多数决策都是透明的
因此,您可以进行查看,通过一些搜索,您将发现:
引文:用户对#8995:)感到反感
标签: Scikit Learn
preprocessorpolynomialsnon-linear-regression
根据以下描述:“如果输入样本是二维且形式为[a,b],则二次多项式特征为[1,a,b,a^2,ab,b^2]”
我需要生成的输出数据数组的类型为:[a,b,a^2,b^2]
我知道poly=多项式特征(2,include_bias=False)
多边形拟合变换(X)
给出如下输出:[a,b,a^2,ab,b^2]。但我不希望生成这些中间“ab”类型的列。怎么做?有什么想法吗?或者这里可以使用任何更好的API?请查看此scikit学习集成
这使您可以完全控制类似R的公式:
from patsyl
当我跑的时候
cross_val_predict(a_clf, X_train, y_train, cv=5)
我从中得到一个1d阵列:
array([False, False, True, ..., False, False, False])
每个折叠是否应该有一系列的预测
近似
cross_val_score(a_clf, X_train, y_train, cv=5)
返回5项数组。每个折叠一个分数。cross\u val\u predict对您感兴趣的完整数据集进行折叠预测。您的
我正在努力完成一个机器学习项目,在这个项目中,我试图结合:
一个sklearn列变换,将不同的变换应用于我的数字和分类特征
应用我的不同变压器和估计器的管道
aGridSearchCV搜索最佳参数
只要我在管道中手动填写不同变压器的参数,代码就可以正常工作。
但是,当我试图传递不同值的列表以在gridsearch参数中进行比较时,就会收到各种无效的参数错误消息
这是我的密码:
首先,我将我的特征分为数字特征和分类特征
from sklearn.compose import make_colu
我用分类变量对数据进行分类。它是人们提供信息的数据
我的训练数据集质量参差不齐。我对一些数据有更大的信心,即我对人们提供了正确的信息有更高的信心,而对一些数据我不太确定
如何将这些信息传递到分类算法(如朴素贝叶斯或K近邻)中?
或者我应该使用另一种算法吗?我认为您想要做的是为每个数据点提供单独的权重(重要性/可信度)
例如,如果您非常确定一个数据点的质量更高,并且应该比其他数据点具有更高的权重,而您对此不太自信,则可以在拟合分类器时指定该数据点
例如,Sklearn为此提供了高斯朴素贝叶斯分类器
我需要使用sklearn.neural\u network.mlpclassizer设置神经网络的权重。
问题是要按以下方式多次设置权重:
对n个时代重复:
设置模型权重
使用模型权重拟合模型
获取新的模型重量
我已尝试使用此处描述的解决方案。
但是,mlpclassifieroverride方法不起作用,因为权重没有传递给类,因此没有更新。
对于sklearn.neural_network.mlpclassizer更新权重,是否有其他解决方案可用
我在mac上运行64位。在安装scikit learn(使用包管理器)之后,我尝试导入svm,并得到以下错误
ImportError: dlopen(/Users/johnsaccount/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/sklearn/svm/liblinear.so, 2): Library not loaded: /System@rpath/libBLAS.dylib
引用自:/Users/j
我试图找出scikit学习包中的哪个决策树方法更适合我执行分类任务的需要
但是,我发现这里有两种可用的决策树模型:
标准DecisionTreeClassifier基于scikit.tree包中优化的CART算法
来自scikit.ensemble包的集成方法ExtraTreeClassifier
有人能详细说明使用这些模型的优缺点吗?ExtraTreeClassifier是DecisionTreeClassifier的一个非常随机的版本,打算作为ExtraTreesClassifier集成
当数据偏移(不以零为中心)时,LinearSVC()和SVC(kernel='linear')会给出完全不同的结果。(编辑:问题可能是它不处理非规范化数据。)
这是我得到的结果:
(left=LinearSVC(),right=SVC(kernel='linear'))
sklearn.\uuuuu版本\uuuuu=0.17。但我也在Ubuntu 14.04中进行了测试,它附带了0.15
我曾想过报告这个bug,但它似乎太明显了,不可能是一个bug。我缺少什么?阅读文档,他们使用不同的底层实现
默认情况下,SKLearn在多类情况下训练SVM时使用分类方案
我有点困惑,当你调用诸如svm.n_support或svm.support_vectors之类的属性时,你会得到哪些支持向量?例如,在iris数据集的情况下,有3个类,因此应该总共构建3*(3-1)/2=3个不同的SVM分类器。你得到的是哪种分类器的支持向量
所有3个分类器的所有支持向量。
看一下支持向量机,它是45。
19+19+7 = 45. 所有这些加起来
另外,如果您查看svm.support\u vectors\u.sha
我正在尝试在本地机器上运行。我犯了一个错误
ImportError:仅在jupyter笔记本中没有名为“sklearn”的模块
在激活和停用carnd-term1 env的情况下,我从命令行使用python时,它可以正常工作
我已经用pip、apt get和conda安装了sklearn。还尝试了conda升级scikit学习。环境处于激活和停用状态
从jupyter笔记本上看不起作用
有什么想法吗?这通常意味着两者不是同一个环境。最好的检查方法是sys.executable,并确保它是
标签: Scikit Learn
classificationword2vecmultilabel-classificationmulticlass-classification
我不熟悉机器学习和机器学习。我有一个csv文件,其中包含以下类型的映射:
ID-2001-0001,ID-1类
ID-2002-0002,ID-2类
.
.
我有大约1010个独特的ID和123个独特的类别。现在,我想对大约1000个其他ID进行分类。对于已分类ID的800/1010,我想训练一个分类器。我在用sklearn。使用SVM,我得到了剩余200个ID的相同预测。使用梯度增强技术,我得到了大约1.4%的准确率。这是因为数据量小吗?。基本上,我将100维向量和ID-2001-0001(w
我有一个标记化句子的列表,我想安装一个tfidf矢量器。我尝试了以下方法:
tokenized_list_of_sentences = [['this', 'is', 'one'], ['this', 'is', 'another']]
def identity_tokenizer(text):
return text
tfidf = TfidfVectorizer(tokenizer=identity_tokenizer, stop_words='english')
tfidf
我在python中使用sk learn来拟合模型,并通过模型转换输入数据
我使用FeatureUnion组合countvectorier和tfidfmembeddedingvectorier。
仅使用CountVectorizer或仅使用TFIDFembeddedingVectorizer是可以的,但如果我通过特征联合组合两个特征,则会出现如下错误:
TypeError: fit() takes 2 positional arguments but 3 were given
class Tfi
有没有办法在sklearn的MLPREGESSOR中引入L1正则化?目前我只能在文档中找到L2参数。他们的文档中没有说明MLPREGESSOR的L1正则化,但我认为Pytork或sknn将允许您这样做。没有,但最接近scikit了解的可以做到这一点的是scikit neuralnetwork–谢谢,改为将此特定应用切换到keras
我有一组70个输入变量,需要对其执行PCA。根据我的理解,对于每个输入变量,中心数据的平均值为0,方差为1,这对于应用PCA是必要的
我很难弄清楚我需要执行标准缩放预处理。在将数据集传递到PCA或PCA之前,sklearn中的函数会自行执行该操作
如果是后者,则无论我是否应用preprocessing.StandardScaler()explained\u variation\u ratio\u都应相同
但是结果是不同的,因此我认为在应用PCA之前必须进行预处理.StandardScaler()
标签: Scikit Learn
logistic-regressionsklearn-pandascoefficients
我正在利用sklearn管道中的sklearn熊猫。为了评估特征联合管道中的特征贡献,我喜欢测量估计器的系数(逻辑回归)。对于以下代码示例,对三个文本内容列a、b和c进行矢量化,并为X\u列选择:
import pandas as pd
import numpy as np
import pickle
from sklearn_pandas import DataFrameMapper
from sklearn.feature_extraction.text import CountVector
我试图在多维特性上使用KMeans Clusterin。I get ValueError:使用序列设置数组元素
以下是我已经尝试过的一个例子:
将熊猫作为pd导入
从sklearn.cluster导入KMeans
test=pd.DataFrame(np.random.randint(低=0,高=10,大小=(30,4)),列=['a','b','c','d'])
test[“combined1”]=test.loc(axis=1)[“a”,“b”].values.tolist()
test[“
fit()与上述两种方法之间的区别非常明显拟合存在于sklearn的所有类中,并根据类拟合对象的内部变量,无论是训练模型类还是预处理器类
然而,transform()和predict()之间的区别似乎有点模糊。我看到的一条普遍规则是-predict()属于有监督的学习类,而transform()属于无监督的学习类
然而,我发现这条一般规则有一些例外。K-均值(一种无监督算法)和PLSRegression(一种有监督算法)是两类同时具有这两种方法的算法。我浏览了K-Means文档,了解了这两种不同
假设我有这个管道对象:
from sklearn.pipeline import Pipeline
pipe = Pipeline([
('my_transform', my_transform()),
('estimator', SVC())
])
要将超参数传递给我的支持向量分类器(SVC),我可以这样做:
pipe_parameters = {
'estimator__gamma': (0.1, 1),
'estimator__kernel': (rbf)
我需要sklearn这就是为什么我尝试使用conda install scikit learn在我的conda env中安装scikit learn,但结果是:
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: \
Found conflicts! Looking for incompatible packages.
This can
我已经生成了两组1-D数据点,这些数据点在视觉上是清晰可分的,我想使用贝叶斯-高斯混合模型(BGMM)理想地恢复2个聚类
由于BGMMs最大化了模型证据(ELBO)的下限,并且考虑到ELBO应该结合准确性和复杂性的概念,我预计更复杂的模型会受到惩罚
但是,在对多个集群运行网格搜索时,我通常会得到一个包含两个以上集群的解决方案。更具体地说,我经常在网格搜索中获得最大数量的集群。在下面的示例中,我希望最好的模型定义2个集群。相反,最佳模型定义了4个,但为4个簇中的2个分配了最小权重。
我真的很惊讶,
我在文本分类中用作统计分类器。我的特征没有中心线
当fit_intercept属性设置为False时,分类准确度显著提高,这与特征绝对值不会影响统计分类器性能的预期相矛盾
什么会导致我观察到的分类精度的变化?您是在多类还是二进制设置中?另外,你说的是泛化,即测试性能,对吗?使用intercept,训练性能肯定会更好。我不是一个多标签集(由OneVsRestClassifier处理)。我说的当然是考试成绩。你能检查一下培训成绩吗?我想到的唯一解释是,在训练集中标签出现和不出现之间存在不平衡,但在测
我正在使用scikit learn中度量模型中的“roc_曲线”。该示例显示,应在'auc'之前调用'roc\u curve',类似于:
fpr, tpr, thresholds = metrics.roc_curve(y, pred, pos_label=2)
然后:
metrics.auc(fpr, tpr)
但是,返回以下错误:
Traceback (most recent call last): File "analysis.py", line 207, in <modul
我知道可以将几个实现转换方法的估计器链接到sklearn.pipeline中的转换X(特征集)。但是,我有一个用例,其中我还希望转换目标标签(例如将标签转换为[1…K],而不是[0,K-1]我很想把它作为我的管道中的一个组件来完成。是否可以使用sklearn.pipeline来完成呢?不,管道将始终通过y而不改变。在管道之外进行转换
(这是scikit learn中的一个已知设计缺陷,但它从未足够紧迫地改变或扩展API。)您可以将标签列添加到训练数据的末尾,然后应用转换并在训练模型之前删除该列。
我正在对一个多类问题运行sklearn.linear\u model.LogisticRegression。据我所知,coef\uu属性的输出是每个类的每个特征的系数。我不明白的是sklearn中的解释。例如,在SPSS中,您将一个类作为基础,然后解释与该类相关的赔率,因此您实际上可以得到n-1类的系数。在sklearn中不是这样的,在那里我得到每个类的系数
一个特征(四类)的指数系数示例如下:
1.1649 | 1.0660 | 0.9589 | 0.8607
这种解释正确吗:当该特征的单位值
是否有任何方法可以在scikit learn中为GradientBoostingClassifier获取叶子索引,就像你可以为RandomForestClassifier及其its获取叶子索引一样?你可以在每个估计器上调用apply方法,我认为在当前版本中,你必须调用gbrt.estimators[I].tree\uUx),它将简化为gbrt.estimators[i]。在下一版本iirc中应用(X)
我想在没有CV的情况下运行常规的“gridsearch”,即我不想交叉验证,但不允许设置CV=1
我这样做是因为我使用分类器来绘制决策边界和可视化/理解我的数据,而不是预测标签,并且不关心泛化错误。我想把训练误差降到最低
编辑:我想我真的在问两个问题
如何在GridSearchCV中破解cv=1?下面是奥格里塞尔的回答
用网格搜索来最小化训练误差而不是泛化误差有意义吗?如果有,我该怎么做?我怀疑这涉及到为GridSearchCV中的scoring参数插入我自己的评分函数
您可以将ShuffleS
您好,我正在与sklearn合作。我有一个列表,如下所示:
list = ["comment1","comment2",...,"commentN"]
newVec = CountVectorizer(vocabulary=tf.vocabulary_)
testComment = newVec.fit_transform(comment)
y_pred_Comment = kmeans.predict(comment)
print(y_pred_Comment)
然后我建立了一个向量器
在使用scikit learn在输入维度为24700 x 11200的数据集上训练svm分类器时,我注意到了非常奇怪的行为。一旦分割成训练集/测试集,训练数据部分的样本数超过18500个
我的代码如下所示:
def feature_scale(M):
scaler = MinMaxScaler(feature_range=(0, 1))
return scaler.fit_transform(M)
M = feature_extraction(....) # method to
我有4列数据。对于这些X,我需要随机选择3个集群中心,并找到SSE最少的集群。为什么在不同的随机状态下,中心和惯性(SSE)是相同的,并且init=随机参数
Xvar=stud.iloc[:,1:5]
#X1=np.random.randint(22,99,size=(3,4))
kmeans1= KMeans(n_clusters=3, init='random', random_state=101)
kmeans1.fit(Xvar)
kmeans1.l
我正在尝试用Python开发一个程序,它可以处理原始聊天数据,并以类似的意图对句子进行聚类,这样就可以将它们用作构建新聊天机器人的训练示例。目标是使其尽可能快速和自动,即无需手动输入参数
1-对于特征提取,我对每个句子进行标记,将其词干化,并使用Sklearn的TfidVectorizer对其进行矢量化
2-然后我用Sklearn的DBSCAN对这些句子向量进行聚类。我之所以选择这种聚类算法,是因为它不需要用户像k-means中的k参数那样指定所需的聚类数。它扔掉了很多句子,认为它们是异常值,但
标签: Scikit Learn
pcadimensionality-reductionmatrix-factorizationnmf
我想比较不同预处理数据的算法输出:NMF和PCA。
为了获得某种程度上的可比结果,我不想为每个PCA和NMF选择相同数量的成分,而是想选择解释保留方差95%的数量
我想知道是否有可能确定NMF每个组成部分中保留的差异
例如,使用PCA,可通过以下公式得出:
restainedvariance(i)=特征值(i)/和(特征值)
有什么想法吗?TL;博士
您应该循环使用不同的n\u分量,并在每次迭代时估计解码的X的解释方差。这将向您显示需要多少组件来解释95%的方差
现在我将解释原因
PCA与NMF
我正在尝试使用支持向量机将5000条记录和1000个真值的数据分为两类。我的代码来自以下示例:
from sklearn import svm
clf = svm.SVC()
clf.fit(X, Y)
所以我使用了大多数默认值。对我来说差异很大。训练准确率超过95%,而我正在做的测试从数据集中提取了大约50条记录,准确率为50%
但是,如果我将测试数据的训练大小更改为大约3000和2000条记录,那么训练精度将下降到80%,测试精度将上升。为什么会这样
现在,如果我将scikit学习库更改为
我正试图将机器学习应用于股票预测,但我遇到了一个问题,即在未来看不见的(更高的)股票收盘价上进行缩放
假设我使用随机forrest回归预测股票价格。我将数据分为训练集和测试集。
对于火车组,我使用standardscaler,并进行拟合和变换
然后我使用回归器来拟合
对于测试集,我使用standardscaler,并进行转换
然后,我使用回归器进行预测,并与测试标签进行比较
若我把predict和test标签绘制在一张图上,predict看起来像是最大值或上限。问题是,火车集、测试集(时间线后面
下面是这里的讨论
因为我将随机_状态设置为1,所以我有一致的度量,因为我每次都生成相同的树。但是,当random_state设置为默认-->none时,每次生成的不同树具有不同的性能指标,有些树比其他树更好,有些树更差。我们如何才能得到最好的可能度量,或者换句话说,如何找出为随机状态设置的int值,这将为我提供具有最佳精度和kappa统计数据的树。随机状态为模型增加了一定程度的随机性,正如您正确理解的,由此产生的不同性能指标将导致不同的模型和准确性
为了找到模型的最佳参数并优化精度,可以使用。
我在为GridSearch进行超参数调优时遇到了奇怪的错误。
我从randomizedsearchcv中获得了一些最佳参数,我正在尝试在grid search cv中拟合这些参数。
我犯了一个错误
参数(标准)的参数网格需要是列表或numpy数组,但必须是get()。单个值需要包装在一个包含一个元素的列表中。
下面是代码
from sklearn.model_selection import GridSearchCV
clf=RandomForestClassifier()
n_estimato
我想以与此处类似的方式绘制线性支持向量机的平均验证与平均训练分数:
但是,运行类似代码时,参数compute\u training\u scores似乎不存在。
此外,此参数未记录[1]。我检查了Github上当前的主分支,但它似乎还没有提交
我正在使用Scikit学习0.14.1
我在这里有点困惑。我是否需要分支或标记来获得相同的功能,或者是否有其他方法来计算
有关守则:
param_grid = {'C': 10. ** np.arange(-3, 4)}
grid_search = Gri
使用余弦相似性对数据集执行TSNE有一个小问题
我已经计算了所有向量的余弦相似性,因此我有一个包含余弦相似性的方阵:
A = [[ 1 0.7 0.5 0.6 ]
[ 0.7 1 0.3 0.4 ]
[ 0.5 0.3 1 0.1 ]
[ 0.6 0.4 0.1 1 ]]
然后,我像这样使用TSNE:
A = np.matrix([[1, 0.7,0.5,0.6],[0.7,1,0.3,0.4
scikit学习实现版本的LibSVM在计算效率上是否与原始LibSVM相同
有人有关于比较的统计数据吗
谢谢 比较没有意义。Sklearn的SVC只是libsvm的一个包装器。因此,对于“围绕”它的数据操作(预处理和后处理),它是完全相同的
我正在尝试使用scikit learn找出结果的重要性,如:
其中clf.best_估计量是交叉验证的结果
我将其用于几个分类器(几个独立的clf.best_estimator_u),但所有分类器的p值都是相同的0.0099009900901
我不知道为什么会这样。奇怪的是,这与scikit learn用户指南中链接代码中报告的数字相同。我在scikit learn的问题中问了相同的问题,答案是:对于大多数好的分类器,如果随机分类器在100分之一的测试中优于经过训练的分类器,这个神奇的数字就是结
我正在我的机器上成功地使用scikit learn。我正在试验anaconda实现(依赖MKL进行多线程处理)和openblas实现
我真的很想使用k-最近邻分类器的并行版本,根据,sklearn应该在1年前在版本0.17中合并这些更改
对于PCA和所有numpy操作,多线程都能成功工作。我可以说多线程正在工作,因为我在做点积和PCA时可以看到大量线程。当我吃午饭时,KNN大约需要10分钟。
我正在对MNIST(图像数字)的高维数据集进行分类。我做PCA得到35-50维的向量,然后做非线性展开,
这是我的数据集:
URI name \
0 <http://dbpedia.org/resource/Digby_Morrell> Digby Morrell
1 <http://dbpedia.org/resource/Alfred_J._Lewy> Alfred J. Lewy
当我使用scikit学习(v.0.22)二次判别分析时,嵌套多处理出现问题。必要的是系统配置:24线程Xeon机器运行fedora 30
我在随机选择的预测因子子集上连续运行qda:
def过程(X,y,n_特征,i=1):
comb=np.random.choice(范围(X.shape[1]),n_特征,replace=False)
qda=qda(tol=1e-8)
qda.fit(X[:,comb],y)
y_pred=qda.predict(X[:,comb])
返回值(精度分数(y,
我有两个数据集,一个有300条记录(A),例如[1,22,44]x300
第二个(B)有10条记录。[2,55,22]x10
我正在研究比较A和B的最佳方法,并从A返回排名前10位的项目。我尝试使用余弦相似性得出混合结果
如有任何想法/建议,将不胜感激
非常感谢
上一页 1 2 ...
14 15 16 17 18 19 20 ...
下一页 最后一页 共 40 页