MindSpore Hub是MindSpore生态的预训练模型应用工具,作为模型开发者和应用开发者的管道:
当前MindSpore Hub提供的预训练模型主要包括 图像分类、目标检测、语义模型、推荐模型等。更多模型内容可以查看官网。
版本号 | 操作系统 | 可执行文件安装依赖 | 源码编译安装依赖 |
---|---|---|---|
MindSpore Hub master | - Ubuntu 18.04 x86_64 - Ubuntu 18.04 aarch64 - EulerOS 2.8 aarch64 - EulerOS 2.5 x86_64 |
- Python 3.7.5 - MindSpore master - 其他依赖项参见setup.py |
与可执行文件安装依赖相同 |
setup.py
中的依赖项,其余情况需自行安装。由于Hub直接使用MindSpore models仓代码,Hub对Mindspore版本有依赖。请按照根据下表中所指示的对应关系,在MindSpore下载页面下载并安装对应的whl包。
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/{MindSpore-Version}/MindSpore/cpu/ubuntu_x86/mindspore-{MindSpore-Version}-cp37-cp37m-linux_x86_64.whl
MindSpore Hub | 分支 | MindSpore |
---|---|---|
1.10.0 | r1.10 | 1.10.0 |
1.9.0 | r1.9 | 1.9.0 |
1.8.0 | r1.8 | 1.8.0 |
1.6.0 | r1.6 | 1.6.0 |
1.5.0 | r1.5 | 1.5.0 |
1.4.0 | r1.4 | 1.4.0 |
1.3.0 | r1.3 | 1.3.0 |
1.2.0 | r1.2 | 1.2.0 |
1.1.0 | r1.1 | 1.2.0 |
1.0.1 | r1.0.1 | 1.2.0 |
1.0.0 | r1.0 | 1.2.0 |
从Gitee下载源码。
git clone https://gitee.com/mindspore/hub.git -b r1.9
编译安装MindSpore Hub。
cd hub
python setup.py install
使用pip
命令安装,请从MindSpore Hub下载页面下载并安装whl包。
pip install mindspore_hub-{version}-py3-none-any.whl
执行以下命令,验证安装结果。导入mindspore_hub模块不报错即安装成功。
import mindspore_hub as mshub
参考从Hub加载模型实现模型加载以及模型微调迁移。
有关安装指南、教程和API的更多详细信息,请参阅从Hub加载模型和发布模型。
MindSpore Hub是MindSpore社区的一部分,关于社区的交流、贡献与治理内容与MindSpore社区一致。
查看MindSpore如何进行开放治理。
#mindspore
IRC频道(仅用于会议记录)欢迎参与贡献。更多详情,请参阅我们的贡献者Wiki。
版本说明请参阅RELEASE。
SSL: CERTIFICATE_VERIFY_FAILED
怎么办?
由于你的网络环境,例如你使用代理连接互联网,往往会由于证书配置问题导致python出现ssl verification failed的问题,此时有两种解决方法:
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
import mindspore_hub as mshub
model = mshub.load("mindspore/1.6/googlenet_cifar10", num_classes=10)
No module named src.*
怎么办?
同一进程中使用load接口加载不同的模型,由于每次加载模型需要将模型文件目录插入到环境变量中,经测试发现:Python只会去最开始插入的目录下查找src.*
,尽管你将最开始插入的目录删除,Python还是会去这个目录下查找。解决办法如下:
# mindspore_hub_install_path/load.py
def _copy_all_file_to_target_path(path, target_path):
if not os.path.exists(target_path):
os.makedirs(target_path)
path = os.path.realpath(path)
target_path = os.path.realpath(target_path)
for p in os.listdir(path):
copy_path = os.path.join(path, p)
target_dir = os.path.join(target_path, p)
_delete_if_exist(target_dir)
if os.path.isdir(copy_path):
_copy_all_file_to_target_path(copy_path, target_dir)
else:
shutil.copy(copy_path, target_dir)
def _get_network_from_cache(name, path, *args, **kwargs):
_copy_all_file_to_target_path(path, os.getcwd())
config_path = os.path.join(os.getcwd(), HUB_CONFIG_FILE)
if not os.path.exists(config_path):
raise ValueError('{} not exists.'.format(config_path))
......
注意:在load后一个模型时可能会将前一个模型的一些文件替换掉,但是模型训练需保证必要模型文件存在,你必须在加载新模型之前完成对前一个模型的训练。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型