Ciao a tutti,
Ho esportato un codice Python da JMP con una funzione di rete neurale. Sto cercando di eseguire il codice su Spyder ma esiste una funzione chiamata "jmp.mz" e non so come sostituirla. Non so cosa faccia questa funzione.
Qualcuno può aiutarmi con questo ? Grazie in anticipo per il vostro tempo.
Buona giornata.
Alyson
Non sono sicuro di cosa hai fatto. Ho usato Big Class come esempio. Ho modellato :peso con :età , :sesso , E :altezza come input. Ho pubblicato il modello su Formula Depot. Ho generato codice Python. Ecco qui:
from __future__ import division
import jmp_score as jmp
from math import *
import numpy as np
""" ====================================================================
Copyright (C) 2022-2023 JMP Statistical Discovery LLC. All rights reserved.
Notice: The following permissions are granted provided that the above
copyright and this notice appear in the score code and any related
documentation. Permission to copy, modify and distribute the score
code generated using JMP (r) software is limited to customers of JMP
Statistical Discovery LLC ("JMP") and successive third parties, all
without any warranty, express or implied, or any other obligation by
JMP. JMP and all other JMP Statistical Discovery LLC product and
service names are registered trademarks or trademarks of JMP
Statistical Discovery LLC in the USA and other countries. Except as
contained in this notice, the name of JMP shall not be used in the
advertising or promotion of products or services without prior
written authorization from JMP Statistical Discovery LLC.
==================================================================== """
""" Python code generated by JMP 17.2.0 """
def getModelMetadata():
return {"creator": u"Neural", "modelName": u"", "predicted": u"weight", "table": u"Big Class", "version": u"17.2.0", "timestamp": u"2023-06-22T15:05:18Z"}
def getInputMetadata():
return {
u"age": "float",
u"height": "float",
u"sex": "str"
}
def getOutputMetadata():
return {
u"Predicted weight": "float"
}
def score(indata, outdata):
sex_asCode = jmp.match(indata[u"sex"],{u"F":0,u"M":1}, np.nan)
H1_1 = tanh((12.9380978259799 + -0.216077718694819 * indata[u"height"] + 0.5 * jmp.match(indata[u"age"],{12:-0.0752869145775503,13:1.43808466048513,14:2.51676030243735,15:1.74966392837427,16:-3.99748804536747,17:-1.63173393135173}, np.nan) + 0.5 * jmp.match(sex_asCode,{0:-1.0888433588967,1:1.0888433588967}, np.nan)))
H1_2 = tanh((19.7761183161641 + -0.331952318291445 * indata[u"height"] + 0.5 * jmp.match(indata[u"age"],{12:-0.476738410666868,13:-2.86567218066002,14:0.848951695382413,15:1.24849250460232,16:6.92106266494234,17:-5.67609627360018}, np.nan) + 0.5 * jmp.match(sex_asCode,{0:1.56127362393991,1:-1.56127362393991}, np.nan)))
H1_3 = tanh((1.43246192499634 + -0.037575857404148 * indata[u"height"] + 0.5 * jmp.match(indata[u"age"],{12:-0.519079596013513,13:-2.26923722344442,14:3.65113577518731,15:2.78561481785367,16:1.59523547291602,17:-5.24366924649907}, np.nan) + 0.5 * jmp.match(sex_asCode,{0:-0.207032194138191,1:0.207032194138191}, np.nan)))
outdata[u"Predicted weight"] = 100.343111337815 + -28.0586522707582 * H1_1 + -16.1719623964746 * H1_2 + 2.89859037837539 * H1_3
return outdata[u"Predicted weight"]
Non vedo la funzione che hai chiesto.
la funzione mz() è definita in jmp_score.py che viene importata nella prima riga del codice del punteggio.
import jmp_score as jmp
Puoi trovare jmp_score.py in:
Mac
/Library/Application Support/JMP/17/scoring/Python
finestre
C:\Programmi\SAS\JMPPRO\17\Scoring\Python