Создание простой нейронной сети на языке программирования Python |
Автор: Икромов Х.Х. |
20.12.2024 21:51 |
СОЗДАНИЕ ПРОСТОЙ НЕЙРОННОЙ СЕТИ НА ЯЗЫКЕ ПРОГРАММИРОВАНИЯ PYTHON Икромов Хусан Холмахаматович, Аннотация. В данной статье рассматриваются основы нейронных сетей и процесс их создания с помощью языка программирования Python. Описаны ключевые компоненты нейронной сети: нейроны, слои, веса и функции активации. Подробно объясняется, как работает нейронная сеть, включая этапы прямого и обратного распространения. Статья предоставляет пошаговое руководство по созданию простой нейронной сети с использованием библиотеки Keras (часть TensorFlow), от установки библиотек и подготовки данных до компиляции модели, её обучения и оценки. Пример описывает задачу бинарной классификации с использованием полносвязной нейронной сети, что позволяет читателям понять основные принципы создания и применения нейросетей в реальных задачах. Ключевые слова. Нейронная сеть,
Python, Keras, TensorFlow, машинное обучение, слои, нейроны, функция активации,
бинарная классификация, полносвязная сеть, обратное распространение,
оптимизация, Adam, ReLU, сигмоида. Нейронная сеть — это вычислительная модель, вдохновленная биологической нервной системой, в частности, мозгом. Она состоит из искусственных нейронов, которые соединены друг с другом слоями. Цель нейронной сети — научиться находить скрытые зависимости в данных и применять эти знания для решения задач, таких как классификация, регрессия или распознавание образов. Основные компоненты нейронной сети:
Процесс работы нейронной сети:
Пример создания простой нейронной сети на Python Для создания простой нейронной сети на Python можно использовать библиотеку Keras, которая является частью TensorFlow. Вот пример простой нейронной сети для задачи классификации: Шаг 1: Установка TensorFlow Для начала установим библиотеку TensorFlow (если она еще не установлена): pip install
tensorflow Шаг 2: Импорт библиотек import
tensorflow as tf from
tensorflow.keras.models import Sequential from
tensorflow.keras.layers import Dense import numpy as np Шаг 3: Подготовка данных Создадим фиктивные данные для примера. Допустим, мы хотим решить задачу бинарной классификации: # Генерируем данные X = np.random.rand(1000, 10) # 1000 примеров, каждый с 10 признаками y = np.random.randint(2, size=(1000, 1)) # 1000 меток, по одной на каждый пример (0 или 1) Шаг 4: Создание нейронной сети Создадим простую сеть с двумя скрытыми слоями и одним выходным слоем: # Инициализируем последовательную модель model = Sequential() # Добавляем первый скрытый слой: 32 нейрона, функция активации ReLU model.add(Dense(32, activation='relu', input_shape=(10,))) # Входной слой ожидает 10 признаков # Добавляем второй скрытый слой: 16 нейронов, функция активации ReLU model.add(Dense(16,
activation='relu')) # Добавляем выходной слой: 1 нейрон, функция активации сигмоида для бинарной классификации model.add(Dense(1,
activation='sigmoid')) Шаг 5: Компиляция модели Скомпилируем модель, указав функцию потерь и оптимизатор: model.compile(optimizer='adam',
loss='binary_crossentropy', metrics=['accuracy']) Шаг 6: Обучение модели Обучим модель на наших данных: model.fit(X, y,
epochs=10, batch_size=32) Шаг 7: Оценка модели После обучения можно оценить качество модели: python Копировать код test_loss,
test_acc = model.evaluate(X, y) print(f'Точность на тестовых данных: {test_acc}') Как это работает?
Таким образом, с использованием таких простых технологий, как Keras и TensorFlow, можно быстро создать и обучить нейронную сеть, даже не обладая глубокими знаниями в машинном обучении. Литература 1.
Ikromov Khusan
Kholmakhamatovich, . (2023). HISTORICAL CONTEXT OF DEVELOPMENT OF INFORMATION
SYSTEMS AND DATABASE MANAGEMENT. International Journal of Pedagogics, 3(11),
119–123. https://doi.org/10.37547/ijp/Volume03Issue11-23 2.
Ikromov, X.
TA’LIM JARAYONIDAGI SUN’IY INTELLEKTGA ASOSLANGAN AXBOROTNI QAYTA ISHLASH
VOSITALARINING TAHLILI. O ‘ZBEKISTON RESPUBLIKASI OLIY TA’LIM, FAN VA
INNOVATSIYALAR VAZIRLIGI ANDIJON DAVLAT UNIVERSITETI UMUMIY PEDAGOGIKA
KAFEDRASI, 315. 3.
Mamasidiqov
Baxodir Qobuljon o’g’li. (2024). O’ZBEKISTONDA BOZOR IQTISODIYOTIGA O’TISHNING
YANGI BOSQICHI. IQTISODIYOT VA MATEMATIKA: Andijon mashinasozlik instituti
“Axborot texnologiya” kafedrasi, katta o’qituvchisi Zulfixarov Ilxom
Maxmudovich taqrizi ostida . IQRO INDEXING, 9(2), 52-55. http://worldlyjournals.com/index.php/IFX/article/view/2446 |