يساعدك هذا الدليل في حل المشكلات الشائعة أثناء العمل مع منهج تعلم الآلة للمبتدئين. إذا لم تجد حلاً هنا، يرجى التحقق من مناقشات Discord أو فتح قضية.
- مشاكل التثبيت
- مشاكل Jupyter Notebook
- مشاكل حزم Python
- مشاكل بيئة R
- مشاكل تطبيق الاختبارات
- مشاكل البيانات ومسارات الملفات
- رسائل الخطأ الشائعة
- مشاكل الأداء
- البيئة والتكوين
المشكلة: python: command not found
الحل:
- قم بتثبيت Python 3.8 أو أعلى من python.org
- تحقق من التثبيت:
python --versionأوpython3 --version - على macOS/Linux، قد تحتاج إلى استخدام
python3بدلاً منpython
المشكلة: وجود نسخ متعددة من Python تسبب تعارضات
الحل:
# Use virtual environments to isolate projects
python -m venv ml-env
# Activate virtual environment
# On Windows:
ml-env\Scripts\activate
# On macOS/Linux:
source ml-env/bin/activateالمشكلة: jupyter: command not found
الحل:
# Install Jupyter
pip install jupyter
# Or with pip3
pip3 install jupyter
# Verify installation
jupyter --versionالمشكلة: Jupyter لا يفتح في المتصفح
الحل:
# Try specifying the browser
jupyter notebook --browser=chrome
# Or copy the URL with token from terminal and paste in browser manually
# Look for: http://localhost:8888/?token=...المشكلة: حزم R لا يتم تثبيتها
الحل:
# Ensure you have the latest R version
# Install packages with dependencies
install.packages(c("tidyverse", "tidymodels", "caret"), dependencies = TRUE)
# If compilation fails, try installing binary versions
install.packages("package-name", type = "binary")المشكلة: IRkernel غير متوفر في Jupyter
الحل:
# In R console
install.packages('IRkernel')
IRkernel::installspec(user = TRUE)المشكلة: النواة تستمر في التوقف أو إعادة التشغيل
الحل:
- أعد تشغيل النواة:
Kernel → Restart - امسح المخرجات وأعد التشغيل:
Kernel → Restart & Clear Output - تحقق من مشاكل الذاكرة (راجع مشاكل الأداء)
- حاول تشغيل الخلايا بشكل فردي لتحديد الكود المسبب للمشكلة
المشكلة: اختيار نواة Python خاطئة
الحل:
- تحقق من النواة الحالية:
Kernel → Change Kernel - اختر إصدار Python الصحيح
- إذا كانت النواة مفقودة، قم بإنشائها:
python -m ipykernel install --user --name=ml-envالمشكلة: النواة لا تبدأ
الحل:
# Reinstall ipykernel
pip uninstall ipykernel
pip install ipykernel
# Register the kernel again
python -m ipykernel install --userالمشكلة: الخلايا تعمل ولكن لا تظهر المخرجات
الحل:
- تحقق مما إذا كانت الخلية لا تزال تعمل (ابحث عن المؤشر
[*]) - أعد تشغيل النواة وشغل جميع الخلايا:
Kernel → Restart & Run All - تحقق من وحدة التحكم في المتصفح بحثًا عن أخطاء JavaScript (F12)
المشكلة: لا يمكن تشغيل الخلايا - لا يوجد استجابة عند النقر على "Run"
الحل:
- تحقق مما إذا كان خادم Jupyter لا يزال يعمل في الطرفية
- قم بتحديث صفحة المتصفح
- أغلق وأعد فتح الدفتر
- أعد تشغيل خادم Jupyter
المشكلة: ModuleNotFoundError: No module named 'sklearn'
الحل:
pip install scikit-learn
# Common ML packages for this course
pip install scikit-learn pandas numpy matplotlib seabornالمشكلة: ImportError: cannot import name 'X' from 'sklearn'
الحل:
# Update scikit-learn to latest version
pip install --upgrade scikit-learn
# Check version
python -c "import sklearn; print(sklearn.__version__)"المشكلة: أخطاء عدم توافق إصدار الحزمة
الحل:
# Create a new virtual environment
python -m venv fresh-env
source fresh-env/bin/activate # or fresh-env\Scripts\activate on Windows
# Install packages fresh
pip install jupyter scikit-learn pandas numpy matplotlib seaborn
# If specific version needed
pip install scikit-learn==1.3.0المشكلة: pip install يفشل بسبب أخطاء الأذونات
الحل:
# Install for current user only
pip install --user package-name
# Or use virtual environment (recommended)
python -m venv venv
source venv/bin/activate
pip install package-nameالمشكلة: FileNotFoundError عند تحميل ملفات CSV
الحل:
import os
# Check current working directory
print(os.getcwd())
# Use relative paths from notebook location
df = pd.read_csv('../../data/filename.csv')
# Or use absolute paths
df = pd.read_csv('/full/path/to/data/filename.csv')المشكلة: فشل تثبيت الحزمة بسبب أخطاء الترجمة
الحل:
# Install binary version (Windows/macOS)
install.packages("package-name", type = "binary")
# Update R to latest version if packages require it
# Check R version
R.version.string
# Install system dependencies (Linux)
# For Ubuntu/Debian, in terminal:
# sudo apt-get install r-base-devالمشكلة: tidyverse لا يتم تثبيته
الحل:
# Install dependencies first
install.packages(c("rlang", "vctrs", "pillar"))
# Then install tidyverse
install.packages("tidyverse")
# Or install components individually
install.packages(c("dplyr", "ggplot2", "tidyr", "readr"))المشكلة: RMarkdown لا يتم عرضه
الحل:
# Install/update rmarkdown
install.packages("rmarkdown")
# Install pandoc if needed
install.packages("pandoc")
# For PDF output, install tinytex
install.packages("tinytex")
tinytex::install_tinytex()المشكلة: npm install يفشل
الحل:
# Clear npm cache
npm cache clean --force
# Remove node_modules and package-lock.json
rm -rf node_modules package-lock.json
# Reinstall
npm install
# If still fails, try with legacy peer deps
npm install --legacy-peer-depsالمشكلة: المنفذ 8080 قيد الاستخدام بالفعل
الحل:
# Use different port
npm run serve -- --port 8081
# Or find and kill process using port 8080
# On Linux/macOS:
lsof -ti:8080 | xargs kill -9
# On Windows:
netstat -ano | findstr :8080
taskkill /PID <PID> /Fالمشكلة: npm run build يفشل
الحل:
# Check Node.js version (should be 14+)
node --version
# Update Node.js if needed
# Then clean install
rm -rf node_modules package-lock.json
npm install
npm run buildالمشكلة: أخطاء الفحص تمنع البناء
الحل:
# Fix auto-fixable issues
npm run lint -- --fix
# Or temporarily disable linting in build
# (not recommended for production)المشكلة: ملفات البيانات غير موجودة عند تشغيل الدفاتر
الحل:
-
قم دائمًا بتشغيل الدفاتر من الدليل الذي يحتوي عليها
cd /path/to/lesson/folder jupyter notebook -
تحقق من المسارات النسبية في الكود
# Correct path from notebook location df = pd.read_csv('../data/filename.csv') # Not from your terminal location
-
استخدم المسارات المطلقة إذا لزم الأمر
import os base_path = os.path.dirname(os.path.abspath(__file__)) data_path = os.path.join(base_path, 'data', 'filename.csv')
المشكلة: ملفات مجموعة البيانات مفقودة
الحل:
- تحقق مما إذا كانت البيانات يجب أن تكون في المستودع - معظم مجموعات البيانات مضمنة
- قد تتطلب بعض الدروس تنزيل البيانات - تحقق من README الخاص بالدرس
- تأكد من أنك قمت بسحب أحدث التغييرات:
git pull origin main
الخطأ: MemoryError أو توقف النواة عند معالجة البيانات
الحل:
# Load data in chunks
for chunk in pd.read_csv('large_file.csv', chunksize=10000):
process(chunk)
# Or read only needed columns
df = pd.read_csv('file.csv', usecols=['col1', 'col2'])
# Free memory when done
del large_dataframe
import gc
gc.collect()التحذير: ConvergenceWarning: Maximum number of iterations reached
الحل:
from sklearn.linear_model import LogisticRegression
# Increase max iterations
model = LogisticRegression(max_iter=1000)
# Or scale your features first
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)المشكلة: الرسومات لا تظهر في Jupyter
الحل:
# Enable inline plotting
%matplotlib inline
# Import pyplot
import matplotlib.pyplot as plt
# Show plot explicitly
plt.plot(data)
plt.show()المشكلة: رسومات Seaborn تبدو مختلفة أو تظهر أخطاء
الحل:
import warnings
warnings.filterwarnings('ignore', category=UserWarning)
# Update to compatible version
# pip install --upgrade seaborn matplotlibالمشكلة: UnicodeDecodeError عند قراءة الملفات
الحل:
# Specify encoding explicitly
df = pd.read_csv('file.csv', encoding='utf-8')
# Or try different encoding
df = pd.read_csv('file.csv', encoding='latin-1')
# For errors='ignore' to skip problematic characters
df = pd.read_csv('file.csv', encoding='utf-8', errors='ignore')المشكلة: الدفاتر بطيئة جدًا في التشغيل
الحل:
- أعد تشغيل النواة لتحرير الذاكرة:
Kernel → Restart - أغلق الدفاتر غير المستخدمة لتحرير الموارد
- استخدم عينات بيانات أصغر للاختبار:
# Work with subset during development df_sample = df.sample(n=1000)
- قم بتحليل الكود الخاص بك لتحديد نقاط الاختناق:
%time operation() # Time single operation %timeit operation() # Time with multiple runs
المشكلة: النظام ينفد من الذاكرة
الحل:
# Check memory usage
df.info(memory_usage='deep')
# Optimize data types
df['column'] = df['column'].astype('int32') # Instead of int64
# Drop unnecessary columns
df = df[['col1', 'col2']] # Keep only needed columns
# Process in batches
for batch in np.array_split(df, 10):
process(batch)المشكلة: البيئة الافتراضية لا تعمل
الحل:
# Windows
python -m venv venv
venv\Scripts\activate.bat
# macOS/Linux
python3 -m venv venv
source venv/bin/activate
# Check if activated (should show venv name in prompt)
which python # Should point to venv pythonالمشكلة: الحزم مثبتة ولكن غير موجودة في الدفتر
الحل:
# Ensure notebook uses the correct kernel
# Install ipykernel in your venv
pip install ipykernel
python -m ipykernel install --user --name=ml-env --display-name="Python (ml-env)"
# In Jupyter: Kernel → Change Kernel → Python (ml-env)المشكلة: لا يمكن سحب أحدث التغييرات - تعارضات الدمج
الحل:
# Stash your changes
git stash
# Pull latest
git pull origin main
# Reapply your changes
git stash pop
# If conflicts, resolve manually or:
git checkout --theirs path/to/file # Take remote version
git checkout --ours path/to/file # Keep your versionالمشكلة: دفاتر Jupyter لا تفتح في VS Code
الحل:
- قم بتثبيت إضافة Python في VS Code
- قم بتثبيت إضافة Jupyter في VS Code
- اختر مترجم Python الصحيح:
Ctrl+Shift+P→ "Python: Select Interpreter" - أعد تشغيل VS Code
- مناقشات Discord: اطرح الأسئلة وشارك الحلول في قناة #ml-for-beginners
- Microsoft Learn: وحدات تعلم الآلة للمبتدئين
- دروس الفيديو: قائمة تشغيل YouTube
- متتبع القضايا: الإبلاغ عن الأخطاء
إذا جربت الحلول أعلاه وما زلت تواجه مشاكل:
- ابحث عن القضايا الموجودة: قضايا GitHub
- تحقق من المناقشات في Discord: مناقشات Discord
- افتح قضية جديدة: قم بتضمين:
- نظام التشغيل والإصدار الخاص بك
- إصدار Python/R
- رسالة الخطأ (التتبع الكامل)
- خطوات إعادة إنتاج المشكلة
- ما الذي جربته بالفعل
نحن هنا للمساعدة! 🚀
إخلاء المسؤولية:
تم ترجمة هذا المستند باستخدام خدمة الترجمة الآلية Co-op Translator. بينما نسعى لتحقيق الدقة، يرجى العلم أن الترجمات الآلية قد تحتوي على أخطاء أو عدم دقة. يجب اعتبار المستند الأصلي بلغته الأصلية هو المصدر الموثوق. للحصول على معلومات حساسة، يُوصى بالاستعانة بترجمة بشرية احترافية. نحن غير مسؤولين عن أي سوء فهم أو تفسيرات خاطئة ناتجة عن استخدام هذه الترجمة.