当前位置: 首页 > 科技观察

新手机器学习工程师容易犯的错误Top6

时间:2023-03-18 17:53:00 科技观察

新手机器学习工程师常犯的错误很多时候,如何确定哪些假设是合理的并不明显。刚接触机器学习的人会犯一些事后看来很愚蠢的错误。我列出了新手机器学习工程师最常犯的错误。希望您可以从这些常见错误中吸取教训,并创建更强大的解决方案来提供真正的价值。默认损失函数的均方误差非常大!这确实是一个令人惊讶的默认值,但在实践中,这种现成的损失函数很少适用于您试图解决的业务问题。以欺诈检测为例。为了与业务目标保持一致,您真正想要的是根据欺诈损失的数量按比例惩罚假阴性样本。使用均方误差可能会得到很好的结果,但永远不会得到最好的结果。要点:始终构建与您的解决方案目标非常匹配的自定义损失函数。对所有问题使用一种算法/方法许多人完成了他们的第一个教程并立即开始使用他们为每个用例学习的相同算法。它很熟悉,他们认为它与任何其他算法一样有效。这是一个糟糕的假设,会导致糟糕的结果。让您的数据为您选择模型。预处理数据后,将其输入多个不同的模型并查看结果。您将很清楚哪些模型效果最好,哪些模型效果不佳。要点:如果您发现自己一遍又一遍地使用相同的算法,则可能意味着您没有获得最佳结果。忽略离群值离群值可以是显着的或完全忽略的,这取决于上下文。以污染预测为例。空气污染可能会出现大幅峰值,最好观察它们并了解原因。对于由某些类型的传感器错误引起的异常值,忽略它们并将它们从数据中删除是安全的。从模型的角度来看,一些模型比其他模型对异常值更敏感。在Adaboost的情况下,它将这些异常值视为“硬”案例,并对异常值给予极大的重视,而决策树可能只是将每个异常值视为错误分类。要点:在开始工作之前,请务必仔细查看您的数据,以确定是否应忽略异常值或更仔细地查看异常值。一天中的小时数、一周中的几天、一年中的月份和风向都是周期性的,而没有对周期性特征进行适当的处??理。许多新的机器学习工程师认为,这些特征无法转换为可以容纳信息的表示,例如23小时和0小时,它们彼此接近且相距不远。按照小时示例,处理此问题的最佳方法是计算sin和cos分量,以便可以根据(x,y)圆坐标表示圆形特征。在小时的这种表示中,23和0在数字上是相邻的,因为它们应该如此。要点:如果你有循环特征并且你不转换它们,你就是在给你的模型垃圾数据。在没有归一化的情况下进行L1/L2正则化L1和L2正则化对大系数不利,并且是正则化线性回归或逻辑回归的常用方法,但是,许多机器学习工程师在应用正则化重要性之前并没有意识到归一化特征。假设您有一个以交易为特征的线性回归模型。规范化所有特征并将它们放在平等的基础上,因此所有特征的正则化都是相同的。不要用美分表示某些特征而用美元表示其他特征。要点:正则化很好,但如果你不标准化特征,它会让你头疼将线性回归或逻辑回归的系数解释为特征重要性线性回归通常返回每个系数的p值。这些系数往往会让机器学习新手认为对于线性模型来说,系数的值越大,特征越重要。这是不正确的,因为变量的缩放会改变系数的绝对值。如果特征共线,则可以将系数从一个特征转移到另一个特征。数据集具有的特征越多,特征共线的可能性就越大,对特征重要性的简单解释就越不可靠。要点:了解哪些特征对结果最重要很重要,但不要假设您可以通过查看系数来获得结果,系数通常不会告诉您全貌。做几个项目,取得好成绩,有种中了百万的感觉。你努力工作,结果表明你做得很好,但就像任何其他业务一样,细节决定成败,即使花哨的情节也可能隐藏偏见和错误。此列表并不详尽,它只是让读者思考可能隐藏在您的解决方案中的所有小问题。为了获得好的结果,重要的是要遵循您的流程并仔细检查您是否没有犯一些常见的错误。