Chollet ML

الأعضاء
  • المساهمات

    36
  • تاريخ الانضمام

  • تاريخ آخر زيارة

السُّمعة بالموقع

8 Neutral
  1. عند التعامل مع TensorFlow فإنه يقوم بشكل افتراضي بتخصيص كامل طاقة ال GPU المتاحة، حتى لو كانت الشبكة العصبية صغيرة جداً، فمثلاً أنا لدي GPU ب 8 جيجابايت، لكن لا أريد أن يتم تخصيصها كاملةً لمهمة واحدة (تدريب شبكة واحدة) هل أستطيع تخصيص حجم معين فقط لمهمة معينة؟
  2. استخدم تنسرفلو لتدريب نموذج لكن لم أفهم بدقة ماذا تعني ال epoch، من المعروف أن ال iteration هو عملية forward و backward على البيانات (مرور على البيانات ثم تحديث قيم الأوزان في الشبكة)، لكن ماهو ال epoch ؟ ولماذا لانستخدم مصطلح ال iteration؟ Epoch 1/5 105/938 [==>...........................] - ETA: 51s - loss: 0.6753 - acc: 0.7948
  3. في التوثيق الخاص بالدالة softmax في تنسرفلو يتم تعريف الدالة بالشكل التالي : tf.nn.softmax( logits, axis=None, name=None ) # أيضاً هناك دالة أخرى معرفة بالشكل التالي tf.nn.softmax_cross_entropy_with_logits(logits, labels, name=None) ما المقصود بال logits وما الفرق بين الدالتين السابقتين؟
  4. كيف يمكننا معرفة نسخة تنسرفلو الحالية TensorFlow Version؟
  5. أحاول تثبيت تنسرفلو باستخدام pip، لكن يظهر لي هذا الخطأ، مالحل؟ $ pip install tensorflow --user Collecting tensorflow Could not find a version that satisfies the requirement tensorflow (from versions: ) No matching distribution found for tensorflow
  6. أثناء عملي على تنسرفلو tensorflow-1.4.0 قمت ببناء الكود التالي، لكن يظهر لي هذا التحذير، ما المشكلة؟ import tensorflow tens = tensorflow.constant('Hello, TensorFlow!') sess = tensorflow.Session() sess.run(tens) 'Hello, TensorFlow!' sess.run(tensorflow.constant(4) +tensorflow.constant(5)) # 9 sess.close() ---------------------------------- 2017-11-02 01:56:21.698935: I C:\tf_jenkins\home\workspace\rel-win\M\windows\PY\36\tensorflow\core\platform\cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2
  7. قمت ببناء النموذج التالي في كيراس لكن يظهر لي الخطأ التالي: from keras.datasets import reuters import keras import tensorflow as tf (train_data, train_labels), (test_data, test_labels) = reuters.load_data( num_words=10000) import numpy as np def vectorize_sequences(sequences, dimension=10000): results = np.zeros((len(sequences), dimension)) for i, sequence in enumerate(sequences): results[i, sequence] = 1. return results x_train = vectorize_sequences(train_data) x_test = vectorize_sequences(test_data) from keras.utils.np_utils import to_categorical one_hot_train_labels = to_categorical(train_labels) one_hot_test_labels = to_categorical(test_labels) x_val = x_train[:1000] partial_x_train = x_train[1000:] # هنا y_val = one_hot_train_labels[:1000] partial_y_train = one_hot_train_labels[1000:] # الآن: partial_x_train.shape # (7982, 10000) partial_y_train.shape # (7982, 46) from keras import models from keras import layers model = models.Sequential() model.add(layers.Dense(64, activation='relu', input_shape=(1000,))) model.add(keras.layers.LayerNormalization()) model.add(layers.Dense(64, activation='relu')) model.add(keras.layers.LayerNormalization()) model.add(layers.Dense(46, activation='softmax')) model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['CategoricalAccuracy']) history = model.fit(tf.convert_to_tensor(partial_x_train, np.float32), partial_y_train, epochs=6, batch_size=512, validation_data=(x_val, y_val)) ---------------------------------------------------------- ValueError: Input 0 of layer sequential_7 is incompatible with the layer: expected axis -1 of input shape to have value 1000 but received input with shape (None, 10000)
  8. قمت ببناء نموذج لتصنيف الأخبار على بيانات راوترز، لكن يظهر لي الخطأ التالي عند محاولة تدريب نموذجي؟ from keras.datasets import reuters import keras import tensorflow as tf (train_data, train_labels), (test_data, test_labels) = reuters.load_data( num_words=10000) import numpy as np def vectorize_sequences(sequences, dimension=10000): results = np.zeros((len(sequences), dimension)) for i, sequence in enumerate(sequences): results[i, sequence] = 1. return results x_train = vectorize_sequences(train_data) x_test = vectorize_sequences(test_data) from keras.utils.np_utils import to_categorical one_hot_train_labels = to_categorical(train_labels) one_hot_test_labels = to_categorical(test_labels) x_val = x_train[:1000] partial_x_train = x_train[1000:] from keras import models from keras import layers model = models.Sequential() model.add(layers.Dense(64, activation='relu', input_shape=(10000,))) model.add(keras.layers.LayerNormalization()) model.add(layers.Dense(64, activation='relu')) model.add(keras.layers.LayerNormalization()) model.add(layers.Dense(46, activation='softmax')) model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['CategoricalAccuracy']) #fit تدريب النموذج من خلال الدالة history = model.fit(tf.convert_to_tensor(partial_x_train, np.float32), one_hot_train_labels, epochs=6, batch_size=512, validation_data=(x_val, one_hot_test_labels),max_queue_size=10) --------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-2-b9508248cdf2> in <module>() 34 epochs=6, 35 batch_size=512, ---> 36 validation_data=(x_val, one_hot_test_labels),max_queue_size=10) 4 frames /usr/local/lib/python3.7/dist-packages/keras/engine/data_adapter.py in _check_data_cardinality(data) 1647 label, ", ".join(str(i.shape[0]) for i in tf.nest.flatten(single_data))) 1648 msg += "Make sure all arrays contain the same number of samples." -> 1649 raise ValueError(msg) 1650 1651 ValueError: Data cardinality is ambiguous: x sizes: 7982 y sizes: 8982 Make sure all arrays contain the same number of samples. ما المشكلة وما السبب؟ وما هو الحل؟
  9. ماذا تفعل الدالة fit في كيراس Keras وكيف نستخدمها؟
  10. ما الفرق بين تمرير دالة التنشيط كوسيط كما في المثال التالي : from tensorflow.keras import layers model.add(layers.Dense(64, activation='relu')) أو استخدامها كطبقة Activation مستقلة: from tensorflow.keras import layers from tensorflow.keras import activations model.add(layers.Dense(64)) model.add(layers.Activation(activations.relu))
  11. أقوم ببناء نموذج لتصنيف الأرقام المكتوبة بخط اليد اعتماداً على مجموعة بيانات MINST لكن لا أعلم سبب ظهور الخطأ التالي عندما أحاول تدريب النموذج: from tensorflow.keras.layers import Conv2D,MaxPooling2D from keras.datasets import mnist from tensorflow.keras.models import Sequential import keras from keras.layers import Dense, Dropout, Flatten model = Sequential() model.add(Conv2D(30,(3,3),padding="valid",kernel_initializer="glorot_uniform", activation="tanh", input_shape=(28, 28, 1) )) model.add(Conv2D(30,(3,3), activation="tanh")) model.add(MaxPooling2D((2,2)) model.add(Dropout(0.4)) model.add(Flatten()) model.add(Dense(100, activation='relu')) model.add(Dropout(0.4)) model.add(Dense(10, activation='softmax')) ----------------------------------------------------------------------------------------------- TypeError: The added layer must be an instance of class Layer. Found: <keras.layers.core.Dropout object at 0x000001622999A5F8>
  12. ما هي فكرة ال Layer Normalization وكيف نستخدمها في كيراس؟
  13. ما هو الفرق بين val_acc و acc، فأثناء قراءتي لإحدى النماذج رأيتهم لكن لم أفهم سبب وجود val_acc؟ Epoch 5/200 727722/727722 [==============================] - 50s - loss: 0.3167 - acc: 0.9557 - val_loss: 0.5473 - val_acc: 0.7455 Epoch 6/200 727722/727722 [==============================] - 50s - loss: 0.3152 - acc: 0.9573 - val_loss: 0.5497 - val_acc: 0.7404 Epoch 6/200 727722/727722 [==============================] - 60s - loss: 0.3136 - acc: 0.9581 - val_loss: 0.6518 - val_acc: 0.7001
  14. أتتبع دورة تعليمية، في كيراس، لكن عند محاولتي تطبيق ذلك ظهر لي الخطأ التالي: from keras.layers import Conv2D, MaxPooling2D,Dense, Dropout, Activation, Flatten from keras.models import Sequential from keras.preprocessing.image import ImageDataGenerator --------------------------------------------------------------------------- ImportError Traceback (most recent call last) <ipython-input-13-3a12c6f32fcf> in <module>() ----> 1 from keras.layers import Conv2D, MaxPooling2D,Dense, Dropout, Activation, Flatten ImportError: cannot import name Conv2D
  15. قمت بتثبيت بيئة أناكوندا Anaconda 4.4.1 وأحاول تنفيذ نموذج في كيراس على جوبيتر لكن يظهر لي الخطأ التالي عند محاولة استيرادها: import keras ----------------------------------------------------- Traceback (most recent call last): File "<ipython-input-3-c74e2bd4ca71>", line 1, in <module> ImportError: No module named 'keras'