眼前一亮的小项目,大胆的想法,被玩坏了!

2023-11-22 01:59

本文主要是介绍眼前一亮的小项目,大胆的想法,被玩坏了!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是 Jack。

好久没有推荐各种有趣好玩的小项目了,今天,总结一下最近新出的,值得跑一跑的算法。

学算法嘛,先从跑包开始。

糟糕,我又有了很多大胆的想法!

PTI

大家都知道,用 StyleGAN 可以做一些人脸属性编辑的算法。

比如,我写过的,去掉猛男的胡子:

就是这篇文章: 让猛男娇羞的AI算法

PTI 也是利用 StyleGAN 来“搞事”的,它“搞事”的维度有三个:微笑、年龄、姿态。效果如下:

比较有意思的是微笑和年龄的效果。

比如比较出名的假笑特效,PTI 就是一种实现思路。

假笑面具,被人玩坏了。

当然,某音的特效不只是这个,后面有机会再细聊。

改变年龄,这个也很有意思。

LeCun大神的效果:

谁还没年轻过?

再看吴恩达老师:

就很萌!

磨皮、去褶、小脸,火力全开。

当然,年龄这个维度,变老、变年轻,都是可以控制的。

项目地址:

https://github.com/danielroich/PTI

SimSwap

SimSwap 的功能跟它的名字一样,Swap脸。

除了我们熟知的 DeepFace,这类算法还有很多,SimSwap 就是其中之一,虽然 2020 年就发了论文,但刚刚正式开源

我们先看下效果:

猜猜这位“金轮”,他是谁:

简单解释下原理:

左半部分:将源人脸的身份特征向量通过 AdaIN 嵌入到特征中,对目标图像进行编码-解码生成,直接得到身份替换后的图像。

右半部分:将原有的 FM loss 进行简单修改,选取深层特征。作者解释说浅层特征包含更多纹理信息,简单施加会使得生成的图像更像目标图像。

项目地址:

https://github.com/neuralchen/SimSwap

Cartoon-StyleGan2

没错,又是基于 StyleGAN 的算法,漫画脸生成器。

看看这画风,最后两列是 Cartoon-StyleGan2 的效果。

Cartoon-StyleGan2 用的就是 StyleGAN2-ADA 和 FreezeD。

项目地址:

https://github.com/happy-jihye/Cartoon-StyleGan2

LightSeq

这是字节开源的一个推理引擎,最近更新了,现在支持 Transformer 系列算法的训练了。

LightSeq 支持 BERT、GPT、Transformer 等,学 NLP 的同学,记得去看看。

LightSeq 可以应用于机器翻译、自动问答、智能写作、对话回复生成等众多文本生成场景。

项目地址:

https://github.com/bytedance/lightseq

Python Programming Puzzles

AI 开始对程序员下手了!

微软打造了一套 LeetCode 编程题,用于 AI 编程解决方案的研究。

题目:

def sat(x: float, coeffs: List[float]=[2.5, 1.3, -0.5]):assert type(x) is float, 'x must be of type float'a, b, c = coeffsreturn abs(a * x ** 2 + b * x + c) < 1e-6

这是来自 MIT、Allen AI 和微软的研究人员提出的一种全新的编程题目描述方法。

这样的题目形式可以让 AI 审题更容易,人类程序员的理解也不会受到影响。

然后,再提供对应的解题代码。

def sol(coeffs=[2.5, 1.3, -0.5]):a, b, c = coeffsif a == 0:ans = -c / b if b != 0 else 0.0else:ans = ((-b + (b ** 2 - 4 * a * c) ** 0.5) / (2 * a))return ans

目前,一共有 215 个题目。

题目还在持续更新扩充中,微软开源这个数据集,是希望这个数据集可以开发出新的AI编程解决方案。

AI 编程写代码,能走到什么程度,我们拭目以待。

最后

看了这些 AI 算法,你有没有,一些大胆的想法?

对了,上个周末的抽奖,20本书和10件T恤,已经完成。

信息也整理完了,挨个找人聊,核对信息,也是个体力活啊。

奖品,今天会沟通,陆续发货,感谢各位小伙伴们的支持。


学AI就关注我吧!

最后再送大家一本,帮助我拿到 BAT 等一线大厂 offer 的数据结构刷题笔记,是一位 Google 大神写的,对于算法薄弱或者需要提高的同学都十分受用:

谷歌和阿里大佬的Leetcode刷题笔记

以及我整理的 BAT 算法工程师学习路线,书籍+视频,完整的学习路线和说明,对于想成为算法工程师的,绝对能有所帮助:

我是如何成为算法工程师的,超详细的学习路线


我是 Jack,我们下期见!

这篇关于眼前一亮的小项目,大胆的想法,被玩坏了!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/406667

相关文章

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Nginx实现高并发的项目实践

《Nginx实现高并发的项目实践》本文主要介绍了Nginx实现高并发的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用最新稳定版本的Nginx合理配置工作进程(workers)配置工作进程连接数(worker_co

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx

SpringBoot项目注入 traceId 追踪整个请求的日志链路(过程详解)

《SpringBoot项目注入traceId追踪整个请求的日志链路(过程详解)》本文介绍了如何在单体SpringBoot项目中通过手动实现过滤器或拦截器来注入traceId,以追踪整个请求的日志链... SpringBoot项目注入 traceId 来追踪整个请求的日志链路,有了 traceId, 我们在排