6

人工机器学习竞赛

 3 years ago
source link: https://panchuang.net/2021/08/10/%e4%ba%ba%e5%b7%a5%e6%9c%ba%e5%99%a8%e5%ad%a6%e4%b9%a0%e7%ab%9e%e8%b5%9b/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

人工机器学习竞赛

fendouai • 2021年8月10日 am5:15 • Medium

你们好啊!最近,我参加了一个叫做Artifialis的不和谐社区举办的一场友谊赛(顺便说一句,对ML感兴趣的人来说,这是一个很棒的地方)。挑战是在一个月底之前上交一个完整的机器学习项目,全部部署完毕(有几个陷阱,我稍后会告诉你)。我在这方面的经历可以用一个词来定义-激动人心。在这篇博客中,我将写下我在这次比赛中的经历,以及我在完成这个项目时面临的问题。Artificialis

这次比赛的参赛者在比赛开始时就把我们分成了小组。我被任命为我的团队的领导者,并对团队的进步负责。

经过近两天的讨论,我们最终确定了这个项目的想法-一款应用程序,它将从网络摄像头中获取输入,并识别所显示的美国手语(American Sign Language)字母表。之所以选择这一主题,是因为它将有助于弥合懂手语和不懂手语的人之间的沟通鸿沟。ASL

在确定了项目构思后,我们开始为它建立一个合适的模型。但是有一个问题–我们不能使用迁移学习。这将大大减慢训练过程,还会降低模型的准确性。transfer learning

尽管如此,我们还是决定在不使用ImageNet权重的情况下实现MobileNetV2架构(权重是模型在之前的培训中学习的模式)。经过几次不同的数据集和不同的超参数实验,我们得到了一个准确率在90%以上(不是过拟合的)的模型。我们决定继续使用此模型,并开始部署方面的工作。overfitting

尽管建模看起来很难,但这一部分让我们的团队经历了一段艰难的时光。

在我们的团队中,我们以前都做过一些TensorFlow,但没有人做过太多的OpenCV(一个需要与网络摄像头交互的库)。在项目结束前,我们只剩下两周的时间(我的学校测试正在进行中),所以我们决定不“浪费”我们的时间看OpenCV教程,只是在我们需要的时候谷歌上代码。

我们的第一个任务是编写一个程序,它将读取网络摄像头的输入,将其提供给模型,然后在本地设备上打印出预测结果。这很容易,我们在几天内就成功完成了。

然后我们开始尝试在Streamlight上部署该模型,但是到目前为止运行良好的程序就像我们使用Streamlight一样崩溃了。我们意识到Streamlight不直接支持网络摄像头集成,于是尝试使用一个基于Streamlight构建的库,称为Streamlight-WebRTC,该库启用了网络摄像头。由于某些原因,我们从未设法正确编写代码,几乎花了整整一周的时间试图弄清楚如何使Streamlight-WebRTC工作。Streamlit

有了一周的时间,我决定我们需要尝试另一个替代方案,并找到了一个简单的脚本,允许我们将视频帧输出到Streamlight。但这也有一个缺点–由于程序依赖于OpenCV,项目无法按照我想要的方式进行部署(因为托管应用程序的虚拟机将没有网络摄像头)。

由于没有时间,我们不得不继续前进,我们将代码与我们的模型集成在一起。当我们运行几个测试时,我们意识到我们的模型没有正常预测-它只预测了一个字母表来表示你对相机显示的任何迹象!

我们有两天的时间,我们的代码有一个巨大的缺陷。

今天是大部分行动发生的日子。在最后一天开始的时候,我们仍然有一个有问题的模型(或者说这是我认为的)。

为了查看提供给模型的内容,我们显示了网络摄像头输入。然后我们意识到,问题不在于模型,而在于它预测的图像。在将帧从BRG格式转换为RGB格式时,帧的配色方案会变得混乱,模型会对完全奇怪的数据进行预测。

我们解决了这个问题,并及时将文件上传到GitHub,并将其提交给服务器管理员亚历山德罗·兰贝蒂(Alessandro Lamberti)。Alessandro Lamberti

以下是该项目GitHub回购的链接:https://github.com/Chiraagkv/ASLhttps://github.com/Chiraagkv/ASL

写这篇文章,我感觉就像在写一部动作片,但我不得不说,这一点也不逊色。一路走来,我学到了很多,并发现我所掌握的知识有实际的用处。这确实是一次绝佳的机会。

现在就到这里吧。再见!

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/08/10/%e4%ba%ba%e5%b7%a5%e6%9c%ba%e5%99%a8%e5%ad%a6%e4%b9%a0%e7%ab%9e%e8%b5%9b/


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK