zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Py之turicreate:turicreate的简介、安装、使用方法之详细攻略

安装方法 详细 简介 攻略 py 使用
2023-09-14 09:04:48 时间

Py之turicreate:turicreate的简介、安装、使用方法之详细攻略

 

 

 

目录

turicreate的简介

1、特点

2、应用

turicreate的安装

turicreate的使用方法


 

turicreate的简介

      苹果开源Turi Create:让机器学习更容易!turicreate简化了定制机器学习模型的开发。你不必是机器学习专家就可以向你的应用添加推荐、对象检测、图像分类、图像相似性或活动分类。

API文档Turi Create API Documentation
GitHubhttps://github.com/apple/turicreate

 

1、特点

  • 易于使用:专注于任务而不是算法
  • 可视化:内置的流式可视化,用于探索数据
  • 灵活:支持文本、图像、音频、视频和传感器数据
  • 快速且可扩展:在一台机器上使用大型数据集
  • 准备部署:将模型导出到Core ML,以用于iOS、macOS、watchOS和tvOS应用程序

 

2、应用

 

ML TaskDescription
Recommender用户推荐
Image Classification图片分类
Object Detection物体识别
Style Transfer图片风格化
Activity Classification动作识别
Image Similarity图片归同
Classifiers预测标签
Regression回归分析
Clustering数据分组
Text Classifier文本识别

 

 

turicreate的安装

T1、第一种方式安装

pip install turicreate

T2、第二种方式安装

  • 进入到该文件的setup.py 目录下 ,打开cmd,并切换到该目录下;
  • 先执行 python setup.py build
  • 然后执行 python setup.py install

 

 

 

turicreate的使用方法

1、利用apple机器学习平台Turicreate实现图像相似性检索


1、数据导入
import turicreate as tc
# Load images from the downloaded data
reference_data  = tc.image_analysis.load_images('./101_ObjectCategories')
load_images(url, format='auto', with_path=True, recursive=True, ignore_failure=True, random_order=False)
2、利用Resnet50数据特征提取
create(dataset, label = None, feature = None, model = 'resnet-50', verbose = True)  #model默认使用resnet50,label是标识行,如reference_data中的path
model = tc.image_similarity.create(reference_data)
model.save('my_model_file')
loaded_model = tc.load_model('my_model_file')
3、通过query查询实现相似搜索
similar_images = model.query(reference_data[0:10] ,label = 'path',k=10)
similar_images.head()

query(dataset, label=None, k=5, radius=None, verbose=True)
    - dataset:SFrame,需查询的数据
    - label:索引名,选择一列,输入列名
    - k:最大返回样本数
    - radius:半径范围,如果超过radius个间隔,就不显示
    - verbose:打印进度更新和模型细节。

通过similarity_graph实现相似关联图搜索
graph = model.similarity_graph(k=1)  # an SGraph

similarity_graph(k=5, radius=None, include_self_edges=False, output_type='SGraph', verbose=True)
    k:最大返回样本数
    radius:float,半径范围,如果超过radius个间隔,就不显示
    include_self_edges:是否包含自己,True的话,返回的结果包含自己(自己的相似性为1)
    output_type:‘SGraph’, ‘SFrame’两种
    verbose:打印进度更新和模型细节。

graph.edges