吴恩达老师的小短文翻译。
建立AI系统很难。尽管外界有各种理想化的宣传,AI工程师实际每天都在和困难的问题斗争。接下来我将探索在AI系统建立中的重要挑战。今天的主题是:建立在实际应用中稳定的AI系统有哪些挑战。
由于深度学习的崛起,监督性学习模型的准确率在突飞猛进。但是在jupyter notebook上建立一个模型和交付一个有价值的产品之间还是有巨大的鸿沟。
多个研究小组,包括我自己的和一些其他的,发表文章报告了深度学习根据X光和其他医疗影像做出的诊断有着和放射科医生差不多甚至更高的准确率。为什么这些系统不能广泛部署呢?
我认为稳定性是一个主要障碍。例如,如果我们从有训练良好的X光技师和高质量X光机器的顶级医院搜集数据,我们在这些医院数据的基础上训练和验证一个先进的模型,然后我们展示出和放射科医生差不多甚至更好的诊断能力。
但是如果我们把这个算法给一个旧医院,那里技师的训练欠缺或者机器老旧,拍摄的影像看起来不一样,纳闷神经网络很可能错过它本来可以发现的问题,误诊一些实际并没有的问题。然而任何一个人类放射科医生可以走进这个旧医院依然做出准确的诊断。
我在不同的应用中看到这种挑战:
1. 一个用成年人声音训练的语音识别系统。在它交付之后,用户群体趋向于年轻。大量年轻人用户导致模型表现降级
2. 一个制造业影响检测系统用一个多月来在现场收集的图像来训练。后来工厂的灯光改变了,于是模型表现下降。
3. 当工程师交付一个网页评级系统,语言模式不断发展,新的名人声名鹊起。搜索词变化,导致表现下降。
我们团队在更好的解决稳定性问题。方法包括技术性的比如数据增强和上线后监控系统,保证我们及时发现问题并修复。有一些新尝试来指定一个算法可以安全使用的操作条件,还有更多在正式验证阶段使用的新方法。对抗性攻击的稳健性是另外一个重要的考虑,但是大多数稳定性问题涉及的是在数据分布中的非对抗性变化。
稳定性问题中一个重要的挑战是难以进行系统性学习。我们怎么评估一个算法在一种分布的数据上训练出来,但是在另外一种分布的数据上的表现。在全新数据上的表现似乎运气的成分更大。这也是为什么稳定性方面的学术工作成功数量小于实际的重要性。更好的评估测试会帮助驱动学术研究。
很多团队仍然在通过直觉和经验解决稳定性问题。我们,作为一个团体,必须发展更多的系统性解决方案。
网友评论