ModelScope开源模型社区小白测评

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,5000CU*H 3个月
模型训练 PAI-DLC,5000CU*H 3个月
简介: 简易操作无脑上手

【前言】

什么是ModelScope

这个问题我找了不下十几个文章,简短来说还是官网的解释最全面

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!

汇集行业领先的预训练模型,减少开发者的重复研发成本,提供更加绿色环保、开源开放的AI开发环境和模型服务,助力绿色“数字经济”事业的建设。 ModelScope平台将以开源的方式提供多类优质模型,开发者可在平台上免费体验与下载使用。

这里有一个概念,泛AI是什么

说白了就是泛人工智能,通过智能技术逐渐将基建设施不断智能化择优化,这里离不开人工智能算法、算力、数据三位一体的基础设施可面向全行业全领域提供通用的AI能力,目前主要搭建模式为智能底座作为基底,AI基建作为平台,智能+作为窗口,主要的落地项目涵盖“机器学习”“计算机视觉”“语音技术”“自然语言处理”“AI+医疗行业”“AI+城市管理”“自动驾驶商业化加速”“数字内容创新”等最常见的比如远程测温、口罩识别、云办公、云课堂,无接触配送服务各行各业

我们学这些有什么用

  • 免费使用平台提供的预训练模型,支持免费下载运行
  • 一行命令实现模型预测,简单快速验证模型效果
  • 用自己的数据对模型进行调优,定制自己的个性化模型
  • 学习系统性的知识,结合实训,有效提升模型研发能力
  • 分享和贡献你的想法、评论与模型,让更多人认识你,在社区中成长

【注册】

目前注册机制相当简单,不用绑定任何信息即可无痕迹注册,点击网址https://modelscope.cn/?spm=a2c6h.27262988.J_4502519820.2.5f874368DHqcuw#/models

选择右上角立即登录

image.png

选择注册按钮

image.png

填写信息,注意保存密码输入错误三次冻结60分钟

image.png

登录后进入主界面

image.png

这里有几个介绍的地方,第一个“快速开始”这个是对新手非常友好的地方,配备了环境配置和安装配置,第二是“社区简介”,主讲什么是ModelScope对平台提供的服务和功能进行简介,第三个是“Python library”,对调用的library进行了细致的介绍,第四个模型库,在模型库下载模型并使用,是如果你对此一窍不通,可以跳过这些直接试用模组

【实际操作】

第一版模组共包含145个模组分别有不同的功能,测试过程也相当简单,我们先试用两个模组,做一下测试

达摩卡通化模型

输入一张人物图像,实现端到端全图卡通化转换,生成二次元虚拟形象,返回卡通化后的结果图像。

其生成效果如下所示:

模型描述

该任务采用一种全新的域校准图像翻译模型DCT-Net(Domain-Calibrated Translation),利用小样本的风格数据,即可得到高保真、强鲁棒、易拓展的人像风格转换模型,并通过端到端推理快速得到风格转换结果。

使用方式和范围

使用方式:

直接推理,在任意真实人物图像上进行直接推理;

使用范围:

包含人脸的人像照片,人脸分辨率大于100x100,总体图像分辨率小于3000×3000,低质人脸图像建议预先人脸增强处理。

目标场景:

艺术创作、社交娱乐、隐私保护场景,自动化生成卡通肖像。

如何使用

在ModelScope框架上,提供输入图片,即可以通过简单的Pipeline调用来使用人像卡通化模型。

代码范例

import cv2
from modelscope.outputs import OutputKeys
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
img_cartoon = pipeline(Tasks.image_portrait_stylization, 
                       model='damo/cv_unet_person-image-cartoon_compound-models')
result = img_cartoon('input.png')
cv2.imwrite('result.png', result[OutputKeys.OUTPUT_IMG])
print('finished!')

模型局限性以及可能的偏差

低质/低分辨率人脸图像由于本身内容信息丢失严重,无法得到理想转换效果,可预先采用人脸增强模型预处理图像解决;

小样本数据涵盖场景有限,人脸暗光、阴影干扰可能会影响生成效果。

训练数据介绍

训练数据从公开数据集(COCO等)、互联网搜索人像图像,并进行标注作为训练数据。

真实人脸数据FFHQ常用的人脸公开数据集,包含7w人脸图像;

卡通人脸数据,互联网搜集,100+张

模型推理流程

预处理

人脸关键点检测

人脸提取&对齐,得到256x256大小的对齐人脸

推理

为控制推理效率,人脸及背景resize到指定大小分别推理,再背景融合得到最终效果;

亦可将整图依据人脸尺度整体缩放到合适尺寸,直接单次推理

