Lacmus项目:计算机视觉如何帮助挽救失去的人们

大家好!

您可能已经知道开放数据科学社区的机器学习促进社会公益(#ml4sg)计划。 发烧友在其框架内使用机器学习方法免费解决社会上重大的问题。 我们Lacmus项目团队(#proj_rescuer_la)致力于实施现代深度学习解决方案,以寻找在人口稠密地区之外(森林,田野等)迷路的人。



据粗略估计,俄罗斯每年有十万多人失踪。 他们中有形的人是远离人类居住的迷路者。 幸运的是,一些失踪者是自己选择的;动员了志愿人员的搜救队来帮助其他人。 最著名的这种分遣队可能是“丽莎·阿勒特”,但我想指出的是,他并不是唯一的一个。

目前,在21世纪,主要的搜索方法是使用技术手段对周围环境进行梳理,而这些手段通常并不比警笛或嗡嗡作响的信号灯复杂。 当然,这个主题是相关的和热门的,它引起了许多利用科学技术进步来寻求成就的想法。 其中一些甚至以原型的形式体现出来,并在专门组织的比赛中经过测试。 但是森林就是森林,搜索的实际条件,加上有限的物质资源,使这个问题变得很困难,并且距离完整的解决方案还很遥远。

最近,救援人员越来越多地使用无人飞行器(UAV)来调查该地区的大部分区域,以拍摄40-50m高度的地形。 通过一次搜索和救援行动,获得了数千张照片,迄今为止,志愿者们手动进行浏览。 显然,这种处理是漫长且低效的。 经过两个小时的工作,志愿者感到疲倦,无法继续搜索,毕竟,人们的健康和生活取决于它的速度。

我们与搜索和救援团队一起,正在开发一个程序,用于在无人机拍摄的图像中搜索失踪人员。 作为机器学习专家,我们努力使搜索变得自动且快速。



与类似解决方案的区别


不能肯定地说Lacmus是朝这个方向发展的唯一项目。 但是,似乎很少有人与救援队密切合作,专注于他们的紧急需求和能力。 前段时间,举行了奥德赛竞赛,不同的团队参加竞赛,以形成寻找和挽救人员的最佳解决方案,包括使用无人机。 在开发的初始阶段,我们不是作为参与者而是作为观察者参加了比赛。 比较比赛的结果,有关类似项目的信息以及我们与Lisa Alert,Owl,Extreme等团队进行交流的经验,我想指出许多类似物所固有的问题:

  • 实施成本。 奥德赛竞赛的一些团队正在开发自己的创新无人机和无人机。 但是您需要了解,俄罗斯的PSO通常是非营利组织,为无人机操作员配备价值超过1,000,000卢布的机器过于昂贵。 另外,仅仅生产飞机是不够的,必须建立其维护。 对于小公司而言,很难以与艰难的中国竞争对手相同的价格提供解决方案。
  • 许多解决方案的商业焦点。 商业项目没有错,但是找到在森林中迷路的人是一项相当具体的任务;并不是每个商业开发都可以融入其中。 您可以制作出出色的无人机并在其中粘贴识别作物的神经元,但是这样的项目对于使用志愿者搜索小组在森林中寻找人不太有用:这里您需要最便宜但有效的解决方案。 昂贵的多通道相机不适用于此处。 只有RGB,只有硬核。 由于相同的原因,热成像仪也消失了,其廉价型号的分辨率非常低。 (通常,热成像仪在这里无效,因为在森林中被冻结的人散发的热量太少了)。
  • 已知解决方案中使用的流行神经网络体系结构-YOLO,SSD,VGG-在像ImageNet这样的公共数据集上具有良好的质量指标,但在我们特定领域的图像上效果不佳。 (关于神经网络体系结构的选择,最后使用的久经考验的选项和功能-下面)。
  • 几乎没有人利用这种机会来优化推理模型。 在搜索区域中,通常没有Internet连接,因此您需要在本地处理接收到的图像。 大多数救援人员使用带有低功耗GPU的笔记本电脑,或者根本不带GPU的笔记本电脑在常规CPU上运行神经网络。 可以很容易地计算出,如果平均花费10秒来处理单个图像,则大约3个小时内将处理1000张图像。 在这里,我们可以说每一秒都很重要。
  • 现有发展的封闭性。 我们知道的所有解决方案都是封闭的和专有的。 但是问题太复杂了,无法由一小部分人解决,而并非所有人愿意提供帮助。 因此,我们正在开发一个完整的开源解决方案:奇怪的是,认为吸引如此多“现场”工作人员的主题对IT专家而言同样有趣。
  • 缺乏分配自由。 自愿性PSO通常不是集中式的,工作方法和应用程序是相互转移的,带有许可副本的软件在这里不起作用。 因此,我们选择了开放源代码和开放分发策略,以便任何人都可以下载我们的解决方案并使用它。 我们致力于开放科学和开源!

资料准备


看来,如果每次使用无人机的搜索操作都带来数千张照片,那么所积累的数据阵列应该是巨大的-拍摄和训练。 并非所有事情都那么简单,因为:

  • 没有用于标记数据的集中存储。 搜索操作期间拍摄的照片将来将不再使用或处理。
  • 获得的数据非常不平衡。 与被发现的人合影时,有数千张“空白”照片。 由于没有在任何地方记录有关扫描图像的信息,因此要在其中找到必要的图像,需要第二次完成大量工作-在没有“训练有素”的小团队的努力下。
  • 每个图像本身也都是“不平衡的”:所需的人仅占整个图像区域的一小部分。 显然,一个良好的神经网络不仅应该能够说一个人在图像中存在,而且还应该在特定位置上转圈(即执行检测物体而不是对图像进行分类的任务)。 否则,操作员会花费额外的时间和精力查看它,并且可能会错误地拒绝所需的照片。 但是为此,神经网络必须从照片中的标记数据中学习,在这些数据中使用特殊软件对所需对象进行标记。 在搜索操作过程中,没有人会这样做-以前没有。
  • 没有考虑到人们被发现的姿势,一年中的时间,地形类型和图片的其他特征的统计信息。 这样的数据对于使用分阶段摄影,照片编辑器或生成模型创建“合成”训练图像非常有用-但是要使用所有这些,您需要了解与真正迷路的人的照片看起来如何。 现在,在重建此类照片时,必须依靠救援专家的主观经验。
  • 除了技术上的困难外,法律上的障碍也可能对获得的图像的所有权施加限制。 通常,我们对收集数据的帮助请求始终没有得到答复。 由于缺乏此类数据,法律问题或司空见惯的懒惰,目前尚不清楚。

因此,宝贵的信息不会以任何方式用于训练神经网络,在磁盘和云存储上的某处丢失或死机,而不是提高训练样本的数量和质量。 我们正在编写一项服务,该服务除了其他功能外,还可以将有价值的照片上传给我们(也在下面进行介绍),但是与以往一样,任务比人多。

此外,迄今为止,该网络很少有来自无人机的图像的良好(开放)数据集。 我们找到的最合适的是斯坦福无人机数据集(SDD) 。 这是一张从大学校园上方高处拍摄的照片,上面标有“行人”(pedestrian)类的对象,还有骑自行车的人,公共汽车和汽车。 尽管拍摄角度相似,但所拍摄的行人和环境与我们的照片所发生的情况几乎没有共同之处。 在此数据集上进行的实验表明,在我们的数据上接受过训练的检测器的质量指标显示出较低的结果。 结果,我们现在使用SDD来训练所谓的主干,该主干提取顶级属性,并且必须在我们领域的图像上完成极端层。

这就是为什么我们长时间与各种搜索引擎和救援人员进行沟通的原因,试图了解在森林中迷路的人的样子,就像上面的照片一样。 结果,我们收集了关于24个姿势的独特统计信息,其中最经常发现失踪人员。 我们拍摄并标记了自己的数据集-Lacmus无人机数据集(LaDD),在第一个版本中,该数据集包含了400多个图像。 拍摄主要是在DJI Mavic Pro和Phantom的帮助下,从50-100米的高度进行的,图片分辨率为3000x4000,人均大小为50x100 px。 目前,我们已经有了第四版的数据集,其中包含2000张真实和“模拟”图像。 我们正在继续补充数据集,第五个版本指日可待。

在补充数据集时,我们需要按季节分离图像。 事实是,在冬季照片中训练的模型比在夏季或春季分别对整个数据集训练的模型显示更好的结果。 也许在白雪皑皑的背景上比在嘈杂的草地上更好地提取信号。



同时,仅在冬季图片中训练时,误报(误报)的数量会增加。 显然,不同季节的图像具有太大的差异(域),并且神经网络无法对其进行概括。 这仍有待观察,到目前为止,我们看到了两种方法:

  • 制作很多“小”网格并分别针对不同的领域进行学习(一个用于冬季,另一个用于夏季...除了季节,您还可以按区域细分:例如,一个模型用于中间地带和平原,另一个模型用于南部,依此类推) 。
  • 反复增加我们的数据,并尝试一次在所有域上训练模型。 根据Yandex 文章中类似问题的解决方案,我们倾向于尝试使用此特定选项。 由于已经描述的原因,很难与失散的人收集大量的真实照片,因此,也许我们将尝试基于“空”图像(有很多)来重建现实的教育示例。 因此,我们可能很快就会有GAN。

学习过程


我们图像的性质与ImageNet,COCO等流行数据集的图像显着不同。 由于针对此类集合开发的神经网络可能不适合我们的任务,因此有必要对各种体系结构的适用性进行研究。 为此,我们采用了在ImageNet上进行预训练的模型,然后在Stanford Drone数据集上对其进行了训练,之后我们“冻结”了主干,其余的探测器则直接在我们的图像上进行了训练。 下表中列出了最佳指标:
型式mAP(冬季)mAP(夏季)图片的运行时3000x4000 px,c(CPU \ GPU)
固态硬盘0.56--0.07 / 0.007
YOLOv30.720.230.07 / 0.009
DarkNet(ResneXt18)0.890.210.4 / 0.04
视网膜网(mobileNetv2)0.670.220.03 / 0.003
视网膜网(ResNet50)0.910.681.4 / 0.04


除了上表中的数字外,您还应注意Lacmus Drone数据集图像的这种特性,因为它具有很大的类不平衡性:背景区域与所需对象的矩形(锚)区域的面积之比为几千。 在训练探测器时,这会带来两个问题:

  1. 大多数具有背景的区域都没有任何有用的信息。
  2. 由于对象数量少的区域也不会对重量训练产生重大影响。

为了以某种方式解决这些问题,使用了各种训练方案,网络设置和训练样本。 我们测试的一种神经网络架构RetinaNet旨在减少大型类别不平衡的负面影响。 与质量较好但速度较慢的两级检测器(学生学会先寻找候选区域的方法)相比,RetinaNet的创建者对其进行了设计,以提高一级检测器的精度(先用预定义的矩形锚的密集网络覆盖图像,然后细化最能覆盖对象的对象)。 ,然后指定其位置)。 从有关RetinaNet的文章的作者的角度来看,由于大量空锚造成的不平衡,一级检测器正好丢失。 在这种优势的背景下,我们选择了带有ResNet50主干网的RetinaNet。

