目录
turicreate的简介
苹果开源Turi Create:让机器学习更容易!turicreate简化了定制机器学习模型的开发。你不必是机器学习专家就可以向你的应用添加推荐、对象检测、图像分类、图像相似性或活动分类。
API文档:Turi Create API Documentation
GitHub:https://github.com/apple/turicreate
1、特点
- 易于使用:专注于任务而不是算法
- 可视化:内置的流式可视化,用于探索数据
- 灵活:支持文本、图像、音频、视频和传感器数据
- 快速且可扩展:在一台机器上使用大型数据集
- 准备部署:将模型导出到Core ML,以用于iOS、macOS、watchOS和tvOS应用程序
2、应用
- 基于算法:1.推荐系统(Recommender systems) 2.图像相似性(Image similarity) 3.文本分类器(text classification)
- 基于应用程序:1.图像分类(Image classification) 2.物体检测(Object Detection)3. 活动分类器(Activity Classifier)
ML Task | Description |
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. 2. 1、数据导入 3. import turicreate as tc 4. # Load images from the downloaded data 5. reference_data = tc.image_analysis.load_images('./101_ObjectCategories') 6. load_images(url, format='auto', with_path=True, recursive=True, ignore_failure=True, random_order=False) 7. 2、利用Resnet50数据特征提取 8. create(dataset, label = None, feature = None, model = 'resnet-50', verbose = True) #model默认使用resnet50,label是标识行,如reference_data中的path 9. model = tc.image_similarity.create(reference_data) 10. model.save('my_model_file') 11. loaded_model = tc.load_model('my_model_file') 12. 3、通过query查询实现相似搜索 13. similar_images = model.query(reference_data[0:10] ,label = 'path',k=10) 14. similar_images.head() 15. 16. query(dataset, label=None, k=5, radius=None, verbose=True) 17. - dataset:SFrame,需查询的数据 18. - label:索引名,选择一列,输入列名 19. - k:最大返回样本数 20. - radius:半径范围,如果超过radius个间隔,就不显示 21. - verbose:打印进度更新和模型细节。 22. 23. 通过similarity_graph实现相似关联图搜索 24. graph = model.similarity_graph(k=1) # an SGraph 25. 26. similarity_graph(k=5, radius=None, include_self_edges=False, output_type='SGraph', verbose=True) 27. k:最大返回样本数 28. radius:float,半径范围,如果超过radius个间隔,就不显示 29. include_self_edges:是否包含自己,True的话,返回的结果包含自己(自己的相似性为1) 30. output_type:‘SGraph’, ‘SFrame’两种 31. verbose:打印进度更新和模型细节。 32. 33. graph.edges 34.