E-book details

Machine learning i natural language processing w programowaniu. Podręcznik z ćwiczeniami w Pythonie

Machine learning i natural language processing w programowaniu. Podręcznik z ćwiczeniami w Pythonie

Piotr Wróblewski

Ebook

Wejdź na nowy poziom programowania z ML i NLP

Sztuczna inteligencja stale się rozwija. Właściwie codziennie słyszymy o jej rosnących możliwościach, nowych osiągnięciach i przyszłości, jaką nam przyniesie. Jednak w tej książce skupiamy się nie na przyszłości, a na teraźniejszości i praktycznym obliczu AI - na usługach, które świadczy już dziś. Większość najciekawszych zastosowań sztucznej inteligencji bazuje na ML (uczenie maszynowe, ang. machine learning), NLP (przetwarzanie języka naturalnego, ang. natural language processing) i architekturze RAG (ang. retrieval augmented generation) zwiększającej możliwości tzw. dużych modeli językowych (LLM, ang. large language model). Stanowią one podwaliny budowy systemów AI, bez których te systemy często wcale nie mogłyby powstać.

Do niedawna ML i NLP pozostawały domeną badaczy i specjalistów - znajdowały się poza zasięgiem praktyków programowania. Aktualnie jest inaczej, szybkie komputery, pojemne pamięci RAM i zaawansowane procesory pozwalają stosować te technologie w codziennej pracy programisty. Szczególnie programisty języka Python, do którego są one niemal "naturalnie" przypisane. Mało tego, od kodujących w Pythonie coraz częściej wręcz wymaga się umiejętności znajomości obszaru AI.

Tym bardziej warto sięgnąć po ten podręcznik z ćwiczeniami, dzięki któremu między innymi:

  • Dowiesz się, jak używać Pythona do rozwiązywania problemów AI
  • Poznasz tajniki analizy tekstów, analizy sentymentu
  • Zrozumiesz, jak skutecznie używać algorytmów klasyfikacji, regresji i grupowania do rozwiązywania problemów biznesowych
  • Pokonwersujesz z ChatGPT - i to bez wchodzenia na stronę internetową tego serwisu

Wstęp

Rozdział 1. O technikach ML, NLP oraz AI bez zbędnej teorii

  • Bać się czy nie bać AI?
  • Zastosowania sztucznej inteligencji
  • Systemy eksperckie
  • Sieci neuronowe
  • Uczenie maszynowe
  • Modelowanie problemów w Pythonie
    • Tablice - podstawowa struktura w przetwarzaniu danych
    • Grafy - modelowanie stanów i przejść
    • Klasy - modelowanie rzeczywistości
  • Modelem jestem
  • Z nauczycielem czy bez?
    • Nauczanie nadzorowane
    • Nauczanie nienadzorowane
    • Techniki mieszane
  • Ważniejsze biblioteki AI/ML i NLP w Pythonie
    • Pakiety uniwersalne
    • Pakiety przydatne w ML i NLP
  • Na deser - Noam Chomsky o AI

Rozdział 2. Niezbędnik warsztatowy programisty Pythona

  • Testujemy poprawność instalacji Pythona
  • Instalator pip i biblioteki Pythona
  • Edytory do Pythona
  • Środowiska IDE
    • IDLE
    • PyCharm
    • Visual Studio Community
  • Notatniki Jupyter
  • Dokumentacja Pythona
  • Używanie zasobów GitHuba

Rozdział 3. NLP - przybornik

  • Odczyt plików i katalogów
    • Rodzaje plików
    • Otwieranie plików
    • Klasa Path
  • Napisy - na co zwrócić uwagę
    • Napisy to nie tablice
    • Konwersje
  • Wyrażenia regularne
  • Pobieranie tekstu z plików PDF
  • Instalacja i konfiguracja spaCy
  • Instalacja i konfiguracja NLTK
  • Podstawowe techniki NLP
    • Tokenizacja bez zadyszki
    • NER, czyli nazwy własne
    • NER w spaCy
    • Czas na pomiar
    • Stop word - co z tym fantem zrobić?
  • NLTK i spaCy - co dalej?

