Questions tagged «scikit-learn»

Scikit-learn是一个Python模块,包含用于机器学习,数据挖掘和数据分析的简单有效的工具。它基于NumPy,SciPy和matplotlib构建。它根据3条款BSD许可进行分发。

2
大型数据集的有效降维
我有一个具有〜1M行和〜500K稀疏特征的数据集。我想将维数减少到1K-5K密集特征的数量级。 sklearn.decomposition.PCA在稀疏数据上不起作用,我已经尝试过使用,sklearn.decomposition.TruncatedSVD但是很快就会遇到内存错误。在这种规模的有效尺寸缩减方面,我有哪些选择?

3
是否有适用于python的好的即用型语言模型?
我正在为一个应用程序制作原型,我需要一个语言模型来计算一些生成的句子的困惑度。 我可以随时使用经过训练的python语言模型吗?简单的东西 model = LanguageModel('en') p1 = model.perplexity('This is a well constructed sentence') p2 = model.perplexity('Bunny lamp robert junior pancake') assert p1 < p2 我看过一些框架,但找不到我想要的。我知道我可以使用类似: from nltk.model.ngram import NgramModel lm = NgramModel(3, brown.words(categories='news')) 这在Brown Corpus上使用了很好的图林概率分布,但是我正在一些大型数据集(例如1b单词数据集)上寻找精心设计的模型。我可以真正相信一般领域的结果(不仅是新闻)
11 python  nlp  language-model  r  statistics  linear-regression  machine-learning  classification  random-forest  xgboost  python  sampling  data-mining  orange  predictive-modeling  recommender-system  statistics  dimensionality-reduction  pca  machine-learning  python  deep-learning  keras  reinforcement-learning  neural-network  image-classification  r  dplyr  deep-learning  keras  tensorflow  lstm  dropout  machine-learning  sampling  categorical-data  data-imputation  machine-learning  deep-learning  machine-learning-model  dropout  deep-network  pandas  data-cleaning  data-science-model  aggregation  python  neural-network  reinforcement-learning  policy-gradients  r  dataframe  dataset  statistics  prediction  forecasting  r  k-means  python  scikit-learn  labels  python  orange  cloud-computing  machine-learning  neural-network  deep-learning  rnn  recurrent-neural-net  logistic-regression  missing-data  deep-learning  autoencoder  apache-hadoop  time-series  data  preprocessing  classification  predictive-modeling  time-series  machine-learning  python  feature-selection  autoencoder  deep-learning  keras  tensorflow  lstm  word-embeddings  predictive-modeling  prediction  machine-learning-model  machine-learning  classification  binary  theory  machine-learning  neural-network  time-series  lstm  rnn  neural-network  deep-learning  keras  tensorflow  convnet  computer-vision 

1
如何在图形结构化数据上使用Scikit-Learn标签传播?
作为研究的一部分,我对在图形上执行标签传播感兴趣。我对这两种方法特别感兴趣: 朱小金和邹斌·格哈拉玛尼。通过标签传播从标记和未标记的数据中学习。卡内基梅隆大学技术报告CMU-CALD-02-107,2002年http://pages.cs.wisc.edu/~jerryzhu/pub/CMU-CALD-02-107.pdf Dengyong Zhou,Olivier Bousquet,Thomas Navin Lal,Jason Weston,Bernhard Schoelkopf。在本地和全球范围内进行学习(2004)http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.115.3219 我看到scikit-learn提供了一个做到这一点的模型。但是,该模型应该应用于矢量结构化数据(即数据点)。 该模型使用内核从数据点构建亲和度矩阵,然后在所构建的矩阵上运行算法。我希望能够直接输入图的邻接矩阵来代替相似矩阵。 关于如何实现这一点的任何想法?还是您知道任何Python库都可以直接针对上述两种方法在图结构化数据上运行标签传播? 在此先感谢您的帮助!

3
哈希向量化器和tfidf向量化器有什么区别
我正在将文本文档的语料库转换为每个文档的单词向量。我已经尝试过使用TfidfVectorizer和HashingVectorizer 我了解a 不像a 那样HashingVectorizer考虑IDF分数TfidfVectorizer。我仍然使用a的原因HashingVectorizer是它在处理庞大数据集时具有的灵活性,如此处和此处所述。(我的原始数据集有3000万个文档) 目前,我正在处理45339个文档的样本,因此,我TfidfVectorizer也可以使用。当我在相同的45339文档上使用这两个矢量化器时,得到的矩阵是不同的。 hashing = HashingVectorizer() with LSM('corpus.db')) as corpus: hashing_matrix = hashing.fit_transform(corpus) print(hashing_matrix.shape) 哈希矩阵形状(45339,1048576) tfidf = TfidfVectorizer() with LSM('corpus.db')) as corpus: tfidf_matrix = tfidf.fit_transform(corpus) print(tfidf_matrix.shape) tfidf矩阵形状(45339,663307) 我想更好地理解a HashingVectorizer和a 之间的区别TfidfVectorizer,以及这些矩阵大小不同的原因-尤其是单词/术语的数量。

