keras.activations.softmax
और keras.layers.Softmax
में क्या अंतर है? एक ही सक्रियण फ़ंक्शन की दो परिभाषाएँ क्यों हैं?
keras.activations.softmax
: https://keras.io/activations/
keras.layers.Softmax
: https://keras.io/layers/advanced-activations/
1 उत्तर
वे जो करते हैं उसके मामले में वे एक दूसरे के बराबर हैं। दरअसल, Softmax
परत activations.softmax
हुड के नीचे:
def call(self, inputs):
return activations.softmax(inputs, axis=self.axis)
हालांकि, उनका अंतर यह है कि Softmax
परत को सीधे एक परत के रूप में इस्तेमाल किया जा सकता है:
from keras.layers import Softmax
soft_out = Softmax()(input_tensor)
लेकिन, activations.softmax
को सीधे एक परत के रूप में उपयोग नहीं किया जा सकता है। इसके बजाय, आप इसे activation
तर्क के माध्यम से अन्य परतों के सक्रियण कार्य के रूप में पारित कर सकते हैं:
from keras import activations
dense_out = Dense(n_units, activation=activations.softmax)
इसके अलावा, ध्यान दें कि Softmax
परत का उपयोग करने के बारे में अच्छी बात यह है कि यह एक axis
तर्क लेता है और आप सॉफ्टमैक्स की गणना इसके अंतिम अक्ष (जो डिफ़ॉल्ट है) के बजाय इनपुट के किसी अन्य अक्ष पर कर सकते हैं:
soft_out = Softmax(axis=desired_axis)(input_tensor)
संबंधित सवाल
नए सवाल
machine-learning
मशीन लर्निंग एल्गोरिदम के बारे में कार्यान्वयन प्रश्न। मशीन लर्निंग के बारे में सामान्य प्रश्न उनके विशिष्ट समुदायों को पोस्ट किए जाने चाहिए।