13 ekscytujących projektów Pythona na Github, które powinieneś wypróbować dzisiaj [2022]

Opublikowany: 2021-01-08

Python jest jednym z najczęściej wybieranych języków programowania przez profesjonalistów na całym świecie. Jego prosta składnia umożliwia programistom i analitykom danych łatwe zdobywanie nowych umiejętności. Możesz także znaleźć wiele projektów Pythona na GitHub , aby ćwiczyć i uczyć się podczas wykonywania .

Spis treści

Dlaczego projekty w Pythonie?

Na rynku pracy panuje duże zapotrzebowanie na profesjonalistów ze znajomością Pythona, jednak niewielu kandydatów zwraca uwagę na zalety korzystania z niego. Posiada rozbudowane biblioteki wsparcia i przyjazne dla użytkownika struktury danych. Z biegiem lat stał się doskonałym narzędziem do tworzenia aplikacji wiersza poleceń. Nauka Pythona jest integralną częścią dobrego kursu nauki o danych.

Znajdziesz różne przykłady open-source, jeśli spojrzysz na projekty Pythona na GitHub . W repozytorium każdy znajdzie coś dla siebie – od stworzenia prostego generatora haseł po automatyzację rutynowych zadań i eksplorację danych z Twittera. Dla początkujących podejście oparte na aktywności może zdziałać cuda. Może pomóc w zrozumieniu tajników języka, takich jak frameworki internetowe Pandas i Django oraz architektura wieloprocesowa. Więc zanurkujmy.

Projekty Pythona na GitHub

1. Magenta

Ten projekt badawczy w Pythonie podchodzi do uczenia maszynowego poprzez ekspresję artystyczną. Założona przez zespół Google Brain, Magenta koncentruje się na algorytmach głębokiego uczenia i uczenia ze wzmocnieniem, które mogą tworzyć rysunki, muzykę i tym podobne. Współpracujące notatniki wprowadzą Cię w szczegóły techniczne tego inteligentnego narzędzia, które ma na celu wzmocnienie dzieł oryginalnych twórców.

Modiply to kolejny przykład rozszerzalnego serwera muzycznego, który można znaleźć swobodnie na GitHub.

2. Foton

Jest to szybki robot przeznaczony do narzędzi typu open source do inteligencji (OSINT) . Koncepcja OSINT polega na gromadzeniu danych z publicznie dostępnych źródeł do wykorzystania w kontekście wywiadu. Dzięki Photon możesz wykonywać kilka funkcji indeksowania danych, w tym wyodrębniać następujące elementy:

  • Adresy URL w zakresie i poza zakresem
  • Adresy URL z parametrami
  • E-maile i konta w mediach społecznościowych
  • XML, pdf, png i inne pliki
  • Wiadra Amazon itp.

3. Poczta

Ten projekt GitHub jest znany z najnowocześniejszych funkcji szyfrowania. Jest to narzędzie do ochrony prywatności wspierane przez dużą społeczność. Przede wszystkim umożliwia wysyłanie i odbieranie zaszyfrowanej poczty elektronicznej PGP.

Szybka wyszukiwarka Mailpile może obsłużyć ogromne ilości danych e-mail i zorganizować je w przejrzystym interfejsie internetowym. Wykorzystuje reguły statyczne lub klasyfikatory bayesowskie do automatycznego tagowania. Przejrzyj bezpłatne oprogramowanie i demonstracje na żywo na jego stronie internetowej, aby dowiedzieć się więcej!

Przeczytaj o: Git kontra Github: różnica między Git a Github

4. XSStrike

Cross-site scripting lub XSS to luka w zabezpieczeniach występująca w aplikacjach internetowych. Ataki XSS polegają na wstrzykiwaniu skryptów po stronie klienta, często złośliwych, na niegroźne strony internetowe. Tak więc pakiet XSStrike został opracowany w celu wykrywania i wykorzystywania takich ataków. To narzędzie o otwartym kodzie źródłowym jest wyposażone w następujące funkcje:

  • Cztery odręcznie napisane parsery
  • Inteligentny generator ładunku
  • Skuteczny silnik fuzzing
  • Szybki robot

Dzięki powyższym częściom analizuje odpowiedź i tworzy ładunki. Może również przeprowadzać wydajną analizę kontekstu za pomocą zintegrowanych fuzzerów.

5. Pobieranie obrazów Google

Ten program Pythona wiersza poleceń może wyszukiwać i pobierać setki obrazów Google. Skrypt może wyszukiwać słowa kluczowe i frazy oraz opcjonalnie pobierać pliki graficzne. Pobieranie obrazów Google jest zgodne z wersjami Pythona 2.x i 3.x. Możesz zreplikować kod źródłowy tego projektu, aby doskonalić swoje umiejętności programowania i zrozumieć jego zastosowanie w świecie rzeczywistym.

6. Projekt Pandy

