'ਪਿਕਲ' ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਪਾਈਥਨ ਵਿੱਚ ਇੱਕ ਸਿਖਲਾਈ ਪ੍ਰਾਪਤ ਵਰਗੀਫਾਇਰ ਨੂੰ ਅਚਾਰ ਬਣਾਉਣ ਲਈ, ਅਸੀਂ ਕੁਝ ਸਧਾਰਨ ਕਦਮਾਂ ਦੀ ਪਾਲਣਾ ਕਰ ਸਕਦੇ ਹਾਂ। ਪਿਕਲਿੰਗ ਸਾਨੂੰ ਕਿਸੇ ਵਸਤੂ ਨੂੰ ਸੀਰੀਅਲਾਈਜ਼ ਕਰਨ ਅਤੇ ਇਸਨੂੰ ਇੱਕ ਫਾਈਲ ਵਿੱਚ ਸੇਵ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ, ਜਿਸ ਨੂੰ ਬਾਅਦ ਵਿੱਚ ਲੋਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਉਦੋਂ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਅਸੀਂ ਇੱਕ ਸਿਖਲਾਈ ਪ੍ਰਾਪਤ ਮਸ਼ੀਨ ਸਿਖਲਾਈ ਮਾਡਲ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹਾਂ, ਜਿਵੇਂ ਕਿ ਇੱਕ ਰਿਗਰੈਸ਼ਨ ਵਰਗੀਕਰਣ, ਨੂੰ ਭਵਿੱਖ ਵਿੱਚ ਵਰਤੋਂ ਲਈ ਹਰ ਵਾਰ ਇਸਨੂੰ ਦੁਬਾਰਾ ਸਿਖਲਾਈ ਦੇਣ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ।
ਪਹਿਲਾਂ, ਸਾਨੂੰ ਸਾਡੀ ਪਾਈਥਨ ਸਕ੍ਰਿਪਟ ਵਿੱਚ 'ਪਿਕਲ' ਮੋਡੀਊਲ ਨੂੰ ਆਯਾਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ:
python import pickle
ਅੱਗੇ, ਸਾਨੂੰ ਆਪਣੇ ਵਰਗੀਕਰਣ ਨੂੰ ਸਿਖਲਾਈ ਦੇਣ ਅਤੇ ਸਿਖਲਾਈ ਪ੍ਰਾਪਤ ਮਾਡਲ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਮੰਨ ਲਓ ਕਿ ਅਸੀਂ ਪਹਿਲਾਂ ਹੀ ਇੱਕ ਰਿਗਰੈਸ਼ਨ ਕਲਾਸੀਫਾਇਰ ਨੂੰ ਸਿਖਲਾਈ ਦਿੱਤੀ ਹੈ ਅਤੇ ਇਸਨੂੰ 'ਰਿਗਰੈਸ਼ਨ_ਮੋਡਲ' ਨਾਮਕ ਵੇਰੀਏਬਲ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਹੈ।
ਸਿਖਲਾਈ ਪ੍ਰਾਪਤ ਮਾਡਲ ਨੂੰ ਅਚਾਰ ਬਣਾਉਣ ਲਈ, ਅਸੀਂ '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' ਲਈ ਮੁੱਲ ਦਾ ਅਨੁਮਾਨ ਲਗਾਉਣ ਲਈ ਇਸਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ।
ਸਿਖਲਾਈ ਪ੍ਰਾਪਤ ਕਲਾਸੀਫਾਇਰ ਨੂੰ ਪਿਕਲਿੰਗ ਅਤੇ ਲੋਡ ਕਰਕੇ, ਅਸੀਂ ਇਸ ਨੂੰ ਦੁਬਾਰਾ ਸਿਖਲਾਈ ਦੇਣ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਮਾਡਲ ਦੀ ਮੁੜ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਾਂ, ਜਿਸ ਨਾਲ ਸਮਾਂ ਅਤੇ ਗਣਨਾਤਮਕ ਸਰੋਤਾਂ ਦੀ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਮਾਤਰਾ ਬਚਾਈ ਜਾ ਸਕਦੀ ਹੈ।
ਬਾਰੇ ਹੋਰ ਹਾਲੀਆ ਸਵਾਲ ਅਤੇ ਜਵਾਬ ਪਾਈਥਨ ਨਾਲ ਈਆਈਟੀਸੀ/ਏਆਈ/ਐਮਐਲਪੀ ਮਸ਼ੀਨ ਲਰਨਿੰਗ:
- ਸਪੋਰਟ ਵੈਕਟਰ ਮਸ਼ੀਨ (SVM) ਕੀ ਹੈ?
- ਕੀ K ਨਜ਼ਦੀਕੀ ਗੁਆਂਢੀ ਐਲਗੋਰਿਦਮ ਸਿਖਲਾਈ ਯੋਗ ਮਸ਼ੀਨ ਸਿਖਲਾਈ ਮਾਡਲ ਬਣਾਉਣ ਲਈ ਢੁਕਵਾਂ ਹੈ?
- ਕੀ SVM ਸਿਖਲਾਈ ਐਲਗੋਰਿਦਮ ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਬਾਈਨਰੀ ਲੀਨੀਅਰ ਵਰਗੀਫਾਇਰ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ?
- ਕੀ ਰਿਗਰੈਸ਼ਨ ਐਲਗੋਰਿਦਮ ਲਗਾਤਾਰ ਡੇਟਾ ਨਾਲ ਕੰਮ ਕਰ ਸਕਦੇ ਹਨ?
- ਕੀ ਰੇਖਿਕ ਰਿਗਰੈਸ਼ਨ ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਸਕੇਲਿੰਗ ਲਈ ਢੁਕਵਾਂ ਹੈ?
- ਮਤਲਬ ਸ਼ਿਫਟ ਡਾਇਨਾਮਿਕ ਬੈਂਡਵਿਡਥ ਡੇਟਾ ਪੁਆਇੰਟਾਂ ਦੀ ਘਣਤਾ ਦੇ ਆਧਾਰ 'ਤੇ ਬੈਂਡਵਿਡਥ ਪੈਰਾਮੀਟਰ ਨੂੰ ਅਨੁਕੂਲਤਾ ਨਾਲ ਕਿਵੇਂ ਵਿਵਸਥਿਤ ਕਰਦਾ ਹੈ?
- ਮੱਧ ਸ਼ਿਫਟ ਡਾਇਨਾਮਿਕ ਬੈਂਡਵਿਡਥ ਲਾਗੂ ਕਰਨ ਵਿੱਚ ਵਿਸ਼ੇਸ਼ਤਾ ਸੈੱਟਾਂ ਨੂੰ ਵਜ਼ਨ ਨਿਰਧਾਰਤ ਕਰਨ ਦਾ ਕੀ ਉਦੇਸ਼ ਹੈ?
- ਮੱਧ ਸ਼ਿਫਟ ਡਾਇਨਾਮਿਕ ਬੈਂਡਵਿਡਥ ਪਹੁੰਚ ਵਿੱਚ ਨਵਾਂ ਰੇਡੀਅਸ ਮੁੱਲ ਕਿਵੇਂ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ?
- ਮੱਧਮਾਨ ਸ਼ਿਫਟ ਡਾਇਨਾਮਿਕ ਬੈਂਡਵਿਡਥ ਪਹੁੰਚ ਰੇਡੀਅਸ ਨੂੰ ਸਖਤ ਕੋਡਿੰਗ ਕੀਤੇ ਬਿਨਾਂ ਸੈਂਟਰੋਇਡਸ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਲੱਭਣ ਲਈ ਕਿਵੇਂ ਹੈਂਡਲ ਕਰਦੀ ਹੈ?
- ਮੱਧ ਸ਼ਿਫਟ ਐਲਗੋਰਿਦਮ ਵਿੱਚ ਇੱਕ ਸਥਿਰ ਰੇਡੀਅਸ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਸੀਮਾ ਕੀ ਹੈ?
Python ਨਾਲ EITC/AI/MLP ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਵਿੱਚ ਹੋਰ ਸਵਾਲ ਅਤੇ ਜਵਾਬ ਦੇਖੋ
ਹੋਰ ਸਵਾਲ ਅਤੇ ਜਵਾਬ:
- ਫੀਲਡ: ਬਣਾਵਟੀ ਗਿਆਨ
- ਪ੍ਰੋਗਰਾਮ ਨੂੰ: ਪਾਈਥਨ ਨਾਲ ਈਆਈਟੀਸੀ/ਏਆਈ/ਐਮਐਲਪੀ ਮਸ਼ੀਨ ਲਰਨਿੰਗ (ਸਰਟੀਫਿਕੇਸ਼ਨ ਪ੍ਰੋਗਰਾਮ 'ਤੇ ਜਾਓ)
- ਪਾਠ: ਰੈਗਰੈਸ਼ਨ (ਸੰਬੰਧਿਤ ਪਾਠ 'ਤੇ ਜਾਓ)
- ਵਿਸ਼ਾ: ਚੁੱਕਣਾ ਅਤੇ ਪੈਮਾਨਾ ਦੇਣਾ (ਸਬੰਧਤ ਵਿਸ਼ੇ 'ਤੇ ਜਾਓ)
- ਪ੍ਰੀਖਿਆ ਸਮੀਖਿਆ