问题标签 [svmlight]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 来自 sklearn 的 load_svmlight_file() 溢出错误
我创建了一个 SVMlight 文件,其中仅包含 pandas 数据框中的一行:
from sklearn.datasets import load_svmlight_file
from sklearn.datasets import dump_svmlight_file
dump_svmlight_file(toy_data.drop(["Output"], axis=1),toy_data['Output'],"../data/oneline_pid.txt", query_id=toy_data['EventID'])
文件中的结果如下所示:
当我尝试加载文件时,query_id=True
出现溢出错误。
溢出错误:有符号整数大于最大值
如果我加载文件时query_id=False
没有出现错误消息,但 query_id 的值是错误的。这是输出:
72048431380967004
现在显示为72048431380967008
.
我如何避免这个错误,最大值np.uint64
是9223372036854775807
所以应该没有溢出错误。
也尝试使用np.int64
as 数据类型加载,但输出是相同的。
Scikit-learn 版本:0.16.1 OS X Yosemite 10.10.5
python - Python Svmlight 模块:使用排名配置时如何将训练数据传递给学习函数
我在 python 中使用 Svmlight 包来训练 SVM等级模型。但是,我想不出一种将训练数据传递给学习函数的方法。我的python源代码如下:
数据文件 (train.dat) 如下所示:
运行代码时出现以下错误:
我找了类似的问题,发现了一个:Load svmlight format error
此链接中的答案建议实现一个解析器,该解析器从上面提供的数据文件中读取并将其转换为特征和目标的元组。但是,在训练ranker时,我们需要提供有关实例所属集合的信息(理论上)。
我的问题:使用排名配置时如何将训练数据传递给 svm learn 方法?
先感谢您!!
machine-learning - SVM-Rank:减少运行时间
我正在使用基于 svm light 实现的 svm rank,我的数据集由 50k 个样本和 2000 个特征组成。svm_rank 运行 3 天,迭代次数超过 5000,这合理吗?我是 ml 领域的新手,我需要使用排名算法。我需要更改优化参数吗?我使用 svm_rank_learn -c 1 来训练分类器。
classification - 如何从 SVMLight 模型中提取支持向量
我使用 SVMLight 库将我的数据集分类为一些类,现在想从生成的模型中获取支持向量。如何从模型中提取每个类的 SV?
python - OpenCV+PYTHON: HOGDescriptor readALTModel(filename)
有人知道是否有办法在 python/opencv 的 (cpp) HOGDescriptor 类中使用函数 readALTModel(filename) 吗?
谢谢!
opencv - 为什么 SVMLite 在训练输入很少的情况下会错误分类?
我正在使用 SVM Light 对使用 OpenCV 处理的图像进行分类。图像被制作成黑白,稍微模糊,来自 opencv 的 HOG 检测器用于创建一个特征向量,其中向量来自用 1 标记的正图像和用 -1 标记的负图像。当我在 7 个正面和 7 个负面过程图像上运行 SVMLight 训练文件时,它对 7 个负面文件中的 4 个进行了错误分类。
然而,在较大的输入下,它训练时不会出现错误分类。有谁知道为什么会这样?
machine-learning - 在给定数据流的情况下,使用机器学习来估计偶数发生的可能性
我有一个系统生成的数据流(例如 3D 位置),它看起来像:
(pos1, time1) (pos2, time2) (pos3, time3) ...
我想使用机器学习技术从给定的数据流中估计特定事件的可能性(或检测)。我做了什么:
- 如果事件发生在该帧,我在每一帧都用“是”标记我的数据,否则它被设置为“否”。
(pos1, time1, NO) (Pos2, time2, Yes) (pos3, time3, NO) ...(posK, timeK, Yes)...
- 通过给出L个连续帧来设置像L这样的窗口长度来训练模型,并且相应的标签由该窗口上最后一个元素的标签设置:
(pos1, Pos2, pos3, NO) (pos2, Pos3, pos4, NO) (pos3, Pos4, pos5, NO) ... (posK-2, PosK-1, posK, YES) ...
- 最后,我用这一套训练了我的模型。
- 对于测试,我连接L个连续的帧并要求模型为这组数据找到相应的标签(例如是或否)。
我意识到“NO”的出现比“YES”更频繁。仅仅是因为系统主要处于空闲状态而我没有任何事件。所以会影响训练。
你能给我一些提示吗:1)什么类型的机器学习模型最适合这个问题。2)目前我将输出分类为“是”或“否”,但我希望随时了解事件发生的概率。你建议什么样的模型?
谢谢
svmlight - 当一个单词在一个句子中出现多次时如何为svm light创建train文件
我正在使用 SVM-Light(在网站http://svmlight.joachims.org/)。我想问你一个问题。我有一句话“他很聪明,他是个好学生”。这句话是肯定句。当我从这句话创建一个单词列表时,我将有一个包含每个单词索引的列表,如下所示:{1 - he, 2 - is, 3 - smart, 4 - and, 5 - a, 6 - good, 7 - 学生}。然后我按单词索引重写句子如下:“1 2 3 4 1 2 5 6 7”。每个单词的值是“1:0.4 2:0.2 3:0.8 4:0.3 1:0.2 2:0.4 5:0.5 6:0.7 7:0.6” 根据train文件的格式,单词索引必须按递增排序索引号,所以我安排如下“1 1:0.4 1:0.2 2:0.2 2:0.4 3:0.8 4:0.3 5:0.5 6:0.7 7:0.6”。但是,我收到一个错误“功能必须按递增顺序!!!” 当我运行 svm_learn. 我注意到这个错误是因为我的句子有两个“他”字和两个“
input - SVMLight:如何构建分类器?
我正在尝试使用 SVMLight 构建一个分类器来检测名词短语(NP)是否是照应。我有我的特点,但我一直在理解输入文件的格式,我应该将我的所有文本翻译成这种格式,还是只放代表正面实例和负面实例的 NP。是否有任何软件可以让我将文件翻译成这种格式。
另外,对于模型文件,这个文件应该包含什么?
您的帮助将不胜感激。