Rozdział 4. NLP - zastosowania

  • Powtórka z NumPy
    • Tablice i macierze
    • Deklarowanie tablic i macierzy w pigułce
    • Funkcje tablicowe
    • Zmiany układu i rozmiaru tablic
    • Wycinki, czyli opanuj dwukropek
  • Powtórka z Pandas
    • Model danych w bibliotece Pandas
    • Obiekty Pandas Series
    • Obiekty Pandas DataFrame
    • Import danych zewnętrznych
    • Czyszczenie danych
    • Analiza jadłospisu pandy
  • Nauczanie nadzorowane w pigułce
    • Macierz konfuzji
    • Ewaluacja modeli klasyfikacji
    • Wstępniak z scikit-learn
    • Klasyfikacja na przykładzie
  • Analiza podobieństwa
    • Wektoryzacja w spaCy
    • Techniczne aspekty wektoryzacji
  • Klasyfikacja - ciąg dalszy
    • Klasyfikacja dla liczby klas większej niż 2
  • Analiza sentymentu
    • VADER
    • TextBlob

Rozdział 5. ChatGPT to. nie tylko czat!

  • Czym jest ChatGPT?
    • Wektory słów i word embeddings
  • Nie tylko chat
  • Podłączamy się do serwisu OpenAI przez API
    • Tworzenie konta w usłudze OpenAI
    • Klucz API do komunikacji z usługą GPT
    • Bezpieczeństwo klucza API
  • Konwersacja z ChatGPT przez API
    • Szablon zapytania do ChatGPT API
    • Dłuższe sesje z ChatGPT API
  • Podłączamy ChatGPT do internetu
    • Naucz się web scrappingu
    • Analiza sentymentu recenzji internetowych
  • Interfejs embeddings serwisu OpenAI

Rozdział 6. Szybka analiza danych przy użyciu Matplotlib

  • Wykresy punktowe i liniowe
  • Modyfikacje wyglądu wykresu
  • Wykresy wielokrotne
  • Popularne miary statystyczne
  • Rozkład normalny warto znać!
  • Popularne wykresy analizy danych
    • Wykresy słupkowe
    • Histogramy
    • Wykres skrzypcowy
    • Wykres pudełkowy
    • Mapa cieplna
  • Podręcznik Matplotlib na bezludną wyspę?

Rozdział 7. Czy można przewidzieć nieznane?

  • Zastosowania regresji liniowej
  • Kiedy regresja działa, a kiedy nie?
  • Wstępna analiza statystyczna danych
  • Regresja z użyciem biblioteki scikit-learn

Rozdział 8. Podział klasowy bez złych skojarzeń

  • Metody skalowania cech
  • Skalowanie cech - przykład
  • Analiza wartości odstających
  • Klasyfikacja bez standaryzacji i ze standaryzacją
  • Zmienne kategoryczne - co z tym fantem zrobić?
  • Preprocesowanie danych przy użyciu ColumnTransformer
  • Gdy klas jest więcej niż dwie
  • Klasyfikacja obrazów

Rozdział 9. Dziel i rządź, czyli klasteryzacja

  • Niebo gwiaździste nade mną.
  • Popularne algorytmy realizujące klasteryzację
  • Pierwsze klastrowanie w Pythonie
    • Klastrowanie hierarchiczne
    • Algorytm centroidów (K-Means)
    • Więcej wymiarów
  • Kłopotliwe dane kategoryczne
    • K-modes
    • K-prototypes
  • A może dwa wróble w garści?

Podsumowanie

Skorowidz

  • Title: Machine learning i natural language processing w programowaniu. Podręcznik z ćwiczeniami w Pythonie
  • Author: Piotr Wróblewski
  • ISBN: 978-83-289-2101-6, 9788328921016
  • Date of issue: 2024-09-24
  • Format: Ebook
  • Item ID: szinpy
  • Publisher: Helion
  • Age category: 14+