该网络的架构于2017 年引入 。 RetinaNet的主要功能是原始的Focal Loss损失功能,可让您处理培训中班级不平衡的负面影响:

FLpt=1pt gammalogptpt=\开casesp mboxify=11p mbox\结cases


其中p是模型估计的所需对象区域中内容的估计概率(简单地说,是神经网络的输出,如果将其减小到区间[0,1],则为p )。

通常,在其他领域中,损失函数应能够抵抗非典型实例(困难的例子),这些非典型实例很可能是异常值; 它们对体重训练的影响应减少。 相反,在“震源损失”中,减少了经常发生的背景(内部现象,简单示例)的影响,并且在训练RetinaNet权重时,很少见的物体具有最大的影响。 这样做是由于公式的这一部分:

1pt gamma


系数 \伽指数决定了总损失函数中困难例子的“权重”。

在RetinaNet训练过程中,将根据所有图像缩放级别,为候选区域(锚)的所有已考虑方向计算损失函数。 一幅图像总共大约有10万个区域,这与启发式采样(RPN)或稀有实例(OHEM,SSD)方法的搜索非常不同,每个小批量的区域数量很少(约256个)。 焦点损失值计算为所有锚点的功能值之和,并通过包含所需对象的锚点数进行归一化。 归一化只对它们执行,而不对总数进行归一化,因为绝大多数锚点是易于识别的背景,对整体损失函数的贡献很小。

