Por pikli trejnitan klasigilon en Python uzante la modulon 'pickle', ni povas sekvi kelkajn simplajn paŝojn. Pickling permesas al ni seriigi objekton kaj konservi ĝin al dosiero, kiu poste povas esti ŝarĝita kaj uzata poste. Ĉi tio estas precipe utila kiam ni volas konservi trejnitan maŝinlerndan modelon, kiel regresan klasigilon, por estonta uzo sen neceso retrejni ĝin ĉiufoje.
Unue, ni devas importi la modulon 'pickle' en nia Python-skripto:
python import pickle
Poste, ni devas trejni nian klasigilon kaj akiri la trejnitan modelon. Ni supozu, ke ni jam trejnis regresan klasigilon kaj stokis ĝin en variablo nomata 'regression_model'.
Por pikli la trejnitan modelon, ni povas uzi la funkcion 'pickle.dump()'. Ĉi tiu funkcio prenas du parametrojn: la objekton kiun ni volas pikli (en ĉi tiu kazo, la trejnita klasigilo), kaj la dosierobjekto kie ni volas konservi la piklitan objekton. Ni povas malfermi dosieron en skriba binara reĝimo uzante la funkcion 'open()'.
python with open('regression_model.pkl', 'wb') as file: pickle.dump(regression_model, file)
En la supra kodo, ni malfermas dosieron nomitan 'regression_model.pkl' en skriba binara reĝimo ('wb') kaj transdonas ĝin kiel la duan parametron al 'pickle.dump ()'. La trejnita klasigilo, stokita en la variablo 'regression_model', estas piklita kaj konservita en la dosiero.
Nun ni sukcese piklis nian trejnitan klasigilon. Ni povas reŝargi ĝin en memoron kiam ajn ni bezonas ĝin uzante la funkcion 'pickle.load()'.
python with open('regression_model.pkl', 'rb') as file: loaded_model = pickle.load(file)
En la ĉi-supra kodo, ni malfermas la piklitan dosieron en legita binara reĝimo ('rb') kaj transdonas ĝin kiel la parametron al 'pickle.load()'. La piklita objekto estas ŝarĝita en la variablon 'loaded_model', kiu povas esti uzata por antaŭdiro aŭ ajnaj aliaj operacioj.
Jen kompleta ekzemplo montranta la pekladon kaj ŝarĝon de trejnita regresklasigilo:
python import pickle from sklearn.linear_model import LinearRegression # Training the regression model X_train = [[1], [2], [3], [4], [5]] y_train = [2, 4, 6, 8, 10] regression_model = LinearRegression() regression_model.fit(X_train, y_train) # Pickling the trained model with open('regression_model.pkl', 'wb') as file: pickle.dump(regression_model, file) # Loading the pickled model with open('regression_model.pkl', 'rb') as file: loaded_model = pickle.load(file) # Using the loaded model for prediction X_test = [[6]] predicted_value = loaded_model.predict(X_test) print(predicted_value)
En la supra ekzemplo, ni unue trejnas simplan linearan regresan modelon uzante la 'LinearRegression' klason de la modulo 'sklearn.linear_model'. Ni tiam piklis la trejnitan modelon al dosiero nomita 'regression_model.pkl'. Poste, ni ŝargas la piklitan modelon el la dosiero kaj uzas ĝin por antaŭdiri la valoron por testa enigo 'X_test'.
Pikante kaj ŝarĝante la trejnitan klasigilon, ni povas reuzi la modelon sen la bezono retrejni ĝin, kio povas ŝpari signifan kvanton da tempo kaj komputilaj rimedoj.
Aliaj lastatempaj demandoj kaj respondoj pri Maŝinlernado de EITC/AI/MLP per Python:
- Kio estas la Subtena Vektora Maŝino (SVM)?
- Ĉu la algoritmo de K plej proksimaj najbaroj taŭgas por konstrui trejneblajn maŝinlernajn modelojn?
- Ĉu SVM-trejnadalgoritmo estas ofte uzata kiel binara lineara klasigilo?
- Ĉu regresaj algoritmoj povas funkcii kun kontinuaj datumoj?
- Ĉu linia regreso estas speciale taŭga por skalo?
- Kiel signifas ŝanĝi dinamikan bendolarĝon adapte ĝustigi la bendolarĝan parametron bazitan sur la denseco de la datumpunktoj?
- Kio estas la celo atribui pezojn al trajto aroj en la averaĝa ŝanĝa dinamika bendolarĝa efektivigo?
- Kiel estas la nova radiusvaloro determinita en la mezumoŝanĝa dinamika bendolarĝa aliro?
- Kiel la mezurŝanĝa dinamika bendolarĝa alproksimiĝo pritraktas trovi centroidojn ĝuste sen malfacile kodi la radiuson?
- Kio estas la limigo de uzado de fiksa radiuso en la mezŝanĝa algoritmo?
Rigardu pliajn demandojn kaj respondojn en EITC/AI/MLP Maŝina Lernado kun Python
Pliaj demandoj kaj respondoj:
- Kampo: Artefarita inteligento
- programo: Maŝinlernado de EITC/AI/MLP per Python (iru al la atestprogramo)
- Leciono: malprogreso (iru al rilata leciono)
- Fadeno: Piklado kaj grimpado (iru al rilata temo)
- Ekzamena revizio