Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 以循环或字符串形式传递多个方法参数_Swift_Function_Coreml - Fatal编程技术网

Swift 以循环或字符串形式传递多个方法参数

Swift 以循环或字符串形式传递多个方法参数,swift,function,coreml,Swift,Function,Coreml,我有一个coreML模型,它的输入方法有50多个参数。一个接一个地编写它们会非常乏味,但我不知道如何通过编程实现,即通过字符串或循环 let model = myModel() let modelInput = myModelInput(//here all the arguments: arg1 : Int, arg2 : Int, arg3 : Int, arg4 : Int, etc.) guard let myModelOutput = myModel.prediction(input:

我有一个coreML模型,它的输入方法有50多个参数。一个接一个地编写它们会非常乏味,但我不知道如何通过编程实现,即通过字符串或循环

let model = myModel()
let modelInput = myModelInput(//here all the arguments: arg1 : Int, arg2 : Int, arg3 : Int, arg4 : Int, etc.)
guard let myModelOutput = myModel.prediction(input: modelInput) else {}

我可以在字符串或字典中使用循环写入所有参数,但myModelInput不接受它。有办法吗?

您可以控制模型输入类/结构吗?如果是这样,给它另一个初始值设定项,一个调用真实初始值的方便初始值设定项。现在你可以通过字典或任何你已经决定。而且字典可以通过编程方式构建


因此,乏味的部分仍然存在,但它被从调用站点转移到类本身,在类本身中只需编写一次。

正如@matt所说,您可以使用Dictionary方法,但是如果您有50个参数都是相同的类型,那么将它们粘贴到向量(即MLMultiArray)中可能更有意义把它传递到模型中就行了,虽然我曾设想过另一种方法,但我的基本问题——许多参数的硬编码——仍然存在。还有其他方法传递标签吗?我的意思是,就像在for循环中:对于0…50{arg[x]=myvalue}中的x,这是一个字典。我看不出这里还需要什么。