6 coole Python-bibliotheken die ik onlangs tegenkwam

Bronknooppunt: 1068196

6 coole Python-bibliotheken die ik onlangs tegenkwam

Bekijk deze geweldige Python-bibliotheken voor Machine Learning.


By Dhilip Subramaniër, Data Scientist en AI Enthusiast

Beeld

Python is een integraal onderdeel van machinaal leren en bibliotheken maken ons leven eenvoudiger. Onlangs kwam ik 6 geweldige bibliotheken tegen terwijl ik aan mijn ML-projecten werkte. Ze hebben me veel tijd bespaard en ik ga er in deze blog over praten.

1. schone tekst

 
 
Een werkelijk ongelooflijke bibliotheek, schone tekst zou uw favoriete keuze moeten zijn als u met scraping- of sociale-mediagegevens moet omgaan. Het coolste eraan is dat er geen lange, ingewikkelde code of reguliere expressies voor nodig zijn om onze gegevens op te schonen. Laten we enkele voorbeelden bekijken:

Installatie

!pip install cleantext

Voorbeeld

#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")

uitgang



Uit het bovenstaande kunnen we zien dat het Unicode heeft in het woord Zürich (de letter 'u' is gecodeerd), ASCII-tekens (in Alu017eupine.), valutasymbool in roepie, HTML-link, leestekens.

U hoeft alleen maar de vereiste ASCII, Unicode, URL's, cijfers, valuta en interpunctie te vermelden in de opschoningsfunctie. Of ze kunnen worden vervangen door vervangparameters in de bovenstaande functie. Ik heb bijvoorbeeld het roepie-symbool veranderd in roepies.

Het is absoluut niet nodig om reguliere expressies of lange codes te gebruiken. Zeer handige bibliotheek, vooral als u de teksten wilt opschonen van scraping of sociale-mediagegevens. Op basis van uw behoefte kunt u de argumenten ook afzonderlijk doorgeven in plaats van ze allemaal te combineren.

Raadpleeg dit voor meer informatie GitHub-repository.

2. tekengegevens

 
 
Drawdata is nog een andere coole vondst uit de Python-bibliotheek van mij. Hoe vaak bent u een situatie tegengekomen waarin u de ML-concepten aan het team moet uitleggen? Het moet vaak gebeuren, omdat datawetenschap draait om teamwerk. Deze bibliotheek helpt u bij het tekenen van een gegevensset in het Jupyter-notebook.
Persoonlijk vond ik het erg leuk om deze bibliotheek te gebruiken toen ik ML-concepten aan mijn team uitlegde. Een pluim voor de ontwikkelaars die deze bibliotheek hebben gemaakt!

Drawdata is alleen bedoeld voor het classificatieprobleem met vier klassen.

Installatie

!pip install drawdata

Voorbeeld

# Importing the drawdata from drawdata import draw_scatterdraw_scatter()

uitgang



Afbeelding door de auteur

 

De bovenstaande tekenvensters worden geopend na het uitvoeren van draw_Scatter(). Het is duidelijk dat er vier klassen zijn, namelijk A, B, C en D. U kunt op elke klasse klikken en de gewenste punten tekenen. Elke klasse vertegenwoordigt de verschillende kleuren in de tekening. U heeft ook de mogelijkheid om de gegevens te downloaden als csv- of json-bestand. De gegevens kunnen ook naar uw klembord worden gekopieerd en uit de onderstaande code worden gelezen

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

Een van de beperkingen van deze bibliotheek is dat deze slechts twee gegevenspunten met vier klassen oplevert. Maar anders is het zeker de moeite waard. Voor meer details kunt u dit controleren GitHub-link.

3. Autoviz

 
 
Ik zal nooit de tijd vergeten die ik heb besteed aan verkennende data-analyse met behulp van matplotlib. Er zijn veel eenvoudige visualisatiebibliotheken. Ik ontdekte onlangs echter Autoviz, dat elke dataset automatisch visualiseert met een enkele regel code.

Installatie

!pip install autoviz

Voorbeeld

Voor dit voorbeeld heb ik de IRIS-dataset gebruikt.

# 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,
)

De bovenstaande parameters zijn standaard. Voor meer informatie, kijk op hier.

uitgang



Afbeelding door de auteur

 

We kunnen alle beelden zien en onze EDA voltooien met één enkele regel code. Er zijn veel bibliotheken voor automatische visualisatie, maar ik vond het erg leuk om vooral met deze vertrouwd te raken.

4. Mito

 
 
Iedereen houdt van Excel, toch? Het is een van de gemakkelijkste manieren om een ​​dataset in eerste instantie te verkennen. Ik kwam Mito een paar maanden geleden tegen, maar probeerde het pas onlangs en ik vond het absoluut geweldig!