数据评估及结果

使用CelebA公开人脸数据集进行评测,在FID/ID/用户偏好等指标上均达SOTA结果:

Method FID ID Pref.A Pref.B
CycleGAN 57.08 0.55 7.1 1.4
U-GAT-IT 68.40 0.58 5.0 1.5
Toonify 55.27 0.62 3.7 4.2
pSp 69.38 0.60 1.6 2.5
Ours 35.92 0.71 82.6 90.5

引用

如果该模型对你有所帮助,请引用相关的论文:

@inproceedings{men2022domain,
  title={DCT-Net: Domain-Calibrated Translation for Portrait Stylization},
  author={Men, Yifang and Yao, Yuan and Cui, Miaomiao and Lian, Zhouhui and Xie, Xuansong},
  journal={ACM Transactions on Graphics (TOG)},
  volume={41},
  number={4},
  pages={1--9},
  year={2022}
}

操作步骤

选择右上角在notebook中打开

image.png

启动实例一般用CPU环境,等待二到五分钟查看notebook打开代码网页

image.png

代码行非常简单

import cv2

from modelscope.outputs import OutputKeys

from modelscope.pipelines import pipeline

from modelscope.utils.constant import Tasks

img_cartoon = pipeline(Tasks.image_portrait_stylization,  

                      model='damo/cv_unet_person-image-cartoon_compound-models')

result = img_cartoon('input.png')

cv2.imwrite('result.png', result[OutputKeys.OUTPUT_IMG])

print('finished!')

插入名为input.png的图片,直接从桌面进行拖拽,注意这个是使人像卡通化的功能,一定要选择人像,否则会无法识别,点击代码上方小三角运行,无需任何代码改动

image.png

识别完毕后你会或者一张result.png的图片,我们来看一下结果

image.png

image.png

这个识别还是比较模糊的,但是已经能锁到人脸并且进行面部特征虚拟化,接下来我们再实验一款模组

文生图模型

这个说白了是对一段英文进行图片还原,相当于看爽文自动播放ppt,不过这个也是基于他现有的库进行检索,然后生成的图片

效果展示


快速玩起来

玩转OFA只需区区以下数行代码,就是如此轻松!如果你觉得还不够方便,请点击右上角Notebook按钮,我们为你提供了配备了GPU的环境,你只需要在notebook里输入提供的代码,就可以把OFA玩起来了!

from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
from modelscope.preprocessors.multi_modal import OfaPreprocessor
model = 'damo/ofa_text-to-image-synthesis_coco_large_en'
preprocessor = OfaPreprocessor(model_dir=model)
ofa_pipe = pipeline(task=Tasks.text_to_image_synthesis, 
                    model=model, preprocessor=preprocessor)
result = ofa_pipe({"text":'a bear in the water.'})
print(result['output_img'])


OFA是什么?

OFA(One-For-All)是通用多模态预训练模型,使用简单的序列到序列的学习框架统一模态(跨模态、视觉、语言等模态)和任务(如图片生成、视觉定位、图片描述、图片分类、文本生成等),详见我们发表于ICML 2022的论文:OFA: Unifying Architectures, Tasks, and Modalities Through a Simple Sequence-to-Sequence Learning Framework以及我们的官方Github仓库https://github.com/OFA-Sys/OFA


相关论文以及引用信息

如果你觉得OFA好用,喜欢我们的工作,欢迎引用:

@article{wang2022ofa,
  author    = {Peng Wang and
               An Yang and
               Rui Men and
               Junyang Lin and
               Shuai Bai and
               Zhikang Li and
               Jianxin Ma and
               Chang Zhou and
               Jingren Zhou and
               Hongxia Yang},
  title     = {OFA: Unifying Architectures, Tasks, and Modalities Through a Simple Sequence-to-Sequence
               Learning Framework},
  journal   = {CoRR},
  volume    = {abs/2202.03052},
  year      = {2022}
}


操作步骤

和第一个相同启动notebook,我这个是在网页进行演示,不再配置本地文件进行模拟,同时也只是为了给大家展示他的趣味性,防止一上来因为难以理解而放弃,这个要选择GPU环境,仅仅16小时的测试时间,CPU和GPU不同的区别在于,GPU是显示图形处理,更方便图片的生成

image.png

复制代码进行粘贴,我们让他生成一只熊在水旁,然后打印成图片看看他的效果,点击三角运行

image.png

这个下载的比较久而且出现了一个bug

