我正在使用多类SVM和深度学习神经网络。有很多参数可以调整,尤其是选择正确的内核。选择理想参数的最佳方法是什么?
是否可以通过任何“目标函数最小化算法”迭代完成,还是会永远持续下去?
回答:
我认为这是数据挖掘项目中最耗时的任务之一。寻找最佳参数(也称为超参数)既困难又对数据挖掘项目至关重要。因此,有一些解决方案(例如,Python的机器学习库scikit,它有网格搜索功能,用于寻找SVM等算法的良好超参数,另外这里使用进化算法来寻找scikit中机器学习算法的正确超参数)
所以对于你的问题,我认为最好是编写(或寻找)类似Scikit网格搜索的方案。该方案在一个特定算法中测试一系列参数(超参数),并根据测试结果返回最佳参数。
对于C#和Accord框架,它有一个网格搜索来优化参数:http://accord-framework.net/docs/html/T_Accord_MachineLearning_GridSearch_1.htm