<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>简单之美 &#187; Tag &#187; libsvm</title>
	<atom:link href="http://shiyanjun.cn/archives/tag/libsvm/feed" rel="self" type="application/rss+xml" />
	<link>http://shiyanjun.cn</link>
	<description>简单之美，难得简单，享受简单的唯美。</description>
	<lastBuildDate>Wed, 04 Mar 2026 07:04:53 +0000</lastBuildDate>
	<language>zh-CN</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.9.2</generator>
	<item>
		<title>使用libsvm实现文本分类</title>
		<link>http://shiyanjun.cn/archives/548.html</link>
		<comments>http://shiyanjun.cn/archives/548.html#comments</comments>
		<pubDate>Fri, 13 Dec 2013 15:43:05 +0000</pubDate>
		<dc:creator><![CDATA[Yanjun]]></dc:creator>
				<category><![CDATA[人工智能]]></category>
		<category><![CDATA[libsvm]]></category>
		<category><![CDATA[分类]]></category>

		<guid isPermaLink="false">http://shiyanjun.cn/?p=548</guid>
		<description><![CDATA[<p>文本分类，首先它是分类问题，应该对应着分类过程的两个重要的步骤，一个是使用训练数据集训练分类器，另一个就是使用测试数据集来评价分类器的分类精度。然而，作为文本分类，它还具有文本这样的约束，所以对于文本来说，需要额外的处理过程，我们结合使用libsvm从宏观上总结一下，基于libsvm实现文本分类实现的基本过程，如下所示：

选择文本训练数据集和测试数据集：训练集和测试集都是类标签已知的；
训练集文本预处理：这里主要包括分词、去停用词、建立词袋模型（倒排表）；
选择文本分类使用的特征向量（词向量）：最终的目标是使得最终选出的特征向量在多个类别之间具有一定的类别区分度，可以使用相关有效的技术去实现特征向量的选择，由于分词后得到大量的词，通过选择降维技术能很好地减少计算量，还能维持分类的精度；
输出libsvm支持的量化的训练样本集文件：类别名称、特征向量中每个词元素分别到数字编号的映射转换，以及基于类别和特征向量来量化文本训练集，能够满足使用libsvm训练所需要的数据格式；
测试数据集预处理：同样包括分词（需要和训练</p>]]></description>
	<p>文本分类，首先它是分类问题，应该对应着分类过程的两个重要的步骤，一个是使用训练数据集训练分类器，另一个就是使用测试数据集来评价分类器的分类精度。然而，作为文本分类，它还具有文本这样的约束，所以对于文本来说，需要额外的处理过程，我们结合使用libsvm从宏观上总结一下，基于libsvm实现文本分类实现的基本过程，如下所示：

