- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是“机器学习”的新手,并尝试实现 this question但我不清楚。我已经诱惑了两个月了,所以请帮助我解决我的错误。
实际上,我正在尝试:
在“TfidfVectorizer”的帮助下,对“TRAIN_features”和“TEST_features”进行“预处理”后强>我矢量化了我的两个特征。之后我再次计算了两个特征的形状和大小,即
vectorizer = TfidfVectorizer(min_df=7, max_df=0.8, sublinear_tf = True, use_idf=True)
processed_TRAIN_features = vectorizer.fit_transform(processed_TRAIN_features)
“processed_TRAIN_features”大小变为1032665,“shape”变为(98962, 9434)
vectorizer1 = TfidfVectorizer(min_df=7, max_df=0.8, sublinear_tf = True, use_idf=True)
processed_TEST_features = vectorizer1.fit_transform(processed_TEST_features)
“processed_TEST_features”大小变为1457961,“shape”变为(98962, 10782)
我知道何时在processed_TRAIN_features上“训练” svm 分类器以及何时“预测”“processed_TEST_features” strong>使用相同的分类器,会产生错误,因为两个特征的“形状”和“大小”变得不同。
我认为,这个问题的唯一解决方案是“ reshape ”稀疏矩阵(numpy.float64)processed_TEST_features或processed_TRAIN_features ...我认为只有当其大小小于“processed_TEST_features”时才可能 reshape 为“processed_TRAIN_features”,或者还有其他方法可以实现我的上述观点(1,2 )。我无法实现this question关于我的问题,仍在寻找它将如何变得等于“processed_TEST_features”w.r.t形状和大小。
如果有人可以帮我做这件事,请...提前致谢。
完整代码如下:
DataPath2 = ".../train.csv"
TRAIN_dataset = pd.read_csv(DataPath2)
DataPath1 = "..../completeDATAset.csv"
TEST_dataset = pd.read_csv(DataPath1)
TRAIN_features = TRAIN_dataset.iloc[:, 1 ].values
TRAIN_labels = TRAIN_dataset.iloc[:,0].values
TEST_features = TEST_dataset.iloc[:, 1 ].values
TEST_labeels = TEST_dataset.iloc[:,0].values
lab_enc = preprocessing.LabelEncoder()
TEST_labels = lab_enc.fit_transform(TEST_labeels)
processed_TRAIN_features = []
for sentence in range(0, len(TRAIN_features)):
# Remove all the special characters
processed_feature = re.sub(r'\W', ' ', str(TRAIN_features[sentence]))
# remove all single characters
processed_feature= re.sub(r'\s+[a-zA-Z]\s+', ' ', processed_feature)
#remove special symbols
processed_feature = re.sub(r'\s+[xe2 x80 xa6]\s+', ' ', processed_feature)
# remove special symbols
processed_feature = re.sub(r'\s+[xe2 x80 x98]\s+', ' ', processed_feature)
# remove special symbols
processed_feature = re.sub(r'\s+[xe2 x80 x99]\s+', ' ', processed_feature)
# Remove single characters from the start
processed_feature = re.sub(r'\^[a-zA-Z]\s+', ' ', processed_feature)
# Substituting multiple spaces with single space
processed_feature = re.sub(r'\s+', ' ', processed_feature, flags=re.I)
#remove links
processed_feature = re.sub(r"http\S+", "", processed_feature)
# Removing prefixed 'b'
processed_feature = re.sub(r'^b\s+', '', processed_feature)
#removing rt
processed_feature = re.sub(r'^rt\s+', '', processed_feature)
# Converting to Lowercase
processed_feature = processed_feature.lower()
processed_TRAIN_features.append(processed_feature)
vectorizer = TfidfVectorizer(min_df=7, max_df=0.8, sublinear_tf = True, use_idf=True)
processed_TRAIN_features = vectorizer.fit_transform(processed_TRAIN_features)
processed_TEST_features = []
for sentence in range(0, len(TEST_features)):
# Remove all the special characters
processed_feature1 = re.sub(r'\W', ' ', str(TEST_features[sentence]))
# remove all single characters
processed_feature1 = re.sub(r'\s+[a-zA-Z]\s+', ' ', processed_feature1)
#remove special symbols
processed_feature1 = re.sub(r'\s+[xe2 x80 xa6]\s+', ' ', processed_feature1)
# remove special symbols
processed_feature1 = re.sub(r'\s+[xe2 x80 x98]\s+', ' ', processed_feature1)
# remove special symbols
processed_feature1 = re.sub(r'\s+[xe2 x80 x99]\s+', ' ', processed_feature1)
# Remove single characters from the start
processed_feature1 = re.sub(r'\^[a-zA-Z]\s+', ' ', processed_feature1)
# Substituting multiple spaces with single space
processed_feature1 = re.sub(r'\s+', ' ', processed_feature1, flags=re.I)
#remove links
processed_feature1 = re.sub(r"http\S+", "", processed_feature1)
# Removing prefixed 'b'
processed_feature1 = re.sub(r'^b\s+', '', processed_feature1)
#removing rt
processed_feature1 = re.sub(r'^rt\s+', '', processed_feature1)
# Converting to Lowercase
processed_feature1 = processed_feature1.lower()
processed_TEST_features.append(processed_feature1)
vectorizer1 = TfidfVectorizer(min_df=7, max_df=0.8, sublinear_tf = True, use_idf=True)
processed_TEST_features = vectorizer1.fit_transform(processed_TEST_features)
X_train_data, X_test_data, y_train_data, y_test_data = train_test_split(processed_TRAIN_features, TRAIN_labels, test_size=0.3, random_state=0)
text_classifier = svm.SVC(kernel='linear', class_weight="balanced" ,probability=True ,C=1 , random_state=0)
text_classifier.fit(X_train_data, y_train_data)
text_classifier.predict(processed_TEST_features)
最佳答案
processed_TRAIN_features = csr_matrix((processed_TRAIN_features),shape=(new row length,new column length))
关于python - 机器学习: Predict second dataset on behalf of first dataset trained classifier,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59508927/
我想将 Bagging 方法生成的分类器直接复制到 EnsembleSelection 分类器,而不将其复制到我的代码下面的文件中: data.setClassIndex(datamoufi.numA
先运行标准缩放器再运行分类器是否会产生与使用流水线相同的结果? 您好,我有一个分类问题并尝试使用 scikit learn 的 StandardScaler() 缩放 X 变量。我看到这样做有两种选择
本文整理了Java中weka.classifiers.rules.ZeroR类的一些代码示例,展示了ZeroR类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等
这个问题是同一线程的延续 here .以下是本书中的一个最小工作示例: Wehrens R. Chemometrics with R multivariate data analysis in the
您能否帮助了解与 Haar 分类器培训相关的几点: 1)正图像应该只包含训练对象还是可以包含其他一些对象?就像我想识别一些交通标志一样,正面图像应该只包含交通标志还是也可以包含高速公路? 2)创建样本
首先,我想通知这里有人问了同样的问题 grails plugin dependencies with classifiers但他们没有答案。 我正在尝试将 jar "json-lib.jar"及其依赖
我正在创建一个手势识别器,它使用前馈神经网络对手势进行分类。 问题是我希望实时识别手势。 我从过去 60 个记录的帧中创建一个输入 vector ,如果用户做出了手势,则神经网络可以对输入进行分类,并
我在我的应用程序的几个模块中使用了 Guava 。我在 Tomcat 上部署这个应用程序,所以我在我的模块中使用了这个依赖项 com.google.guava guava 现在我需
我正在尝试创建一个 Haar 分类器来识别对象,但我似乎无法弄清楚每个阶段生成的结果表代表什么。 例如1 ===== TRAINING 1-stage ===== 例如2 ===== TRAININ
我是 Weka 的新人。我想使用Weka自训练模型。我在创建项目时导入了weka.jar。但我想知道如何解决这个问题?预先感谢您的帮助。 import java.io.File; import wek
我已经根据 IBM 的预配置分类器对图像进行了分类。 现在我尝试创建并使用我自己的分类器(称为“圣诞老人”)来识别圣诞老人的图像: VisualRecognition service = ne
我正在尝试使用 scikit-learn 构建一个简单的 SVM 文档分类器,我正在使用以下代码: import os import numpy as np import scipy.sparse a
我想编写一个函数,其中一个输入表示为NumPy数组。该函数应将矩阵分类为(I)一对一、(Ii)On、(Iii)两者(即可逆)或(Iv)两者都不是。它应该返回以字符串形式表示的分类(即“一对一”、“到”
我想编写一个函数,其中一个输入表示为NumPy数组。该函数应将矩阵分类为(I)一对一、(Ii)On、(Iii)两者(即可逆)或(Iv)两者都不是。它应该返回以字符串形式表示的分类(即“一对一”、“到”
本文整理了Java中weka.classifiers.rules.ZeroR.()方法的一些代码示例,展示了ZeroR.()的具体用法。这些代码示例主要来源于Github/Stackoverflow/
本文整理了Java中weka.classifiers.rules.ZeroR.buildClassifier()方法的一些代码示例,展示了ZeroR.buildClassifier()的具体用法。这些
本文整理了Java中weka.classifiers.rules.ZeroR.getCapabilities()方法的一些代码示例,展示了ZeroR.getCapabilities()的具体用法。这些
本文整理了Java中weka.classifiers.rules.ZeroR.distributionForInstance()方法的一些代码示例,展示了ZeroR.distributionForIn
本文整理了Java中weka.classifiers.rules.ZeroR.toString()方法的一些代码示例,展示了ZeroR.toString()的具体用法。这些代码示例主要来源于Githu
我下载 Resnet18 模型来训练模型。 当我输入时 model 显示 ResNet( (conv1): Conv2d(3, 64, kernel_size=(7, 7), stride=(2,
我是一名优秀的程序员,十分优秀!