Rozwój sztucznej inteligencji (AI) zainspirował więcej inżynierów oprogramowania, naukowców danych i innych profesjonalistów do zbadania możliwości kariery w uczeniu maszynowym. Jednak niektórzy nowicjusze mają tendencję do skupiania się za bardzo na teorii, a za mało na praktycznym zastosowaniu. Jeśli chcesz odnieść sukces, musisz zacząć budować projekty związane z uczeniem maszynowym raczej wcześniej niż później.
Może być trudno wiedzieć, od czego zacząć, więc zawsze warto szukać wskazówek i inspiracji u innych. W tym wpisie podzielimy się przykładami projektów uczenia maszynowego, które pomogą Ci zrozumieć, jak powinien wyglądać ukończony projekt. Przedstawimy również praktyczne wskazówki dotyczące tworzenia własnych, przyciągających uwagę projektów uczenia maszynowego.
Jeśli szukasz bardziej kompleksowego wglądu w opcje kariery związane z uczeniem maszynowym, sprawdź nasze przewodniki na temat tego, jak zostać naukowcem zajmującym się danymi oraz jak zostać inżynierem danych.
Identifying Twits on Twitter Using Natural Language Processing (Beginner)
Mowa nienawiści w mediach społecznościowych i fake news stały się ogólnoświatowymi zjawiskami w erze cyfrowej. Podczas gdy obraźliwe posty są problemem, jest jeszcze gorzej, gdy są one niedokładne lub błędnie przypisane do ludzi poprzez fałszywe profile.
(Źródło: Towards Data Science)
Pomóc mogą projekty dotyczące uczenia maszynowego. Popularnym zastosowaniem przetwarzania języka naturalnego (NLP) jest analiza sentymentu. Pozwala to w ciągu kilku sekund przeskanować tysiące dokumentów tekstowych pod kątem określonych filtrów. Na przykład Twitter może przetwarzać wpisy pod kątem rasistowskich lub seksistowskich uwag i oddzielać te tweety od innych.
Eugene Aiken podjął się projektu przeanalizowania postów dwóch osób i określenia prawdopodobieństwa, że dany tweet pochodzi od jednego konkretnego użytkownika. Aby to zrobić, wykorzystał tweety dwóch znanych rywali politycznych: Donalda Trumpa i Hillary Clinton.
Wiązało się to z kilkoma etapami:
- Scrape ich tweety
- Run them through a natural language processor
- Classify them with a machine learning algorithm
- Use the predict-proba method to determine probability
With the results, Eugene was able to identify which tweets were most and least likely of being from Donald Trump. Ten sam proces może być wykorzystany do analizy tweetów każdego, w tym Twoich przyjaciół lub rodziny.
Możesz dowiedzieć się więcej o tym projekcie uczenia maszynowego tutaj i pobrać zestaw danych tutaj.
Finding the Frauds While Tackling Imbalanced Data (Intermediate)
As the world moves towards a cashless, cloud-based reality, the banking sector is under greater threat than ever. Oczekuje się, że do 2020 r. globalny koszt oszustw związanych z kartami kredytowymi przekroczy 32 miliardy dolarów.
Choć jest to poważny problem, oszustwa stanowią jedynie niewielki ułamek całkowitej liczby transakcji dokonywanych każdego dnia. To rodzi kolejny problem: niezrównoważone dane.
W uczeniu maszynowym oszustwa są postrzegane jako problem klasyfikacji, a kiedy mamy do czynienia z niezrównoważonymi danymi, oznacza to, że problem, który ma być przewidywany, jest w mniejszości. W rezultacie model predykcyjny często będzie miał trudności z uzyskaniem rzeczywistej wartości biznesowej z danych, a czasami może się mylić.
(Źródło: Towards Data Science)
Rafael Pierre wyjaśnia, w jaki sposób zespół Towards Data Science przeprowadził projekt mający na celu rozwiązanie tego problemu. Pracując z wysoce niezrównoważonym zbiorem danych, który zawierał 492 oszustwa na 284 807 transakcji, wdrożyli trzy różne strategie:
- Oversampling
- Undersampling
- Podejście łączone
Pomimo że każda z technik ma swoje zalety, podejście łączone trafiło w dobry punkt pomiędzy precyzją i przywołaniem, skutecznie oferując wysoki poziom precyzji, gdy mamy do czynienia z niezrównoważonymi zbiorami danych.
Możesz dowiedzieć się więcej o tym projekcie uczenia maszynowego tutaj.
Catching Crooks on the Hook Using Geo-Mapping and Cloud Computing (Advanced)
Wrażliwe życie morskie jest ogromnie zagrożone przez nielegalnych kłusowników na całym świecie. Przez wiele lat, było praktycznie niemożliwe, aby utrzymać kontrolę nad działaniami każdej łodzi na morzu. W dzisiejszych czasach, postępy w AI, geo-mappingu i cloud computing połączyły się, aby zrealizować genialny pomysł projektu uczenia maszynowego: Global Fishing Watch.
(Źródło: Unsplash)
Więc, jak dokładnie uczenie maszynowe pomaga Global Fishing Watch zidentyfikować nielegalną działalność połowową w naszych oceanach? Ten trwający projekt obejmuje trzy główne etapy:
- Zbieranie danych – Większość dużych statków używa urządzenia podobnego do GPS, znanego jako system automatycznej identyfikacji (AIS), który nadaje ich pozycję. Chociaż wiele łodzi rybackich nie ma AIS, te, które mają, stanowią około 80 procent światowych połowów na pełnym morzu. Poprzez śledzenie urządzeń AIS za pomocą satelitów, możliwe jest monitorowanie ruchów statków, nawet w odległych obszarach.
- Przetwarzanie – Global Fishing Watch używa sieci neuronowych do przetwarzania informacji i znajdowania wzorców w dużych zbiorach danych. Obejmuje to około 60 milionów punktów danych z ponad 300 000 statków – codziennie! Z pomocą ekspertów z dziedziny rybołówstwa, algorytm nauczył się klasyfikować te statki według wielu czynników, takich jak:
- Rodzaj – żaglowy, towarowy, rybacki
- Narzędzia połowowe – grawl, longline, purse seine
- Zachowania połowowe – gdzie jest, kiedy jest aktywny
- Udostępnianie wyników – Te informacje o śledzeniu statków są publicznie dostępne. Każdy może odwiedzić stronę internetową, aby śledzić ruchy komercyjnych statków rybackich w czasie rzeczywistym, śledzić je na interaktywnej mapie lub pobrać dane. Ludzie mogą nawet tworzyć mapy cieplne, aby sprawdzić wzorce działalności połowowej lub wyświetlić ślady konkretnych statków w obszarach chronionych przez morze.
Możesz dowiedzieć się więcej o tym projekcie uczenia maszynowego tutaj.
Uber Helpful Customer Support Using Deep Learning (Advanced)
Jako jeden z najlepszych przykładów zakłóceń technologicznych, Uber zamierza trzymać się w pobliżu. Przy miliardach przejazdów do obsłużenia każdego roku, aplikacja ride-sharingowa potrzebuje fantastycznego systemu wsparcia, aby rozwiązywać problemy klientów tak szybko, jak to możliwe.
(Źródło: Uber)
Uber postanowił poprawić skuteczność swoich przedstawicieli obsługi klienta, tworząc architekturę modelu „człowiek w pętli”, który nazywa się Customer Obsession Ticket Assistant, lub COTA.
Poprzez testowanie dwóch wersji COTA, zespół Uber wykorzystał głębokie uczenie, aby odkryć wpływ na czas obsługi biletów, zadowolenie klientów i przychody. Jest to świetny model dla projektów głębokiego uczenia się, które łączą sprytną architekturę techniczną z ludzkim wkładem i mam nadzieję, że dostarczy Ci innych pomysłów na projekty głębokiego uczenia się.
Możesz dowiedzieć się więcej o tym projekcie uczenia maszynowego tutaj.
Barbie With Brains Using Deep Learning Algorithms (Advanced)
Nowoczesne lalki, które potrafią „mówić”, odgrywają ważną rolę w kształtowaniu młodych umysłów dzieci. Jednak standardowe lalki zazwyczaj mają ograniczony zestaw fraz, które nie mają związku z tym, co mówi dziecko.
Ale co by było, gdyby lalka rozumiała pytania? Co by było, gdyby lalka mogła udzielać logicznych odpowiedzi?
(Źródło: ToyTalk)
Hello Barbie to ekscytująca demonstracja mocy uczenia maszynowego i sztucznej inteligencji. Poprzez NLP i kilka zaawansowanych analiz audio, Barbie może wchodzić w interakcje w logicznej konwersacji. Mikrofon na jej naszyjniku rejestruje to, co zostało powiedziane, a następnie przesyła to do serwerów ToyTalk, gdzie jest analizowane.
Dostępnych jest ponad 8000 linii dialogowych, a serwery przekażą najbardziej odpowiednią odpowiedź w ciągu sekundy, aby Barbie mogła na nią odpowiedzieć. Rozważ to kolejna architektura, która dodaje do twojego skarbca pomysłów na projekt głębokiego uczenia się.
Możesz dowiedzieć się więcej o tym projekcie uczenia maszynowego tutaj.
Netflix Artwork Personalization Using AI (Advanced)
Netflix jest dominującą siłą w rozrywce teraz, a firma rozumie, że różni ludzie mają różne gusta. Czasami ludzie są winni tego, że oceniają programy lub filmy na podstawie ich obrazów, więc mogą nigdy nie sprawdzić pewnych programów. Aby nie dać się pokonać, Netflix chce przekonać więcej osób do oglądania swoich programów.
(Źródło: Unsplash)
Gdy odwiedzasz Netflix, czasami widzisz różne grafiki dla tych samych programów. To jest uczenie maszynowe w pracy. Netflix używa sieci neuronowej convolutional, która analizuje obrazy wizualne. Firma wyjaśnia, że polega również na „bandytach kontekstowych”, które nieustannie pracują nad określeniem, która grafika lepiej angażuje użytkowników.
Z biegiem czasu, gdy coraz częściej korzystasz z serwisu Netflix, zaczyna on rozumieć nie tylko to, jakie programy lubisz, ale również to, jakiego typu grafikę lubisz! Na przykład, jeśli obejrzałeś kilka filmów z udziałem Umy Thurman, prawdopodobnie zobaczysz Pulp Fiction z udziałem aktorki, a nie z udziałem Johna Travolty lub Samuela L. Jacksona.
Możesz dowiedzieć się więcej o tym projekcie uczenia maszynowego tutaj.
Powiązane: 6 Complete Data Science Projects
How to Generate Your Own Machine Learning Project Ideas
Jeśli już uczysz się, aby zostać inżynierem uczenia maszynowego, możesz być gotowy, aby utknąć w. Jeśli nie, oto kilka kroków, które pozwolą Ci ruszyć z miejsca.
Pick an Idea That Excites You
Aby rozpocząć, musisz przeprowadzić burzę mózgów na temat pomysłów na projekty związane z uczeniem maszynowym. Pomyśl o swoich zainteresowaniach i spróbuj stworzyć koncepcje wysokiego poziomu wokół nich. Wybierz najbardziej realny pomysł, a następnie zestal go z pisemną propozycją, która działa jako schemat do sprawdzenia w całym projekcie.
Related: 5 Untraditional Industries That Are Leveraging AI
Avoid Going Out of Scope
Jeśli jest to Twój pierwszy projekt, powinieneś walczyć z chęcią wyjścia poza zakres projektu. Skup się na prostych projektach uczenia maszynowego. Skupiając się na małym problemie i badając duży, istotny zbiór danych, Twój projekt ma większe szanse na wygenerowanie pozytywnego zwrotu z inwestycji.
Test Your Hypothesis
Szczególnie, gdy mówimy o łatwych projektach uczenia maszynowego dla początkujących, główną rzeczą, o której należy myśleć, jest generowanie spostrzeżeń z twojego projektu. Nie martw się jeszcze o działanie na podstawie tych spostrzeżeń. Zamodeluj swoją hipotezę i przetestuj ją. Python jest najłatwiejszym językiem dla początkujących, dlatego radzimy używać go do przeprowadzania testów.
Wdrażanie wyników
Gdy osiągnąłeś już wszystkie pożądane wyniki, możesz zająć się wdrażaniem swojego projektu. Istnieje kilka kroków na tym etapie:
- Utwórz API (interfejs programowania aplikacji) – Pozwala to na zintegrowanie wglądu w uczenie maszynowe z produktem.
- Zapisuj wyniki w jednej bazie danych – Zestawiając wszystko razem, ułatwiasz budowanie na podstawie wyników.
- Osadzaj kod – Kiedy masz mało czasu, osadzanie kodu jest szybsze niż API.
Revise and Learn
Po zakończeniu projektu oceń jego wyniki. Zastanów się, co się stało i dlaczego. Co mogłeś zrobić inaczej? Z czasem, gdy zdobędziesz doświadczenie, będziesz mógł uczyć się na własnych błędach.
Wskazówki dotyczące projektów uczenia maszynowego dla początkujących
Nawet proste projekty uczenia maszynowego muszą być zbudowane na solidnych podstawach wiedzy, aby mieć jakiekolwiek realne szanse na sukces. Co więcej, konkurencyjne pole gry sprawia, że nowicjuszom trudno jest się wyróżnić.
Related: How to Land a Machine Learning Internship
Oto kilka wskazówek, dzięki którym Twój projekt uczenia maszynowego będzie błyszczał.
Get Familiar With the Common Applications of Machine Learning
Broadly, there are three basic types of machine learning:
- Supervised learning analyzes historical data to predict new outcomes. Na przykład, przewidywanie cen nieruchomości.
- Uczenie nienadzorowane poszukuje wzorców danych za pomocą analizy statystycznej. Na przykład identyfikacja segmentów klientów w danych sprzedaży firmy.
- Uczenie wzmacniające działa z dynamicznym modelem, który używa prób i błędów, aby stale poprawiać wydajność. Na przykład, handel akcjami.
Gdy rozwiniesz lepsze zrozumienie tych aplikacji, będziesz wiedział, jak zastosować uczenie maszynowe do swojego problemu.
Don’t Underestimate Data Preprocessing and Cleaning
Noisy data can skewew your results. Dlatego należy regularnie korzystać z przetwarzania wstępnego i czyszczenia danych. Mówiąc prościej, chodzi o to, aby wziąć dane i uczynić je łatwiejszymi do zrozumienia. Porządkując dane i wprowadzając brakujące dane, zapewniasz, że Twoje modele są tak dokładne, jak to tylko możliwe. Jeśli Twoje projekty dotyczące uczenia maszynowego mają problemy z jakością danych, linkowany wcześniej artykuł powinien pomóc w podstawach zarządzania danymi w pomysłach na projekty dotyczące uczenia maszynowego.
Machine Learning Is a Team Game
Nawet Neo potrzebował przyjaciół. Podczas tworzenia projektów uczenia maszynowego, będziesz musiał pracować z innymi ludźmi, z których wielu nie będzie miało takiego samego zrozumienia AI i oprogramowania jak Ty.
Musisz ufać innym ludziom, a także być uczciwym w kwestii swojego modelu. Ostatecznie, kiedy pracujesz nad projektami uczenia maszynowego, dąż do przejrzystości i otwartej komunikacji, aby Twój projekt mógł działać płynnie.
Skup się na rozwiązywaniu problemów świata rzeczywistego
Wszystko jest dobrze i dobrze używać uczenia maszynowego do zabawnych zastosowań, ale jeśli masz oko na lądowanie pracy jako inżynier uczenia maszynowego, powinieneś skupić się na łagodzeniu bólu odczuwanego przez wielu ludzi. Pomyśl o tym, jak Twój projekt będzie oferował wartość dla klientów. Badając rzeczywiste problemy, możesz sprawić, że Twój projekt będzie wyróżniał się jako ten, którego świat chce i potrzebuje. Nie wymyślaj projektów związanych z głębokim uczeniem, aby popisać się swoimi umiejętnościami – stwórz znaczący wpływ za pomocą dowolnej technologii. To wpływ, a nie technologia, która naprawdę ma znaczenie.
Play to Your Strengths
Jeśli jesteś nowy w uczeniu maszynowym i nie masz zbyt dużego doświadczenia, może to być trochę zniechęcające, aby zmierzyć się z weteranami kodowania i inżynierami oprogramowania. W tym przypadku, twoja postrzegana słabość może stać się siłą. Możesz oprzeć się na swoim zapleczu i wcześniejszej wiedzy o różnych branżach, aby stworzyć unikalne projekty uczenia maszynowego, o których wiele innych osób może nawet nie pomyśleć. Możesz generować pomysły na projekty związane z uczeniem maszynowym z własnej perspektywy, patrząc na otwarte zbiory danych.
Machine Learning Can Make the World More Human
Przemysł uczenia maszynowego będzie się rozwijał przez najbliższe lata. Podczas gdy niektórzy ludzie widzą tak zwany „wzrost robotów” jako koniec osobistego dotyku w biznesie, rzeczywistość jest zupełnie odwrotna. Istnieje tak wiele wspaniałych pomysłów na projekty uczenia maszynowego, które faktycznie pomagają firmom oferować lepsze usługi, skutecznie uczłowieczając marki poprzez uczynienie ich bardziej zgodnymi z zainteresowaniami ich docelowych odbiorców.
Nie jest łatwo opracować swoje pierwsze pomysły na projekt uczenia maszynowego. Ucząc się od innych, możesz stworzyć coś wspaniałego. Projekty dotyczące uczenia maszynowego mogą mieć dramatyczny wpływ na dziedziny tak różnorodne i tak ważne jak ludzkie zdrowie i ekonomia: projekty dotyczące uczenia maszynowego mogą pomóc w lepszym zrozumieniu nas samych i naszego świata.
Springboard’s Machine Learning Engineering Career Track, pierwszy tego rodzaju, który pochodzi z gwarancją pracy, koncentruje się na nauce opartej na projekcie. Dowiedz się więcej.
.