6 класних бібліотек Python, які я нещодавно зустрічав

Вихідний вузол: 1068196

6 класних бібліотек Python, які я нещодавно зустрічав

Перегляньте ці чудові бібліотеки Python для машинного навчання.


By Діліп Субраманян, Data Scientist та ентузіаст AI

зображення

Python є невід’ємною частиною машинного навчання, а бібліотеки спрощують наше життя. Нещодавно я натрапив на 6 чудових бібліотек, працюючи над своїми проектами ML. Вони допомогли мені заощадити багато часу, і я збираюся обговорити їх у цьому блозі.

1. чистий текст

 
 
Справді неймовірна бібліотека з чистим текстом стане вашим вибором, коли вам потрібно обробити копії чи дані соціальних мереж. Найцікавіше в цьому те, що для очищення наших даних не потрібен довгий код або регулярні вирази. Давайте подивимося кілька прикладів:

установка

!pip install cleantext

Приклад

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

Вихід



З наведеного вище ми бачимо, що він має Unicode у слові Zurich (букву «u» було закодовано), символи ASCII (в Alu017eupine.), символ валюти в рупії, HTML-посилання, розділові знаки.

Вам просто потрібно вказати необхідні ASCII, Unicode, URL-адреси, числа, валюту та пунктуацію у функції очищення. Або їх можна замінити параметрами заміни у наведеній вище функції. Наприклад, я змінив символ рупії на рупії.

Немає жодної потреби використовувати регулярні вирази чи довгі коди. Дуже зручна бібліотека, особливо якщо ви хочете очистити тексти від скрапінгів або даних соціальних мереж. Виходячи з ваших вимог, ви також можете передавати аргументи окремо, а не комбінувати їх усі.

Щоб дізнатися більше, перевірте це GitHub сховище.

2. drawdata

 
 
Drawdata — це ще одна моя чудова бібліотека Python. Скільки разів ви стикалися з ситуацією, коли вам потрібно було пояснити команді концепції ML? Це повинно траплятися часто, тому що наука про дані — це командна робота. Ця бібліотека допоможе вам намалювати набір даних у блокноті Jupyter.
Особисто мені дуже сподобалося використовувати цю бібліотеку, коли я пояснював концепції ML своїй команді. Спасибі розробникам, які створили цю бібліотеку!

Drawdata лише для проблеми класифікації з чотирма класами.

установка

!pip install drawdata

Приклад

# Importing the drawdata from drawdata import draw_scatterdraw_scatter()

Вихід



Зображення автора

 

Наведені вище вікна малюнків відкриються після виконання функції draw_Scatter(). Зрозуміло, що існує чотири класи, а саме A, B, C і D. Ви можете клацнути будь-який клас і намалювати потрібні точки. Кожен клас представляє різні кольори на малюнку. У вас також є можливість завантажити дані як файл CSV або JSON. Крім того, дані можна скопіювати в буфер обміну та прочитати з наведеного нижче коду

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

Одним із обмежень цієї бібліотеки є те, що вона дає лише дві точки даних із чотирма класами. Але в іншому випадку воно того варте. Щоб дізнатися більше, перевірте це Посилання на GitHub.

3. Автовіз

 
 
Я ніколи не забуду час, який витратив на пошуковий аналіз даних за допомогою matplotlib. Існує багато простих бібліотек візуалізації. Однак нещодавно я дізнався про Autoviz, який автоматично візуалізує будь-який набір даних за допомогою одного рядка коду.

установка

!pip install autoviz

Приклад

Для цього прикладу я використав набір даних 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,
)

Наведені вище параметри є типовими. Для отримання додаткової інформації, будь ласка, перевірте тут.

Вихід



Зображення автора

 

Ми можемо побачити всі візуальні елементи та завершити наш EDA одним рядком коду. Існує багато бібліотек автоматичної візуалізації, але мені дуже сподобалося ознайомитись із цією.

4. Міто

 
 
Усім подобається Excel, чи не так? Це один із найпростіших способів дослідити набір даних у першому випадку. Я натрапив на Mito кілька місяців тому, але спробував його лише нещодавно, і він мені надзвичайно сподобався!