Jeśli chodzi o przeprowadzanie elastycznej analizy i manipulacji danymi, biblioteka Pandas okazuje się doskonałym zasobem. Jego ekspresyjne struktury danych oferują wiele korzyści w porównaniu z innymi alternatywami. Spójrz na niektóre z nich poniżej.

  • Elastyczność w pracy z danymi relacyjnymi/etykietowanymi
  • Wygodna obsługa brakujących danych i zmienności rozmiaru
  • Intuicyjne operacje na zbiorach danych, w tym łączenie, przekształcanie i obracanie
  • Funkcje automatycznego wyrównywania danych z dodatkowymi możliwościami

Przeglądając kod pandy, natkniesz się na różne problemy w dokumentacji. Może to skłonić Cię do wniesienia własnych pomysłów i ulepszenia istniejącego narzędzia. Możesz znaleźć pakiet open source na GitHub wraz z innymi pakietami, takimi jak Django i Keras, które umożliwiają szybkie eksperymentowanie.

7. Xonsz

Aplikacje interaktywne wymagają interpreterów wiersza poleceń, takich jak Unix. Takie systemy operacyjne kontrolują wykonanie za pomocą skryptów powłoki. Teraz, zamiast iść na kompromis, czy nie byłoby wygodniej, gdyby twoja powłoka mogła zrozumieć bardziej skalowalny język programowania? Tutaj wchodzi Xonsh (wymawiane „Konk”).

Jest to język powłoki i polecenia oparte na Pythonie. Ten wieloplatformowy język jest łatwo skryptowalny i zawiera obszerną standardową bibliotekę i typy zmiennych. Xonsh posiada również własny system zarządzania środowiskiem wirtualnym o nazwie vox.

8. Manim

Manim to skrót od Mathematical Animation Engine. Ten projekt dotyczy programowego tworzenia objaśnień wideo. Program działa na Pythonie 3.7 i tworzy animowane treści wideo, obejmujące złożone tematy za pomocą ilustracji i wykresów. Filmy te można obejrzeć na kanale YouTube 3Blue1Brown.

Kod źródłowy Manima jest dostępny bezpłatnie na GitHub. Możesz także zapoznać się z samouczkami online, aby dowiedzieć się, jak zainstalować pakiet, uruchomić projekt i tworzyć proste projekty osobiste.

Przeczytaj: Pomysły i tematy projektów Data Science

9. Analiza koszykówki AI

Projekt ten opiera się na koncepcji wykrywania obiektów. Aplikacja sztucznej inteligencji zagłębia się w zebrane dane, aby przeanalizować strzały koszykówki. Aplikację internetową AI i interfejs API można łatwo znaleźć w obszarze Projekty w języku Python w witrynie GitHub . Przyjrzyjmy się, jak działa narzędzie:

  • Przesyłasz pliki do aplikacji internetowej
  • Alternatywnie możesz przesłać żądanie POST do API
  • Biblioteka OpenPose implementuje obliczenia
  • Aplikacja internetowa generuje wyniki na podstawie danych dotyczących pozy podczas fotografowania

10. Odbicie

Często zdarza się, że kody źródłowe programów komputerowych napotykają błędy kompilatora. Rebound może natychmiast uzyskać wyniki StackOverflow w takim scenariuszu. Jest to narzędzie wiersza poleceń napisane w Pythonie i zbudowane na interfejsie użytkownika konsoli Urwid. Jeśli zdecydujesz się na realizację tego projektu, możesz dowiedzieć się, jak pakiet Beautiful Soup zgarnia zawartość StackOverflow. Możesz także zapoznać się z podprocesem, który wyłapuje błędy kompilatora.

11. Neutralna rozmowa

Możesz dostroić swoją wiedzę na temat multimodalnych, rekurencyjnych sieci neuronowych za pomocą NeutralTalk. Jest to projekt w Pythonie i NumPy, który skupia się na opisie obrazów.

Zazwyczaj metody generowania podpisów obrazów obejmują połączenie wizji komputerowej i przetwarzania języka naturalnego. System może rozumieć sceny i tworzyć opisy treści obserwowanych na obrazie.

Jeśli szukasz najnowszego kodu napisów, możesz odwołać się do NeutralTalk2. Napisany w Lua, lekkim i wysokopoziomowym języku programowania, ten projekt jest szybszy niż oryginalna wersja.

12. Projekty TensorFlow

TensorFlow to biblioteka Pythona służąca do budowania modeli uczenia głębokiego. Repozytorium Model Garden skupia w jednym miejscu wiele przykładów kodu dla użytkowników TensorFlow. Ma na celu zaprezentowanie najlepszych praktyk w zakresie badań i rozwoju produktów, zapewniając jednocześnie gotowe do użycia, wstępnie przeszkolone modele. Z pomocą tego oficjalnego zasobu możesz zbadać, jak wdrożyć rozproszone szkolenie i rozwiązać problemy z wizją komputerową i NLP.

