Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
exlends
Категории
  1. Home
  2. Categories
  3. Искусственный Интеллект
  4. Создание собственного искусственного интеллекта

Создание собственного искусственного интеллекта

Scheduled Pinned Locked Moved Искусственный Интеллект
python
1 Posts 1 Posters 9 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • kirilljsxK Online
    kirilljsxK Online
    kirilljsx
    js
    wrote last edited by
    #1

    Это увлекательный процесс (а может быть и нет 😀 ), и Python — отличный выбор для этого благодаря богатой экосистеме библиотек.

    Шаг 1

    Начнем с простого, понимание что такое ИИ:

    • Машинное обучение (ML) — обучение модели на данных.
    • Нейронные сети — более сложные модели, особенно глубокие (Deep Learning).
    • Генеративные модели — например, чат-боты, генератор текста.

    Но начать нужно с простого — попробуем обучить модель предсказывать что-то.


    Шаг 2

    Предварительно установим Python (лучше 3.8+, надеюсь вы знаете как установить?), затем установи нужные библиотеки:

    pip install numpy pandas scikit-learn matplotlib tensorflow torch jupyter
    

    Что тут у нас:

    • scikit-learn — для простого машинного обучения.
    • numpy — работа с массивами.
    • pandas — обработка данных.
    • matplotlib — визуализация.

    Шаг 3

    Теперь попробуем создать простую модель, которая предсказывает зарплату по стажу работы.

    Пример 1: Простая модель

    # Создадим файл  linear_regression.py или main.py без разницы
    
    import numpy as np
    import matplotlib.pyplot as plt
    from sklearn.linear_model import LinearRegression
    from sklearn.model_selection import train_test_split
    
    # 1. Сгенерируем данные
    np.random.seed(42)
    стаж = np.random.randint(1, 20, 100)  # стаж в годах
    зарплата = стаж * 3000 + np.random.normal(0, 5000, 100)  # зарплата с шумом
    
    # 2. Подготовим данные
    X = стаж.reshape(-1, 1)  # признаки (стаж)
    y = зарплата               # целевая переменная (зарплата)
    
    # 3. Разделим на обучение и тест
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
    
    # 4. Создаём и обучаем модель
    model = LinearRegression()
    model.fit(X_train, y_train)
    
    # 5. Делаем предсказания
    y_pred = model.predict(X_test)
    
    # 6. Оцениваем качество
    score = model.score(X_test, y_test)
    print(f"Точность модели (R²): {score:.2f}")
    
    # 7. Визуализация
    plt.scatter(X_test, y_test, color='blue', label='Реальные данные')
    plt.plot(X_test, y_pred, color='red', label='Предсказание')
    plt.xlabel('Стаж (лет)')
    plt.ylabel('Зарплата (руб)')
    plt.legend()
    plt.show()
    

    Это простая ИИ — модель, которая “учится” на данных и делает предсказания.

    И да! Python 3 полностью поддерживает кириллицу в именах переменных, функций, комментариях и строках. Так что использовать русские слова — абсолютно нормально с точки зрения синтаксиса ну или меня 😁


    Шаг 4:

    Плавно переходит к нейросетям, попробуем нейронную сеть с помощью TensorFlow/Keras.

    Пример 2: Нейросеть для той же задачи

    # neural_network.py
    
    import numpy as np
    from sklearn.model_selection import train_test_split
    from tensorflow.keras.models import Sequential
    from tensorflow.keras.layers import Dense
    
    # 1. Данные (те же)
    np.random.seed(42)
    стаж = np.random.randint(1, 20, 100)
    зарплата = стаж * 3000 + np.random.normal(0, 5000, 100)
    
    X = стаж.reshape(-1, 1)
    y = зарплата
    
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
    
    # 2. Создаём нейросеть
    model = Sequential([
        Dense(10, activation='relu', input_shape=(1,)),  # скрытый слой
        Dense(1)  # выходной слой (предсказание)
    ])
    
    # 3. Компилируем
    model.compile(optimizer='adam', loss='mse', metrics=['mae'])
    
    # 4. Обучаем
    history = model.fit(X_train, y_train, epochs=100, verbose=0, validation_split=0.2)
    
    # 5. Оценка
    loss, mae = model.evaluate(X_test, y_test, verbose=0)
    print(f"Средняя ошибка: {mae:.2f} руб")
    
    # 6. Предсказание
    new_experience = np.array([[5]])  # 5 лет стажа
    predicted_salary = model.predict(new_experience, verbose=0)
    print(f"Предсказанная зарплата для 5 лет стажа: {predicted_salary[0][0]:.0f} руб")
    

    А это у нас уже искусственный интеллект на основе нейросети.


    Шаг 5

    Хотим что-то “умное”, как ChatGPT? Начнем с простого ответчика на ключевые слова.

    Пример 3: Простой чат-бот

    # chatbot.py
    
    import random
    
    # База знаний бота
    responses = {
        "привет": ["Привет!", "Здравствуйте!", "Приветствую!"],
        "как дела": ["Хорошо, спасибо!", "Отлично, а у тебя?"],
        "пока": ["Пока!", "До свидания!", "Удачи!"],
        "спасибо": ["Пожалуйста!", "Всегда рад помочь!"]
    }
    
    def get_response(user_input):
        user_input = user_input.lower()
        for key in responses:
            if key in user_input:
                return random.choice(responses[key])
        return "Извините, я не понял."
    
    # Тест
    while True:
        user = input("Вы: ")
        if user.lower() == "выход":
            break
        print("Бот:", get_response(user))
    

    А что дальше ?

    Глубокое обучение - стоит попробовать transformers от Hugging Face для создания настоящих языковых моделей.

    Пример:

    from transformers import pipeline
    
    chatbot = pipeline("text-generation", model="gpt2")
    response = chatbot("Как стать программистом?", max_length=100)
    print(response[0]['generated_text'])
    

    Обучение своей модели:

    • Собери датасет (например, диалоги)
    • Дообучи модель (fine-tuning) с помощью HuggingFace Transformers.
    1 Reply Last reply
    0

    Категории

    • Главная
    • Новости
    • Фронтенд
    • Бекенд
    • Языки программирования

    Контакты

    • Сотрудничество
    • info@exlends.com
    • Наш чат
    • Наш ТГ канал

    © 2024 - 2025 ExLends, Inc. Все права защищены.

    Политика конфиденциальности
    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups