6 fajnych bibliotek Pythona, z którymi ostatnio się natknąłem

Węzeł źródłowy: 1068196

6 fajnych bibliotek Pythona, z którymi ostatnio się natknąłem

Zapoznaj się z tymi wspaniałymi bibliotekami języka Python do uczenia maszynowego.


By Dhilip Subramanian, Data Scientist i AI Enthusiast

Obraz

Python jest integralną częścią uczenia maszynowego, a biblioteki ułatwiają nam życie. Ostatnio, pracując nad moimi projektami ML, natknąłem się na 6 niesamowitych bibliotek. Pomogły mi zaoszczędzić dużo czasu i zamierzam omówić je na tym blogu.

1. czysty tekst

 
 
Naprawdę niesamowita biblioteka, czysty tekst powinna być Twoim celem, gdy musisz poradzić sobie ze skrobaniem lub danymi z mediów społecznościowych. Najfajniejsze w tym jest to, że nie wymaga żadnego długiego kodu ani wyrażeń regularnych do czyszczenia naszych danych. Zobaczmy kilka przykładów:

Instalacja

!pip install cleantext

Przykład

#Importing the clean text library
from cleantext import clean# Sample texttext = """ Zürich, largest city of Switzerland and capital of the canton of 633Zürich. Located in an Alu017eupine. (https://google.com). Currency is not ₹"""# Cleaning the "text" with clean textclean(text, fix_unicode=True, to_ascii=True, lower=True, no_urls=True, no_numbers=True, no_digits=True, no_currency_symbols=True, no_punct=True, replace_with_punct=" ", replace_with_url="", replace_with_number="", replace_with_digit=" ", replace_with_currency_symbol="Rupees")

Wydajność



Z powyższego widać, że ma Unicode w słowie Zurich (litera 'u' została zakodowana), znaki ASCII (w Alu017eupine.), symbol waluty w rupiach, link HTML, znaki interpunkcyjne.

Musisz tylko wspomnieć o wymaganych ASCII, Unicode, adresach URL, liczbach, walutach i znakach interpunkcyjnych w funkcji clean. Lub można je zastąpić parametrami zamiany w powyższej funkcji. Na przykład zmieniłem symbol rupii na rupie.

Absolutnie nie ma potrzeby używania wyrażeń regularnych ani długich kodów. Bardzo przydatna biblioteka, zwłaszcza jeśli chcesz oczyścić teksty ze skrobania lub danych z mediów społecznościowych. W zależności od wymagań możesz również przekazywać argumenty pojedynczo, zamiast łączyć je wszystkie.

Aby uzyskać więcej informacji, sprawdź to Repozytorium GitHub.

2. losuj dane

 
 
Drawdata to moje kolejne fajne znalezisko w bibliotece Pythona. Ile razy spotkałeś się z sytuacją, w której musisz wyjaśnić zespołowi koncepcje ML? Musi się to często zdarzać, ponieważ nauka o danych opiera się na pracy zespołowej. Ta biblioteka ułatwia rysowanie zestawu danych w notesie Jupyter.
Osobiście bardzo podobało mi się korzystanie z tej biblioteki, kiedy wyjaśniałem mojemu zespołowi koncepcje ML. Uznanie dla programistów, którzy stworzyli tę bibliotekę!

Drawdata dotyczy tylko problemu klasyfikacji z czterema klasami.

Instalacja

!pip install drawdata

Przykład

# Importing the drawdata from drawdata import draw_scatterdraw_scatter()

Wydajność



Zdjęcie autora

 

Powyższe okna rysunkowe otworzą się po wykonaniu funkcji draw_Scatter(). Oczywiście istnieją cztery klasy, a mianowicie A, B, C i D. Możesz kliknąć dowolną klasę i narysować żądane punkty. Każda klasa reprezentuje różne kolory na rysunku. Masz również możliwość pobrania danych jako pliku csv lub json. Ponadto dane można skopiować do schowka i odczytać z poniższego kodu

#Reading the clipboardimport pandas as pd df = pd.read_clipboard(sep=",")
df

Jednym z ograniczeń tej biblioteki jest to, że udostępnia tylko dwa punkty danych z czterema klasami. Ale poza tym zdecydowanie warto. Aby uzyskać więcej informacji, sprawdź to Link do GitHub.

3. Autowiz

 
 
Nigdy nie zapomnę czasu spędzonego na eksploracyjnej analizie danych przy użyciu matplotlib. Istnieje wiele prostych bibliotek wizualizacji. Jednak niedawno dowiedziałem się o Autoviz, który automatycznie wizualizuje dowolny zestaw danych za pomocą pojedynczej linii kodu.

Instalacja

!pip install autoviz

Przykład

W tym przykładzie użyłem zestawu danych IRIS.

# Importing Autoviz class from the autoviz library
from autoviz.AutoViz_Class import AutoViz_Class#Initialize the Autoviz class in a object called df
df = AutoViz_Class()# Using Iris Dataset and passing to the default parametersfilename = "Iris.csv"
sep = ","graph = df.AutoViz( filename, sep=",", depVar="", dfte=None, header=0, verbose=0, lowess=False, chart_format="svg", max_rows_analyzed=150000, max_cols_analyzed=30,
)

Powyższe parametry są parametrami domyślnymi. Aby uzyskać więcej informacji, sprawdź tutaj.

Wydajność



Zdjęcie autora

 

Możemy zobaczyć wszystkie elementy wizualne i uzupełnić nasze EDA o jedną linię kodu. Istnieje wiele bibliotek autowizualizacji, ale szczególnie podobało mi się zapoznanie z tą.

4. Mito

 
 
Wszyscy lubią Excela, prawda? Jest to jeden z najłatwiejszych sposobów eksploracji zbioru danych w pierwszej instancji. Natknąłem się na Mito kilka miesięcy temu, ale spróbowałem go dopiero niedawno i absolutnie go pokochałem!

Jest to biblioteka Pythona z rozszerzeniem Jupyter-lab z obsługą GUI, która dodaje funkcjonalność arkusza kalkulacyjnego. Możesz załadować swoje dane csv i edytować zestaw danych jako arkusz kalkulacyjny, który automatycznie generuje kod Pandas. Bardzo fajny.

Mito naprawdę zasługuje na cały post na blogu. Jednak nie będę się dzisiaj zagłębiał w szczegóły. Oto prosta demonstracja zadania dla Ciebie. Aby uzyskać więcej informacji, sprawdź tutaj.

Instalacja

#First install mitoinstaller in the command prompt
pip install mitoinstaller# Then, run the installer in the command prompt
python -m mitoinstaller install# Then, launch Jupyter lab or jupyter notebook from the command prompt
python -m jupyter lab

Aby uzyskać więcej informacji na temat instalacji, sprawdź tutaj.

# Importing mitosheet and ruuning this in Jupyter labimport mitosheet
mitosheet.sheet()

Po wykonaniu powyższego kodu mitosheet otworzy się w laboratorium jupyter. Używam zestawu danych IRIS. Najpierw stworzyłem dwie nowe kolumny. Jedna to średnia długość działki, a druga to suma szerokości działki. Po drugie, zmieniłem nazwę kolumny na średnią długość Sepala. Na koniec stworzyłem histogram dla kolumny o średniej długości Sepal.

Kod jest generowany automatycznie po wykonaniu powyższych kroków.

Wydajność



Zdjęcie autora

 

Poniższy kod został wygenerowany dla powyższych kroków:

from mitosheet import * # Import necessary functions from Mito
register_analysis('UUID-119387c0-fc9b-4b04-9053-802c0d428285') # Let Mito know which analysis is being run# Imported C:UsersDhilipDownloadsarchive (29)Iris.csv
import pandas as pd
Iris_csv = pd.read_csv('C:UsersDhilipDownloadsarchive (29)Iris.csv')# Added column G to Iris_csv
Iris_csv.insert(6, 'G', 0)# Set G in Iris_csv to =AVG(SepalLengthCm)
Iris_csv['G'] = AVG(Iris_csv['SepalLengthCm'])# Renamed G to Avg_Sepal in Iris_csv
Iris_csv.rename(columns={"G": "Avg_Sepal"}, inplace=True)

5. Gramformator

 
 
