在Flutter中使用自定义机器学习模型

时间:2020-08-05 06:25:28

标签: flutter machine-learning firebase-mlkit

目标- 我正在Flutter上开发电影推荐移动应用程序,该应用程序将询问用户最喜欢的电影,然后使用机器学习模型推荐大量其他类似的电影。

问题- Flutter应用程序已准备就绪,推荐电影的模型也已就绪,但是这里唯一的问题是模型的部署,即我应该如何在Flutter应用程序中使用模型。

我的解决方案- 我想出了两种方法-

正在工作的那个 -

创建和托管Web API服务(例如使用flask),然后从我的Flutter应用程序调用API服务以获取结果。

一个无效的 -

但是另一方面,如果我使用Firebase Ml套件,则几乎没有预定义的即用型模型,也有一个选项可以上传您自己的自定义模型,但是我找不到有关如何使用自己的自定义模型的任何参考资料带有抖动的自定义模型。我所引用的示例和视频使用的是自定义模型,但用于图像处理和文本识别等。如果有人可以对如何使用自己的抖动模型有所了解,将会提供很大的帮助。

例如,如果我想将下面的模型与flutter一起使用,将执行以下步骤。

import tensorflow as tf
import numpy as np
from tensorflow import keras
model = keras.Sequential([keras.layers.Dense(units=1,input_shape =[1])])
model.compile(optimizer='sgd',
          loss='mean_squared_error',
          metrics=['accuracy'])
xs = np.array([-1.0,0.0,1.0,2.0,3.0,4.0])
ys = np.array([-3.0,-1.0,0.0,3.0,5.0,7.0])
model.fit(xs,ys,epochs=500)
print(model.predict([10.0]))
keras_file = "test.tf"
keras.models.save_model(model,keras_file)

1 个答案:

答案 0 :(得分:0)

您可以使用firebase_ml_custom插件来管理模型的托管并将其下载到用户的设备。