RapidMiner数据建模挑战赛- 200美元现金和奖品

sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理
2018年12月编辑 帮助

你好,快速矿工

我认为如果我们在社区论坛上有一些类似于kaggle的挑战将会很有趣(也很有用)。所以我赞助了第一届RapidMiner数据建模挑战赛。:)这是一个真实的训练数据集,需要一个好的模型。它不像经典的虹膜数据集;它有丢失的数据,错误,等等。欢迎来到现实世界。挑战是这样的:

目标:在RapidMiner 7.5中生成一个模型,该模型将以最高的精度预测附加训练集“RMChallengeDataSet”系列中给定的先验数据中的标签属性。这将通过滑动窗口验证操作符进行验证。因为这是一系列超过18年的日期,没有人想坐在那里看着他们的电脑永远旋转,我建议以下参数:

培训窗口宽度:1000(约三年)

训练窗口步长:3(减少迭代)

测试窗口宽度:1(我一次只需要一天)

地平线:1(我想要第二天)

累积培训:有

只有平均表现:是的

这是一个系列-每天从1968年到1986年- 6726个例子和262个数字属性。标签是A/B/C选择。欢迎您进行任何功能选择,添加属性等…并使用任何模型(s),只要它在RapidMiner及其公开可用的扩展。不允许编写脚本或api。数据是1:1散列的,以保护源的身份-请不要试图进行逆向工程。

优胜者:在交叉验证中,用标准性能运算符能产生最高准确率%≥60者为优胜者。为什么60 ?因为这是我迄今为止得到的最高分数[诚实的免责声明:实际上我对A/B标签的准确率只有60%,但我知道你们都比我聪明…]

提交:所有提交的这个挑战必须在这个线程,所以它是开放给所有人看到。所有你需要做的是提交你的过程XML作为对这条消息的回复(请使用“插入代码”项目,所以它不会变长)和你的性能的屏幕截图。你可以发布尽可能多的提交(在合理范围内)。

获胜者的决定:希望社区将所有同意获胜者(所有提交是公开的),但在一些戏剧的情况下,我将是唯一的法官,并将验证获胜者的提交。如果有多个相同的(和最高的)准确性,第一个提交的将是获胜者。

谁可以进入:任何在RapidMiner社区论坛上注册的用户。是的,即使是你,@IngoRM

截止日期:所有参赛作品必须在美国东部时间2017年6月15日21:00之前在论坛上发布。

通知:我将给自己三天的时间来独立验证获胜者,然后发布到这个线程。然后我将PM获胜者获得一个邮寄地址,并邮寄一张100美元的支票!

好运!


斯科特

标记:
MariusHelf Telcontar120 MartinLiebig Thomas_Ott Edin_Klapic pschlunder 诺埃尔

