Blog (22)
Komentarze (619)
Recenzje (0)

Własny asystent głosowy w Windows? Zbuduj go sobie sam!

@alucosoftwareWłasny asystent głosowy w Windows? Zbuduj go sobie sam!08.02.2014 18:32

Technologia rozpoznawania mowy na przykładzie istniejących produktów takich jak Siri, Dragon Naturally Speaking lub dopiero nadchodzących Cortany i intelowskiego Jarvisa to coraz częściej poruszany temat zarówno na łamach dp jak i w innych portalach branżowych. Niesamowity postęp obserwowany w ostatnich latach w tej gałęzi informatyki jest niezaprzeczalny i wynika zarówno z rozwoju czystej myśli technicznej (sposobu przetwarzania sygnałów) jak i dostępności taniej mocy obliczeniowej. Z technologią rozpoznawania mowy rozumianą w jej potocznym (tj. użytkowym) znaczeniu od dawien dawna mamy jednak ten sam problem - mało w niej inteligencji, więcej zaś prostych reakcji przyczynowo skutkowych ukrytych pod zasłoną pustych haseł.

Tak naprawdę warstwa użytkowa gotowych systemów przeżywa... istną stagnację. Za to karmi się nas utopijną wizją wszechwiedzącego i inteligentnego automatu gotowego spełnić wszystkie życzenia, którego - mimo usilnych prób - za nic nie można dostrzec na horyzoncie. Odrzucamy jednocześnie dostępne rozwiązania, które nie odpowiadają opisem fantazjom hucznie zapowiadanym nam przez specjalistów z dziedziny marketingu. I tu popełniamy błąd.

Twórcy interfejsów głosowych niepotrzebnie starają się (już na etapie projektu) przewidzieć przyszłe zachowanie użytkownika. Limitują tym samym możliwość jego interakcji z urządzeniem. Zamiast tego powinni dostarczać im w pełni konfigurowalne rozwiązania o uniwersalnym zastosowaniu, a zatem nielimitowanych możliwościach. Pamiętam gdy po raz pierwszy przeczytałem wywiad z Olivierem Scholzem, kierownikiem zespołu "Speech User Experience for Windows Vista". Wspomniał on w nim o trwających w tamtym czasie pracach nad systemem makr umożliwiającym tworzenie własnych komend głosowych i zwiększaniem możliwości personalizacji WSR (Windows Speech Recognition, niedostępny w PL wersji systemu z powodu ograniczeń językowych). Obietnice zespół ten zrealizował, choć najwyraźniej sam system makr okazał się chyba zbyt trudny do przetrawienia dla zwykłego zjadacza chleba. A może to użytkownicy stali się... zbyt prości dla nieskomplikowanego programu komputerowego. To zmieniałoby drastycznie postać rzeczy. Czy to my idziemy na łatwiznę? Czy mamy wrodzoną lub zaszczepioną tendencję do lenistwa intelektualnego.

Za moich czasów...

Technologia rozpoznawania mowy jest z nami obecna od dawna. Zwrócę tu jedynie uwagę na początek lat 90. i schyłek świetności doskonałych komputerów Amiga. Właśnie w tamtym czasie Richard Horne udostępnił światu AniMan'a, o którym na dyskietkach z kolekcji Freda Fisha pisano, że "jest programem jakiego jeszcze nigdy nie widziałem". I słusznie... Dla małego dziecka wkraczającego w fascynujący świat informatyki widok przemawiającej trójwymiarowej głowy, która na dodatek rozpoznaje krótkie komendy głosowe i wykonuje tajemnicze skrypty ARexx'a był oszałamiający. Program działał zadziwiająco dobrze na przyjaciółkach (Amigach) wyposażonych w niewiele ponad 512KB (czasem 1MB) pamięci RAM i procesor taktowany częstotliwością 7MHz, ale rozwijał skrzydła na prawdziwych demonach szybkości minionej epoki.

Tym co istotne z poziomu naszego tematu było założenie twórcy programu AniMan, że duża część użytkowników ówczesnych komputerów wiedziała czym są i do czego służą skrypty, ba!, prawdopodobnie potrafiła tworzyć własne. I choć z perspektywy czasu była to jedynie zabawka, to jednak efekt WOW pozostał w pamięci na długo. Na tyle długo, by po wielu latach młodzieńcze zainteresowanie przerodziło się w pasję i chęć utworzenia projektu równie inspirującego, a już na pewno przełomowego jak AniMan.

