神经网络、支持向量机或其他东西分类为 7 组

数据挖掘 机器学习 分类 神经网络 初学者
2022-02-20 19:24:01

我是一位经验丰富的开发人员,但我才刚刚开始发现数据科学。我有一个数据集,每行包含 62 个参数,并且该数据集中的每一行属于 7 个组之一(编号从 0 到 6)。

x0  x1  x2  x3  x4  x5  x6  x7  x8  x9  x10 x11 x12 x13 x14 x15 x16 x17 x18 x19 x20 x21 x22 x23 x24 x25 x26 x27 x28 x29 x30 x31 x32 x33 x34 x35 x36 x37 x38 x39 x40 x41 x42 x43 x44 x45 x46 x47 x48 x49 x50 x51 x52 x53 x54 x55 x56 x57 x58 x59 x60 x61 y
b4d8a653ea  16a14a2d17  06330986ed  ca63304de0  a62168d626  1746600cb0  1   1   -0.6887062641683063 7e5c97705a  e5df3eff9b  91bb549494  e33c63cf35  3694.0  6e40247e69  617a4ad3f9  718c61545b  c26d08129a  634e3cf3ac  dd9c9e0da2  17c99905b6  513a3e3f36  9aba4d7f51  40.57961189718329   -0.11269265451935975    -0.17219069579806134    1.1666666666666663  1.6745384722167482  0.6308894281294708  37.0    1.294921875 55.0    0.16666666666666666 10.0    0.0 0.0 1.0 9.0 0.0 1.0 23.0    Бер.67  0.12    1.935   02.Лют  0.625   0.25    0.125   0.0 0.813   0.07400000000000001 0.634   0.5479999999999999  0.2353332208066929  0.2649521447821752  0.0 0.3333333333333333  0.3333333333333333  0.3333333333333333  0.0 0.0 9.0 2
467f9617a3  16a14a2d17  06330986ed  ca63304de0  b7584c2d52  1746600cb0  1   1   0.8708708626728477  5624b8f759  fa0b797a92  669ea3d319  f178803074  18156.0 01ede04b4b  617a4ad3f9  718c61545b  d342e2765f  bb20e1ca06  8a6c8cef83  1b02793146  992153ed65  9aba4d7f51  28.76550293196428   2.6122849082704658  2.1590908057403015  4.0 1.7107137612171608  1.7135384162978815  0.16666666666666666 0.027669270833333325    109.0   0.0 31.0    0.0 0.0 1.0 244.0   1.0 1.0 68.0    17.25   0.57    3.452   4.0 0.409   0.619   0.579   0.248   0.34600000000000003 0.541   0.522   0.0 1.782346041542782   1.3224094711633876  0.011647254575707157    0.39767054908485855 0.2396006655574044  0.2495840266222961  0.06821963394342763 0.033277870216306155    601.0   4
190436e528  16a14a2d17  06330986ed  ca63304de0  b7584c2d52  1746600cb0  1   1   0.4376549941058605  5624b8f759  152af2cb2f  91bb549494  e33c63cf35  1178.0  cc69cbe29a  617a4ad3f9  e8a040423a  c82c3dbd33  ee3501282b  199ce7c484  5f17dedd5c  5c5025bd0a  9aba4d7f51  24.94393348850157   -0.8146595838365664 -0.7083080633874904 01.Тра  -0.5124221809900756 -0.7339666422629345 0.3333333333333333  14.837727864583336  11.0    0.0 24.0    0.0 0.0 1.0 29.0    0.0 3.0 11.0    Кві.42  0.15    0.161   0.2 1.0 1.0 1.0 1.0 1.0 0.52    0.5329999999999999  0.835   -0.5865396521883026 0.6724356815192951  0.0 0.6060606060606061  0.12121212121212124 0.21212121212121213 0.060606060606060615    0.0 33.0    3

我不知道参数之间的关系或它们对组数(y)的影响。我需要创建和训练一个模型,该模型将基于 62 个变量预测一个组,并且成功率很高(> 80%)。我应该从哪里开始?

2个回答

欢迎来到该网站,@intellion!我可以为你推荐几件事。首先,如果您认为自己会继续对数据科学感兴趣,并且将来会解决此类问题,那么开始熟悉该领域是值得的。有多种入门教科书和课程可供您选择。如果你有很强的数学背景,我会推荐 Tibshirani 的《统计学习的要素》,这是该领域的经典之作。如果你从更面向应用的角度来处理这个问题,我会推荐一些专门为你想使用的语言编写的东西。如果你打算使用 R,这里有“ Machine Learning with R ”;如果你打算使用 python,这里有“.” 当然还有各种免费的在线资源。

对于您的问题,您当然可以使用支持向量机 (SVM) 或神经网络来解决您的问题,但我认为这不是首先要开始的地方。对我来说,这看起来像是一个经典的多元回归应用情况(有关在 R 中执行此操作的概述,请参阅教科书或此教科书)。如果您真的想在机器学习中尝试一些东西,也许决策树是一个不错的起点,因为它们可以让您轻松评估变量对最终模型拟合的影响(例如,使用Gini Impurity)。我发现rpartR 中的库非常好用,但对于较大的数据可能会有点慢。如果这是您的首选语言,您也可以在 python 中使用 sklearn 。

看起来您的数据包括字符串和值。我建议你从简单的逻辑回归开始。可以对字符串进行散列处理,并且可以按原样输入实际值。

将数据集随机拆分为 70% 的训练,剩下的 30% 用于测试。在训练数据上拟合模型并在测试数据上评估性能。这将为您提供对分类器的粗略估计。

Vowpal Wabbit软件包拥有您进行分类(以及更多)所需的一切。格式很简单,学习速度快如闪电 - 您需要进行实验的一切。