13. Importer modeli map

Maps Models Importer działa poprzez importowanie modeli 3D z obszernych map. Jest to eksperymentalne narzędzie zawierające tylko dodatek do Blendera, a proces wymaga oprogramowania do tworzenia treści 3D, takiego jak Google Maps. W tym projekcie możesz nauczyć się importowania modeli z Google Maps.

Przeczytaj także: Pomysły i tematy projektów Pythona dla początkujących

Przyszły zakres dla Pythona

Współczesna branża coraz częściej szuka ukrytych wzorców w pulach danych. Co więcej, pojawiające się technologie, takie jak sztuczna inteligencja i uczenie maszynowe, dodają nowe możliwości i złożoność do krajobrazu. Język wysokiego poziomu, taki jak Python, jest integralną częścią procesu tworzenia oprogramowania i procedur analitycznych.

Oczywiście, dzisiejsi rekruterzy przywiązują ogromną wagę do umiejętności Pythona, gdy zatrudniają takie stanowiska, jak analityk danych, analityk danych/badań, programista Python, inżynier DevOps itp. Oferują wielcy technologowie, tacy jak Google, Facebook, Spotify, Netflix, Dropbox i Reddit lukratywne możliwości kariery dla kandydatów z praktycznym szkoleniem.

Mamy nadzieję, że możesz szlifować swoje umiejętności programowania dzięki powyższej liście projektów w Pythonie na GitHub . Ponieważ rynek big data ewoluuje i dalej się rozwija, oczekuje się, że społeczność open source Pythona wyda jeszcze więcej bibliotek w nadchodzących latach. Bądź więc na bieżąco i ucz się dalej!

Jeśli jesteś zainteresowany nauką o danych, sprawdź program IIIT-B i upGrad Executive PG w dziedzinie Data Science, który jest stworzony dla pracujących profesjonalistów i oferuje ponad 10 studiów przypadków i projektów, praktyczne warsztaty praktyczne, mentoring z ekspertami z branży, 1 -on-1 z mentorami branżowymi, ponad 400 godzin nauki i pomocy w pracy z najlepszymi firmami.

Jakie są pomysły na projekty uczenia maszynowego dla początkujących?

Poniżej przedstawiamy kilka interesujących projektów Ml, które używają Pythona jako głównego języka programowania: Niektóre tweety mogą być nieco obraźliwe dla danej grupy odbiorców, a narzędzie do sortowania tweetów może być użyte do ich uniknięcia. Ten projekt uczenia maszynowego filtruje tweety na podstawie niektórych słów kluczowych. Praca w sieci neuronowej to jedna z najlepszych domen do testowania koncepcji uczenia maszynowego. Klasyfikator znaków pisanych odręcznie działa w sieciach neuronowych, aby zidentyfikować odręcznie pisane alfabety angielskie z AZ. Model analizy nastrojów służy do wykrywania i identyfikowania uczuć i nastrojów danej osoby za postem lub zdjęciem opublikowanym w mediach społecznościowych. To dobry projekt na poziomie początkującym i możesz uzyskać dla niego dane z Reddit lub Twittera.

Opisz główne komponenty, które powinien zawierać projekt w Pythonie.

Poniższe komponenty podkreślają najbardziej ogólną architekturę projektu w Pythonie — Opis problemu jest podstawowym komponentem, na którym opiera się cały projekt. Definiuje problem, który rozwiąże Twój model, i omawia podejście, które przyjmie Twój projekt. Zestaw danych jest bardzo ważnym elementem Twojego projektu i należy go starannie dobierać. W projekcie należy używać tylko wystarczająco dużych zbiorów danych z zaufanych źródeł. Algorytm, którego używasz do analizy danych i przewidywania wyników. Popularne techniki algorytmiczne obejmują algorytmy regresji, drzewa regresji, algorytm naiwny Bayesa i kwantyzację wektorową.

Czy Pythona można używać do projektów przetwarzania obrazu, a jeśli tak, to jakich bibliotek Pythona można używać?

Poniżej znajdują się niektóre z najlepszych bibliotek Pythona, które sprawiają, że budowanie projektów przetwarzania obrazów jest bardzo wygodne. OpenCV to bez wątpienia najpopularniejsza i powszechnie używana biblioteka Pythona do zadań wizyjnych, takich jak przetwarzanie obrazu oraz wykrywanie obiektów i twarzy. Rozmowa na temat bibliotek przetwarzania obrazów Pythona jest niepełna bez obrazu Sci-Kit. Jest to prosta i przejrzysta biblioteka, którą można wykorzystać do dowolnego zadania widzenia komputerowego. SciPy jest głównie używany do obliczeń matematycznych, ale jest również zdolny do przetwarzania obrazu. Wykrywanie twarzy, konwolucja i segmentacja obrazu to tylko niektóre z funkcji oferowanych przez SciPy.