选择文本训练数据集和测试数据集：训练集和测试集都是类标签已知的；
训练集文本预处理：这里主要包括分词、去停用词、建立词袋模型（倒排表）；
选择文本分类使用的特征向量（词向量）：最终的目标是使得最终选出的特征向量在多个类别之间具有一定的类别区分度，可以使用相关有效的技术去实现特征向量的选择，由于分词后得到大量的词，通过选择降维技术能很好地减少计算量，还能维持分类的精度；
输出libsvm支持的量化的训练样本集文件：类别名称、特征向量中每个词元素分别到数字编号的映射转换，以及基于类别和特征向量来量化文本训练集，能够满足使用libsvm训练所需要的数据格式；
测试数据集预处理：同样包括分词（需要和训练</p>			<content:encoded><![CDATA[<p>文本分类，首先它是分类问题，应该对应着分类过程的两个重要的步骤，一个是使用训练数据集训练分类器，另一个就是使用测试数据集来评价分类器的分类精度。然而，作为文本分类，它还具有文本这样的约束，所以对于文本来说，需要额外的处理过程，我们结合使用libsvm从宏观上总结一下，基于libsvm实现文本分类实现的基本过程，如下所示：

选择文本训练数据集和测试数据集：训练集和测试集都是类标签已知的；
训练集文本预处理：这里主要包括分词、去停用词、建立词袋模型（倒排表）；
选择文本分类使用的特征向量（词向量）：最终的目标是使得最终选出的特征向量在多个类别之间具有一定的类别区分度，可以使用相关有效的技术去实现特征向量的选择，由于分词后得到大量的词，通过选择降维技术能很好地减少计算量，还能维持分类的精度；
输出libsvm支持的量化的训练样本集文件：类别名称、特征向量中每个词元素分别到数字编号的映射转换，以及基于类别和特征向量来量化文本训练集，能够满足使用libsvm训练所需要的数据格式；
测试数据集预处理：同样包括分词（需要和训练</p>]]></content:encoded>
			<wfw:commentRss>http://shiyanjun.cn/archives/548.html/feed</wfw:commentRss>
		<slash:comments>260</slash:comments>
		</item>
		<item>
		<title>使用libsvm进行分类预测</title>
		<link>http://shiyanjun.cn/archives/220.html</link>
		<comments>http://shiyanjun.cn/archives/220.html#comments</comments>
		<pubDate>Thu, 29 Aug 2013 05:09:44 +0000</pubDate>
		<dc:creator><![CDATA[Yanjun]]></dc:creator>
				<category><![CDATA[人工智能]]></category>
		<category><![CDATA[libsvm]]></category>
		<category><![CDATA[SVM]]></category>

		<guid isPermaLink="false">http://shiyanjun.cn/?p=220</guid>
		<description><![CDATA[<p>使用libsvm，首先需要将实际待分类的内容或数据（训练数据，或预测数据）进行量化，然后通过libsvm提供的功能实现分类和预测。下面介绍使用libsvm的基本步骤。
准备训练数据
数据格式：
每一行，表示以已定义的类别标签，以及属于该标签的各个属性值，每个属性值以“属性索引编号:属性值”的格式。一行内容表示一个类别属性以及与该类别相关的各个属性的值。属性的值，一般可以表示为“该属性隶属于该类别的程度”，越大，表示该属性更能决定属性该类别。
上面的数据必须使用数字类型，例如类别，可以通过不同的整数来表示不同的类别。
准备的原始训练样本数据存放在文件raw_data.txt中，内容如下所示：
归一化
这一步对应于libsvm的缩放操作，即将量化的数据缩放到某一范围之内。首先，需要把原始的训练数据存放到文件中作为输入，如果实际应用中不需要从文件输入，可以根据需要修改libsvm的代码，来满足需要。
上面准备的文件raw_data.txt定义了三个类别，分别为1,2,3，其中有三个属性。正常情况下，每个属性值范围可能并不一定是在0到1之间，比如实际的温度数据，</p>]]></description>
	<p>使用libsvm，首先需要将实际待分类的内容或数据（训练数据，或预测数据）进行量化，然后通过libsvm提供的功能实现分类和预测。下面介绍使用libsvm的基本步骤。
准备训练数据
数据格式：

&lt;label1&gt; &lt;index1&gt;:&lt;value11&gt; &lt;index2&gt;:&lt;value12&gt;...
&lt;label2&gt; &lt;index1&gt;:&lt;value21&gt; &lt;index2&gt;:&lt;value22&gt;...
&lt;label3&gt; &lt;index1&gt;:&lt;value31&gt; &lt;index2&gt;:&lt;value32&gt;...
...

每一行，表示以已定义的类别标签，以及属于该标签的各个属性值，每个属性值以“属性索引编号:属性值”的格式。一行内容表示一个类别属性以及与该类别相关的各个属性的值。属性的值，一般可以表示为“该属性隶属于该类别的程度”，越大，表示该属性更能决定属性该类别。
上面的数据必须使用数字类型，例如类别，可以通过不同的整数来表示不同的类别。
准备的原始训练样本数据存放在文件raw_data.txt中，内容如下所示：

1 1:0.4599 2:0.8718 3:0.1987
2 1:0.9765 2:0.2398 3:0.3999
3 1:0.0988 2:0.2432 3:0</p>			<content:encoded><![CDATA[<p>使用libsvm，首先需要将实际待分类的内容或数据（训练数据，或预测数据）进行量化，然后通过libsvm提供的功能实现分类和预测。下面介绍使用libsvm的基本步骤。
准备训练数据
数据格式：
每一行，表示以已定义的类别标签，以及属于该标签的各个属性值，每个属性值以“属性索引编号:属性值”的格式。一行内容表示一个类别属性以及与该类别相关的各个属性的值。属性的值，一般可以表示为“该属性隶属于该类别的程度”，越大，表示该属性更能决定属性该类别。
上面的数据必须使用数字类型，例如类别，可以通过不同的整数来表示不同的类别。
准备的原始训练样本数据存放在文件raw_data.txt中，内容如下所示：
归一化
这一步对应于libsvm的缩放操作，即将量化的数据缩放到某一范围之内。首先，需要把原始的训练数据存放到文件中作为输入，如果实际应用中不需要从文件输入，可以根据需要修改libsvm的代码，来满足需要。
上面准备的文件raw_data.txt定义了三个类别，分别为1,2,3，其中有三个属性。正常情况下，每个属性值范围可能并不一定是在0到1之间，比如实际的温度数据，</p>]]></content:encoded>
			<wfw:commentRss>http://shiyanjun.cn/archives/220.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