从结构上讲,RetinaNet由一个主干以及两个附加的分类子网和框回归子网定义组成。



作为骨干,使用了在一个常用的卷积神经网络(例如ResNet50)之一之上工作的所谓的特征金字塔网络 (FPN)。 FPN具有来自卷积网络隐藏层的其他横向输出,从而形成具有不同比例的金字塔等级。 每个级别都有一个“自上而下的途径”,即 来自较小级别的较高级别的信息,但包含有关较大区域的信息。 看起来是人为的将“最小化”要素地图的增加(例如,通过简单地重复元素)增加到当前地图的大小,将它们逐元素添加,并将它们转移到金字塔的较低级别以及其他子网的输入(即,进入分类子网和Box回归子网)。 这使您可以从原始图像中选择不同比例的符号金字塔,在该金字塔上可以检测到大小物体。 FPN被用于许多体系结构中,从而改进了对各种大小的对象的检测:RPN,DeepMask,Fast R-CNN,Mask R-CNN等。

您可以在原始文章中阅读有关FPN的更多信息。

在我们的网络中,与原始网络一样,具有5个级别的FPN用 P3P7。 等级 Pl有权 2l比输入图像小一倍(我们不会详细介绍它们来自ResNet的哪个点-这会折断腿)。 金字塔的所有级别具有相同数量的通道C = 256,锚点A的数量约为1000(取决于图像的大小)。