Kolejna imponująca biblioteka, Gramformer, opiera się na modelach generatywnych, które pomagają nam poprawiać gramatykę w zdaniach. Ta biblioteka ma trzy modele, które mają wykrywacz, rozświetlacz i korektor. Detektor wykrywa, czy tekst ma niepoprawną gramatykę. Zakreślacz zaznacza wadliwe części mowy, a korektor poprawia błędy. Gramformer jest całkowicie otwartym oprogramowaniem i jest na wczesnym etapie. Ale nie nadaje się do długich akapitów, ponieważ działa tylko na poziomie zdania i został przeszkolony na 64 zdania.

Obecnie sprawdza się model z korektorem i rozświetlaczem. Zobaczmy kilka przykładów.

Instalacja

!pip3 install -U git+https://github.com/PrithivirajDamodaran/Gramformer.git

Utwórz instancję Gramformera

gf = Gramformer(models = 1, use_gpu = False) # 1=corrector, 2=detector (presently model 1 is working, 2 has not implemented)



Przykład

#Giving sample text for correction under gf.correctgf.correct(""" New Zealand is island countrys in southwestern Paciific Ocaen. Country population was 5 million """)

Wydajność



Zdjęcie autora

 

Z powyższego wyniku widać, że poprawia błędy gramatyczne, a nawet ortograficzne. Naprawdę niesamowita biblioteka i działa bardzo dobrze. Nie próbowałem tutaj zakreślacza, możesz spróbować sprawdzić tę dokumentację GitHub, aby uzyskać więcej detale.

6. Kształtownik stylu

 
 
Moje pozytywne doświadczenia z Gramformerem zachęciły mnie do poszukiwania bardziej unikalnych bibliotek. W ten sposób znalazłem Styleformer, kolejną bardzo atrakcyjną bibliotekę Pythona. Zarówno Gramformer, jak i Styleformer zostały stworzone przez Prithiviraj Damodaran i oba są oparte na modelach generatywnych. Uznanie dla twórcy za otwarte źródło.

Styleformer pomaga konwertować zdania swobodne na formalne, zdania formalne na swobodne, aktywne na bierne i bierne na czynne.

Zobaczmy kilka przykładów

Instalacja

!pip install git+https://github.com/PrithivirajDamodaran/Styleformer.git

Utwórz instancję narzędzia Styleformer

sf = Styleformer(style = 0)# style = [0=Casual to Formal, 1=Formal to Casual, 2=Active to Passive, 3=Passive to Active etc..]

Przykłady

# Converting casual to formal sf.transfer("I gotta go")



# Formal to casual sf = Styleformer(style = 1) # 1 -> Formal to casual# Converting formal to casual
sf.transfer("Please leave this place")



# Active to Passive sf = Styleformer(style = 2) # 2-> Active to Passive# Converting active to passive
sf.transfer("We are going to watch a movie tonight.")



# passive to active
sf = Styleformer(style = 2) # 2-> Active to Passive# Converting passive to active
sf.transfer("Tenants are protected by leases")



Zobacz powyższe dane wyjściowe, konwertuje dokładnie. Użyłem tej biblioteki do konwersji zwykłych na oficjalne, szczególnie w przypadku postów w mediach społecznościowych w jednej z moich analiz. Aby uzyskać więcej informacji, sprawdź GitHub.

Być może znasz niektóre z wcześniej wspomnianych bibliotek, ale takie jak Gramformer i Styleformer są najnowszymi graczami. Są bardzo niedoceniane iz całą pewnością zasługują na to, aby je poznać, ponieważ zaoszczędziły mi dużo czasu i intensywnie korzystałem z nich w moich projektach NLP.

Dziękuje za przeczytanie. Jeśli masz coś do dodania, nie wahaj się zostawić komentarza!

Może spodoba Ci się również mój poprzedni artykuł Pięć fajnych bibliotek Pythona do nauki danych

 
Bio: Dhilip Subramanian jest inżynierem mechanikiem i ukończył studia magisterskie z analityki. Posiada 9-letnie doświadczenie w różnych dziedzinach związanych z danymi, w tym IT, marketingu, bankowości, energetyki i produkcji. Pasjonuje się NLP i uczeniem maszynowym. Jest współtwórcą Społeczność SAS i uwielbia pisać artykuły techniczne na temat różnych aspektów nauki o danych na platformie Medium.

Oryginalny. Przesłane za zgodą.

Związane z:

Źródło: https://www.kdnuggets.com/2021/09/6-cool-python-libraries-recently.html

Znak czasu:

Więcej z Knuggety