Python. Podstawy nauki o danych. Wydanie II - ebook
Python. Podstawy nauki o danych. Wydanie II - ebook
Nauka o danych jest nową, interdyscyplinarną dziedziną, funkcjonującą na pograniczu algebry liniowej, modelowania statystycznego, lingwistyki komputerowej, uczenia maszynowego oraz metod akumulacji danych. Jest przydatna między innymi dla analityków biznesowych, statystyków, architektów oprogramowania i osób zajmujących się sztuczną inteligencją. Szczególnie praktycznym narzędziem dla tych specjalistów jest język Python, który zapewnia doskonałe środowisko do analizy danych, uczenia maszynowego i algorytmicznego rozwiązywania problemów.
Niniejsza książka jest doskonałym wprowadzeniem do nauki o danych. Jej autorzy wskażą Ci prostą i szybką drogę do rozwiązywania różnych problemów z tego obszaru za pomocą Pythona oraz powiązanych z nim pakietów do analizy danych i uczenia maszynowego. Dzięki lekturze przejdziesz przez kolejne etapy modyfikowania i wstępnego przetwarzania danych, poznając przy tym podstawowe operacje związane z wczytywaniem danych, przekształcaniem ich, poprawianiem na potrzeby analiz, eksplorowaniem i przetwarzaniem. Poza podstawami opanujesz też zagadnienia uczenia maszynowego, w tym uczenia głębokiego, techniki analizy grafów oraz wizualizacji danych.
Najważniejsze zagadnienia przedstawione w książce:
- konfiguracja środowiska Jupyter Notebook
- najważniejsze operacje stosowane w nauce o danych
- potoki danych i uczenie maszynowe
- wprowadzenie do grafów i wizualizacje
- biblioteki i pakiety Pythona służące do badań danych
Nauka o danych — fascynujące algorytmy i potężne grafy!
Alberto Boschetti specjalizuje się w przetwarzaniu sygnałów i statystyce. Jest doktorem inżynierii telekomunikacyjnej. Zajmuje się przetwarzaniem języków naturalnych, analityką behawioralną, uczeniem maszynowym i przetwarzaniem rozproszonym.
Luca Massaron specjalizuje się w statystycznych analizach wieloczynnikowych, uczeniu maszynowym, statystyce, eksploracji danych i algorytmice. Pasjonuje się potencjałem, jaki drzemie w nauce o danych.
Spis treści
O autorach (9)
O recenzencie (10)
Wprowadzenie (11)
Rozdział 1. Pierwsze kroki (15)
- Wprowadzenie do nauki o danych i Pythona (16)
- Instalowanie Pythona (17)
- Python 2 czy Python 3? (18)
- Instalacja krok po kroku (19)
- Instalowanie pakietów (20)
- Aktualizowanie pakietów (22)
- Dystrybucje naukowe (22)
- Środowiska wirtualne (25)
- Krótki przegląd podstawowych pakietów (28)
- Wprowadzenie do środowiska Jupyter (37)
- Szybka instalacja i pierwsze testowe zastosowanie (41)
- Magiczne polecenia w Jupyterze (42)
- W jaki sposób notatniki Jupytera mogą być pomocne dla badaczy danych? (44)
- Zastępniki Jupytera (49)
- Zbiory danych i kod używane w książce (50)
- Proste przykładowe zbiory danych z pakietu scikit-learn (50)
- Podsumowanie (59)
Rozdział 2. Przekształcanie danych (61)
- Proces pracy w nauce o danych (62)
- Wczytywanie i wstępne przetwarzanie danych za pomocą biblioteki pandas (64)
- Szybkie i łatwe wczytywanie danych (64)
- Radzenie sobie z problematycznymi danymi (67)
- Radzenie sobie z dużymi zbiorami danych (70)
- Dostęp do danych w innych formatach (73)
- Wstępne przetwarzanie danych (75)
- Wybieranie danych (78)
- Praca z danymi kategorialnymi i tekstowymi (81)
- Specjalny rodzaj danych - tekst (83)
- Scraping stron internetowych za pomocą pakietu Beautiful Soup (89)
- Przetwarzanie danych za pomocą pakietu NumPy (92)
- N-wymiarowe tablice z pakietu NumPy (92)
- Podstawowe informacje o obiektach ndarray z pakietu NumPy (93)
- Tworzenie tablic z pakietu NumPy (95)
- Przekształcanie list w jednowymiarowe tablice (95)
- Kontrolowanie ilości zajmowanej pamięci (96)
- Listy niejednorodne (98)
- Od list do tablic wielowymiarowych (99)
- Zmiana wielkości tablic (100)
- Tablice generowane przez funkcje z pakietu NumPy (101)
- Pobieranie tablicy bezpośrednio z pliku (102)
- Pobieranie danych ze struktur z biblioteki pandas (103)
- Szybkie operacje i obliczenia z użyciem pakietu NumPy (104)
- Operacje na macierzach (106)
- Tworzenie wycinków i indeksowanie tablic z pakietu NumPy (108)
- Dodawanie "warstw" tablic z pakietu NumPy (110)
- Podsumowanie (112)
Rozdział 3. Potok danych (113)
- Wprowadzenie do eksploracji danych (113)
- Tworzenie nowych cech (117)
- Redukcja liczby wymiarów (120)
- Macierz kowariancji (120)
- Analiza głównych składowych (121)
- Analiza głównych składowych dla big data - typ RandomizedPCA (125)
- Analiza czynników ukrytych (126)
- Liniowa analiza dyskryminacyjna (127)
- Analiza ukrytych grup semantycznych (128)
- Analiza składowych niezależnych (129)
- Analiza głównych składowych oparta na funkcji jądra (129)
- Algorytm t-SNE (131)
- Ograniczone maszyny Boltzmanna (132)
- Wykrywanie i traktowanie wartości odstających (133)
- Wykrywanie obserwacji odstających za pomocą technik jednoczynnikowych (134)
- Klasa EllipticEnvelope (136)
- Klasa OneClassSVM (140)
- Miary używane do walidacji (144)
- Klasyfikacja wieloklasowa (144)
- Klasyfikacja binarna (147)
- Regresja (148)
- Testy i walidacja (148)
- Walidacja krzyżowa (153)
- Iteratory walidacji krzyżowej (155)
- Próbkowanie i bootstrapping (157)
- Optymalizacja hiperparametrów (159)
- Tworzenie niestandardowych funkcji oceny (162)
- Skracanie czasu przeszukiwania siatki parametrów (164)
- Wybór cech (166)
- Wybór na podstawie wariancji cech (167)
- Wybór za pomocą modelu jednoczynnikowego (168)
- Rekurencyjna eliminacja (169)
- Wybór na podstawie stabilności i regularyzacji L1 (171)
- Opakowywanie wszystkich operacji w potok (173)
- Łączenie cech i tworzenie łańcuchów transformacji (174)
- Tworzenie niestandardowych funkcji transformacji (176)
- Podsumowanie (177)
Rozdział 4. Uczenie maszynowe (179)
- Przygotowywanie narzędzi i zbiorów danych (179)
- Regresja liniowa i logistyczna (181)
- Naiwny klasyfikator bayesowski (184)
- Algorytm kNN (187)
- Algorytmy nieliniowe (188)
- Stosowanie algorytmu SVM do klasyfikowania (190)
- Stosowanie algorytmów SVM do regresji (192)
- Dostrajanie algorytmu SVM (193)
- Strategie oparte na zestawach algorytmów (195)
- Pasting z użyciem losowych próbek (196)
- Bagging z użyciem słabych klasyfikatorów (196)
- Podprzestrzenie losowe i obszary losowe (197)
- Algorytmy Random Forests i Extra-Trees (198)
- Szacowanie prawdopodobieństwa na podstawie zestawów (200)
- Sekwencje modeli - AdaBoost (202)
- Metoda GTB (202)
- XGBoost (203)
- Przetwarzanie big data (206)
- Tworzenie przykładowych dużych zbiorów danych (207)
- Skalowalność ze względu na ilość danych (208)
- Radzenie sobie z szybkością napływu danych (210)
- Radzenie sobie z różnorodnością (211)
- Przegląd algorytmów z rodziny SGD (213)
- Wprowadzenie do uczenia głębokiego (214)
- Krótkie omówienie przetwarzania języka naturalnego (221)
- Podział na tokeny (221)
- Stemming (222)
- Oznaczanie części mowy (223)
- Rozpoznawanie nazw własnych (224)
- Stop-słowa (225)
- Kompletny przykład z obszaru nauki o danych - klasyfikowanie tekstu (225)
- Przegląd technik uczenia nienadzorowanego (227)
- Podsumowanie (237)
Rozdział 5. Analizy sieci społecznościowych (239)
- Wprowadzenie do teorii grafów (239)
- Algorytmy dla grafów (244)
- Wczytywanie grafów, zapisywanie ich w pliku i pobieranie z nich podpróbek (252)
- Podsumowanie (255)
Rozdział 6. Wizualizacje, wnioski i wyniki (257)
- Wprowadzenie do pakietu Matplotlib (257)
- Rysowanie krzywych (259)
- Stosowanie paneli (260)
- Wykresy punktowe określające relacje w danych (262)
- Histogramy (263)
- Wykresy słupkowe (264)
- Wyświetlanie rysunków (265)
- Wybrane przykłady graficzne z użyciem pakietu pandas (268)
- Wykresy punktowe (271)
- Metoda współrzędnych równoległych (273)
- Opakowywanie poleceń z pakietu Matplotlib (274)
- Wprowadzenie do biblioteki seaborn (274)
- Wzbogacanie możliwości z zakresu eksploracji danych (279)
- Interaktywne wizualizacje z użyciem pakietu Bokeh (284)
- Zaawansowane reprezentacje dotyczące uczenia się na podstawie danych (288)
- Krzywe uczenia (288)
- Krzywe walidacji (290)
- Znaczenie cech w algorytmie Random Forests (292)
- Wykresy częściowej zależności oparte na drzewach GBT (293)
- Budowanie serwera predykcji w modelu ML-AAS (294)
- Podsumowanie (299)
Dodatek A. Utrwalanie podstaw Pythona (301)
- Lista zagadnień do nauki (302)
- Listy (302)
- Słowniki (304)
- Definiowanie funkcji (305)
- Klasy, obiekty i programowanie obiektowe (307)
- Wyjątki (308)
- Iteratory i generatory (309)
- Instrukcje warunkowe (310)
- Wyrażenia listowe i słownikowe (311)
- Nauka przez obserwację, lekturę i praktykę (311)
- Masowe otwarte kursy online (311)
- PyCon i PyData (312)
- Interaktywne sesje w Jupyterze (312)
- Nie wstydź się - podejmij wyzwanie (312)
Skorowidz (315)
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-3424-3 |
Rozmiar pliku: | 3,5 MB |