Truncation was not explicitly activated but `max_length` is provided a specific value, please use `truncation=True` to explicitly truncate examples to max length. Defaulting to 'longest_first' truncation strategy. If you encode pairs of sequences (GLUE-style) with the tokenizer you can select this strategy more precisely by providing a specific strategy to `truncation`.

简单理解应该是没有对图片的大小尺寸进行设置,然后我们修改最后一行代码

print(result['output_img'].save('result.png'))

生成成功

image.png

【结束语】

目前泛AI技术虽然还不是非常成熟,但是已处于飞速发展阶段,学好新模型,才能更好的节约时间和加强效率,事半功倍,下面是开发者文档,大家有需要的可以做一些对接:https://modelscope.cn/?spm=a2c6h.27262988.J_4502519820.2.5f874368DHqcuw#/docs/%E5%BC%80%E5%8F%91%E8%80%85%E6%96%87%E6%A1%A3

相关实践学习
基于阿里云DeepGPU实例,用AI画唯美国风少女
本实验基于阿里云DeepGPU实例,使用aiacctorch加速stable-diffusion-webui,用AI画唯美国风少女,可提升性能至高至原性能的2.6倍。
目录
相关文章
|
1月前
|
自然语言处理
在ModelScope中,你可以通过设置模型的参数来控制输出的阈值
在ModelScope中,你可以通过设置模型的参数来控制输出的阈值
38 1
|
1月前
|
API 语音技术
ModelScope-FunASR**有支持热词又支持时间戳的模型**。
【2月更文挑战第30天】ModelScope-FunASR**有支持热词又支持时间戳的模型**。
90 2
|
1月前
|
人工智能 API 决策智能
Modelscope结合α-UMi:基于Modelscope的多模型协作Agent
基于单个开源小模型的工具调用Agent,由于模型容量和预训练能力获取的限制,无法在推理和规划、工具调用、回复生成等任务上同时获得比肩大模型等性能。
|
1月前
|
人工智能 达摩院 自然语言处理
超好用的开源模型平台,ModelScope阿里达摩院
超好用的开源模型平台,ModelScope阿里达摩院
195 1
|
7天前
|
人工智能 开发工具 Swift
ModelScope联手OpenDataLab:直接调用7000+开源数据集,赋能AI模型加速研发
魔搭社区和OpenDatalab浦数合作,共同开启一场模型与数据的深度融合,旨在为中国开发者打造更加高效、开放的AI体验。
|
1月前
|
开发框架 API 决策智能
ModelScope-Agent框架再升级!新增一键配置多人聊天,配套开源多智能体数据集和训练
ModelScope-Agent是魔搭社区推出的适配开源大语言模型(LLM)的AI Agent(智能体)开发框架,借助ModelScope-Agent,所有开发者都可基于开源 LLM 搭建属于自己的智能体应用。在最新升级完Assistant API和Tool APIs之后,我们又迎来了多智能体聊天室的升级,通过几分钟快速配置即可搭建一个全新的聊天室。
|
1月前
|
机器学习/深度学习 人工智能 Swift
PAI x ModelScope: 在PAI使用ModelScope模型
在当前的人工智能领域,特别是大语言模型、文生图等领域,基于预训练模型完成机器学习模型的开发部署已成为重要的应用范式,开发者们依赖于这些先进的开源预训练模型,以简化机器学习应用的开发并加速创新。
|
1月前
|
数据采集 机器学习/深度学习 人工智能
阿里云魔搭社区发起ModelScope-Sora开源计划
阿里云魔搭社区在2024全球开发者先锋大会上启动ModelScope-Sora开源计划,聚焦中国多模态大模型研究,推出一站式工具链和Data-Juicer多模态数据处理系统,提升处理效率与质量。该计划还包括基础类Sora模型开源及沙盒实验室,以支持开发者迭代与训练。面对数据质量、安全、商业平衡及算力挑战,魔搭社区致力于推动AI创新,已汇聚众多模型与开发者。
919 1
阿里云魔搭社区发起ModelScope-Sora开源计划
|
1月前
|
机器学习/深度学习 测试技术 TensorFlow
ModelScope模型使用与EAS部署调用
本文以魔搭数据的模型为例,演示在DSW实例中如何快速调用模型,然后通过Python SDK将模型部署到阿里云PAI EAS服务,并演示使用EAS SDK实现对服务的快速调用,重点针对官方关于EAS模型上线后示例代码无法正常调通部分进行了补充。
118 2
|
1月前
|
机器学习/深度学习 数据采集 编解码
阿里云魔搭发起“ModelScope-Sora开源计划”
阿里云魔搭发起“ModelScope-Sora开源计划”
82 0
阿里云魔搭发起“ModelScope-Sora开源计划”