'పికిల్' మాడ్యూల్ని ఉపయోగించి పైథాన్లో శిక్షణ పొందిన వర్గీకరణదారుని ఊరగాయ చేయడానికి, మేము కొన్ని సాధారణ దశలను అనుసరించవచ్చు. పిక్లింగ్ ఒక వస్తువును సీరియలైజ్ చేయడానికి మరియు దానిని ఫైల్లో సేవ్ చేయడానికి అనుమతిస్తుంది, దానిని లోడ్ చేసి తర్వాత ఉపయోగించవచ్చు. మేము ప్రతిసారీ తిరిగి శిక్షణ ఇవ్వాల్సిన అవసరం లేకుండా భవిష్యత్ ఉపయోగం కోసం రిగ్రెషన్ వర్గీకరణ వంటి శిక్షణ పొందిన మెషీన్ లెర్నింగ్ మోడల్ను సేవ్ చేయాలనుకున్నప్పుడు ఇది చాలా ఉపయోగకరంగా ఉంటుంది.
ముందుగా, మన పైథాన్ స్క్రిప్ట్లో 'పికిల్' మాడ్యూల్ని దిగుమతి చేసుకోవాలి:
python import pickle
తరువాత, మేము మా వర్గీకరణకు శిక్షణ ఇవ్వాలి మరియు శిక్షణ పొందిన మోడల్ను పొందాలి. మనం ఇప్పటికే రిగ్రెషన్ వర్గీకరణకు శిక్షణ ఇచ్చాము మరియు దానిని 'regression_model' అనే వేరియబుల్లో నిల్వ చేసాము అనుకుందాం.
శిక్షణ పొందిన మోడల్ను ఊరగాయ చేయడానికి, మనం 'pickle.dump()' ఫంక్షన్ని ఉపయోగించవచ్చు. ఈ ఫంక్షన్ రెండు పారామితులను తీసుకుంటుంది: మనం పికిల్ చేయాలనుకుంటున్న వస్తువు (ఈ సందర్భంలో, శిక్షణ పొందిన వర్గీకరణదారు), మరియు మనం పిక్లింగ్ వస్తువును సేవ్ చేయాలనుకుంటున్న ఫైల్ ఆబ్జెక్ట్. 'open()' ఫంక్షన్ని ఉపయోగించి మనం రైట్ బైనరీ మోడ్లో ఫైల్ను తెరవవచ్చు.
python with open('regression_model.pkl', 'wb') as file: pickle.dump(regression_model, file)
పై కోడ్లో, మేము రైట్ బైనరీ మోడ్ ('wb')లో 'regression_model.pkl' అనే ఫైల్ని తెరిచి, దానిని 'pickle.dump()'కి రెండవ పారామీటర్గా పాస్ చేస్తాము. శిక్షణ పొందిన వర్గీకరణ, 'రిగ్రెషన్_మోడల్' వేరియబుల్లో నిల్వ చేయబడుతుంది, పిక్లింగ్ చేయబడింది మరియు ఫైల్లో సేవ్ చేయబడుతుంది.
ఇప్పుడు, మేము మా శిక్షణ పొందిన వర్గీకరణను విజయవంతంగా పిక్లింగ్ చేసాము. 'pickle.load()' ఫంక్షన్ని ఉపయోగించి మనకు అవసరమైనప్పుడు దాన్ని తిరిగి మెమరీలోకి లోడ్ చేసుకోవచ్చు.
python with open('regression_model.pkl', 'rb') as file: loaded_model = pickle.load(file)
పై కోడ్లో, మేము పిక్లింగ్ ఫైల్ను రీడ్ బైనరీ మోడ్ ('rb')లో తెరిచి, దానిని 'pickle.load()'కి పారామీటర్గా పాస్ చేస్తాము. పిక్లింగ్ ఆబ్జెక్ట్ 'loaded_model' వేరియబుల్లోకి లోడ్ చేయబడింది, ఇది అంచనా లేదా ఏదైనా ఇతర కార్యకలాపాల కోసం ఉపయోగించబడుతుంది.
శిక్షణ పొందిన రిగ్రెషన్ వర్గీకరణ యొక్క పిక్లింగ్ మరియు లోడింగ్ను ప్రదర్శించే పూర్తి ఉదాహరణ ఇక్కడ ఉంది:
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)
పై ఉదాహరణలో, మేము మొదట 'sklearn.linear_model' మాడ్యూల్ నుండి 'LinearRegression' క్లాస్ని ఉపయోగించి సరళమైన లీనియర్ రిగ్రెషన్ మోడల్కు శిక్షణ ఇస్తాము. మేము శిక్షణ పొందిన మోడల్ను 'regression_model.pkl' అనే ఫైల్కి పికెల్ చేస్తాము. తరువాత, మేము ఫైల్ నుండి పిక్లింగ్ మోడల్ను లోడ్ చేస్తాము మరియు పరీక్ష ఇన్పుట్ 'X_test' కోసం విలువను అంచనా వేయడానికి దాన్ని ఉపయోగిస్తాము.
శిక్షణ పొందిన వర్గీకరణను పిక్లింగ్ చేయడం మరియు లోడ్ చేయడం ద్వారా, మేము మోడల్ను మళ్లీ శిక్షణ ఇవ్వాల్సిన అవసరం లేకుండా మళ్లీ ఉపయోగించుకోవచ్చు, ఇది గణనీయమైన సమయాన్ని మరియు గణన వనరులను ఆదా చేస్తుంది.
సంబంధించి ఇతర ఇటీవలి ప్రశ్నలు మరియు సమాధానాలు పైథాన్తో EITC/AI/MLP మెషిన్ లెర్నింగ్:
- సపోర్ట్ వెక్టర్ మెషిన్ (SVM) అంటే ఏమిటి?
- K సమీప పొరుగువారి అల్గారిథమ్ శిక్షణ పొందగల మెషీన్ లెర్నింగ్ మోడల్లను రూపొందించడానికి బాగా సరిపోతుందా?
- SVM శిక్షణ అల్గోరిథం సాధారణంగా బైనరీ లీనియర్ వర్గీకరణగా ఉపయోగించబడుతుందా?
- రిగ్రెషన్ అల్గోరిథంలు నిరంతర డేటాతో పని చేయగలవా?
- లీనియర్ రిగ్రెషన్ ముఖ్యంగా స్కేలింగ్కు బాగా సరిపోతుందా?
- మీన్ షిఫ్ట్ డైనమిక్ బ్యాండ్విడ్త్ డేటా పాయింట్ల సాంద్రత ఆధారంగా బ్యాండ్విడ్త్ పరామితిని ఎలా సర్దుబాటు చేస్తుంది?
- సగటు షిఫ్ట్ డైనమిక్ బ్యాండ్విడ్త్ అమలులో ఫీచర్ సెట్లకు బరువులు కేటాయించడం యొక్క ఉద్దేశ్యం ఏమిటి?
- సగటు షిఫ్ట్ డైనమిక్ బ్యాండ్విడ్త్ విధానంలో కొత్త వ్యాసార్థం విలువ ఎలా నిర్ణయించబడుతుంది?
- సగటు షిఫ్ట్ డైనమిక్ బ్యాండ్విడ్త్ విధానం, వ్యాసార్థాన్ని హార్డ్ కోడింగ్ చేయకుండా సెంట్రాయిడ్లను సరిగ్గా కనుగొనడాన్ని ఎలా నిర్వహిస్తుంది?
- సగటు షిఫ్ట్ అల్గారిథమ్లో స్థిర వ్యాసార్థాన్ని ఉపయోగించడం యొక్క పరిమితి ఏమిటి?
పైథాన్తో EITC/AI/MLP మెషిన్ లెర్నింగ్లో మరిన్ని ప్రశ్నలు మరియు సమాధానాలను వీక్షించండి