各个等级的金字塔,锚点的面积从[16 x 16]到[256 x 256] P3之前 P7相应地,位移(步幅)为[8-128] px。 此大小使您可以分析小物体和周围的一些环境。 例如,如果您不考虑其周围的现实情况,则该分支与说谎的人非常相似。

原始FPN使用锚的三个长宽比(1:2,1,1:1,2:1); RetinaNet作者针对这些长宽比中的每一个都添加了三个比例,以实现更密集的覆盖[ ]。在每个级别上使用9种锚点类型,可以查找原始图像中长度/宽度为16到400像素的对象。分类子网可预测给定锚中K个类别中每个类别的存在概率。实际上,它是连接到每个FPN层的简单的完全连接的网络(Fully ConvNet,FCN)。在金字塔的不同级别上,它的参数是相同的,并且其结构非常简单:20,21/3,22/3



  • 输入功能卡(宽x高x C)
  • 带滤镜的3x3卷积
  • ReLU激活
  • 使用(K x A)滤镜进行3x3卷积,
  • 乙状结肠最后一层激活

总的来说,在该网络的输出处形成一个长度为K x A的向量,其中K是不同类别的数量。在我们的案例中,仅使用一个类-这是行人。

使用Box Regression Subnet,可以将4分量锚点坐标向量细化为对象的实际大小。这是连接到每个FPN层的小型,完全连接的网络,该网络独立于分类子网运行。它们的架构几乎相同,除了在训练期间,将大小(4 x A)的向量最小化-对于每个锚点:

(Δxmin,Δymin,Δxmax,Δymax)

如果IoU(联合上的交集)的真实区域包含对象> 0.5,则认为锚点包含对象。在这种情况下被分配为1,否则为0。这种方法减少了训练检测器的计算成本。干扰(检测图像中的对象)是为了计算骨干网和两个子网的转发功能。为了提高速度,仅在预测概率大于0.05的最佳1k区域中进行分类。在检测的最后阶段,仅保留金字塔各个级别的那些区域,其分类概率超过阈值= 0.5。有关RetinaNet架构的详细分析,也可以阅读面向数据科学的文章yi





