https://github.com/marcinwitnik/simple_linear
Prosty model regresji liniowej zbudowany w TensorFlow/Keras. Uczy się zależności y = 2x - 1 i przewiduje nowe wartości na podstawie danych wejściowych.
https://github.com/marcinwitnik/simple_linear
ai beginner-friendly keras linear-regression machine-learning ml model pycharm python regression tensorflow training tutorial
Last synced: 7 months ago
JSON representation
Prosty model regresji liniowej zbudowany w TensorFlow/Keras. Uczy się zależności y = 2x - 1 i przewiduje nowe wartości na podstawie danych wejściowych.
- Host: GitHub
- URL: https://github.com/marcinwitnik/simple_linear
- Owner: marcinwitnik
- License: mit
- Created: 2025-07-22T14:22:34.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-07-22T14:25:59.000Z (7 months ago)
- Last Synced: 2025-07-22T16:23:08.533Z (7 months ago)
- Topics: ai, beginner-friendly, keras, linear-regression, machine-learning, ml, model, pycharm, python, regression, tensorflow, training, tutorial
- Language: Python
- Homepage:
- Size: 117 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Prosty Model Regresji Liniowej w TensorFlow
Ten projekt to edukacyjna implementacja **modelu regresji liniowej** z wykorzystaniem TensorFlow (Keras). Model uczy się zależności pomiędzy wartościami wejściowymi `x` a wyjściowymi `y`, a następnie dokonuje predykcji nowych wartości. Dane wejściowe i wyjściowe odzwierciedlają funkcję liniową:
\[
y = 2x - 1
\]
Model oparty jest na sieci neuronowej z jedną warstwą gęstą i uczy się przy użyciu optymalizatora **SGD** i funkcji straty **mean squared error**. Wykorzystywane są biblioteki `TensorFlow`, `NumPy`.
---
##
Technologie i środowisko
- **Język:** [](https://www.python.org)
- **IDE:** [](https://www.jetbrains.com/pycharm/)
- **Biblioteki:**
- [](https://www.tensorflow.org/)
➤ Budowa i trening modelu regresji liniowej
- [](https://numpy.org/)
➤ Tworzenie danych numerycznych i konwersja tablic wejściowych
---
Funkcje programu (kliknij, aby rozwinąć)
### 1. `x_train`, `y_train`
Statyczne dane wejściowe i wyjściowe uczące model zależności:
- `x_train`: [-1.0, 0.0, 1.0, 2.0, 3.0, 4.0]
- `y_train`: [-3.0, -1.0, 1.0, 3.0, 5.0, 7.0]
---
### 2. `model = tf.keras.Sequential([...])`
Tworzy model sekwencyjny z jedną warstwą:
- `Dense(units=1)` — odpowiada funkcji liniowej:
\[
y = wx + b
\]
---
### 3. `model.compile(...)`
Kompilacja modelu:
- Optymalizator: `sgd` (Stochastic Gradient Descent)
- Funkcja straty: `mean_squared_error`
---
### 4. `model.fit(...)`
Trenowanie modelu przez 500 epok z użyciem danych:
- `x_train` i `y_train`
- `verbose=0` — brak wypisywania postępu w konsoli
---
### 5. `model.predict(...)`
Predykcja wartości `y` dla nowej wartości `x`, np.:
```python
new_x = np.array([[10.0]])
```
Zwracany wynik np.:
```
Predykcja dla x=10.0: y=18.98
```
---
### 6. `matplotlib` (opcjonalnie)
Tworzenie wykresu:
- Punkty treningowe `x_train`, `y_train`
- Linia regresji przewidywana przez model
---
Kod aplikacji (kliknij, aby rozwinąć)
#### Poniżej znajduje się pełny zrzut ekranu przedstawiający kod źródłowy aplikacji:

Zawarty kod prezentuje wszystkie kluczowe elementy:
- importy bibliotek `tensorflow` i `numpy`
- przygotowanie danych wejściowych
- budowę modelu `Sequential`
- kompilację modelu
- trening z danymi
- predykcję nowej wartości `y`
Kod jest krótki, przejrzysty i stanowi świetny punkt wyjścia do dalszej nauki regresji liniowej w TensorFlow.
---
Podgląd działania (kliknij, aby rozwinąć)
#### 📌 Przykład działania w terminalu:
```
Predykcja dla x=10.0: y=18.98
```
#### 📊 Wygenerowany wykres regresji:
