gpt4 book ai didi

java - 如何在使用 Weka Java API 执行线性回归时处理字符串值

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:27:22 25 4
gpt4 key购买 nike

我正在使用 Weka Java API 执行线性回归。该数据集由 UserId、用户访问的 URL、页面停留时间组成。由于 URL 是一个字符串属性,我在使用上述数据集执行线性回归时遇到了问题。他们是否准备好使用将 String 转换为 Weka 中等效的 Int 值的方法。我在 Mahout 中看到过类似的功能,但在 Weka 中找不到。我可以轻松地创建一个函数来通过计算每个字符的 ASCII 总和来输出字符串的 Int 值,但我想要一个更可靠且已经过测试的解决方案。

最佳答案

您说得对,线性回归仅对数值进行运算。但是,从分类值到数字的任何旧转换都可以,这根本不是真的。例如,对字符串进行哈希处理会给出一个数字,但作为线性回归的特征会给出完全没有意义的结果。

数值应具有有序且有意义的大小。 “foo.com”是 135092 而“bar.com”是 985882 是什么意思?线性回归会尝试将“bar.com”解释为“比 foo.com 大 5 倍的东西”,这是无稽之谈。

您可能会想到 1-of-n 编码,您可以在其中为每个可能的值 (URL) 创建一个新的 0/1 特征。这对于 URL 是不可行的。域——也许吧。

关于java - 如何在使用 Weka Java API 执行线性回归时处理字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23007108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com