自然,很少有人从头开始实现这种复杂的体系结构。我们以fizyr提供的OpenSource库为基础:Github上的keras-retinanet,随后对其进行了多次修订

神经网络优化


网络的速度对我们而言非常重要,因此我们经过漫长而艰苦的寻找解决方案,以期从20到3万卢布的笔记本电脑中获得最大收益。这只是我们尝试过的一些方法和自动框架:

  • 英特尔OpenVINO-用于CPU的优化(因此,我们编译了网络,但由于某些原因,该网络不起作用)。
  • TensorRT-用于在GPU上进行优化(我们的网络尚未转换)。
  • PlaidML-在Intel HD Graphics(!)上启动了我们的网格(该网格可以工作,但是与CPU相比,速度提升非常小)。
  • nGraph-没有性能提升。

还有...

  • Nvidia Jetson
  • Corral Edge TPU

因此,我们使用nndl等英特尔公司的各种技巧和库,将Tensoflow 1.14版本与针对具有AVX支持的CPU进行了优化。我们没有在没有AVX指令的情况下通过旧处理器(主要在2012年之前发布),现在可以说我们的解决方案甚至可以在Core 2 Duo上使用!我们还通过类似于Albumentations代码修复了最初效率低下的数据扩充干统计:


配套设备图片小时数3000x4000 px,c
i5-3337U (2x cores / 4x threads @ 1,80 Hz) AVX2.3
i5-6200U (2x cores / 4x threads @ 2,30 Hz) AVX21.7
i7-8750H (8x cores / 12x threads @ 2,20 Hz) AVX20.8
i7-9700 (8x cores / 8x threads @ 3.6z) AVX20.5
NVIDIA GeForce GTX 950M (2gb vRAM)0.3
NVIDIA GeForce GTX 2080Ti (11gb vRAM)0.02
Core 2 Duo E8400 (2x cores / 2x threads @ 3,0 Hz) no avx7

生产量


docker


根据救援人员的意愿和要求,我们开发了一个桌面应用程序,我们希望尽可能简化它的工作,从而使安装必要的库变得更加容易。对于普通用户而言,安装Nvidia Cuda和CuDNN或自定义构建TensorFlow并非易事。我还希望无人机飞行员不要担心在笔记本电脑上安装Python和设置依赖项。需要一种紧凑的工具,以免给用户隐藏设置和安装库的复杂性。我们找到了一个解决方案-这就是Docker。在容器中,我们部署了本地小型Web服务器,板上装有神经元并已安装依赖项。如果我们突然想要更新模型,那么我们只需要下载新版本的Docker映像即可。另外,我们以这种方式将GUI和模型分开。因此,例如,如果用户具有良好的通信通道,则GUI不能访问本地服务器,而只能访问远程服务器。此外,Docker提供了一个方便的API,可以直接从GUI自动对其进行控制,因此对于用户而言,所有内容都将保持透明。此外,Docker提供了自己的存储库,您可以在其中存储不同版本的映像,而不必担心带有模型的服务器。

用户界面或C#Works奇迹


现在介绍界面。在开发应用程序的过程中,三个标准对我们很重要:

  • 发展速度
  • 跨平台
  • 资源消耗低

在Internet上进行了一些搜索之后,我们从dotnext会议上看到了这份报告。 “嗯!这是新东西!某种非常年轻的框架?触摸它很有趣,“我们认为,并没有输!结果,我们的应用程序的GUI是用AvaloniaUI C#框架编写的,它使您可以在64位操作系统Win10,Linux和Mac上运行它。

AvaloniaUI是一个年轻但功能强大且快速的框架。在概念上,它与WPF非常相似,后者使您可以在不真正更改代码的情况下将应用程序传输到WPF。它快速高效,比WPF更快地绘制2D图形,消耗的资源更少。还有一些可以增强原始WPF的功能。

