将Python创建的神经网络导出到CoreML,这可能吗?

将像这个人发布的这种神经网络算法导出为CoreML模型,这可能吗?

from numpy import exp, array, random, dot

class NeuralNetwork():    def __init__(self):        # 设置随机数生成器的种子,以便每次程序运行时生成相同的数字。        random.seed(1)        # 我们模拟一个单一的神经元,具有3个输入连接和1个输出连接。        # 我们为3 x 1矩阵分配随机权重,值范围在-1到1之间,均值为0。        self.synaptic_weights = 2 * random.random((3, 1)) - 1    # Sigmoid函数,描述一个S形曲线。    # 我们通过这个函数传递输入的加权和,以将其标准化在0和1之间。    def __sigmoid(self, x):        return 1 / (1 + exp(-x))    # Sigmoid函数的导数。    # 这是Sigmoid曲线的梯度。    # 它表明我们对现有权重的信心程度。    def __sigmoid_derivative(self, x):        return x * (1 - x)    # 我们通过试错过程来训练神经网络。    # 每次调整突触权重。    def train(self, training_set_inputs, training_set_outputs, number_of_training_iterations):        for iteration in xrange(number_of_training_iterations):            # 将训练集通过我们的神经网络(单个神经元)传递。            output = self.think(training_set_inputs)            # 计算误差(期望输出与预测输出之间的差异)。            error = training_set_outputs - output            # 将误差乘以输入,再次乘以Sigmoid曲线的梯度。            # 这意味着信心较低的权重会被更多地调整。            # 这意味着为零的输入不会导致权重变化。            adjustment = dot(training_set_inputs.T, error * self.__sigmoid_derivative(output))            # 调整权重。            self.synaptic_weights += adjustment    # 神经网络进行思考。    def think(self, inputs):        # 将输入通过我们的神经网络(我们的单个神经元)传递。        return self.__sigmoid(dot(inputs, self.synaptic_weights))if __name__ == "__main__":    # 初始化一个单神经元神经网络。    neural_network = NeuralNetwork()    print "随机初始突触权重: "    print neural_network.synaptic_weights    # 训练集。我们有4个示例,每个示例包含3个输入值和1个输出值。    training_set_inputs = array([[0, 0, 1], [1, 1, 1], [1, 0, 1], [0, 1, 1]])    training_set_outputs = array([[0, 1, 1, 0]]).T    # 使用训练集训练神经网络。    # 进行10,000次训练,每次进行小的调整。    neural_network.train(training_set_inputs, training_set_outputs, 10000)    print "训练后的新突触权重: "    print neural_network.synaptic_weights    # 使用新的情况测试神经网络。    print "考虑新情况 [1, 0, 0] -> ?: "    print neural_network.think(array([1, 0, 0]))

应该做些什么?


回答:

是的,这是可能的。你可以使用coremltools中的NeuralNetworkBuilder类来实现这一点。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注