编程语言
首页 > 编程语言> > 程序员欢乐送(第47期)

程序员欢乐送(第47期)

作者:互联网

程序员欢乐送(第47期)

来自专辑
程序员欢乐送
程序员欢乐送(第47期)

一直保持的追求有三点:技术、快乐、财富,这里记录每周值得分享的内容,周五把欢乐送达。

由于微信不允许外部链接,你需要点击页尾左下角的“阅读原文”,才能访问文中的链接,文中的所有链接已使用蓝色字体标记。

技术

Technology

1、MixNMatch

MixNMatch 是条件图像生成算法,可以通过多维度的特征,进行图片生成。

一共有四个维度:

以鸟类为例:
程序员欢乐送(第47期)

当然,这不仅仅局限于鸟类的图片生成,猫、狗、汽车等都可以。

用这个算法就可以做一些有趣的风格迁移,例如素描图片自动上色。
程序员欢乐送(第47期)

将一张素描图片作为shape+pose维度的特征,再选择background和texture两维的特征,就可以快速为素描的作品上色和添加背景。

作者在issues中提到,代码会在1月份开源,感兴趣的朋友可以关注一下。

项目地址:点击查看

2、PointRend

PointRend 是何凯明团队的新作,针对图像分割边缘精度低的上采样优化算法。

事实上,在图像分割任务上边缘预测不理想这个情况其实在许多前人的工作中都有提及,其中,有一篇论文详细统计了语义分割中,模型最容易误判的像素点基本上都在物体边缘(如下图右上红色部分标记)。
程序员欢乐送(第47期)

总的来说,图像分割边缘预测是一个未被很好解决的问题,而何恺明团队的 PointRend 是对此问题的一个新的思路和解法。例如,在Mask R-CNN 基础上,采用 PointRend 算法可以提高分割结果的精度,改善分割边缘,甚至五指都可以分割出来。
程序员欢乐送(第47期)

实验表明,采用 Deeplab v3 作为 backbone ,使用 PointRend 算法,在 Cityscapes 数据集上可以提高1.2 mAP;采用 MaskRCNN 作为 backbone,使用 PointRend 算法,在 COCO 数据集上可以提高 2+ mAP。

PointRend 算法,官方暂未开源,但有民间高手复现部分原理。感兴趣的朋友,可以持续关注。

论文地址:点击查看
民间复现:点击查看

3、DFDC

DFDC 是 Deepfake Detection Challenge 的缩写,这是一个 Deepfake 造假视频检测挑战赛。

基于深度学习技术生成的 Deepfake 假视频开始泛滥,这些视频能够凭空制造根本不存在的名人或政治人物的演讲内容,这些逼真的视频让人们发出『技术无所不能』的赞叹,同时,也引发了更多的人对技术滥用和不可控的担忧,甚至是恐惧。
程序员欢乐送(第47期)

而 DFDC 就是检测这些造价视频的挑战赛,该项比赛由 Facebook 联合亚马逊、微软、“AI伙伴关系”以及各路学者,一同举办,比赛的数据集有 470GB,奖金池高达一百万美金。

报名时间为:2019年12月12日 - 2020年3月3日。

对造假视频检测感兴趣的朋友,可以大展身手了。

比赛地址:点击查看

4、FasterSeg

FasterSeg 是地平线发布的新作,可以自行搜索用于语义分割的网络结构,不仅在准确性上达到了 SOTA 的水平,在速度上也比当前的算法要快。

模型搜索得到的网络,是通过 teacher network 辅助训练的,进而得到较好的精度。
程序员欢乐送(第47期)

项目地址:点击查看

5、MixNets

卷积神经网络(ConvNets)已广泛用于图像分类,检测,分割和许多其他应用。在卷积网络ConvNets设计上的最新趋势是提高准确性和性能。

遵循这种趋势,深度卷积在目前的卷积网络中变得越来越流行,例如MobileNet,ShuffleNet,NASNet,AmoebaNet,MnasNet和EfficientNet等。

Google 研究人员,对卷积核的大小进行了研究。随后,提出了一种混合深度卷积(MDConv),它在单个卷积运算中混合了不同的卷积核大小,因此它可以轻松捕获具有各种分辨率的不同模式。

因此,我们既可以用大卷积核来捕获高分辨率模式,又可以用小卷积核来捕获低分辨率模式。
程序员欢乐送(第47期)

