对于一个项目,我想创建一个 Core ML 3 模型,该模型正在接收一些文本(即来自邮件)并对其进行分类。此外,模型应该是可更新的,并且可以在设备上进行训练。因此,我发现 KNearestNeighborsClassifier 可以更新,并希望将它们用于我的方法。但是,首先我得到了一个错误
" RuntimeWarning: You will not be able to run predict() on this Core ML model. Underlying exception message was: Error compiling model: "Error reading protobuf spec. validator error: KNearestNeighborsClassifier requires k to be a positive integer."
在使用脚本创建这样的模型时(见下文)。此外,我不确定如何正确使用 KNearestNeighborsClassifier 来解决我的问题。特别是,如果我想对一些文本进行分类,哪个维度是正确的?我将如何在应用程序中正确使用模型?也许你知道一些有用的指南,我还没有找到=
我创建 KNearestNeighborsClassifier 的脚本基于本指南:https ://github.com/apple/coremltools/blob/master/examples/updatable_models/updatable_nearest_neighbor_classifier.ipynb 我已经安装并且正在使用 coremltools==3.0b6。
这是我创建模型的实际脚本:
number_of_dimensions = 128
from coremltools.models.nearest_neighbors import KNearestNeighborsClassifierBuilder
builder = KNearestNeighborsClassifierBuilder(input_name='input',
output_name='output',
number_of_dimensions=number_of_dimensions,
default_class_label='defaultLabel',
number_of_neighbors=3,
weighting_scheme='inverse_distance',
index_type='linear')
builder.author = 'Christian'
builder.license = 'MIT'
builder.description = 'Classifies {} dimension vector based on 3 nearest neighbors'.format(number_of_dimensions)
我希望您能帮助我,告诉我总体上我使用 KNearestNeighborsClassifier 进行文本分类的方法是否有意义,并希望您能帮助我成功创建 CoreML 模型。
慕莱坞森
相关分类