P:
Koji su ključni načini za automatizaciju i optimizaciju procesa znanosti podataka?
A:Procesi znanosti o podacima u kontekstu strojnog učenja i AI mogu se podijeliti u četiri različite faze:
- prikupljanje podataka i istraživanje,
- izrada modela,
- implementacija modela i
- mrežno vrednovanje i usavršavanje.
Iz mog iskustva, najviše ometaju faze prikupljanja podataka i faze implementacije modela u bilo kojem procesu znanosti o podacima temeljenom na strojnom učenju, a evo dva načina za njihovu optimizaciju:
1. Uspostavite visoko dostupnu prodavaonicu podataka.
U većini organizacija podaci se ne pohranjuju na jednom središnjem mjestu. Uzmimo samo informacije povezane s kupcima. Imate podatke o kontaktima s kupcima, e-poštu za korisničku podršku, povratne informacije o kupcima i povijest pregledavanja kupaca ako je vaš posao web aplikacija. Svi su ti podaci prirodno raštrkani, jer služe u različite svrhe. Mogu se nalaziti u različitim bazama podataka, a neke mogu biti u potpunosti strukturirane, a neke nestrukturirane, pa čak mogu biti pohranjene i kao tekstualne datoteke.
Nažalost, raspršenost tih skupova podataka vrlo je ograničavajući se na znanost o radu podataka jer su osnova svih NLP, strojnog učenja i AI problema podaci . Dakle, posjedovanje svih ovih podataka na jednom mjestu - prodavaonici podataka - najvažnije je u ubrzavanju razvoja i korištenja modela. S obzirom da je ovo presudan dio za sve procese znanosti podataka, organizacije bi trebale zaposliti kvalificirane inženjere podataka koji će im pomoći u izgradnji njihovih baza podataka. Ovo se lako može pokrenuti kao jednostavna odlaganja podataka na jedno mjesto i polako prerasti u dobro osmišljeno spremište podataka, u potpunosti dokumentirano i podložno ispitivanju pomoću uslužnih alata za izvoz podskupina podataka u različite formate za različite svrhe.
2. Izložite svoje modele kao uslugu neprekidne integracije.
Uz omogućavanje pristupa podacima, također je važno omogućiti integriranje modela koje su razvili znanstvenici podataka u proizvod. Integriranje modela razvijenih u Pythonu s web aplikacijom koja radi na Rubyju može biti vrlo teško. Uz to, modeli mogu imati dosta ovisnosti o podacima koje vaš proizvod možda neće moći pružiti.
Jedan od načina da se to riješi je da postavite snažnu infrastrukturu oko svog modela i izložite dovoljno funkcionalnosti koja su potrebna vašem proizvodu da bi se model mogao koristiti kao "web usluga". Na primjer, ako vašoj aplikaciji treba klasifikacija osjećaja na recenzije proizvoda, sve što trebate učiniti je pozivanje na web uslugu, pružanje relevantnog teksta i usluga će vratiti odgovarajuću klasifikaciju osjećaja koje proizvod može izravno koristiti. Ova je integracija jednostavno u obliku API poziva. Ako razdvojite model i proizvod koji ga upotrebljavate, stvarno je lako za nove proizvode koje osmislite da možete koristiti i ove modele s malo gnjavaže.
Sada je postavljanje infrastrukture oko vašeg modela čitava druga priča i zahtijeva velika početna ulaganja vaših inženjerskih timova. Jednom kada je infrastruktura tamo, samo je pitanje izgradnje modela na način koji će se uklapati u infrastrukturu.