答案

  • IngoRMIngoRM 管理员、版主、员工、RapidMiner认证分析师、RapidMiner认证专家、社区经理、RMResearcher、会员、大学教授职位:1751年RM创始人

    嘿,RapidMiners,

    首先,让我们感谢斯科特的倡议!这真的很感激,这将是一个有趣的挑战!这确实是一个挑战:在过去的15分钟里,我尝试了一些第一个模型,我离60%的准确率阈值还很远,但我会达到的。

    RapidMiner和我个人愿意支持这一倡议。因此,我们将100美元的价格与100美元的亚马逊礼品卡相匹配。现在池中总共有200美元的价格。所以最好启动你的RapidMiner,向我们展示你的建模技能:

    祝所有参与者都取得成功,如果你有问题或想法,请随时让我们知道你在哪里。

    玩得开心,

    Ingo

    MariusHelf pschlunder Thomas_Ott sgenzer
  • IngoRMIngoRM 管理员、版主、员工、RapidMiner认证分析师、RapidMiner认证专家、社区经理、RMResearcher、会员、大学教授职位:1751年RM创始人

    由于RapidMiner现在也捐赠了一些价格,我不能再参与了。或者我可以用一个匿名账户:smileywink:。无论如何,我还是会尝试一下,看看我能去哪里……

    所以这里有一个快速更新:我现在的准确率是45%,离你的60%还很远。这确实是一个很好的挑战!我并没有真正优化模型本身,而是首先专注于特征选择……让我们看看我们还能做些什么:-)

    sgenzer
  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理
    做得好@IngoRM!尤其是我承认我的60%来自A/B标签,而不是这里的A/B/C。我已经断断续续写了三周了。?告诉你吧——如果RM的员工赢了,我会把一夸脱自制的枫糖浆寄到他/她工作的办公室。公平吗?
    pschlunder JessForbesRM
  • IngoRMIngoRM 管理员、版主、员工、RapidMiner认证分析师、RapidMiner认证专家、社区经理、RMResearcher、会员、大学教授职位:1751年RM创始人

    哦,我错过了A/B和A/B/C的部分。那我对我的45%也不觉得太糟糕了吧:-)

    你可能不知道,但我是枫糖浆的超级粉丝。所以我会支持波士顿办公室的人(对不起,伦敦,多特蒙德,布达佩斯)。

    sgenzer
  • Telcontar120Telcontar120 主持人,RapidMiner认证分析师,RapidMiner认证专家,会员职位:1635年独角兽

    是的,60%的准确率在预测2类和3类时要容易得多!: -)

    我想知道既然没有保留/测试集,这里允许多少“样本调整”。例如,经过一些探索性的EDA之后,很明显,日期范围的大部分都缺少一些属性。那么,是否可以将示例划分为日期范围并基于日期范围的可用性在不同的属性子集上构建不同的模型?

    布莱恩·T。
    Lindon合资企业
    乐鱼平台进入来自认证RapidMiner专家的数据科学咨询
    sgenzer
  • MariusHelfMariusHelf RapidMiner认证专家、会员职位:1869年独角兽

    耶,RapidMiner挑战!作为RapidMiner的前员工,我有资格获得枫糖浆吗?;)

    由于这是时间序列数据,您希望允许用最新的已知值填充缺失值,或者例如,属性30-49使用周值。

    如果使用洗牌采样(如果设置为自动,这是X-Validation对分类问题的默认设置),则在交叉验证中不可能做到这一点。另一方面,如果在X-Validation之前这样做,则会将测试数据中的信息泄露给训练数据。也许我们应该改变规则,使用滑动窗口验证?或者,您想要逐日进行预测,而不使用以前的数据点的信息?

    假设我们可以在验证之前使用早期的值来填补缺失值等,那么当通过洗刷采样交叉验证估计性能时,可以实现60%的A/B/C准确度:)

    JessForbesRM MartinLiebig sgenzer
  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理

    说得好,马吕斯。以下是我的想法……

    任何想用枫糖浆代替100美元奖金的人都欢迎。

    -当我做建模时,我在验证之前输入了缺失的系列数据。我没有考虑“泄漏”因素,也没有使用滑动窗口验证代替x验证。由于目标是能够预测标记的列并使用所有以前的数据点,所以我会说YES,我们需要将规则更改为滑动窗口验证。

    我期待着你的屈服,马吕斯!


    斯科特

  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理

    嗨,布莱恩。

    所有的观点都很好,是的,由于各种原因,有很多缺失的例子。:)但是我要说不,分割是不行的。由于它是一个系列,目标是使用历史信息预测日期向前移动的标签(例如,在给定系列中所有先前数据的情况下预测日期的标签)。正如Marius指出的那样,我认为更有效的显示性能的方法是使用滑动窗口验证而不是x验证。这是我的错误,但我认为他是对的。

    有意义吗?游戏吧!


    斯科特

  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理

    **注**我考虑了一下,建议对规则进行以下更改:

    目标:在RapidMiner 7.5中生成一个模型,该模型将以最高的精度预测附加训练集“RMChallengeDataSet”系列中给定的先验数据中的标签属性。这将通过滑动窗口验证操作符进行验证。因为这是一系列超过18年的日期,没有人想坐在那里看着他们的电脑永远旋转,我建议以下参数:

    培训窗口宽度:1000(约三年)

    训练窗口步长:3(减少迭代)

    测试窗口宽度:1(我一次只需要一天)

    地平线:1(我想要第二天)

    累积培训:有

    只有平均表现:是的

    这些是相当不寻常的参数,但我认为它们是有意义的(至少对我来说)。我立即发现的一件事是滑动窗口验证不是并行化的——对于大多数模型来说,给定这些参数进行迭代需要一段时间。

    因为这是一个有趣的比赛,也是一个互相学习的好方法,如果有更好的方法,请给出反馈。如果人们同意,我将在最初的帖子中进行编辑。

    好了,去睡觉吧!

    斯科特

    sunnyal
  • Thomas_OttThomas_Ott RapidMiner认证分析师,RapidMiner认证专家,成员职位:1761年独角兽

    下面是我想说的:

    基于k-nn优化的缺失输入

    滑动窗口验证

    支持向量机与RBF核

    优化训练/测试宽度,gamma和C

    sgenzer
  • bigDbigD 成员职位:6贡献我

    我接近了,但还没到。

    rm.png

    rm.png 0 b
    sgenzer zprekopcsak phellinger Thomas_Ott
  • MartinLiebigMartinLiebig 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家,大学教授职位:3368年RM数据科学家

    亲爱的斯科特,

    我试着下载你的压缩文件,但是打不开。我总是出错。你能把它重新上传到什么地方吗?


    ~马丁

    - RapidMin乐鱼平台进入er数据科学服务主管
    德国多特蒙德
  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理

    当然,马丁,试试这个:https://goo.gl/WYnZHO

    斯科特

  • MartinLiebigMartinLiebig 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家,大学教授职位:3368年RM数据科学家

    谢谢,

    我也有收获:)

    current.png

    ~马丁

    - RapidMin乐鱼平台进入er数据科学服务主管
    德国多特蒙德
    hermawan_eriadi bigD sgenzer
  • MariusHelfMariusHelf RapidMiner认证专家、会员职位:1869年独角兽

    是的,我也在五十多岁,有纠正的验证oO

    我很好奇是否有人能想出大于60的答案。目前一切似乎都稳定在55…

    sgenzer
  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理

    我当然不知道你的预处理或你的模型是什么样子的,但我会说(作为唯一一个知道数据集的人):)),当我创建分割日期的属性时,我的性能得到了提升:星期几和月份似乎有所帮助,季度则没有。其他修改日期的方法可能也会有帮助……


    斯科特

  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理

    尽管您可能正在做类似的事情,但创建滞后序列属性也会有所帮助。:)

    斯科特

  • bigDbigD 成员职位:6贡献我

    好吧,我终于到了!

    D。

    rm top.png

    MartinLiebig sgenzer
  • MartinLiebigMartinLiebig 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家,大学教授职位:3368年RM数据科学家

    嘿,D,

    很好。我确实有一个63%的模型,但在不同的验证上。验证@sgenzer提议需要多少步骤?500年?即使是简单的模型,我也要花一个小时。你确定要接受普通训练吗?这使得参数调优相当困难。

    最好的

    马丁

    - RapidMin乐鱼平台进入er数据科学服务主管
    德国多特蒙德
    sgenzer
  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理
    干得好,丹!等不及看你的表演了。

    马丁-是的,这需要很多步骤。当我尝试一些简单的建模(如朴素贝叶斯),它不需要太长时间,但是的,其他任何事情都需要一段时间。我假设它很慢,因为滑动窗口验证不是并行的。当我运行这样的大型模型时,我总是密切关注我的CPU/内存使用情况,并且这种验证不会像x验证那样推动我的6核。功能要求?:)

    斯科特
  • bigDbigD 成员职位:6贡献我

    嗨,马丁,

    是的,我正在使用滑动窗口验证参数@sgenzer建议。对我来说,它运行1925次迭代大约需要14-17分钟,在我的24核64GB RAM台式机上大约需要10-12分钟。我一直在考虑在我的hadoop集群上运行以获得更快的速度,但可能有点过头了。不确定你所说的“通信培训”是什么意思?也许我错过了什么。我在网格搜索参数调整上达到67.8,但只使用80/20分割,因此有些过拟合。

    我会在下周六去度假之前发布我的完整代码,以便其他人可以重新创建它。

    zprekopcsak
  • bigDbigD 成员职位:6贡献我

    这是我目前最好的模型。我已经发布了我的代码供其他人使用。

    我的第一个大提示:使用H2O的新梯度增强树算法(类似于流行的XGBoost包)。它的速度非常快,坦率地说,这是我最近最喜欢的算法。

    rm top.png

    我的代码对于插入代码窗口来说太大了,所以我附加了一个docx文件。
    我相信有人会有一个好主意如何减少预处理部分的大小
    (neep 2个循环,我不能完全正确)。

    sgenzer
  • MartinLiebigMartinLiebig 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家,大学教授职位:3368年RM数据科学家

    亲爱的丹,

    谢谢你的见解。我没有看到你的过程,因为那感觉就像在作弊。

    我确实也用h2o,但是现在用的是GLM。更大步长的验证结果如下:

    当我试图用斯科特提出的步长运行它时,它在3小时后崩溃了。原因是我将许多属性管道到GLM中。我正在努力解决这个问题:)

    新current.png

    在任何情况下,我们都可以稍后创建两个解决方案的集成模型。给斯科特最好的模型。

    ~马丁

    - RapidMin乐鱼平台进入er数据科学服务主管
    德国多特蒙德
    sgenzer
  • MartinLiebigMartinLiebig 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家,大学教授职位:3368年RM数据科学家

    好吧,

    明白了,我不相信我的结果,可能我在什么地方做错了:

    编辑,找到我的问题了。我现在也61岁了。快GLM.png

    - RapidMin乐鱼平台进入er数据科学服务主管
    德国多特蒙德
登录注册置评。