Vyřešeno: knihovny používané v ANN s Keras Sequential Model

Poslední aktualizace: 09/25/2023

Úvod

Umělé neuronové sítě (ANN) přinesly významnou transformaci v oblasti strojového učení. Jsou to v podstatě síťové struktury modelované na lidském mozku, používané k řešení složitých úkolů, jako je rozpoznávání obrazu, překlad řeči a další. Síla ANN byla přístupná prostřednictvím knihovny Python, Keras. Sekvenční model Keras je obzvláště snadno pochopitelný a implementovatelný a nabízí kódy, které jsou čitelné pro člověka. Tento článek se ponoří do sekvenčního modelu Keras a odhalí, jak využívat knihovny v ANN.

Klíč k odemčení ANN: sekvenční model Keras a knihovny

Sekvenční model Keras je lineární zásobník vrstev, které můžete použít k vytvoření neuronové sítě. Je to jednoduché a je ideální pro začátečníky, protože vám umožní postavit model krok za krokem. Není však vhodný pro složitější architektury. Například nepodporuje více vstupů nebo sdílené vrstvy a tak dále.

S Keras můžete buď začít vytvořením prázdného sekvenčního modelu a přidat do něj vrstvy, nebo můžete při vytváření předat seznam vrstev. Knihovny přicházejí ke hře, když chcete provádět určité operace, jako je mimo jiné manipulace s maticí nebo změna tvaru dat.

from keras.models import Sequential
from keras.layers import Dense

# Initializing the ANN
model = Sequential()

# Adding the input layer and the first hidden layer
model.add(Dense(16, activation='relu', input_shape=(10,)))

# Adding the second hidden layer
model.add(Dense(8, activation='relu'))

# Adding the output layer
model.add(Dense(1, activation='sigmoid'))

Toto je jednoduchý příklad toho, jak můžete začít s prázdným sekvenčním modelem a přidat do něj vrstvy.

Relevance knihoven

Skutečná síla programovacího jazyka Python se projevuje v knihovnách. S knihovnami jako NumPy a pandas se manipulace s daty a matematické funkce zdokonalují a snáze spravují. Další knihovny, jako například Scikit-learn, doplňují Keras při vytváření umělých neuronových sítí (ANN) rozdělením datových sad a poskytováním metrik.

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split

# Data Preparation
data = pd.read_csv('my_data.csv')
X = data.iloc[:, :-1].values
y = data.iloc[:, -1].values

# Splitting the dataset into Training set and Test set
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 0)

Použité knihovny výrazně zefektivňují proces přípravy dat nezbytných pro sestavení ANN.

Povolení zpracování dat pomocí TensorFlow

V Pythonu tvoří TensorFlow základ pro práci s Keras. Je to klíčová knihovna pro vytváření a školení ANN, protože poskytuje rámec pro provádění neuronových sítí na vysoké úrovni. Funkcí TensorFlow je nabídnout numerickou výpočetní kapacitu pomocí grafů toku dat, které mají uzly a hrany.

V kontextu sekvenčního modelu Keras pomáhá TensorFlow při výpočtu složitých matematických operací, které se dějí na konci modelu.

# Compiling the ANN
model.compile(optimizer ='adam',loss='binary_crossentropy', metrics =['accuracy'])

# Fitting the ANN to the Training set
model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=100, batch_size=32)

To v podstatě představuje, jak je TensorFlow klíčový v procesu učení sekvenčního modelu v Keras. Jeho role je zásadní ve fázích optimalizace funkce a výpočtu.

Vývoj ANN poháněných Pythonem a jeho knihovnami prostřednictvím sekvenčního modelu Keras ilustruje vzrušující fázi strojového učení. Výběr knihoven a pochopení jejich fungování může významně ovlivnit úspěšnost modelu. Díky pokračující praxi a aplikaci se umění vytvářet efektivní modely ANN pomocí Keras stává druhou přirozeností programátorů pythonu.

Související příspěvky: