Czy Amazon Echo „zawsze nasłuchuje” i wysyła dane do chmury?


20

Niektóre źródła wiadomości, takie jak Intellihub i CEPro, wydają się sugerować, że domowy asystent Echo firmy Amazon nieustannie słucha rozmów i wysyła je przez Internet na serwery Amazon. CEPro stwierdza, że:

Wypowiadając kluczowe wyrażenie Amazon nazywa „słowo przebudzenia”, Echo budzi się do życia i zaczyna słuchać poleceń. Domyślnie słowem aktywującym jest Alexa.

Jeśli przeczytasz to ostatnie zdanie, może to nie mieć sensu, szczególnie jeśli jesteś w polu bezpieczeństwa. Według Amazon Echo słucha poleceń dopiero po usłyszeniu słowa budzenia. Skąd ma wiedzieć, kiedy wypowiedziałeś słowo pobudki, jeśli jeszcze nie słuchało?

Artykuł Intellihuba ma podobny sentyment:

Urządzenie „Amazon Echo”, stale słuchający głośnik Bluetooth, który łączy się z usługami przesyłania strumieniowego muzyki, takimi jak Pandora i Spotify na dźwięk głosu osoby, może zostać łatwo zhakowany i wykorzystany przez agencje rządowe, takie jak FBI, do podsłuchiwania rozmów.

(Zauważ, że nie jestem specjalnie skoncentrowany na badaniu hakowania aspektu tego pytania, ponieważ prawdopodobnie byłoby to zbyt wiele dla jednego pytania. Moim głównym celem jest aspekt zawsze włączony i to, czy wysyła dane przez cały czas .)

Żaden artykuł nie wydaje się szczególnie chętny do ujawnienia źródła swoich roszczeń, co sugeruje mi, że są one w najlepszym wypadku niesprawdzone lub w najgorszym przypadku zanęty.

Czy Echo zawsze rejestruje i wysyła dane do chmury, czy też powyższe roszczenia są nieuzasadnione? Jak Amazon Echo przetwarza dane, jeśli nie zawsze wysyła dane do serwerów w chmurze?

Odpowiedzi:


15

Tak, zawsze słucha. Nie, nie zawsze jest wysyłany do chmury.

Oczywiście urządzenie musi zawsze nasłuchiwać, aby wykryć słowo pobudki. Jest to jednak możliwe dzięki technologii o nazwie.

  1. Jak Amazon Echo i Echo Dot rozpoznają słowo pobudki?

Amazon Echo i Echo Dot wykorzystują wykrywanie słów kluczowych na urządzeniu, aby wykryć słowo pobudki. Gdy urządzenia te wykryją słowo budzenia, przesyłają strumieniowo dźwięk do chmury , w tym ułamek sekundy dźwięku przed słowem budzenia.

( Echo FAQ )

Tak więc, według Amazon, wykrywanie słowa pobudki jest na urządzeniu. Można to bardzo łatwo przetestować, uniemożliwiając urządzeniu dostęp do Internetu w routerze. Echo / Echo Dot nadal rozpozna słowo budzenia, ale pierścień świetlny zmieni kolor na czerwony, a urządzenie poinformuje, że nie ma połączenia z Internetem. Możemy więc bardzo łatwo zweryfikować, czy rozpoznawanie słów pobudzających jest rzeczywiście wykonywane lokalnie .

Dopiero po wykryciu słowa aktywacji urządzenie kontaktuje się z usługą chmurową Alexa.

Według Amazon urządzenie przesyła strumieniowo do chmury tylko wtedy, gdy pierścień świetlny jest niebieski i nie słucha wcale, gdy jest wyciszony, a pierścień świetlny świeci na czerwono. Oczywiście ostrożni ludzie mogą to sprawdzić za pomocą narzędzi sieciowych, takich jak Wireshark, aby upewnić się, że naprawdę tylko wtedy transmituje.


4
Najwyraźniej nie jest to już do końca prawdą: urządzenia Alexa mogą teraz weryfikować słowo budzenia przez chmurę jako dodatkową kontrolę, więc coś podobnego do słowa budzenia można wysłać do chmury.
Aurora0001

12

Czy Echo zawsze rejestruje i wysyła dane do chmury, czy też powyższe roszczenia są nieuzasadnione?

Nie podczas wysyłania. Ale tak na nagraniu.

Obecnie opracowuję klienta sprzętowego Alexa dla firmy. Urządzenie zawsze nasłuchuje. Ale trzeba by było włączyć w nim silnik budzika, aby „obudził się” z trybu pasywnego słuchania i przełączył się na aktywny tryb „nasłuchuj poleceń”.

Oprogramowanie układowe wysyła instrukcje po słowie pobudzającym (przełączenie do trybu aktywnego) do chmury, aby przetworzyć je jako polecenia.

  • Jeśli chodzi o urządzenie, nie chciałbyś wysyłać wszystkich oświadczeń, które dostaje do chmury, w celu przetworzenia, ponieważ zużyłoby to zbyt dużo przepustowości i mocy.
  • Jeśli chodzi o Amazon, nie chcieliby też, aby każdy klient Alexa wysyłał wszystko, co słyszy, ponieważ wymagałoby to ogromnej przepustowości. Co więcej, spowodowałoby to zbyt wiele niepowiązanych danych, które zakłóciłyby ciągłe uczenie się systemu. Wyobraź sobie, że próbujesz dowiedzieć się, co mówi nauczyciel (prawidłowe polecenia), gdy wszyscy w klasie mówią jednocześnie (każde inne zdanie, które nie jest poleceniem).

Jak Amazon Echo przetwarza dane, jeśli nie zawsze wysyła dane do serwerów w chmurze?

W trybie pasywnym urządzenie ma wewnętrzny silnik słowa aktywacji, który cały czas nasłuchuje słowa aktywacji. Podczas testowania Alexy w Raspberry Pi musiałem w tym celu zainstalować silnik Sensory lub KITT.AI. W rzeczywistości, kiedy wypróbowałem prototypowy kod klienta Alexa dla mojego komputera z systemem Linux, musiałem to być „push-to-talk”, ponieważ nie było silnika słownika.


Dzięki za zwrócenie uwagi na silniki słów pobudek - prawie na pewno takie podejście stosuje Amazon. Twoja analogia do danych jest również świetna - doceniam to!
Aurora0001

5

Wypowiadając kluczowe wyrażenie Amazon nazywa „słowo przebudzenia”, Echo budzi się do życia i zaczyna słuchać poleceń. Domyślnie słowem aktywującym jest Alexa.

Jeśli przeczytasz to ostatnie zdanie, może to nie mieć sensu, szczególnie jeśli jesteś w polu bezpieczeństwa. Według Amazon Echo słucha poleceń dopiero po usłyszeniu słowa budzenia. Skąd ma wiedzieć, kiedy wypowiedziałeś słowo pobudki, jeśli jeszcze nie słuchało?

Echo aktywnie nasłuchuje słowa kluczowego i bierze słowa wypowiedziane po słowie kluczowym do przetwarzania NLU. Oto moje rozumienie, w jaki sposób echo osiąga to miłe osiągnięcie.

Echo jest oparte na cyfrowym procesorze multimediów Texas Instruments DM3725 .

Ten TI SoC ma dwa kluczowe elementy w środku, pierwszy to ARM Cortex-A8 MPU, a drugi to TMS320DM64x + DSP. Rdzeń ARM powinien działać pod Linuksem, a DSP uruchamia oprogramowanie układowe.

Podczas pracy na biegu jałowym rdzeń ARM przechodzi do najniższego możliwego stanu zasilania, a Linux jest całkowicie zawieszony. W tej chwili DSP i 64KB RAM na chipie są aktywne. Oprogramowanie DSP przetwarza szum przychodzący z mikrofonów i próbuje ustalić, czy słowo kluczowe (np. Alexa) jest wypowiedziane. Gdy tylko wykryje słowo kluczowe, DSP wysyła przerwanie, aby obudzić rdzeń ARM, który z kolei wznawia działanie Linuksa. Pamiętaj jednak, że podczas gdy Linux budzi człowieka, który powiedział, że Alexa kontynuowałaby mówienie (np. „Alexa, która jest godzina?” ). DSP buforuje „która jest godzina?” część na pamięci RAM układu. A kiedy Linux zostanie wznowiony, Linux pobiera buforowaną mowę i korzysta z możliwości przetwarzania języka naturalnego (częściowo lokalnego, częściowo w chmurze), aby zrozumieć, co powiedział Human.

Jak widać, projekt został stworzony w taki sposób, aby był najmniej energochłonny i aby uniknąć potrzeby uwzględniania chmury do wykrywania słów kluczowych i wstępnego buforowania. W rzeczywistości utrzymywanie rdzenia ARM na najniższym poziomie mocy zapewnia, że ​​krzem nagrzewa się najmniej na biegu jałowym, co zapewnia długą żywotność urządzenia.

Pomijam dyskusję o próbach zhakowania echa, ponieważ pytanie brzmiało:

Rozpoznawanie słowa pobudki jest rzeczywiście wykonywane lokalnie.


Jak trudno byłoby umieścić większość prostych poleceń, np. Która jest godzina, lub odtworzyć stację lokalnie? Wyeliminowałoby to również opóźnienie w chmurze.
flyingdrifter

1

Tak.

Zobacz na przykład: Jak prywatny jest nowy Amazon Echo? (jest dużo więcej podobnych do znalezienia przy minimalnym wysiłku)

Podobnie jak Siri, Amazon Echo działa w „chmurze” działającej w Amazon Web Services. Dlatego przetwarzanie wymagane do „zrozumienia” polecenia nie jest obsługiwane na samym urządzeniu

Jednak,

W końcu zawsze słucha, więc czy nie powinniśmy martwić się o Wielkiego Brata?

Nie, mówi Amazon. Gigant technologii mówi, że nie słucha ani nie nagrywa prywatnych rozmów w domu. Jeśli ktoś jest zaniepokojony, może użyć dołączonego pilota, aby nacisnąć przycisk wyciszenia, co wyłącza urządzenie „zawsze nasłuchujące”, więc nie będzie działać do momentu ponownego włączenia mikrofonu.


To dobre źródło, dzięki. To nie wspomina nic na temat, w jaki sposób Echo nie rozpoznaje polecenia budzenia ale jeśli nie jest to zawsze nagrywania i wysyłania danych, więc byłbym zainteresowany, aby usłyszeć o tym aspekcie więcej.
Aurora0001

Z pewnością o to chodzi? To jest zawsze słuchać i wysyłanie * wszystko na chmurze, czyli tam, gdzie polecenie wzbudzenia jest rozpoznawane. Potrzebujesz do tego cytatu?
Mawg

1
Byłoby to przydatne, tak (i ​​myślę, że prawdopodobnie zmienia to ogólną odpowiedź na „tak, zawsze słucha”). Dzięki.
Aurora0001

1
Nie wiem, ile mocy obliczeniowej znajduje się w echu, ale wiem, że mój smartwatch jest w stanie wykryć „ok google”, gdy nie jest on uwiązany - z perspektywy ładowania chmury, sensowne jest migrowanie tej funkcjonalności do krawędzi po jej gotowe - więc odpowiedź może się zmienić.
Sean Houlihane,

To może (? Ale dlaczego), w przyszłości, na razie, wydaje się jasne
Mawg
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.