Това ръководство ще ви помогне да решите често срещани проблеми при работа с учебната програма "Машинно обучение за начинаещи". Ако не намерите решение тук, моля, проверете нашите дискусии в 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 сървърът все още работи в терминала
- Презаредете страницата на браузъра
- Затворете и отворете отново Notebook-а
- Рестартирайте 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Проблем: Грешки при проверка на кода (Linting), които пречат на създаването
Решение:
# Fix auto-fixable issues
npm run lint -- --fix
# Or temporarily disable linting in build
# (not recommended for production)Проблем: Данните не се намират при изпълнение на Notebook-и
Решение:
-
Винаги изпълнявайте Notebook-ите от директорията, в която се намират
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')Проблем: Notebook-ите се изпълняват много бавно
Решение:
- Рестартирайте ядрото, за да освободите памет:
Kernel → Restart - Затворете неизползвани Notebook-и, за да освободите ресурси
- Използвайте по-малки проби от данни за тестване:
# 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Проблем: Пакетите са инсталирани, но не се намират в Notebook-а
Решение:
# 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 Notebook-ите не се отварят в VS Code
Решение:
- Инсталирайте разширението Python в VS Code
- Инсталирайте разширението Jupyter в VS Code
- Изберете правилния Python интерпретатор:
Ctrl+Shift+P→ "Python: Select Interpreter" - Рестартирайте VS Code
- Дискусии в Discord: Задавайте въпроси и споделяйте решения в канала #ml-for-beginners
- Microsoft Learn: Модули за ML за начинаещи
- Видео уроци: Плейлист в YouTube
- Тракер за проблеми: Докладвайте грешки
Ако сте опитали горните решения и все още срещате трудности:
- Потърсете съществуващи проблеми: GitHub Issues
- Проверете дискусиите в Discord: Discord Discussions
- Отворете нов проблем: Включете:
- Вашата операционна система и версия
- Версия на Python/R
- Съобщение за грешка (пълен traceback)
- Стъпки за възпроизвеждане на проблема
- Какво вече сте опитали
Тук сме, за да помогнем! 🚀
Отказ от отговорност:
Този документ е преведен с помощта на AI услуга за превод Co-op Translator. Въпреки че се стремим към точност, моля, имайте предвид, че автоматизираните преводи може да съдържат грешки или неточности. Оригиналният документ на неговия роден език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален човешки превод. Ние не носим отговорност за недоразумения или погрешни интерпретации, произтичащи от използването на този превод.