Na nasze nieszczęście, raptowna informatyzacja całych społeczeństw nie poszła w parze ze wzrostem świadomości i potrzebą zwiększania swojej wiedzy, wręcz przeciwnie. Niewdzięczny, a już na pewno nieproporcjonalny podział ról nadal postępuje. Wszyscy korzystamy z rozwiązań teleinformatycznych nie wiedząc nawet na jakiej zasadzie funkcjonują. Zdolność do logicznego myślenia i relatywnie szybkiego przyswajania wiedzy powoli zastępujemy pseudonaukowymi osądami, kierując się przy tym daleko idącym subiektywizmem mającym czysto emocjonalne podłoże. Oceniamy produkty nie przez pryzmat dłuższej z nimi pracy lub posiadanych przez nie możliwości, lecz jak najprostszej z nimi interakcji. Im bardziej dany produkt zwalnia nas z konieczności myślenia, tym lepsze o nim zdanie posiadamy. Nie tak miało być. Stajemy się zakładnikami swojej własnej - nie bójmy się tego stwierdzić - głupoty. Warto o tym pomyśleć choć przez chwilę i spróbować to zmienić.

Automagiczności powiedz STOP

Gdy pod koniec 2011 roku rozpoczynałem prace nad projektem Spikit miałem przed sobą jasną wizję tego, czym powinien być uniwersalny system rozpoznawania mowy. A powinien być tylko jednym - narzędziem w rękach doświadczonego użytkownika, zdolnym wykonać każdą zaprogramowaną czynność, nie tylko utworzoną wcześniej przez autora, ale - podobnie jak we wspomnianym wyżej AniManie - zaprogramowaną przez użytkownika lub dostarczoną z zewnątrz. Ten ostatni nie musi bowiem programować czegoś samodzielnie, wystarczy, że pobierze gotowe skrypty z sieci (trochę ich na przestrzeni ostatnich lat powstało...). Dodajmy do tego relatywnie prostą obsługę, jasne i przejrzyste zasady pracy (współpracy!) z programem i gotowe. Czy to wystarczy? Niezupełnie, pozostaje zawsze czynnik ludzki, a ten potrafi nieraz doprowadzić człowieka do histerii. W najgorszym wypadku zniechęcić do dalszej aktywności ;)

Gdy koncepcja projektu ulega przeobrażeniom, warto zastanowić się nad ideałami lub głównymi przesłankami leżącymi u podstaw jego istnienia. Nie inaczej było w przypadku projektu Spikit i jego 2,5-letniej historii. To co początkowo było jego wielką zaletą (mechanizm Reguł głosowych), w chwili zwątpienia stało się największym ciężarem (brak zrozumienia), by niedługo potem ponownie nabrać blasku (oświecenie?). Ach, ta przewrotność. Poznaj Spikit, niezwykły system rozpoznawania mowy.

Dostępna od ponad miesiąca nowa wersja tego oprogramowania, czyli Spikit 1.5.x, dzięki kilku prostym zabiegom może stać się Twoim osobistym asystentem głosowym, o którym zawsze marzyłeś. Teraz. Nie jutro, za miesiąc, czy rok. Nie, gdy rynek PC będzie na niego - z marketingowego punktu widzenia - gotowy, lecz w tej chwili. Nie na super-komputerze, a na sprzęcie jakim aktualnie dysponujesz. Pytanie tylko, czy Ty jesteś na to gotów? Czy wiesz czego chcesz, czy może wolisz być tylko biernym obserwatorem?

Weź sprawy w swoje ręce

A raczej: zacznij mówić. Mimo niewielkich różnic w numeracji, kolejne aktualizacje programu wprowadzają znaczne ulepszenia lub pełnią rolę odpowiedzi na zgłaszane przez użytkowników sugestie. Nierzadko są to przełomowe zmiany. Tak było także i w tym przypadku. W efekcie, Spikit 1.5 uległ bardzo pozytywnej transformacji, eliminując błędy poprzedników i otwierając nowe perspektywy wykorzystania programu w naszym codziennym życiu. Zachowując pierwotną ideę, mechanizm tworzenia własnych komend głosowych oferuje teraz niespotykane nigdzie indziej możliwości. Nie jest przy tym sztucznie ograniczony, wręcz przeciwnie - wspiera kreatywność użytkowników. Wymaga jednak intelektualnego zaangażowania.

Zalety usprawnionego mechanizmu Reguł głosowych przedstawiłem już w krótkiej serii filmów tuż przed oficjalnym wydaniem publicznej wersji programu. Jak się następnie okazało, z wersji kandydującej ;) Mimo późniejszych, niewielkich modyfikacji, filmy te nie utraciły na aktualności, więc prezentuję je poniżej z nadzieją, że okażą się pomocne.

