Scikit learn Scikit';s学习随机森林分类器&x27;得分';方法使用?
文档()提到该方法返回“平均精度”,但如何计算精度?如中所述,也称为1减去0-1误差。(谢谢lars)也称为1减去平均0-1损失。
文档()提到该方法返回“平均精度”,但如何计算精度?如中所述,也称为1减去0-1误差。(谢谢lars)也称为1减去平均0-1损失。
我正在尝试使用随机林(scikit learn 0.18.1安装了Anaconda;Python 3)进行研究。我的数据集包含大约325000个样本,每个样本由11个特征组成(所有非零值)。 我使用以下调用创建一个随机林(max_depth已设置为10以限制使用的内存量): 不幸的是,随机林构建需要大量内存(我有128 GB的内存可供使用,100%的内存都已使用(使用top检索信息)。Python然后会引发一个MemoryError 我通过以下方式创建矩阵: np.array(Xl, dtype
当我使用scikit learn进行PCA时,我发现它使用svd获得特征值和特征向量,然后使用svd_flip获得真实的特征向量 这是我的代码,可以得到特征值和特征向量 pca = PCA(data.shape[1]) newData = pca.fit_transform(data) eigenvalue, eigenvector = np.linalg.eig(np.cov(data.transpose())) explained_variance_ratio_sum_ = np.cumsu
我尝试使用以下命令在我的Ubuntu设备上安装scikit learn: pip安装-U scikit学习 我已经安装了numpy、scipy和matpotlib。 我得到以下错误: 来自pip.\u vendor.pkg\u资源导入要求解析错误 导入错误:无法导入名称要求解析错误在控制台中尝试以下操作: sudo -i 键入密码,然后键入: pip install scikit-learn 希望这有助于编辑您的问题并添加有关系统的信息。你在windows上吗?我使用的是Ubuntu 16.
当使用GridSearchCV时,使用提前停止循环或将外部测试集与管道结合使用时,似乎评估集被 管道。 fit功能仅适用于训练数据,评估集数据仅传递给最终估计器,而无需在其上运行变压器 有没有解决这个问题的好方法? 我附上了一个小示例,它表明eval_集不是通过管道转换的。 我已经读到可以以某种方式扩展分类器,但我不确定如何从中访问管道对象 from sklearn.base import BaseEstimator from sklearn.base import TransformerMix
我正在使用来自scikit learn的TfidfVectorizer和余弦_相似度。当我有一个新字符串,并且我试图找到与原始训练语料库中的字符串的余弦相似性时,我注意到,即使字符串是精确匹配的,加上新字符串中的其他新标记,无论有多少这样的附加标记,余弦相似性都是1.0 例如,如果x、y和z根本不在原始语料库中,则形式为“ab x y z”的新字符串与原始字符串“ab”的余弦相似性为1.0 我理解这种情况是如何发生的,因为在根据训练语料库建立的特征对新字符串进行矢量化时,会忽略新的标记,但我希望
我想用scikit learn计算群集的质心向量: from sklearn.cluster import KMeans import numpy as np kmeans = KMeans(n_clusters=1, random_state=0).fit(X) 如果我设置n_cluster=1,这是否意味着我计算X的平均值 例如,如果X中有三个数据点,每个数据点都有一个4d向量,X=[[1,2,3,4],[2,3,4,5],[6,7,8,9],那么在我使用kmeans计算质心向量之后,它
我正在用sklearn做一些分类实验。在实验过程中,我构建了csr_矩阵对象来存储我的数据,并对这些对象使用了LogisticRegression分类器,得到了一些结果。 我使用dump_svmlight_文件转储数据,使用joblib转储模型。 但是当我使用load_svmlight_文件和模型加载数据时,我得到了(非常)不同的结果 我意识到,如果我将基于零的参数设置为False,那么我将检索原始结果。这个参数的具体效果是什么?修改此参数的值通常会有不同的结果吗? 基于零:布尔或“自动”,可选
不过,这是否会比原来的RandomForestClassifier.predict方法(它是多线程的,使用numpy操作,可能有一个快速的BLAS库)更快,还有待观察。我不明白你所说的“转换”是什么意思RandomForestClassifier是,而不是编译扩展名。如果你想要一个快速编译的版本,你需要重新编写它。一种选择是使用它可以将Python的超集转换为C,这样就可以对其进行静态编译。不过,没有零努力的解决方案-您需要添加自己的静态类型声明等,以便看到任何明显的加速。是的,我同意,但是创建
我想在Android应用程序中使用我的Tensorflow算法。Tensorflow Android示例首先下载包含模型定义和权重的GraphDef(在*.pb文件中)。现在,这应该来自我的Scikit流算法(Tensorflow的一部分) 乍一看,您只需说classifier.save('model/')就很容易了,但保存到该文件夹中的文件不是*.ckpt、*.def,当然也不是*.pb。相反,您必须处理一个*.pbtxt和一个检查点(无结尾)文件 我在那里呆了很久了。下面是导出某些内容的代码
培训后,因为它花费了很多时间,有没有办法让我继续培训并在scikitlearn中使用nusvc()和nearestneighbor()添加样本?对于SVM,您可能能够使用该类的功能。为此,您需要使用该函数。您始终可以使用pickle或skp保存整个分类器。这允许您重新加载整个对象。当然,你可以从给定的重量开始,用温水再次训练。但是,如果基础估计器还没有准备好(添加新的数据),则可能存在局限性。一个可能的示例:新数据包含一个或多个目标标签。这是有问题的。如果类的数量相同,是否有一种更简单的方法可以
根据随机性,状态为 随机_状态:int或RandomState实例或None(默认)伪 随机数发生器种子控制。如果没有,请使用numpy.random 辛格尔顿。请注意,不同的初始化可能会导致 成本函数的不同局部极小值 哪个州正在播种?这将如何影响tsne的实施?tsne文件中未提及此参数: 更新1: 当然,这有助于解释为什么在sklearn中使用随机状态,但它并没有阐明在sklearn tsne算法实现中如何使用随机状态。我评论的帖子中对随机状态的使用做了很好的解释。 对于TSNE的这种特殊情
我正在使用scikit学习“排列测试分数”方法来评估我的估计器性能显著性。不幸的是,我无法从scikit学习文档中理解该方法是否对数据实现了任何缩放。我使用标准化工具对数据进行标准化,将训练集标准化应用于测试集 函数本身不应用任何缩放。 以下是文档中的一个示例: import numpy as np import matplotlib.pyplot as plt from sklearn.svm import SVC from sklearn.model_selection import Str
我对sklearn的聚类算法中的cosine度量是如何工作的感到困惑。 例如,DBSCAN有一个参数eps,它指定了聚类时的最大距离。然而,更大的余弦相似性意味着两个向量更接近,这与我们的距离概念正好相反 我发现在成对度量中存在cosine\u相似性和cosine\u距离(只是1-cos()),当我们指定度量为cosine时,我们使用cosine\u相似性 那么,在进行聚类时,DBSCAN如何比较余弦_相似度和@parameps来确定两个向量是否具有相同的标签 一个例子 import numpy
我正在使用GradientBoostingRegressionor处理一个时间序列预测问题,我认为我看到了明显的过度拟合,这可以从训练的RMSE明显优于预测的RMSE中得到证明。为了检验这一点,我尝试使用sklearn.model\u selection.cross\u validate,但在理解结果时遇到了问题 首先:我通过拟合所有训练数据来计算RMSE,然后使用拟合模型“预测”训练数据输出,并将其与训练输出(与我用于拟合的数据相同)进行比较。我观察到的RMSE与预测值的数量级相同,更重要的是
运行上述代码时,我遇到一个错误: from sklearn import datasets `Traceback`(最近一次呼叫最后一次): 文件“perceptron_ml.py”,第2行,在 从sklearn导入数据集 文件“/home/memory/.local/lib/python3.6/site packages/sklearn/datasets/_init__.py”,第22行,在 从.\u二十个新闻组导入获取\u二十个新闻组 文件“/home/memory/.local/lib/
GPy回归(GPy)和高斯过程回归(scikit学习)都使用相似的初始值和相同的优化器(lbfgs)。为什么结果差异很大 #!pip -qq install pods #!pip -qq install GPy from sklearn.gaussian_process import GaussianProcessRegressor from sklearn.gaussian_process.kernels import RBF, ConstantKernel as C from sklearn
我使用随机森林与scikit学习。 RF与数据拟合过度,预测结果不佳 过盈不取决于RF的参数: NBtree,Depth_Tree 过拟合发生在许多不同的参数上(通过网格搜索进行测试) 补救措施: 我调整了初始数据/对一些结果进行了下采样 为了影响配件(手动预处理噪音样本) 这个卡洛斯山非常消耗, 只是想知道是否还有别的办法 随机森林上的交叉验证?(即不是超参数优化) 在scikit learn中编辑的与任何分类器的交叉验证非常简单: from sklearn.ensemble import R
LightGBM和XGBoost模型可以转储到包含人类可读模型结构的纯文本文件中。最后,它们只是树的合奏 是否有库可以将这些转储模型加载到scikit学习框架,例如,使用相同的拆分和值构建sklearn集成 这可能非常方便,因为sklearn API附带了一些不错的库,例如..对于XGBoost,您可以使用解析xgb模型显示功能交互和排名的。安装时请使用: pip install xgbfir 对于lightGBM,我不知道有什么好的选择。Microsoft的lightGBM库允许PMML导出
使用sklearn查找回忆的价值时,我有点困难。 我正在使用Keras2.0解决一个二进制分类问题。为了找到回忆,我需要依赖sklearn度量,但我得到了一个值错误。以下是我的示例代码和错误堆栈: >> print(y_true[:5]) >> [[ 0. 1.] [ 0. 1.] [ 1. 0.] [ 0. 1.] [ 1. 0.]] >> y_scores = model.predict(x_val) >>
我试图运行一个隐马尔可夫模型,但是拟合函数不能正常工作 代码: 我收到以下错误消息: TypeError Traceback (most recent call last) <ipython-input-16-cdfada1be202> in <module>() 8 lengths = [len(X1), len(X2)] 9 ---> 10 hmm.GaussianHMM(
我有一个大小为42.9GB的大型数据集,存储为numpy的压缩npz格式。加载时的数据已被删除 n_样本,n_特征=40676226421 我需要对其进行降维,并因此使用sklearn的PCA方法。通常,我表演 from sklearn.decomposition import IncrementalPCA, PCA pca = PCA(n_components=200).fit(x) x_transformed = pca.transform(x) 由于数据无法加载到内存中,因此我使用增量
导入eli5时,出现以下错误: 157 158 def get_cache_token(): --> 159 return ABCMeta._abc_invalidation_counter 160 161 AttributeError:类型对象“ABCMeta”没有属性“\u abc\u invalization\u counter” 这是关于什么的?关于您的信息,目前python 3.7不支持eli5,问题的最快解决方案是切换到不同版本的
我试图从cross_validation.cross_val_分数中生成R平方值,约为0.35,然后我将模型应用到同一列车数据集中,并使用“r2_分数”函数生成R平方值,约为0.87。我想知道我得到了两个如此不同的结果。任何帮助都将不胜感激。代码附在下面 num_folds = 2 num_instances = len(X_train) scoring ='r2' models = [] models.append(('RF', RandomForestRegressor())) resul
我曾经使用VotingClassifier(来自sklearn),如下所示。现在我想找到回归模型的集合 model= VotingClassifier(estimators=[('svmc', best_SVMC), ('rfc', best_RFC), ('xgbc', best_XGBC),('mlpc', best_MLPC)], voting='soft', n_jobs=2) 你能推荐回归的集合模型吗 注: svmc=SVC() rfc=RandomforestClassifier(
我正试图运行一个用于独立语音识别的python3代码,在那里我得到了一个关于使用的弃用警告: from sklearn.cross_validation import StratifiedShuffleSplit 为了删除此警告,我刚从sklearn.model\u selection导入了StratifiedShuffleSplit,而不是sklearn.cross\u validation,运行代码后,我得到: TypeError:“StratifiedShuffleSplit”对象不可编
有两种算法可以构建决策树,如CART(分类和回归树)、ID3(迭代二分法3)等 scikit学习默认使用哪种决策树算法 当我看一些决策树python脚本时,它神奇地使用fit和predict函数生成结果 scikit learn是否能够根据数据巧妙地选择最佳决策树算法?它不会自动这样做 如果我们查看页面,我们可以看到默认标准是基尼杂质 还有一种选择是使用熵来代替标准 请注意,CART使用基尼杂质,ID3使用熵作为分割标准。他们实际上使用CART,但分割标准是基尼和熵。你可以寻找引擎盖下发生的事情
我想用LightGBM算法对多类多标签分类,但我在训练过程中遇到了一个问题,因为我不是输入列表。 实际行的长度为10000 dataset = pd.read_csv('Data.csv') X = dataset.iloc[:,np.r_[0:6, 7:27]].values y = dataset.iloc[:,np.r_[6]].values x_train, x_test, y_train, y_test = train_test_split(X, y,test_size = 0.2
作为学校DSL和代码生成作业的一部分,我必须将以下用Python/Scikit编写的程序翻译成R语言(本练习的主题是假设的机器学习DSL) 因为我在机器学习方面是一个完美的新手,尤其是在R方面,我做不到 有人能帮我吗?很抱歉回答晚了,可能你已经完成了学校作业。当然,我们不能只为你做这件事,你可能必须自己去弄清楚。而且,我不知道你到底需要做什么。但有些建议是: 读取csv文件 数据我们很乐意帮助您,但不在家庭作业方面。学习任何新事物都有一个简单的公式尝试->失败学习->改正。现在,首先了解这段代码
我假设一些标记的数据是未标记的,这些标记被设置为-1 在scikit学习中使用标签传播可以指定标签 labelpropagation.fit(x_feature,y_class) with X_feature (Color, hog, gist, sift Feature). 问题: 我的理解正确吗?是的,在sci工具包中,未标记的数据用标签-1表示。这可能涉及: 使用实际未标记数据(在半监督学习的情况下) 使用数据集的test/dev集作为未标记的数据。(用于验证模型性能) 在任何一种情况
我正在对文本数据(大约4000篇新闻文章)进行主题建模。为此,我使用Sklearn LDA模型。在执行此操作时,我使用GridSearchCV选择最佳模型。然而,在几乎所有情况下,GridSearchCV都建议以最少的主题作为最佳模型 例1: # Define Search Param search_params = {'n_components': [5, 7, 10, 12, 15, 18, 20], 'learning_decay': [.5, .7, .9]} # Init the M
我的代码如下所示 from sklearn.ensemble import VotingRegressor from sklearn.svm import SVC estimators=[('Randomregressor',RandomForestRegressor),('svc',SVC),('regressor_tree',DecisionTreeRegressor)] ensemble=VotingRegressor(estimators=estimators,n_jobs=-1).
我正在尝试使用带异常的迁移学习为7个类制作图像分类器。现在我正试图实现交叉验证。我知道KFold回报指数,但如何获得数据值 from sklearn.model_selection import KFold import numpy as np sample = np.array(['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I']) kf = KFold(n_splits=3, shuffle=True) for train_index, test_i
这是scikit学习中的kmeans算法类 class sklearn.cluster.KMeans(n_clusters=8, init='k-means++', n_init=10, max_iter=300, tol=0.0001, precompute_distances=True, verbose=0, random_state=None, copy_x=True, n_jobs=1)¶ 有兴趣知道“verbose”是什么意思,在输出中,它显示惯性值,也不确定这意味着什么。他们没有在
我试图阅读有关sklearn的MeanShift的文档,看到了以下公式: 什么是K函数?我在那页上找不到 K是高斯核。你可以看看MeanShift。另外,如果您想要一个开源框架()
我在sklearn中运行了一个随机森林回归模型,并将我的决策树(n_估计器=50)的输出保存到50个.dot文件中 现在我想保存它们,以便将它们视为实际的树 我正在尝试: 导入pydotplus dot\u data=r'F:\Sheyenne\Random\u Forest\my\u tree0.dot' graph=pydotplus.graph_from_dot_数据(dot_数据) graph.write_pdf(r'F:\Sheyenne\Random_Forest\my_tree0.
我是python新手,我正在尝试学习如何使用Sklearn处理我自己的数据。我基本上只是从我的ARIMA模型和离散小波变换的近似值中得到残差,然后尝试拟合它以得到更好的模型。但是,我收到了以下错误消息: File "C:\Users\Guilherme\Anaconda3\lib\site-packages\sklearn\neural_network\multilayer_perceptron.py", line 330, in _fit X, y = self._validate_i
给定一个包含n样本、m特征的数据集,并使用[sklearn.neural\u network.mlpclassizer][1],如何设置隐藏层大小以m输入开始?例如,我知道如果隐藏层大小=(10,10)这意味着10个神经元(即单位)中各有2个隐藏层,但我不知道这是否也意味着10个输入 谢谢您此分类器/回归器在调用fit时会自动执行 这可以在它的代码中看到 摘录: n_样本,n_特征=X.shape #确保y是2D 如果y.ndim==1: y=y。重塑(-1,1)) self.n_输出u=y.s
我加载了一个word2vec格式的文件,我想计算向量之间的相似性,但我不知道这个问题意味着什么 from gensim.models import Word2Vec from sklearn.metrics.pairwise import cosine_similarity from gensim.models import KeyedVectors import numpy as np model = KeyedVectors.load_word2vec_format('it-vectors
如何在随机森林回归器的后续回归任务中找到p值和F统计 rf=RandomForestRegressor(n_估计器=100,随机状态=76) 结果=交叉验证分数(rf、X、y、cv=交叉验证,n\u作业=-1,评分=“负均方误差”) rms=sqrt(result.mean()*-1) p值和F统计数据可能存在重复,具体是什么?不是重复。我想你应该看看重采样(例如自举)来从模型中数值估计p值。
我正在使用partial\u fit对MLPClassizer进行增量训练,以实现多类分类。这是我的部分代码。 ` 如果运行上述代码,错误如下: ValueError: warm_start can only be used where `y` has the same classes as in the previous call to fit. Previously got [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2
这个答案似乎正是我所需要的,但对于回归器而不是分类器来说。 我对link中sascha提供的代码做了非常小的修改,如下所示。我认为这将是相当简单的使用我的MLPregestor。。。但我收到一条错误消息,我不知道如何修复。非常感谢您的帮助: import numpy as np import matplotlib.pyplot as plt from sklearn.neural_network import MLPRegressor estimator_reg = MLPRegresso
题目说明了一切:我怎样才能使一袋单词模型变小?我使用了一个随机森林和一个单词包功能集。我的型号的大小达到30 GB,我确信功能集中的大多数单词对整体性能没有影响 如何在不损失太多性能的情况下缩小一大袋单词模型?如果你不想改变神经网络的结构,而只是想减少内存占用,可以做的一个调整是减少CountVectorizer注释的术语。 从scikit学习文档中,我们至少有三个用于减少词汇表大小的参数 max_df:浮动范围为[0.0,1.0]或int,默认值为1.0 在构建词汇表时,忽略文档频率严格高于给
我有一个如下的数据集 building_id meter meter_reading primary_use square_feet air_temperature dew_temperature sea_level_pressure wind_direction wind_speed hour day weekend month 0 0 0 NaN 0 7432 25.0 20.0 1019.7 0.0 0.0 0 1
我试图理解回归树(以及它们的集成对应物)的特征重要性是如何计算的。我正在查看/sklearn/tree/\u tree.pyx中函数compute\u feature\u importances的源代码,无法完全遵循逻辑,并且没有参考 抱歉,这可能是一个非常基本的问题,但我找不到一个很好的参考文献,我希望有人能给我指出正确的方向,或者快速解释代码,以便我继续挖掘 谢谢参考资料在文档中,而不是代码中: `feature_importances_` : array of shape = [n_fea
我正在使用scikit learn Random Forest来适应训练数据(~30mb),我的笔记本电脑一直崩溃,应用程序内存不足。测试数据比训练数据大几倍。使用Macbook Air 2GHz 8GB内存 有哪些方法可以解决这个问题 rf = RandomForestClassifier(n_estimators = 100, n_jobs=4) print "20 Fold CV Score: ", np.mean(cross_validation.cross_val_score(rf,
我正在使用scikit中的一类SVM学习对一个具有10个停车位的停车应用程序进行一些预测。我使用的一个功能示例是:小时数、停在插槽1中的汽车数量、停在插槽2中的汽车数量、…、停在插槽10中的汽车数量。 然后,对于SVM,我想知道的是,系统是否有问题,在全球范围内,插槽接收的车辆数量是否不正常。 因此,“小时”这一功能非常重要,因为一天中的某些时间,插槽接收的车辆通常比其他时间多。所以,在几乎没有车的情况下,4小时是正常的,而在18小时是不正常的 我想为这个问题训练一个单类SVM。然而,由于在大多
您好,我正在与SKL合作学习执行分类器,我有以下标签分布: label : 0 frecuency : 119 label : 1 frecuency : 1615 label : 2 frecuency : 197 label : 3 frecuency : 70 label : 4 frecuency : 203 label : 5 frecuency : 137 label : 6 frecuency : 18 label : 7 frecuency : 142 label
我正在做一项分类任务——根据推特用户的推特对其进行地理定位 我使用sklearn的SVC、NuSVC和LinearSVC以及bag of words模型做了很多实验。准确度分别为35%、60%和80%。SVC和LinearSVC之间的差异是令人震惊的两倍以上 我不太清楚为什么会发生这种情况。这可能是因为过度装配或不足装配?为什么分类器之间存在如此大的差异?一般来说,非线性核比线性核更适合建模更复杂的函数,但这取决于数据、选择的超参数(例如惩罚和核)以及您如何评估结果 LinearSVC 与SVC
我正在使用sklearn crfsuite执行NER。我试图将一个实体提到一个实体提到一个实体的案例报告为真阳性(预测和预期正确,即使没有实体)、假阳性(预测说是,预期不是)或假阴性(预测说不是,预期是) 除了基于标记/令牌的摘要统计信息外,我看不到如何获得其他任何性能 我可以用一种不同的方式对实体提及进行分组,例如:正确的、不正确的、部分的、缺失的、虚假的。我可以自己编写一大堆代码来实现这一点(可能是必须的),但是必须有一个调用来获取这些信息吗 以下是为获取摘要统计信息而进行的一些调用: fr