至于内部设备,此处使用SkiaSharp库来渲染图形和GTK(对于Unix系统)。 X11渲染器的开发也在进行中。所有这些使您可以在任何地方,任何地方,甚至在控制台缓冲区(!)中绘制界面。如果.Net Core可以在Bios中启动,那么AvaloniaUI会像在凉爽的主板上那样在此处绘制时尚的游戏界面。

尽管AvaloniaUI仍处于测试阶段,但它仍是一个开放的框架,并且正在流行,并且该框架中存在错误。但是开发人员正在不断对其进行完善和补充,截至2019年底,我们可以说已经可以在其上编写小型商业解决方案了。如果您熟悉WPF和C#,那么您绝对应该尝试一下。优点还可以归因于该接口的资源消耗低(这不能说成是电子),这意味着我们为网格赢得了几兆字节的RAM。


那就是他的能力...我

也想说这个项目得到了非常积极的支持,开发人员很快就对此问题做出了回应。那些有兴趣谁可以阅读我们的文章,但这一文章。而这个

为了充分理解这个概念很有看头性能尼基塔Tsukanova @kekekeks他是此框架的开发人员,精通该框架以及.NET的一般知识。

后端


除了桌面应用程序之外,我们还开发了mlOps基础结构,用于进行实验并在云中找到最佳的神经网络体系结构。使用服务器端,我们想要:

  • 汇总数据并集中存储;
  • 使神经网络的学习过程自动化,为研究创造环境,并为他人提供对其的访问;
  • 为搜救队提供对云的访问,以便他们在必要时也可以使用累积的数据;

整个系统架构如下所示:



桌面客户端可以通过REST API使用docker容器的本地版本和中央服务器上的最新版本。

身份微服务仅允许授权用户访问服务器。

数据集服务用于存储图像本身及其标记。

预测服务使您可以在飞行员有宽阔频道的情况下快速处理大量图像。

需要培训服务来测试新模型并在新数据到来时对现有模型进行重新培训。

使用RabbitMQ / Redis管理任务队列。

GPU功能搜索


尽管事实上神经网络的推论甚至可以在简单的笔记本电脑上工作,但仍需要GPU来训练模型。 从技术上讲,您可以在CPU上对其进行训练,但实际上这会花费太多时间。 并非所有加入该团队的人都拥有一台适用于深度学习的计算机,因此我们正在寻找集中式GPU功能。

目前,我们正在与DTL进行谈判,我们希望合作能够发展。 DTL GPU服务器的独特之处在于使用浸入式冷却:将机架浸入特殊的介电液中。 看起来像这样:




(摄影师注意:蓝色不是Cherenkov的辉光。在它们中是这样的亮点)。

抒情离题。 “您知道Beeline的神经网络吗?”


老实说,我真的不想碰这个(滑溜溜的)话题,但是这个话题仍在继续困扰着我们,因此不可能假装我们身在坦克中。 是的,我们了解Beeline的神经网络。 根据与我们合作的飞行员的反馈,它的性能比我们的版本差,并且仅在高端平台上有效。 根据Beeline的开发人员的说法-该项目已冻结,目前尚未开发。 从常识的角度来看,具有直线性的直线新闻在俄罗斯是第一个开发这种神经网络的人。 很少有人甚至采用由Facebook Research或Google Brain这样的实验室设计的架构,更不用说创建自己的架构了。 通常,这只是为了使公共OpenSource库适应您的主题领域的需求。 开发此软件的每个人都知道,开放库在俄罗斯商业软件中使用的频率如何。 在大多数情况下,甚至没有违反许可证的情况。 但是,将整个国际开源组织的成就放出来并对其进行大声宣传至少是很难的。 似乎我们的成就也得到了利用:特别是在游戏化中,我们的照片被照亮了。 与有关Lacmus数据集的部分中的“冬季”照片进行比较:



还有其他理由认为此事不仅限于此处的数据。