Tym co warto tu podkreślić jest wyjątkowa zdolność programu Spikit do bezproblemowej współpracy z każdym innym oprogramowaniem (np. z systemowym Narratorem, szczególnie w jego zaktualizowanej wersji w Windows 8!). Dzięki temu Spikit likwiduje problem bycia pseudointeligentnym automatem i pozostawia Tobie, użytkownikowi, wybór konkretnych narzędzi do realizacji konkretnych celów. Spikit nie musi informować Ciebie o prognozie pogody, ani pełnić roli zaawansowanego czytnika ekranowego. Wystarczy natomiast, że pełni rolę inicjującą prace innych, bardziej specjalistycznych narzędzi, które utworzone zostały w konkretnym celu jakim może być np. głosowe informowanie o stanie pogody lub przebiegu trasy z jednego miejsca w inne. Wystarczy, że Spikit pełni rolę katalizatora i zwiększa wydajność Twojej pracy lub rozszerza możliwości cyfrowej rozrywki! Taką właśnie rolę spełniać mają systemy rozpoznawania mowy przyszłości. AutoCAD sterowany głosem? - nie ma problemu (przypomnij sobie pracę Tony'ego Starka w pracowni i jego konwersacje z filmowym JARVIS'em, a zobaczysz uderzające podobieństwo). Nawet w przypadku aplikacji takich jak Photoshop, Twoja interakcja z komputerem nie musi ograniczać się do klikania lub, zgodnie z aktualnym trendem na rynku, mazania palcem po ekranie dotykowym. Wykorzystaj swoją wyobraźnię i zapisz swoje myśli w postaci Reguły głosowej, schematu określającego sposób komunikowania się z maszyną, by zaraz potem móc do niej faktycznie przemawiać. Właśnie w tym celu powstał Spikit, aby integrować ze sobą istniejące rozwiązania, a nie je zastępować. Spikit to interfejs głosowy dla rzeczy, które widzisz na ekranie.

Odnośniki do pozostałych części prezentacji:

Krótka wizja przyszłości

Spikit jest w połowie drogi ku jeszcze większej wolności jego użytkowników. Czy dotrze tam w niezmienionej postaci? Któż wie... niemniej obecna forma wydaje się być niezwykle stabilna, bo oparta na dobrze przemyślanych fundamentach wspartych sugestiami stale powiększającej się społeczności użytkowników. Istnieją jeszcze obszary wymagające drobnych usprawnień (błądzić jest rzeczą ludzką...), ale też i pomysły, które mogą zrewolucjonizować sposób w jaki komunikujemy się z naszymi urządzeniami (niezależnie od tego czy są to tablety, laptopy czy stacjonarne pecety).

Najważniejsze i najpilniejsze z tych pomysłów to obecnie:

  • implementacja potoków nazwanych lub podobnego mechanizmu komunikacji między procesami, dzięki którym wyniki rozpoznawania mowy mogłyby być w prosty sposób wykorzystywane nawet przez początkującego użytkownika-programistę do jego własnych celów
  • zdolność do automatycznego wczytywania zbiorów poleceń przygotowanych specjalnie dla wykorzystywanej w danej chwili aplikacji (teraz można tego dokonać tylko na żądanie)
  • możliwość wypowiadania na głos komunikatów z okien dialogowych (na systemach starszych niż Windows 8, na których Narrator nie jest dostępny lub nie można nim sterować za pomocą skrótów klawiszowych, a w efekcie za pomocą własnych poleceń głosowych)

Wyraź swoje poparcie

Jeśli tak jak ja pasjonujesz się nowymi technologiami, rozpoznawaniem mowy lub innymi metodami komunikowania się ze sprzętem, zwłaszcza ich użytkowym zastosowaniem - wypróbuj Spikit. Odnajdziesz go w bazie dobrychprogramów, jak i na oficjalnej stronie projektu. Aplikacja w wersji bezpłatnej działa z niewielkim opóźnieniem.

A jeśli masz pytania lub szukasz okazji do wymiany poglądów na temat samego programu lub idei głosowego sterowania PC, weź udział w dyskusji zarówno tu jak i na stronie Spikit (tam komentarze biją kolejne rekordy długości...).

A gdy Spikit przypadnie już Tobie do gustu - nie zapomnij dać mu lajka na Facebooku, Spikit na FB pozytywnie zaskakuje zarówno treścią jak i kulturą przekazu informacji.

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.