MNN/docs/start/overall.md

12 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

2022-08-23 21:21:29 +08:00
# 快速开始
## 使用MNN整体流程
在端侧应用MNN大致可以分为三个阶段
![concept.png](../_static/images/start/concept.png)
### 训练
2022-08-31 20:11:16 +08:00
在训练框架上根据训练数据训练出模型的阶段。虽然当前MNN也提供了[训练模型的能力](../train/expr.md)但主要用于端侧训练或模型调优。在数据量较大时依然建议使用成熟的训练框架如TensorFlow、PyTorch等。除了自行训练外也可以直接利用开源的预训练模型。
2022-08-23 21:21:29 +08:00
### 转换
2024-09-12 12:57:57 +08:00
将其他训练框架模型转换为MNN模型的阶段。MNN当前支持Tensorflow(Lite)、Caffe、ONNX和TorchScript的模型转换。模型转换工具可以参考[使用说明](../tools/convert.md)。支持转换的算子,可以参考[算子列表文档](../tools/convert.html#id7);在遇到不支持的算子时,可以尝试[自定义算子](../contribute/op.md)或在Github上给我们[提交issue](https://github.com/alibaba/MNN/issues/74)。此外,[模型打印工具](../tools/convert.html#id8)可以用于输出模型结构辅助调试。除模型转换外MNN也提供了[模型量化工具](../tools/quant.md),可以对浮点模型进行量化压缩。
2022-08-23 21:21:29 +08:00
### 推理
2024-09-12 12:57:57 +08:00
在端侧加载MNN模型进行推理的阶段。端侧运行库的编译请参考各平台的编译文档[iOS](../compile/engine.html#ios)、[Android](../compile/engine.html#android)、[Linux/macOS/Ubuntu](../compile/engine.html#linux-macos)、[Windows](../compile/engine.html#windows)。我们提供了[API接口文档](https://github.com/alibaba/MNN/tree/master/doc/API),也详细说明了[会话创建](../inference/session.html#id1)、[数据输入](../inference/session.html#id8)、[执行推理](../inference/session.html#id17)、[数据输出](../inference/session.html#id21)相关的接口和参数。`demo/exec`下提供了使用示例,如图像识别 `demo/exec/pictureRecognition.cpp` ,图像实例分割(人像分割)`demo/exec/segment.cpp`[更多demo](demo.md)。此外,[测试工具](../tools/test.md)和[benchmark工具](../tools/benchmark.md)也可以用于问题定位。