Jac*_*k H 6 algorithm artificial-intelligence genetic-algorithm
如何针对特定问题找到最佳学习规则,例如多类别分类?
我在考虑使用遗传算法,但我知道有关性能的问题.我正在寻找你没有使用过教科书学习规则的真实世界的例子,以及你如何找到这些学习规则.
好问题BTW.
分类算法可以使用许多特征进行分类, 例如:
因此,对于您对多个类别进行分类的问题,我将使用在线逻辑回归(FROM SGD), 因为它非常适合中小数据量(少于数千万个训练样例)而且速度非常快.
另一个例子:
假设您必须对大量文本数据进行分类.然后朴素贝叶斯是你的宝贝.因为它强烈喜欢文本分析.即使SVM和SGD更快,因为我更容易训练.但是当数据大小被认为是中等或小而不大时,可以应用这些规则"SVM和SGD".
一般而言,任何数据挖掘人员在他想要启动任何ML或简单采矿项目时都会向他自己询问四个目标点.
之后,你必须衡量其AUC,或任何相关的,就看你做了什么.因为您可能在一个项目中使用的不仅仅是一个分类器.或者有时当您认为自己找到了完美的分类器时,使用某些测量技术的结果似乎并不好.所以你会再次开始检查你的问题,找出你出错的地方.
希望我帮忙.
当您x向网络输入向量时,网络将根据所有权重(向量w)给出输出.输出和真实答案之间会有错误.平均误差(e)是函数,w比方说e = F(w).假设您有一层二维网络,那么图像F可能如下所示:

当我们谈论培训时,我们实际上是在谈论找到w最小化的e.换句话说,我们正在搜索函数的最小值.训练就是搜索.
那么,您的问题是如何选择搜索方法.我的建议是:这取决于表面的F(w)外观.更有条理的是,应该使用更随机化的方法,因为基于梯度下降的简单方法将有更大的机会引导你陷入局部最小值 - 所以你失去了找到全局最小值的机会.另一方面,如果表面F(w)看起来像一个大坑,那么就忘记了遗传算法.在这种情况下,简单的反向传播或基于梯度下降的任何东西都将非常好.
您可能会问我怎么知道表面是什么样的?这是一种经验技巧.或者您可能想要随机抽样一些w,并计算F(w)以获得表面的直观视图.