首先,对我们不利的是,直线神经网络现在变得不可扭转。 当提及它时,就无法理解它是否真的是关于她,我们的申请或总体上是关于别人的选择。 在权力下放,JI可控性差和反馈渠道少的情况下,有关Lacmus工作的普遍性和质量以及类似进展的任何信息都将是有用的-但围绕Beeline的炒作掩盖了一切。

我们计划目前继续监视这种情况,但是,我们向社区提出的要求是,首先,当他们100%确信是“直线神经网络”时,才说“直线神经网络”;其次,阅读开放源代码许可证并诚实地表明作者身份。

总结


在过去的2019年,Lacmus基金会的成员:

  • 我们拍摄并标记了一个唯一的数据集,其最新版本包含2000多张图片;
  • 尝试了多种不同的神经网络架构,并选择了最合适的;
  • 我们选择了神经网络的最佳超参数,并在我们自己的独特数据上对其进行了训练,以实现最准确的识别;
  • 为无人机操作员开发了跨平台应用程序,可以在离线工作时使用;
  • 优化了我们的神经网络的工作,使其可以在预算和低功耗笔记本电脑上工作;

目前,LAPMUS神经网络mAP指标的最佳指标为94%。 我们的程序已准备就绪,可用于实际搜索和救援行动,并已通过常规运行测试。 在“字段”和“防风林”类型的开放区域中,所有测试均“丢失”。 现在,救援队已经在使用Lakmus并帮助寻找人员。

我们还获得了开放数据科学的年度项目奖:



今年,我们计划:

  • 寻找可靠的托管基础​​架构的合作伙伴;
  • 实现Web界面和mlOps;
  • 在UE4引擎上或在GAN的帮助下形成大型综合数据集;
  • 在Kaggle发起一场InClass竞赛,为每个想要提升DL / CV技能并寻找最佳SOTA解决方案的人;
  • 向我们的视网膜网添加更多的骨干实现和该架构的变体;

我们确实缺乏执行这些计划的工人,因此无论培训的水平和方向如何,我们都会为每个人感到高兴。
如果我们在一起可以挽救至少一个人,那么所有的努力都不会白费。

如何帮助项目


我们是一个开源项目,我们很乐意接受所有人! 以下是指向我们的github存储库的链接:


如果您是开发人员并想加入该项目,则可以写信给Perevozchikov Georgy Pavlovich,所有社交网络中的gosha20777gosha20777 @ live.ru或通过松弛ODS中的#4ml4g频道加入该项目(如果有的话)。
我们需要:

  • ML开发人员
  • C#/ go / python开发人员;
  • 一线工人;
  • 贝克斯;
  • 只是任何方向的活跃人士! 我们将很高兴见到您!

如果您不参与开发,则还可以帮助该项目:

  • 您可以帮助我们撰写文章;
  • 您可以帮助我们编写用户文档和Wiki(并在那里纠正语法错误)))
  • 您可以继续担任产品经理,并在trello中完成任务;
  • 您可以为我们提供一个想法;
  • 您可以发布此帖子;

关于团队


项目经理:Georgy Pavlovich Perevozchikov, gosha20777

所涉及人员的不完整清单(实际上,这个清单要大得多,如果您被不公正地遗忘了,请告诉我,我们将予以补充):

  • #proj_rescuer_la频道中最活跃的ODS参与者:Kseniia,balezz,ei-grad,Palladdiumm,sharov_am,dartov
  • 消耗臭氧层物质以外的项目参与者:Martynova Viktoriya Viktorovna(项目组织,数据收集和标签),Denis Petrovich Shurankov(数据收集组织),Daria Pavlovna Perevozchikova(已标记所有照片的30%)。
  • 来自Liza Alert小组的无人机操作员,他们协助处理了图像和数据集的形成:Partyzan,Vanteich,Sevych,加利福尼亚,Tarekon,Evgen,GB。

特别感谢:


本文与balezzgosha20777 habrozhitelami共同撰写。

每个人都要机智,永不迷路!

影片

甜点工作的视频演示。 早期的Alpha版本。 对于那些读到最后的人。 2019年2月。

Source: https://habr.com/ru/post/zh-CN483616/


All Articles