Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java weka中的字符串数组属性_Java_String_Classification_Weka_Arff - Fatal编程技术网

Java weka中的字符串数组属性

Java weka中的字符串数组属性,java,string,classification,weka,arff,Java,String,Classification,Weka,Arff,我需要一个weka训练文件(arff)来拥有一个名称(字符串)和一个与该名称关联的字符串数组,这样当我在任何文本上运行该名称时,分类器就会将该名称与这些字符串关联起来。对于这个任务,我如何在weka中创建一个字符串数组属性?或者有没有其他方法可以做到这一点 (我正在使用朴素贝叶斯分类器) 例如: 迪皮卡·沙阿,贪婪的读者,有趣,漂亮 因此,如果我有一个句子,上面给出的任何一个字符串是关于Deepika Shah的,它应该将这个句子归类为关于Deepika Shah的 编辑: 我需要使用句子中的单

我需要一个weka训练文件(arff)来拥有一个名称(字符串)和一个与该名称关联的字符串数组,这样当我在任何文本上运行该名称时,分类器就会将该名称与这些字符串关联起来。对于这个任务,我如何在weka中创建一个字符串数组属性?或者有没有其他方法可以做到这一点

(我正在使用朴素贝叶斯分类器)

例如: 迪皮卡·沙阿,贪婪的读者,有趣,漂亮

因此,如果我有一个句子,上面给出的任何一个字符串是关于Deepika Shah的,它应该将这个句子归类为关于Deepika Shah的

编辑:
我需要使用句子中的单词和短语将一个句子归类为关于一个名字的句子。因此,我给出了一组与名称关联的字符串,以及它们与什么名称关联。量词应该从句子中找到类。或者,在我从句子中提取特征后(假设我已提取特征)。

您的arff文件需要采用以下格式:

@Relation testRelation

@attribute firstAtr string
@attribute secondAtr string
@attribute thirdAtr string
@attribute yourClass {Deepika Shah, secondClass, ...other classes listed here}

@data
"Voracious reader","funny"," pretty",Deepika Shah

...more data here
然后可以在weka中导入arff文件

现在需要将字符串值转换为数字。为此,您必须使用位于“预处理”选项卡的“过滤器”部分中的
weka->unsupervised->attribute->StringToWordVector
过滤器。 您可以单击过滤器来调整参数,如术语表示(tf、tf-idf)、停止字、词干分析器算法、n-grams等。 然后单击应用

完成此过程后,您可以进入“分类”选项卡并继续分类。您可以选择您的分类器,就可以开始了

注意:您需要选择标称类<代码>(Nom)yourClass(位于测试选项下)才能单击开始按钮

注2:如果你的sting属性是固定值,比如搞笑、悲伤、中性等,你可以使用标称属性而不是字符串



p、 这里有一个很好的例子,包含了以上所有内容:

您的arff文件需要采用以下格式:

@Relation testRelation

@attribute firstAtr string
@attribute secondAtr string
@attribute thirdAtr string
@attribute yourClass {Deepika Shah, secondClass, ...other classes listed here}

@data
"Voracious reader","funny"," pretty",Deepika Shah

...more data here
然后可以在weka中导入arff文件

现在需要将字符串值转换为数字。为此,您必须使用位于“预处理”选项卡的“过滤器”部分中的
weka->unsupervised->attribute->StringToWordVector
过滤器。 您可以单击过滤器来调整参数,如术语表示(tf、tf-idf)、停止字、词干分析器算法、n-grams等。 然后单击应用

完成此过程后,您可以进入“分类”选项卡并继续分类。您可以选择您的分类器,就可以开始了

注意:您需要选择标称类<代码>(Nom)yourClass(位于测试选项下)才能单击开始按钮

注2:如果你的sting属性是固定值,比如搞笑、悲伤、中性等,你可以使用标称属性而不是字符串




p、 这里有一个很好的例子,包含了以上所有内容:

那么您的名字就是您想要为字符串数组预测的类吗?请您至少提供一个示例,以便我们了解清楚。是的,名称就是类。然后只需在字符串数组上使用StringToOrdVector筛选器(我假设您的字符串数组是一个单词数组,如say“you are Good guy”)”。在StringToWordvector类中,您只需将字符串数组(由一个或多个单词组成的句子)转换为N-gram,您可以通过标记器类指定N的任何值。您需要将字符串数组指定为arff文件的字符串属性。在arff文件的引号中包含它的值(“你是个好人”)。如果您不能理解此评论,请告诉我,我将在回答部分提供详细答案。是的,我不太理解您的回答。另外,我的字符串数组是示例中“贪婪的读者”、“有趣的”、“漂亮的”部分,Deepika Shah是类。这真的是一项分类任务吗?类属性有多少个值?请您用培训和测试集的详细信息详细解释一下您的问题。那么您的名字是您想要为字符串数组预测的类吗?请您至少提供一个示例,以便我们了解清楚。是的,名称就是类。然后只需在字符串数组上使用StringToOrdVector筛选器(我假设您的字符串数组是一个单词数组,如say“you are Good guy”)”。在StringToWordvector类中,您只需将字符串数组(由一个或多个单词组成的句子)转换为N-gram,您可以通过标记器类指定N的任何值。您需要将字符串数组指定为arff文件的字符串属性。在arff文件的引号中包含它的值(“你是个好人”)。如果您不能理解此评论,请告诉我,我将在回答部分提供详细答案。是的,我不太理解您的回答。另外,我的字符串数组是示例中“贪婪的读者”、“有趣的”、“漂亮的”部分,Deepika Shah是类。这真的是一项分类任务吗?类属性有多少个值?请您用培训和测试集的详细信息详细解释您的问题。我的问题是每个类的字符串属性数量可能不同。迪皮卡·沙阿(Deepika Shah)可能有3条线来描述她,卡特里娜·凯夫(Katrina Kaif)可能有5条线,以此类推。在这种情况下我该怎么办?3个字符串是什么意思?如果您的意思是有n个字符串来描述一个类,那么您应该手动将所有n个字符串替换为一个通用类。例如,如果Deepika Shah、Bla1、Bla2引用同一类,则将所有Bla1和Bla2替换为Deepika Shah。您可以只使用一个属性并连接所需的所有字符串属性,例如“贪婪的读者有趣的漂亮”,需要Deepika ShahNo delimeter。只需将所有单词属性用作单个字符串,无论如何StringToOrdVector都会将它们转换为N-Gramsyes这是一样的。Weka将根据您将在StringToFordVector过滤器上设置的表示形式自动将字符串转换为向量。我的问题是