为了进一步证明 MDConv 的有效性,研究者利用神经架构搜索开发了名为MixNets的新模型系列。

实验结果表明,MixNet 模型大大优于所有以前的移动端卷积网络,例如ShuffleNets,MnasNet,FBNet和ProxylessNAS。

特别是,MixNet-M 在 ImageNet 数据集上 top-1 达到了 77.0% 精度,同时使用的参数比 ResNet-152 少12倍,FLOPS 数少31倍。

推荐一个汇总的项目,里面有各种模型的 pretrained model,当然也包括 MixNet 。

项目地址:点击查看

6、py12306

不知道各位朋友回家的票,抢到了吗?回家的票想必都买完了吧。

当然,别忘记,马上又要开始抢返程火车票了。

抢火车票的话,能抢票的第三方软件有很多,例如智行火车票、携程、支付宝、美团都能抢,付费方式也是多种多样,各种豪华加速套餐。

免费开源的抢票软件也是有的,例如去年在《程序员欢乐送(第7期)》中推荐过的py12306。

python抢票工具py12306,支持分布式、多账号、多任务购票,同时还有web管理界面。

订票成功页面:
程序员欢乐送(第47期)

Web管理界面:
程序员欢乐送(第47期)

项目地址:点击查看

7、PythonPlantsVsZombies

初学 Python 的朋友,能找到一个感兴趣的学习切入点,是很有必要的。

例如,当初我刚学 Python 的时候,就对爬虫情有独钟,我写了很多爬虫程序,各种好玩的 idea 层出不穷。

写好程序的成就感,是不断前进的动力源泉。

当然,除了简单的爬虫,我想也会有人对写小游戏感兴趣,那不妨看看 PythonPlantsVsZombies。

它就是一个用 Python 写的植物大战僵尸小游戏,功能实现如下:

程序员欢乐送(第47期)

项目地址:点击查看

快乐

Pleasure

1、蓝牙通话手套

程序员欢乐送(第47期)

程序员欢乐送(第47期)

2、糟糕,想要!

程序员欢乐送(第47期)

程序员欢乐送(第47期)

财富

Wealth

定投基金,年化收益率怎么算?

A和B两个人都去买基金,他们都有12000元钱。

A定投,每个月投资1000元钱,投了12个月,总投资12000元,在这12个月的时间里,基金涨了,赎回后总共获得14000元。

那么,A的最终收益率 =(14000-12000)/12000=16.67%;

B一次性购买,第一个月就购买了12000元,12个月后,基金也是涨了,赎回后也是总共获得14000元。

那么,B的最终收益率 =(14000-12000)/12000=16.67%;

A和B的最终收益是相同的,但是他们的年化收益是不同的。

很明显,B的年化收益率就是16.67%。

但是,A的年化收益率并不是如此,因为A的每个月投的钱,投放的时间是不同的,比如最后投的1000元,才放了一个月而已,如果让这部分的钱的收益算成12个月的,显然是不合理的。

这时候就可以用IRR公式计算,IRR,又叫内部收益率。

可以直接使用Python计算:

import numpy
A = [-1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 -1000, 
 14000]
IRR_month = numpy.irr(A)
print('月度IRR:\t%.5f%%' % (IRR_month * 100))
IRR_year = (pow(IRR_month + 1, 12) - 1)
print('折算年化IRR:\t%.5f%%' % (IRR_year * 100))

计算结果:

程序员欢乐送(第47期)

手里的现金流每个月少1000,记为-1000,最后赎回得到14000,记为14000。

年化IRR = ( 1 + 月化IRR ) ^ 12 - 1

可以看到定投的,A的年化收益率约为32.14%,是B的年化收益率的近2倍。

原因也很简单,A的钱被占用的时间更少,时间成本也是要考虑进去的。

IRR不仅可以用于计算基金的定投收益,还可以用来计算信用卡分期、房贷、车贷、花呗、借呗、白条、网贷借款、P2P等等,很多产品的真实利率。

最后

The end

本周的程序员欢乐送,到此结束,下周再会。
程序员欢乐送(第47期)

Jack Cui https://cuijiahua.com
分享技术,乐享生活

标签:年化,PointRend,12,卷积,47,IRR,程序员,欢乐,1000
来源: https://blog.51cto.com/14915208/2526768