6 Cool Python Libraries ที่ฉันเจอเมื่อเร็วๆนี้

โหนดต้นทาง: 1068196

6 Cool Python Libraries ที่ฉันเจอเมื่อเร็วๆนี้

ตรวจสอบไลบรารี Python ที่ยอดเยี่ยมสำหรับการเรียนรู้ของเครื่อง


By ดิลิป ซูบรามาเนียน, Data Scientist และ AI Enthusiast

ภาพ

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 เป็นอีกหนึ่งไลบรารีหลามที่ยอดเยี่ยมในการค้นหาของฉัน กี่ครั้งแล้วที่คุณเจอสถานการณ์ที่คุณต้องอธิบายแนวคิด 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 ใช่ไหม เป็นวิธีที่ง่ายที่สุดวิธีหนึ่งในการสำรวจชุดข้อมูลในอินสแตนซ์แรก ฉันเจอมิโตะเมื่อสองสามเดือนก่อน แต่เพิ่งลองมันเมื่อไม่นานมานี้และฉันก็ชอบมันมาก!

เป็นไลบรารีหลามส่วนขยาย Jupyter-lab พร้อมการสนับสนุน GUI ซึ่งเพิ่มฟังก์ชันการทำงานของสเปรดชีต คุณสามารถโหลดข้อมูล csv ของคุณและแก้ไขชุดข้อมูลเป็นสเปรดชีต และสร้างโค้ด Pandas โดยอัตโนมัติ เจ๋งมาก.

มิโตะสมควรได้รับโพสต์บล็อกทั้งหมดอย่างแท้จริง อย่างไรก็ตาม วันนี้ฉันจะไม่ลงรายละเอียดมาก นี่คือการสาธิตงานง่ายๆ สำหรับคุณแทน ดูรายละเอียดเพิ่มเติมได้ที่  โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม.

การติดตั้ง

#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 lab ฉันกำลังใช้ชุดข้อมูล IRIS ประการแรก ฉันสร้างสองคอลัมน์ใหม่ หนึ่งคือความยาว Sepal เฉลี่ยและอีกอันคือผลรวมของ Sepal width ประการที่สอง ฉันเปลี่ยนชื่อคอลัมน์สำหรับความยาว Sepal เฉลี่ย สุดท้าย ฉันสร้างฮิสโตแกรมสำหรับคอลัมน์ความยาว Sepal เฉลี่ย

รหัสจะถูกสร้างขึ้นโดยอัตโนมัติหลังจากทำตามขั้นตอนที่กล่าวถึงข้างต้น

เอาท์พุต



ภาพโดยผู้เขียน

 

รหัสด้านล่างถูกสร้างขึ้นสำหรับขั้นตอนข้างต้น:

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 เป็นไลบรารี่ล่าสุด พวกเขาถูกประเมินต่ำเกินไปและสมควรที่จะเป็นที่รู้จักมากที่สุดเพราะพวกเขาประหยัดเวลาได้มากและฉันใช้มันอย่างหนักสำหรับโครงการ NLP ของฉัน

ขอบคุณที่อ่าน. หากคุณมีอะไรเพิ่มเติมโปรดแสดงความคิดเห็น!

คุณอาจชอบบทความก่อนหน้าของฉัน Five Cool Python Libraries สำหรับ Data Science

 
Bio: ดิลิป ซูบรามาเนียน เป็นวิศวกรเครื่องกลและสำเร็จการศึกษาระดับปริญญาโทด้านการวิเคราะห์ เขามีประสบการณ์ 9 ปีในด้านความเชี่ยวชาญในสาขาต่างๆ ที่เกี่ยวข้องกับข้อมูล เช่น ไอที การตลาด การธนาคาร พลังงาน และการผลิต เขาหลงใหลเกี่ยวกับ NLP และการเรียนรู้ของเครื่อง เขาเป็นผู้มีส่วนทำให้ ชุมชน SAS และชอบเขียนบทความทางเทคนิคด้านต่างๆ ของ Data Science บนแพลตฟอร์ม Medium

Original. โพสต์ใหม่โดยได้รับอนุญาต

ที่เกี่ยวข้อง



เรื่องเด่นใน 30 วันที่ผ่านมา
เป็นที่นิยม
  1. ความแตกต่างระหว่างนักวิทยาศาสตร์ข้อมูลและวิศวกร ML
  2. 3 เหตุผลที่คุณควรใช้แบบจำลองการถดถอยเชิงเส้นแทนโครงข่ายประสาทเทียม
  3. คำถามและคำตอบในการสัมภาษณ์วิทยาศาสตร์ข้อมูลทั่วไปส่วนใหญ่
  4. GitHub Copilot โอเพ่นซอร์สทางเลือก
  5. คำแนะนำสำหรับการเรียนรู้ Data Science จากผู้อำนวยการฝ่ายวิจัยของ Google
แบ่งปันมากที่สุด
  1. ความแตกต่างระหว่างนักวิทยาศาสตร์ข้อมูลและวิศวกร ML
  2. วิธีค้นหาดาต้าเฟรมของ Pandas
  3. ทำไมคุณควรเรียนรู้ "Productive Data Science" และอย่างไร
  4. ไม่เพียงแต่สำหรับ Deep Learning เท่านั้น: GPUs เร่งความเร็ว Data Science & Data Analytics ได้อย่างไร
  5. การเขียนแอปพลิเคชัน Python แบบกระจายครั้งแรกของคุณด้วย Ray

ที่มา: https://www.kdnuggets.com/2021/09/6-cool-python-libraries-recently.html

ประทับเวลา:

เพิ่มเติมจาก KD นักเก็ต

ความหมกมุ่นอยู่กับอัลกอริทึมของเราทำลายวิสัยทัศน์คอมพิวเตอร์ได้อย่างไร: และคอมพิวเตอร์วิทัศน์สังเคราะห์สามารถแก้ไขได้อย่างไร

โหนดต้นทาง: 1178492
ประทับเวลา: ตุลาคม 15, 2021