1
scikit-learn n_jobs参数有关CPU使用率和内存
在scikit-learn上的大多数估计器中n_jobs,fit/ predict方法中都有一个参数,用于使用来创建并行作业joblib。我注意到将其设置为-1仅创建1个Python进程并最大化内核,导致CPU使用率最高达到2500%。这与将其设置为大于1的正整数有很大的不同,后者会以〜100%的使用率创建多个Python进程。 设置它如何影响多CPU Linux服务器上的CPU和内核使用率?(例如,如果n_jobs=88个CPU完全锁定,还是这些CPU仍为某些其他任务/进程保留了一些内核?) 另外,MemoryError设置n_jobs=-1大型数据集时,我有时会得到提示。但是,单个Python进程的内存使用量通常徘徊在30%到40%之间。如何根据的值管理/复制数据和内存n_jobs?

3
最佳科学计算语言[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 似乎大多数语言都具有一定数量的科学计算库。 Python有 Scipy Rust 有 SciRust C++有几个包括ViennaCL和Armadillo Java具有Java Numerics和Colt其他几个 且不说像语言R和Julia明确的科学计算而设计。 有这么多种选择,您如何选择适合任务的最佳语言?另外,哪种语言的性能最高?Python并且R似乎在该领域具有最大的吸引力,但从逻辑上讲,编译语言似乎是一个更好的选择。会有什么表现胜过Fortran?此外编译语言往往有GPU加速,而解释性语言如R并Python没有。选择一种语言时应该考虑什么?哪些语言可以在效用和性能之间取得最佳平衡?还有我错过的具有重要科学计算资源的语言吗?
10 efficiency  statistics  tools  knowledge-base  machine-learning  neural-network  deep-learning  optimization  hyperparameter  machine-learning  time-series  categorical-data  logistic-regression  python  visualization  bigdata  efficiency  classification  binary  svm  random-forest  logistic-regression  data-mining  sql  experiments  bigdata  efficiency  performance  scalability  distributed  bigdata  nlp  statistics  education  knowledge-base  definitions  machine-learning  recommender-system  evaluation  efficiency  algorithms  parameter  efficiency  scalability  sql  statistics  visualization  knowledge-base  education  machine-learning  r  python  r  text-mining  sentiment-analysis  machine-learning  machine-learning  python  neural-network  statistics  reference-request  machine-learning  data-mining  python  classification  data-mining  bigdata  usecase  apache-hadoop  map-reduce  aws  education  feature-selection  machine-learning  machine-learning  sports  data-formats  hierarchical-data-format  bigdata  apache-hadoop  bigdata  apache-hadoop  python  visualization  knowledge-base  classification  confusion-matrix  accuracy  bigdata  apache-hadoop  bigdata  efficiency  apache-hadoop  distributed  machine-translation  nlp  metadata  data-cleaning  text-mining  python  pandas  machine-learning  python  pandas  scikit-learn  bigdata  machine-learning  databases  clustering  data-mining  recommender-system 

3
如何对24,000个类别的类别进行编码?
我目前正在研究基因组学的逻辑回归模型。我想作为协变量包括的输入字段之一是genes。大约有24,000个已知基因。在计算生物学中,这种程度的可变性具有许多功能,因此需要成千上万个样本。 如果我LabelEncoder()那些24K基因 然后OneHotEncoder()他们... 24,000列是否会使我的keras培训时间对于2.2 GHz四核i7 CPU不合理? 如果是这样,我可以采用其他方法进行编码吗? 我应该以某种方式尝试将模型的一部分专用于此功能吗? 这是否意味着我需要24K输入节点?

3
预测最佳通话时间
我有一个数据集,其中包括一组位于加利福尼亚不同城市的客户,呼叫每个客户的时间以及呼叫状态(如果客户接听电话则为True,如果客户未接听则为False)。 我必须找到合适的时间来拜访未来的客户,以便接听电话的可能性很高。那么,解决此问题的最佳策略是什么?我应该将小时数(0,1,2,... 23)归类为分类问题吗?还是应该将其视为时间是连续变量的回归任务?如何确保接听电话的可能性很高? 任何帮助,将不胜感激。如果您让我参考类似的问题,那也很好。 以下是数据的快照。

3
建立机器学习模型以根据环境数据预测农作物产量
我有一个数据集,其中包含一个农场10年(2005年-2014年)的温度,降水和大豆产量的数据。我想根据此数据预测2015年的收益。 请注意,该数据集具有温度和降水量的每日值,但每年只有1个值,因为农作物的收获是在农作物生长季节结束时进行的。 我想建立一个回归模型或其他基于机器学习的模型来预测2015年的产量,该模型基于回归模型/其他模型,该模型是通过研究前几年的产量,温度和降水之间的关系得出的。 我熟悉使用scikit-learn进行机器学习。但是,不确定如何表示此问题。这里最棘手的部分是温度和降水是每天的,但产量仅为每年1个值。 我该如何处理?

2
scikit分类器需要多少时间进行分类?
我计划使用scikit线性支持向量机(SVM)分类器对包含100万个带标签文档的语料库进行文本分类。我打算做的是,当用户输入某个关键字时,分类器将首先将其分类为一个类别,然后在该类别目录的文档中进行后续的信息检索查询。我有几个问题: 如何确认分类不会花费太多时间?我希望用户不必花时间等待分类完成才能获得更好的结果。 使用适用于网站/ Web应用程序的Python的scikit库适合吗? 有谁知道亚马逊或翻车如何对用户查询进行分类,或者他们使用完全不同的逻辑?

1
数据不平衡导致多类数据集分类错误
我正在研究文本分类,这里有39个类别/类和850万条记录。(未来的数据和类别将会增加)。 我的数据的结构或格式如下。 ---------------------------------------------------------------------------------------- | product_title | Key_value_pairs | taxonomy_id | ---------------------------------------------------------------------------------------- Samsung S7 Edge | Color:black,Display Size:5.5 inch,Internal | 211 Storage:128 GB, RAM:4 GB,Primary Camera:12 MP Case cover Honor 8 | Color:transparent,Height:15 mm,width:22 mm | 212 Ruggers Men's T-Shirt | Size:L,ideal for:men,fit:regular, | 111 sleeve:half sleeve Optimum Nutrition Gold | …

4
在功能重要性的上下文中解释决策树
我试图了解如何完全理解使用sklearn构建的决策树分类模型的决策过程。我要看的2个主要方面是树的graphviz表示形式和功能重要性列表。我不了解的是如何在树的上下文中确定功能的重要性。例如,这是我的功能重要性列表: 功能排名:1. FeatureA(0.300237) FeatureB(0.166800) FeatureC(0.092472) 精选(0.075009) FeatureE(0.068310) FeatureF(0.067118) FeatureG(0.066510) FeatureH(0.043502) FeatureI(0.040281) FeatureJ(0.039006) FeatureK(0.032618) FeatureL(0.008136) FeatureM(0.000000) 但是,当我查看树的顶部时,它看起来像这样: 实际上,某些排名为“最重要”的要素要到树下很远时才会出现,而树的顶部是FeatureJ,这是排名最低的要素之一。我天真的假设是,最重要的功能将排在树的顶部附近,以产生最大的影响。如果那是不正确的,那么什么使功能“重要”?

3
从Scikit-Learn中的Random Forest Regressor导出权重(公式)
我使用Scikit Learn in Python(Random Forest Regressor)训练了一个预测模型,我想以某种方式提取每个功能的权重,以创建一个用于手动预测的excel工具。 我发现的唯一东西是,model.feature_importances_但无济于事。 有什么办法可以实现? def performRandomForest(X_train, y_train, X_test, y_test): '''Perform Random Forest Regression''' from sklearn.ensemble import RandomForestRegressor model = RandomForestRegressor() model.fit( X_train , y_train ) #make predictions expected = y_test predicted = model.predict( X_test ) #summarize the fit of the model mse = np.mean(( predicted - …

1
支持向量机的功能选择
我的问题是三方面的 在“内核化”支持向量机的上下文中 是否需要进行可变/特征选择-特别是因为我们将参数C正则化以防止过度拟合,并且将内核引入SVM的主要动机是增加问题的维度,在这种情况下,通过参数缩减来减小维度似乎违反直觉 如果第一个问题的答案为“否”,那么在什么条件下应记住的答案会发生变化? 在python的scikit-learn库中是否尝试过一些好的方法来减少SVM的功能-我尝试了SelectFpr方法,正在寻找有不同方法经验的人。

2
是否存在与降维相反的方法?
我是机器学习领域的新手,但是我在信号处理方面做得很出色。请让我知道这个问题是否贴错标签。 我有至少由三个变量定义的二维数据,其高度非线性的建模方式太复杂而无法模拟。 在使用PCA和ICA之类的方法(来自python库Scikit-Learn)中从数据中提取两个主要成分方面,我取得了不同程度的成功,但似乎这些方法(或至少这些方法的实现)受到限制从数据中提取尽可能多的分量,例如,从2D点云中提取2个分量。 在绘制数据时,训练有素的眼睛清楚地看到存在三种不同的线性趋势,这三种色线显示了方向。 使用PCA时,主组件与一条色线对齐,另一条与色线对齐,如预期的那样。使用ICA时,第一个组件与蓝线对齐,第二个组件在红色和绿色组件之间。我正在寻找一种可以重现信号中所有三个成分的工具。 编辑,其他信息:我在这里工作在较大相位平面的一小部分中。在这个很小的子集中,每个输入变量在平面上都会产生线性变化,但是这种变化的方向和幅度是非线性的,并且取决于我正在工作的较大平面上的确切位置。在某些地方,其中两个变量可以退化:它们在同一方向上产生变化。例如,假设模型取决于X,Y和Z。变量X的变化将产生沿蓝线的变化;Y引起沿绿线的变化;Z,沿着红色的。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.