Zwinne metodyki zarządzania w ostatnich latach w końcu zyskały popularność, na którą zasługują. Niestety wciąż nie są zbyt często stosowane przy wdrażaniu projektów związanych ze sztuczną inteligencją, a tymczasem właśnie wtedy szczególnie istotne są ich zalety: większa elastyczność, mniejsze ryzyko, rezultat odpowiadający potrzebom użytkowników.
Czym projekty używające sztucznej inteligencji różnią się od “zwykłego” oprogramowania? Znajdują one zastosowanie głównie wtedy, gdy oprogramowanie musi sobie poradzić z dużą różnorodnością danych, w szczególności kiedy każda interakcja z użytkownikiem końcowym jest unikalna i nieprzewidywalna. Najbardziej oczywistym przykładem są systemy typu wirtualny asystent, gdzie użytkownik komunikuje się z maszyną za pomocą języka naturalnego. Uczenie maszynowe można postawić w opozycji do tzw. “metod regułowych”, gdzie każdy wariant danych (np. wypowiedzi) pochodzących od użytkownika musi zostać wcześniej przewidziany i obsłużony. W przypadku języka naturalnego jest to wręcz niemożliwe, natomiast sztuczna inteligencja potrafi sobie z takim wyzwaniem całkiem dobrze poradzić.
Podstawą zwinnego zarządzania jest iteracyjna praca, dzięki której kolejne wersje rozwiązania są dostarczane w regularnych odstępach czasu. Projekty używające uczenia maszynowego często wymagają zebrania odpowiedniej ilości prawdziwych danych pochodzących od użytkowników, więc iteracyjne podejście niesie ze sobą dodatkową wartość. Idealnie, jeśli możliwe jest wczesne wdrożenie działającego prototypu i rozpoczęcie procesu regularnych testów z użytkownikami. Pozwala to ciągłe monitorowanie postępu prac, a każda faza testów dostarcza więcej danych, którymi można zasilić system.
Aby projekt zakończył się sukcesem, najpierw należy dobrze zdefiniować i zrozumieć czym jest owy sukces. Dla specjalistów od sztucznej inteligencji oczywistą miarą powodzenia często są matematyczne wskaźniki, jak “skuteczność” lub bardziej enigmatyczny “f1-score”. Posługiwanie się nimi może być pułapką, bo zoptymalizowany pod tym kątem algorytm niekoniecznie będzie osiągać założone cele biznesowe. Dużo rozsądniejsze jest szersze spojrzenie i skupienie się na faktycznym celu, który chcemy osiągnąć. Przykładem dobrych wskaźników jest np. poziom satysfakcji użytkownika lub odsetek interakcji, w których udało się pomóc klientowi bez potrzeby angażowania człowieka.
Nie należy zapominać o ludziach, którzy pracują przy projekcie. W przypadku AI szczególnie ważna jest interdyscyplinarność zespołu: kluczowymi osobami są oczywiście analityk danych oraz specjalista od uczenia maszynowego, ale jeśli wdrożenie ma być zakończone sukcesem, równie ważna jest obecność w zespole osób reprezentujących biznesową stronę przedsięwzięcia, inżynierów integrujących “inteligentne” komponenty z resztą oprogramowania oraz projektantów dbających o doświadczenie użytkownika. Zespół taki powinien ze sobą ściśle współpracować na każdym etapie prac, więc warto zadbać o wypracowanie wspólnego języka oraz wzajemne zrozumienie odpowiedzialności każdego z członków zespołu. W przeciwnym wypadku łatwo doprowadzić do sytuacji, w której specjaliści od uczenia maszynowego dostarczają rozwiązanie, które w teorii świetnie sobie radzi z danymi wejściowymi, ale nie wytrzymuje zderzenia z prawdziwymi użytkownikami.
Add Comment