最近在使用sklearn的onclassSVM做异常检测的应用。在从最开始提取数据、分析数据、清洗数据、特征提取、模型训练、模型测试、模型改进中,发现有两个问题一直困扰着我,使得模型没有那么优秀,识别率存在问题,如果投入生产系统的话就会存在一些问题。
对于专业的人来说,可能会理性的看待这个识别率,但是非专业人就会直接判读为这个人工智能是痴呆!零样本学习也是人特有的一项能力,但是对于机器来说确是需要end-to-end训练才能完成的。于是乎,笔者在茶余饭后就在思考这个模型的问题。
1、对准确率的要求。
对准确率要求高的场景对人工智能的挑战更大,如果识别失败会造成生产的损失。准确率要求越高,那么对于算法和数据来说就需要花费大量的时间来进行充分的调试。数据来说,就需要数据多,那么特征也需要科学的选择挑选。算法来说就需要多测试几种不同的算法,尝试不同的超参数。如果是无监督的学习的话,估计经验和实测才能较好的评估不同的模型优劣。
2、鲁棒性问题。
人工智能的鲁棒性较弱,很多在测试阶段表现良好的数据,在实际场景应用中由于加入了一些随机噪音而变得很不稳定。笔者的实践中发现测试数据是通过随机数生成的,经过模型识别后可以判定为负类,但是生产系统的数据可不是随机数的属性的,可能和正常正类的数据相识,还带有噪声,对于模型来说就显得没有那么智能。
现在云计算和人工智能如火如荼,如果云计算比作“电”,人工智能就是“灯泡”,让灯泡更亮就需要找到合适的方法使得其相对更亮。
网友评论