Це бібліотека Python розширення Jupyter-lab із підтримкою графічного інтерфейсу користувача, яка додає функціональність електронних таблиць. Ви можете завантажити свої дані CSV і редагувати набір даних як електронну таблицю, і він автоматично генерує код Pandas. Дуже круто.

Mito справді заслуговує на цілий допис у блозі. Однак сьогодні я не буду вдаватися в подробиці. Ось проста демонстрація завдання для вас. Щоб дізнатися більше, перевірте тут.

установка

#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

Для отримання додаткової інформації про встановлення див тут.

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

Після виконання наведеного вище коду mitosheet відкриється в лабораторії Jupyter. Я використовую набір даних IRIS. По-перше, я створив дві нові колонки. Один – це середня довжина чашолистка, а інший – загальна ширина чашолистка. По-друге, я змінив назву стовпця на середню довжину чашолистка. Нарешті, я створив гістограму для стовпця середньої довжини чашолистка.

Код генерується автоматично після виконання вищезазначених кроків.

Вихід



Зображення автора

 

Наведений нижче код було згенеровано для описаних вище кроків:

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. Грамоутворювач

 
 
Ще одна вражаюча бібліотека, Gramformer, заснована на генеративних моделях, які допомагають нам виправляти граматику в реченнях. Ця бібліотека має три моделі, які мають a детектор, хайлайтер і коректор. Детектор визначає, чи текст містить граматичні помилки. Підсвічувач позначає неправильні частини мови, а коректор виправляє помилки. Gramformer є повністю відкритим кодом і знаходиться на початковій стадії. Але він не підходить для довгих абзаців, оскільки працює лише на рівні речень і навчений для 64 речень.

На даний момент працює модель коректора та хайлайтера. Давайте розглянемо кілька прикладів.

установка

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

Створення екземпляра Gramformer

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



Приклад

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

Вихід



Зображення автора

 

З наведеного вище результату ми бачимо, що він виправляє граматичні та навіть орфографічні помилки. Дійсно дивовижна бібліотека, яка також дуже добре функціонує. Я не пробував підсвічувати тут, ви можете спробувати переглянути цю документацію GitHub, щоб дізнатися більше деталі.

6. Стилеформатор

 
 
Мій позитивний досвід роботи з Gramformer спонукав мене шукати більше унікальних бібліотек. Ось як я знайшов Styleformer, ще одну надзвичайно привабливу бібліотеку Python. І Gramformer, і Styleformer були створені Prithiviraj Damodaran, і обидва засновані на генеративних моделях. Слава творцю за відкритий код.

Styleformer допомагає перетворювати невимушені речення на формальні, формальні на невимушені, активні на пасивні та пасивні на активні.

Давайте розглянемо кілька прикладів

установка

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

Створення екземпляра Styleformer

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

прикладів

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



Перегляньте вихідні дані вище, він точно перетворює. Я використовував цю бібліотеку для перетворення повсякденних у офіційні, особливо для публікацій у соціальних мережах в одному зі своїх аналізів. Щоб дізнатися більше, будь ласка, перевірте GitHub.

Ви можете бути знайомі з деякими зі згаданих раніше бібліотек, але такі, як Gramformer і Styleformer, нещодавно почали використовуватися. Їх надзвичайно недооцінюють і, безперечно, заслуговують на те, щоб про них дізналися, оскільки вони заощадили багато мого часу, і я активно використовував їх для своїх НЛП-проектів.

Дякую, що прочитали. Якщо у вас є що додати, будь ласка, залиште коментар!

Вам також може сподобатися моя попередня стаття П'ять класних бібліотек Python для Data Science

 
Біо: Діліп Субраманян є інженером-механіком і закінчив магістратуру з аналітики. Він має 9-річний досвід спеціалізації в різних областях, пов’язаних з даними, включаючи ІТ, маркетинг, банківську справу, електроенергетику та виробництво. Він захоплений НЛП і машинним навчанням. Він є учасником Спільнота SAS і любить писати технічні статті про різні аспекти науки про дані на платформі Medium.

Оригінал. Повідомлено з дозволу.

За темою:

Джерело: https://www.kdnuggets.com/2021/09/6-cool-python-libraries-recently.html

Часова мітка:

Більше від KDnuggets