Het is een Jupyter-lab uitbreidingspythonbibliotheek met GUI-ondersteuning die spreadsheetfunctionaliteit toevoegt. U kunt uw csv-gegevens laden en de dataset als spreadsheet bewerken, waarna automatisch Pandas-code wordt gegenereerd. Heel cool.

Mito verdient echt een hele blogpost. Ik zal vandaag echter niet veel in detail treden. Hier is in plaats daarvan een eenvoudige taakdemonstratie voor u. Voor meer details, kijk op hier.

Installatie

#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

Voor meer informatie over de installatie, kijk op hier.

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

Na het uitvoeren van de bovenstaande code wordt mitosheet geopend in het jupyter-lab. Ik gebruik de IRIS-dataset. Ten eerste heb ik twee nieuwe kolommen gemaakt. De ene is de gemiddelde kelkbladlengte en de andere is de totale kelkbladbreedte. Ten tweede heb ik de kolomnaam gewijzigd voor de gemiddelde kelkbladlengte. Ten slotte heb ik een histogram gemaakt voor de kolom met de gemiddelde kelkbladlengte.

De code wordt automatisch gegenereerd nadat de bovengenoemde stappen zijn gevolgd.

uitgang



Afbeelding door de auteur

 

Onderstaande code is gegenereerd voor de bovenstaande stappen:

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. Gramvormer

 
 
Nog een andere indrukwekkende bibliotheek, Gramformer is gebaseerd op generatieve modellen die ons helpen de grammatica in de zinnen te corrigeren. Deze bibliotheek heeft drie modellen met een detector, een markeerstift en een corrector. De detector identificeert of de tekst onjuiste grammatica bevat. De markeerstift markeert de foutieve woordsoorten en de corrector herstelt de fouten. Gramformer is een volledig open source en bevindt zich in de beginfase. Maar het is niet geschikt voor lange alinea's, omdat het alleen op zinsniveau werkt en is getraind voor zinnen van 64 lengtes.

Momenteel werkt het corrector- en markeerstiftmodel. Laten we een paar voorbeelden bekijken.

Installatie

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

Gramformer instantiëren

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



Voorbeeld

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

uitgang



Afbeelding door de auteur

 

Uit de bovenstaande uitvoer kunnen we zien dat grammatica- en zelfs spelfouten worden gecorrigeerd. Een werkelijk geweldige bibliotheek en functioneert ook heel goed. Ik heb de markeerstift hier niet geprobeerd, je kunt deze GitHub-documentatie proberen voor meer informatie gegevens.

6. Stijlvormer

 
 
Mijn positieve ervaring met Gramformer moedigde mij aan om naar meer unieke bibliotheken te zoeken. Zo vond ik Styleformer, een andere zeer aantrekkelijke Python-bibliotheek. Zowel Gramformer als Styleformer zijn gemaakt door Prithiviraj Damodaran en beide zijn gebaseerd op generatieve modellen. Een pluim voor de maker voor het open sourcen ervan.

Styleformer helpt bij het omzetten van informele naar formele zinnen, formele naar informele zinnen, actieve naar passieve en passieve naar actieve zinnen.

Laten we enkele voorbeelden bekijken

Installatie

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

Instantieer Styleformer

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

Voorbeelden

# 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")



Zie de bovenstaande uitvoer, deze wordt nauwkeurig geconverteerd. Ik heb deze bibliotheek gebruikt voor het omzetten van informeel naar formeel, vooral voor posts op sociale media in een van mijn analyses. Voor meer details kunt u dit controleren GitHub.

Je bent misschien bekend met enkele van de eerder genoemde bibliotheken, maar degenen zoals Gramformer en Styleformer zijn recente spelers. Ze worden extreem onderschat en verdienen het zeker om bekend te worden, omdat ze veel van mijn tijd hebben bespaard en ik ze intensief heb gebruikt voor mijn NLP-projecten.

Bedankt voor het lezen. Als je iets toe te voegen hebt, laat dan gerust een reactie achter!

Misschien vind je mijn vorige artikel ook leuk Vijf coole Python-bibliotheken voor gegevenswetenschap

 
Bio: Dhilip Subramaniër is Mechanical Engineer en heeft zijn Master in Analytics afgerond. Hij heeft 9 jaar ervaring met specialisatie in verschillende domeinen met betrekking tot gegevens, waaronder IT, marketing, bankwezen, macht en productie. Hij is gepassioneerd door NLP en machine learning. Hij levert een bijdrage aan de SAS-gemeenschap en schrijft graag technische artikelen over verschillende aspecten van data science op het Medium-platform.

ORIGINELE. Met toestemming opnieuw gepost.

Zie ook:

Bron: https://www.kdnuggets.com/2021/09/6-cool-python-libraries-recently.html

Tijdstempel:

Meer van KDnuggets