के लिए विशेषता और लक्ष्य मैट्रिस का उपयोग करें, मैं this tutorial का पालन करने का प्रयास कर रहा हूं।टेंसरफ्लो रैखिक रिग्रेशन पायथन
टेंसरफ्लो अभी बाहर आया और मैं वास्तव में इसे समझने की कोशिश कर रहा हूं। मैं दंडित रैखिक प्रतिगमन से लैसो, रिज, और लोचस्टिकनेट और scikit-learn
में इसका उपयोग से परिचित हूं।
scikit-learn
कमंद प्रतिगमन के लिए, सभी मैं प्रतिगमन एल्गोरिथ्म में इनपुट की जरूरत DF_X
[एक एम एक्स एन आयामी विशेषता मैट्रिक्स (pd.DataFrame)] और SR_y
है [एक एम आयामी लक्ष्य वेक्टर (pd.Series)]। Variable
टेंसरफ्लो में संरचना मेरे लिए थोड़ा सा नया है और मुझे यकीन नहीं है कि मेरे इनपुट डेटा को अपनी इच्छानुसार कैसे व्यवस्थित किया जाए।
ऐसा लगता है जैसे सॉफ्टमैक्स प्रतिगमन वर्गीकरण के लिए है। रैखिक प्रतिगमन के लिए tensorflow
में इनपुट करने के लिए मैं अपने DF_X
(एम एक्स एन विशेषता मैट्रिक्स) और SR_y
(एम आयामी लक्ष्य वेक्टर) को पुन: व्यवस्थित कैसे कर सकता हूं?
एक रेखीय प्रतिगमन करने के लिए मेरे वर्तमान विधि पांडा, numpy, और sklearn का उपयोग करता है और यह नीचे दिखाया गया है। मुझे लगता है कि इस सवाल का लोगों TensorFlow से परिचित प्राप्त करने के लिए वास्तव में मददगार साबित होंगे:
#!/usr/bin/python
import pandas as pd
import numpy as np
import tensorflow as tf
from sklearn.linear_model import LassoCV
#Create DataFrames for attribute and target matrices
DF_X = pd.DataFrame(np.array([[0,0,1],[2,3,1],[4,5,1],[3,4,1]]),columns=["att1","att2","att3"],index=["s1","s2","s3","s4"])
SR_y = pd.Series(np.array([3,2,5,8]),index=["s1","s2","s3","s4"],name="target")
print DF_X
#att1 att2 att3
#s1 0 0 1
#s2 2 3 1
#s3 4 5 1
#s4 3 4 1
print SR_y
#s1 3
#s2 2
#s3 5
#s4 8
#Name: target, dtype: int64
#Create Linear Model (Lasso Regression)
model = LassoCV()
model.fit(DF_X,SR_y)
print model
#LassoCV(alphas=None, copy_X=True, cv=None, eps=0.001, fit_intercept=True,
#max_iter=1000, n_alphas=100, n_jobs=1, normalize=False, positive=False,
#precompute='auto', random_state=None, selection='cyclic', tol=0.0001,
#verbose=False)
print model.coef_
#[ 0. 0.3833346 0. ]
'लेखन त्रुटि: 'टेन्सर' वस्तु नहीं है iterable'I यह त्रुटि आई, जबकि' नुकसान = (राशि (y_-y)) ** 2' –
मैं लगता है कि 'x' मैट्रिक्स और 'डब्ल्यू' वेक्टर ट्यूटोरियल के उदाहरण –
में बदल दिए गए हैं मान लें कि आप स्क्वायर त्रुटियों की राशि चाहते हैं, मुझे लगता है कि 'हानि' को परिभाषित किया जाना चाहिए:' loss = tf.reduce_sum (tf.square (y_ - वाई)) '। ('पुनरावर्तनीय' त्रुटि टेंसरफ्लो ऑपरेटर की बजाय पाइथन के अंतर्निर्मित 'योग()' फ़ंक्शन का उपयोग करने से आती है; और मुझे लगता है कि आप स्क्वायरिंग के बाद योग लेना चाहते हैं।) – mrry