SEO

Co sprawia, że niektóre strony internetowe wyświetlają się od razu po wpisaniu szukanej frazy, a inne giną w gąszczu pozostałych witryn? Jak sprawić, aby użytkownik mógł łatwiej znaleźć naszą stronę? Pozycjonowanie nie ma nic wspólnego z losowością. Za te i inne aspekty odpowiada SEO. Nieważne, czy dopiero rozpoczynamy naszą przygodę z prowadzeniem portalu internetowego, czy robimy to od dawna, zajmujemy się wszystkim sami, czy zlecamy to komuś innemu. Podstawowe zasady, jakimi rządzi się pozycjonowanie, warto znać.  Po zapoznaniu się z tym artykułem dowiesz się czym jest SEO, z czego się składa oraz jak je wykorzystywać w odpowiedni sposób. 

Czym jest SEO? 

Zacznijmy od tego, czym tak naprawdę jest SEO i z czego się składa. SEO (Search Engine Optimization) to ogół działań podejmowanych w celu poprawy pozycjonowania strony internetowej w wynikach wyszukiwania [1]. Składa się na nie szereg praktyk i strategii, takich jak odpowiednie redagowanie tekstu czy budowanie profilu linkowego. SEO również odpowiada za dostosowanie witryny do algorytmów, stosowanych przez wyszukiwarki. To one decydują o tym, które strony będą wyświetlane na pierwszej stronie wyników wyszukiwania i w jakiej kolejności. Poprzez optymalizację, dana strona internetowa może zyskać lepszą pozycję w wynikach wyszukiwania, co zwiększa jej widoczność. Należy oczywiście pamiętać, że narzędzia SEO to jedynie jeden ze sposobów na poprawę popularności witryny. Nie daje on tak szybkich efektów jak, na przykład, płatne reklamy, ale jest relatywnie tani. Poza tym wypracowany efekt utrzyma się na dłużej i nie zniknie po wygaśnięciu danej subskrypcji, jak ma to miejsce w przypadku wielu innych technik marketingowych. 

Pozycjonowanie on-site

SEO możemy podzielić na dwa rodzaje: on-site oraz off-site. On-site SEO to wszystkie działania, które mają miejsce na danej stronie internetowej. To wszystkie kwestie redakcyjne, techniczne czy takie, które wpływają na szybkość ładowania treści. Dzięki dbaniu o te aspekty, strona jest czytelniejsza zarówno dla użytkownika, jak i robotów Google. Aby mówić o dobrym on-site SEO należy zadbać o:

  • Metadane i opis ALT – nawet jeśli strona będzie czytelna dla użytkownika, co z algorytmami wyszukiwarek? Aby i dla nich była czytelna, warto zadbać o tytuły i opisy meta, które pomogą wyszukiwarkom znaleźć naszą witrynę. Poza tym, warto również zadbać o opisy ALT, zwane również tekstem alternatywnym. Algorytmy nie rozumieją, co znajduje się na obrazkach. Dzięki temu krótkiemu opisowi, będą w stanie przyporządkować jego treść do wyszukiwanej frazy i poprawić pozycjonowanie. 
  • Nagłówki – to kolejna rzecz, która wpływa nie tylko na ludzką percepcję. Odpowiednie rozłożenie nagłówków i optymalizacja treści w nich mogą znacząco przyczynić się do poprawy pozycjonowania. 
  • Hiperłącza – czyli ogół odnośników, zwany również profilem linkowym. Możemy tutaj wyróżnić linkowanie zewnętrzne i wewnętrzne. Linkowanie zewnętrzne to linki pochodzące z innych stron internetowych niż nasza i zaliczane jest ono do off-site SEO. Natomiast wewnętrzne to odnośniki, które w obrębie jednej witryny przekierowują użytkownika do innych zakładek czy artykułów [2].  

Pozycjonowanie off-site

Off-site SEO natomiast odnosi się do wszystkich działań podejmowanych poza stroną, w celu zwiększenia jej widoczności i rozpoznawalności w sieci. Dzięki temu zyskujemy ruch na stronie z zewnętrznych źródeł. Takie działania to na przykład:

  • Hiperłącza – ponownie, profil linkowy budujący popularność i rozpoznawalność strony w sieci. Do off-site SEO zaliczane jest linkowanie zewnętrzne, czyli pochodzące z innych źródeł. Warto zadbać, aby były one dobrej jakości, czyli pochodzące z rzetelnych źródeł. Minęły czasy, kiedy liczyła się tylko ilość. Teraz algorytmy wyszukiwarek zwracają dużo większą uwagę właśnie na wartość.
  • Marketing internetowy – chodzi o takie działania, jak prowadzenie profili na Social Mediach, prowadzenie dyskusji z użytkownikami na forach czy współpracowanie z influencerami. To aspekty, które bezpośrednio nie wpływają na wyniki wyszukiwania, lecz pośrednio mogą bardzo przyczynić się do podbicia ilości zapytań o naszą stronę. 
  • Opinie – po jakimś czasie w naturalny sposób pojawiają się w sieci opinie na temat naszej strony czy prowadzonego biznesu. Warto o nie zadbać i odpowiedzieć użytkownikom, którzy je zostawili. Dbanie o dobrą opinię klienta to jeden z aspektów budowania wizerunku marki godnej zaufania [3].

Link building a pozycjonowanie

Link building to proces zdobywania odnośników, które będą prowadziły do naszej witryny. Mogą to być linki z zewnętrznych źródeł (tzw. backlinki) lub linkowanie wewnętrzne. Wtedy mówimy o odnośnikach, które będą przekierowywały nas w obrębie danej strony internetowej. Dobrze zbudowany profil linkowy znacząco wpływa na pozycjonowanie, o czym więcej można przeczytać wyżej [4]. Jak natomiast zmieniało się znaczenie takich praktyk? 

Przez wiele lat Google pozwalało pozycjonerom na wiele pod tym względem. Na porządku dziennym można było spotkać strony, do których prowadziły nawet setki tysięcy linków, gdyż ich liczba miała ogromne znaczenie dla pozycjonowania, a ich jakość już nie do końca. Zdecydowana większość z nich była linkami niskiej jakości, które były umieszczane w sieci na forach, w księgach gości, katalogach, komentarzach itp. Często nie zajmował się tym człowiek, wykorzystywano specjalne aplikacje, które robiły to automatycznie. Takie rozwiązanie przynosiło znaczące efekty, a mogło być przeprowadzone stosunkowo niewielkim kosztem. Wszystko zmieniło się w kwietniu 2012. Doszło wtedy do pewnej rewolucji – Google wprowadził nowy algorytm o nazwie Pingwin.[5]

Jak Pingwin zmienił SEO?

Czym jest Pingwin? To algorytm stworzony przez Google i wprowadzony 24 kwietnia 2012 roku, w celu zwalczania nieetycznego pozycjonowania stron internetowych. Specjaliści SEO próbowali oszukać skrypt Google poprzez kupowanie linków i umieszczanie ich w miejscach do tego nieprzeznaczonych, jednakże Pingwin skutecznie to wyłapywał. 

Spróbujmy odpowiedzieć na pytanie jak działa Pingwin. Ten skrypt analizuje linki, jakie prowadzą na daną stronę internetową i decyduje o ich wartości. Jeśli uzna je za linki o niskiej jakości, obniży rankingi witryn, do których prowadzą. Takie linki to na przykład te kupione (również pochodzące z wymiany linków) czy stworzone przez boty. Tak samo postąpi w przypadku linków będących spamem, na przykład umieszczanych w komentarzach na forach czy stronach zupełnie niezwiązanych tematycznie. Jego działanie jednak nie jest permanentne – kiedy niskowartościowe linki zostaną usunięte, dana witryna może odzyskać swoją pozycję. Warto wspomnieć, że Pingwin nie został stworzony tylko w celu wykrywania oszustw i obniżania widoczności stron internetowych. Jego rolą jest także nagradzanie uczciwie prowadzonych witryn – jeśli uzna profil linkowy za wartościowy, zwiększy widoczność takich stron [6].

SEO etyczne i nieetyczne

W zależności od tego, na czym opieramy nasze techniki pozycjonowania, można wyróżnić White Hat SEO oraz Black Hat SEO. Te określenia nawiązują do dobrych i złych postaci z westernowych bajek. Według przyjętej kulturowo konwencji, nosiły one zazwyczaj odpowiednio białe i czarne kapelusze, stąd takie skojarzenie. Co jednak oznaczają i czym różnią się te techniki? White Hat SEO to etyczne pozycjonowanie, stosowane według wytycznych zalecanych przez wyszukiwarki. Chodzi o takie zabiegi jak tworzenie treści dobrej jakości (niezawierającej duplikatów), stosowanie nagłówków, wypunktowań, czy dbanie o odpowiednią długość akapitów. Black Hat SEO natomiast charakteryzuje się nieetycznymi zachowaniami, mającymi sztucznie podbijać popularność. Są to takie praktyki jak nadużywanie fraz kluczowych poza kontekstem, ukrywanie tekstu czy kupowanie linków. Takie działania mogą skutkować zmniejszeniem poziomu zaufania do strony, nałożeniem filtrów obniżających pozycję, czy nawet wykluczeniem z wyników wyszukiwania [7].

Podsumowanie

Kluczem do zapewnienia sobie większego ruchu na stronie internetowej i lepszego jej pozycjonowania w wynikach wyszukiwania jest umiejętne wykorzystanie narzędzi SEO. To zabiegi bezpośrednio na stronie oraz poza nią, dzięki którym możemy liczyć na znacznie większe zasięgi. Podczas wykorzystywania SEO należy pamiętać, aby robić to odpowiednio. Stosując się do zaleceń wyszukiwarek i dopasowując treść zarówno do użytkownika jak i algorytmów, możemy liczyć na pozytywne efekty i poprawę statystyk. Nieetyczne praktyki mogą natomiast prowadzić do odwrotnych skutków.

Bibliografia

[1] https://searchengineland.com/guide/what-is-seo 

[2]https://www.semstorm.com/pl/blog/seo-and-ppc/czym-sie-rozni-on-site-seo-od-off-site-seo 

[3]https://www.semrush.com/blog/off-page-seo/?kw=&cmp=EE_SRCH_DSA_Blog_EN&label=dsa_pagefeed&Network=g&Device=c&utm_content=676606914923&kwid=dsa-2185834089536&cmpid=18361923498&agpid=157305243831&BU=Core&extid=105138960331&adpos=&gad_source=1&gclid=CjwKCAjw7-SvBhB6EiwAwYdCAQvsJcp7q2JoIQMf2RzGg_HVRjTFb7AB2sTcZ2khQdIN3qvCREr9GhoCzOIQAvD_BwE 

[4]https://greenparrot.pl/blog/co-to-jest-off-site-seo/ 

[5] https://1stplace.pl/blog/algorytm-google-pingwin/ 

[6] https://www.business2community.com/infographics/history-google-penguin-infographic-01468714 

[7]https://www.semrush.com/blog/black-hat-seo/?kw=&cmp=EE_SRCH_DSA_Blog_EN&label=dsa_pagefeed&Network=g&Device=c&utm_content=683809340380&kwid=dsa-2264710307245&cmpid=18361923498&agpid=156456448517&BU=Core&extid=105138960709&adpos=&gad_source=1&gclid=CjwKCAjw7-SvBhB6EiwAwYdCAZln5MkdcE3R2XZq-FUhanEKkDWUbpUoZxIowWHslE3ETaNFW88vPBoCJ5sQAvD_BwE 

Dylematy moralne związane ze sztuczną inteligencją

Sztuczna inteligencja jest jednym z najbardziej ekscytujących zagadnień technologicznych ostatnich lat. Ma potencjał na fundamentalne zmienienie naszego sposobu pracy oraz korzystania z nowoczesnych technologii w wielu dziedzinach, takich jak generatory tekstów i obrazów, różnego rodzaju algorytmy czy autonomiczne samochody. Wraz z coraz większym rozpowszechnianiem wykorzystywania sztucznej inteligencji, warto jednak również mieć świadomość potencjalnych problemów, jakie ze sobą niesie. Biorąc pod uwagę wzrastające uzależnienie naszych systemów od sztucznej inteligencji, podejście do tych dylematów może mieć kluczowy wpływ na przyszły obraz społeczeństwa. W niniejszym artykule przedstawimy te dylematy moralne. Omówimy również problemy związane z wprowadzaniem do ruchu drogowego pojazdów autonomicznych, zagrożenia wynikające z użycia sztucznej inteligencji do siania dezinformacji oraz obawy dotyczące styku sztucznej inteligencji i sztuki.

Problem pozyskiwania danych i ich skrzywienia

Co do zasady, ludzkie osądy są obciążone subiektywnym spojrzeniem, od maszyn i algorytmów oczekuje się większej obiektywności. Jednak to, w jaki sposób działają algorytmy uczenia maszynowego zależy w dużej mierze od danych, na których algorytm jest uczony. W związku z tym, wybrane do trenowania algorytmu dane z jakimkolwiek, nawet nieświadomym uprzedzeniem mogą spowodować niepożądane działania algorytmu. Zapraszamy do zapoznania się z naszym wcześniejszym artykułem, gdzie znajdziesz więcej informacji na ten temat.

Poziomy automatyzacji w samochodach autonomicznych

W ostatnich latach obserwowaliśmy duże postępy w rozwoju samochodów autonomicznych. W sieci pojawiało się wiele materiałów przedstawiających prototypy pojazdów będących w ruchu bez pomocy kierowcy lub nawet jego obecności. Rozmawiając o samochodach autonomicznych warto zaznaczyć, że istnieje wiele poziomów autonomiczności, dlatego warto przed dyskusją określić o którym poziomie mowa. [1]

  • Poziom 0 oznacza pojazdy, które wymagają pełnej kontroli kierowcy, wykonującego wszystkie działania związane z kierowaniem pojazdu (sterowanie, hamowanie przyspieszanie itd.). Pojazd może natomiast informować kierowcę o zagrożeniach znajdujących się na drodze. Użyje do tego systemów takich jak system ostrzegania przed kolizją czy ostrzegania o opuszczaniu pasa ruchu.
  • Poziom 1 zawiera pojazdy, będące już dziś powszechne na drogach. Kierowca nadal kontroluje pojazd, który jest wyposażony w systemy wspierające jazdę, jak np. tempomat czy układ utrzymujący samochód w granicach pasa ruchu.
  • Poziom 2, oprócz posiadania możliwości poprzednich poziomów, jest -pod pewnymi warunkami – w stanie przejąć częściową kontrolę nad pojazdem. Może on wpływać na prędkość czy kierunek jazdy, pod ciągłym nadzorem kierowcy. Wśród funkcji wspomagających można wymienić sterowanie autem w korku lub na autostradzie.
  • Poziom 3 autonomiczności to pojazdy, które nie są jeszcze dostępne komercyjnie. Samochody tego typu są w stanie prowadzić się w pełni autonomicznie, pod okiem kierowcy. Prowadzący pojazd nadal musi być gotowy w razie potrzeby przejąć sterowanie nad pojazdem.
  • Poziom 4 oznacza wykonywanie przez komputer pokładowy wszystkich czynności związanych z prowadzeniem pojazdu, jednak tylko na określonych, uprzednio zatwierdzonych trasach. W takiej sytuacji wszystkie osoby w pojeździe sprawują funkcję pasażerów, choć przejęcie kontroli nad pojazdem przez człowieka jest nadal możliwe.
  • Poziom 5 to najwyższy poziom autonomiczności – komputer pokładowy jest w pełni odpowiedzialny za prowadzenie pojazdu we wszystkich warunkach, bez jakiejkolwiek potrzeby ingerencji ludzkiej. [2]

Dylematy moralne w obliczu pojazdów autonomicznych

Pojazdy o poziomach autonomiczności 0-2 nie wzbudzają zbyt wielkich kontrowersji. Technologie takie jak sterowanie autem na autostradzie są już dostępne i ułatwiają podróżowanie. Potencjalne wprowadzenie do powszechnego ruchu drogowego pojazdów o wyższych stopniach autonomiczności wzbudza jednak pewne dylematy moralne. Jednym z problemów jest to, co dzieje się w sytuacji, kiedy autonomiczne auto, będące pod opieką prowadzącego, uczestniczy w wypadku. Kto ponosi wtedy odpowiedzialność za jego spowodowanie? Kierowca? Producent pojazdu? A może samo auto? Nie jest to pytanie, na które istnieje jednoznaczna odpowiedź.

Wprowadzenie na ulicę pojazdów autonomicznych wprowadza również inny problem – pojazdy te mogą posiadać luki w zabezpieczeniach. Coś takiego może potencjalnie prowadzić do wycieku danych lub nawet przejęcia kontroli nad pojazdem przez hakera. Przejęty w ten sposób samochód może zostać użyty do celowego spowodowania wypadku, a nawet przeprowadzenia ataku terrorystycznego.  Tu również pojawia się problem podzielenia odpowiedzialności pomiędzy producentem, hakerem i użytkownikiem. [3]

Jednym z najważniejszych problemów związanych z autonomicznymi pojazdami jest etyczne wyszkolenie pojazdów do podejmowania decyzji w wypadku zagrożenia życia i mienia. Kto powinien podejmować decyzje na ten temat – programiści tworzący oprogramowanie, etycy i filozofowie, czy może rządzący krajami? Decyzje te będą miały wpływ na to, kto przeżyje w razie nieuniknionego wypadku. Wiele sytuacji, z jakimi mogą się spotkać autonomiczne pojazdy, będzie wymagać podjęcia decyzji, którym brak jednej oczywistej odpowiedzi (rysunek 1). Czy pojazd powinien nadawać priorytet w ratowaniu pieszych czy pasażerów, młodych czy starych? Jak ważny jest brak ingerencji pojazdu w tok wydarzeń? Czy przestrzeganie prawa przez drugą stronę wypadku powinno mieć wpływ na decyzję? [4]

Rys. 1. Ilustracja jednego z przypadków jakie mogą spotkać autonomiczne pojazdy. Źródło: https://www.moralmachine.net/ 

Deepfake – czym jest i dlaczego prowadzi do dezinformacji?

Współczesny człowiek korzystający z nowoczesnych technologii jest bombardowany zewsząd informacjami. Ogromna ilość i prędkość dostarczania informacji powoduje, że nie wszystkie z nich mogą być zweryfikowane. Fakt ten umożliwia osobom fabrykującym fałszywe wiadomości dotarcie do stosunkowo dużej grupy osób. Dzięki temu mogą zmanipulować swoje ofiary tak, aby zmieniły nastawienie odnośnie jakiegoś tematu lub nawet padły ofiarą oszustwa. Choć praktyka ta występowała już od jakiegoś czasu, pojawienie się sztucznej inteligencji drastycznie ułatwia proces kreowania fałszywych informacji, a co za tym idzie pozwala na szybsze ich tworzenie i rozpowszechnianie.

Spośród technik dezinformacji, sztuczna inteligencja może być używana szczególnie efektywnie do produkcji tzw. deepfake’ów. Deepfake to technika obróbki obrazu przedstawiającego ludzi, oparta na sztucznej inteligencji. Przy pomocy algorytmów uczenia maszynowego na istniejące materiały źródłowe nakładane są modyfikowane obrazy, tworząc tym samym realistyczne filmy i obrazy, przedstawiające nie mające miejsca zdarzenia. Dotychczas, technologia pozwalała głównie na obróbkę obrazów statycznych, a edycja wideo była zdecydowanie trudniejsza do wykonania. Popularyzacja sztucznej inteligencji rozwiązała te bariery techniczne, co przełożyło się na drastyczny wzrost częstotliwości występowania tego zjawiska. [5]

Film1. Deepfake w formie materiału wideo wykorzystujący wizerunek prezydenta Obamy. 

Dylematy moralne związane z deepfake

Deepfake mógłby być wykorzystany do osiągnięcia różnych celów. Technologia ta może zostać użyta w nieszkodliwych projektach, wśród których można wymienić materiały edukacyjne takie jak filmik przedstawiający prezydenta Obamę ostrzegającego o zagrożeniach związanych z deepfake’ami (patrz rysunek 2). Oprócz tego, znajduje zastosowanie w branży rozrywkowej, jak używanie cyfrowych kopii aktorów (choć to zastosowanie może wzbudzać dylematy moralne), czego przykładem jest użycie cyfrowego podobieństwa zmarłego aktora Petera Cushinga do odegrania roli Wielkiego Moffa Tarkina w filmie Łotr 1. Gwiezdne wojny – historie (patrz rysunek 2).

Rys. 2. Cyfrowa kopia aktora Petera Cushinga w roli Wielkiego Moffa Tarkina. Źródło: https://screenrant.com/star-wars-rogue-one-tarkin-ilm-peter-cushing-video/ 

Istnieje jednak również wiele innych zastosowań deepfake’ów, które mogą potencjalnie stanowić poważnie zagrożenie dla społeczeństwa. Takie spreparowane filmy mogą być używane do skompromitowania danej osoby, chociażby poprzez wykorzystanie jej podobieństwa w filmach pornograficznych. Fałszywe materiały mogą być również używane we wszelkiego rodzaju oszustwach, takich jak próby wyłudzenia pieniędzy. Przykładem takiego zastosowania jest chociażby przytoczona przez nas w poprzednim artykule sprawa lekarza, którego wizerunek został użyty w reklamie pseudoleków kardiologicznych [6]. Dużo emocji wzbudza również wykorzystywanie deepfake’ów w celach siania dezinformacji, w szczególności w obszarze polityki. Odpowiednio użyte fałszywe materiały mogą prowadzić do incydentów dyplomatycznych, zmieniać reakcję społeczeństwa na pewne tematy polityczne, dyskredytować polityków, a nawet wpływać na wyniki wyborów. [7]

Ze względu na swoją naturę, rozpowszechnienie deepfake’ów nie jest czymś, czemu można łatwo zapobiec. Rozwiązania prawne nie są w pełni skuteczne ze względu na globalną skalę problemu i naturę działania sieci społecznościowych. Wśród innych proponowanych rozwiązań problemu można wymienić opracowywanie algorytmów wykrywających sfałszowane materiały oraz edukację społeczeństwa na ten temat.

Sztuka generowana przez AI

Obecnie na rynku istnieje wiele generatorów tekstu, obrazów czy filmów wykorzystujących AI. Midjourney, DALL-E, Stable Diffuion oraz wiele innych, pomimo różnych implementacji i algorytmów za nimi stojących, łączy jedno – potrzebują ogromnych ilości danych, które, ze względu na swoje rozmiary, mogą być zdobyte wyłącznie z Internetu – często bez zgody autorów tych dzieł.  W związku z tym, wielu artystów i firm postanowiło wytoczyć pozwy wobec firm tworzących modele sztucznej inteligencji. Według pozywających, nielegalnie używają milionów zdjęć pozyskanych z Internetu, które są objęte prawami autorskimi. Najgłośniejszym przypadkiem pozwu jest ten, który wytoczyła Getty Images – agencja oferująca zdjęcia do celów biznesowych – przeciwko Stability AI, twórcy open-source’owego generatora obrazów Stable Diffusion. Agencja oskarża Stability AI o skopiowanie ponad 12 milionów obrazów z ich bazy danych bez uprzedniej zgody lub rekompensaty (patrz rysunek 3). Wyniki tej i innych spraw sądowych związanych z generowaniem obrazów przy pomocy AI ukształtują przyszłe zastosowania i możliwości tej technologii. [8]

Rys. 3. Ilustracja użyta w pozwie Getty Images przedstawiająca oryginalne zdjęcie oraz podobny obraz z widocznym znakiem wodnym Getty Images stworzony przez Stable Diffusion. Źródło: https://www.theverge.com/2023/2/6/23587393/ai-art-copyright-lawsuit-getty-images-stable-diffusion 

Oprócz prawnych problemów związanych z trenowaniem generatywnych modelów na podstawie danych objętych prawami autorskimi, istnieją również dylematy moralne na temat dzieł sztuki wykonywanych za pomocą sztucznej inteligencji. [9]

Czy AI zastąpi artystów?

Wielu artystów uważa, że sztuczna inteligencja nie jest w stanie odwzorować emocjonalnych aspektów sztuki, jakie oferują ludzkie dzieła. Oglądając filmy, słuchając muzyki oraz grając w gry odczuwamy pewne emocje, czego algorytmy nie są w stanie nam zapewnić. Nie są kreatywne w taki sam sposób jak ludzie. Istnieją również obawy co do sytuacji materialnej wielu artystów. Następują one zarówno z powodu nieotrzymywania rekompensaty za stworzone dzieła będące w zbiorach treningowych algorytmów, jak i zmniejszoną liczbę zleceń w związku z popularnością i łatwością użycia generatorów. [10]

Z drugiej strony, niektórzy artyści uważają, że inny sposób ‘myślenia’ sztucznej inteligencji jest jej atutem. Może ona tworzyć dzieła, których człowiek nie jest w stanie wytworzyć. Między innymi w ten sposób generatywne modele mogą stać się kolejnym narzędziem w rękach artystów. Dzięki nim będą mogli doprowadzić do tworzenia nieistniejących do tej pory form i gatunków sztuki, rozszerzając ludzką kreatywność.

Jak widać, popularność i możliwości generatywnej sztucznej inteligencji stale rosną. Co za tym idzie, pojawiają się liczne debaty na tematy prawne i etyczne, związane z tą technologią. Przewidujemy, że będą się one stawać coraz głośniejsze. Technologia ta ma potencjał drastycznie zmienić sposób, w jaki obcujemy ze sztuką.

Podsumowanie

Odpowiednie wykorzystywanie sztucznej inteligencji ma potencjał zostać ważnym i powszechnie wykorzystywanym narzędziem w rękach ludzkości. Może zwiększyć produktywność, ułatwić wykonywanie wielu czynności oraz rozwinąć nasze możliwości kreatywne. Technologia ta niesie ze sobą jednak pewne zagrożenia, których nie należy lekceważyć. Nierozważne wykorzystywanie pojazdów autonomicznych, sztuki AI lub deepfake’ów może doprowadzić do wielu problemów. Mogą to być straty finansowe czy wizerunkowe, ale nawet zagrożenia dla zdrowia i życia. Aby zredukować występowanie tych problemów, ważne będą dalsze postępy technologii wykrywających deepfaki. Ponad to nowe rozwiązania prawne, a także edukacja społeczeństwa na temat zagrożeń związanych ze sztuką AI oraz nowymi metodami dezinformacji i fałszywymi materiałami wideo.

Bibliografia

[1] https://www.nhtsa.gov/vehicle-safety/automated-vehicles-safety

[2] https://blog.galonoleje.pl/pojazdy-autonomiczne-samochody-bez-kierowcow-juz-sa-na-ulicach

[3] https://www.forbes.com/sites/naveenjoshi/2022/08/05/5-moral-dilemmas-that-self-driving-cars-face-today/

[4] https://www.bbc.com/news/technology-45991093

[5] https://studiadesecuritate.uken.krakow.pl/wp-content/uploads/sites/43/2019/10/2-1.pdf

[6] https://www.medonet.pl/zdrowie/wiadomosci,kolejny-lekarz-ofiara-oszustow–zostal-twarza-pseudolekow–dr-sutkowski–to-jest-kradziez,artykul,26668977.html

[7] https://businessinsider.com.pl/technologie/nowe-technologie/deepfakes-historia-falszywych-filmow-i-pomysly-na-walke-z-nimi/s17z2p0

[8] https://apnews.com/article/getty-images-artificial-intelligence-ai-image-generator-stable-diffusion-a98eeaaeb2bf13c5e8874ceb6a8ce196

[9] https://www.benchmark.pl/aktualnosci/dzielo-sztucznej-inteligencji-docenione.html

[10] https://businessinsider.com.pl/technologie/digital-poland/sztuczna-inteligencja-w-sztuce-szansa-czy-zagrozenie/7lq70sx

Sztuczna inteligencja a twórczość głosowa

Sztuczna inteligencja a twórczość głosowa

Ostatnimi czasy sztuczna inteligencja (AI) przestała być frazesem używanym wyłącznie w twórczości science-fiction – stała się częścią naszej rzeczywistości. Od wszelkiego rodzaju asystentów, po generatory tekstów, obrazów czy dźwięków, maszyna i produkowane przez nią odpowiedzi wdarły się przebojem do naszej codzienności. Czy istnieją wady tego stanu rzeczy? Jeśli tak, to czy są przeciwważone zaletami? Nad tymi pytaniami oraz innymi dylematami związanymi z wykorzystaniem AI przy zagadnieniach związanych z głosem ludzkim pochylimy się w tym wpisie. 

Jak sztuczna inteligencja dostaje swój głos? Rozwój głosów AI obejmuje wiele nowatorskich dziedzin, ale do głównie stosowanych metod należą:  

 

  • algorytmy uczenia maszynowego – umożliwiają systemom uczenie się na podstawie danych i z biegiem czasu poprawianie ich wydajności. Uczenie nadzorowane jest często wykorzystywane do szkolenia modeli głosu AI przy użyciu dużych zbiorów danych dotyczących ludzkiej mowy. Dzięki nadzorowanemu uczeniu się model sztucznej inteligencji uczy się rozpoznawać wzorce i korelacje między danymi wejściowymi tekstowymi a odpowiadającymi im komunikatami głosowymi. Sztuczna inteligencja uczy się na wielu przykładach ludzkiej mowy i dostosowuje swoje ustawienia tak, aby to co wygeneruje było jak najbardziej zbliżone do mowy prawdziwego człowieka. W miarę jak model przetwarza więcej danych, udoskonala zrozumienie fonetyki, intonacji i innych cech mowy, co prowadzi do coraz bardziej naturalnych i wyrazistych głosów;  

 

  • przetwarzanie języka naturalnego (NLP) – umożliwia maszynom rozumienie i interpretowanie ludzkiego języka. Korzystanie z technik NLP pozwala sztucznej inteligencji rozkładać zapisane słowa i zdania w celu znalezienia ważnych szczegółów, takich jak gramatyka, znaczenie oraz emocje. NLP pozwala głosom AI interpretować i wypowiadać złożone zdania, nawet jeśli słowa mają wiele znaczeń lub brzmią tak samo. Dzięki temu głos AI brzmi naturalnie i ma sens, niezależnie od rodzaju używanego języka. NLP to magia, która wypełnia lukę między słowami pisanymi a mową mówioną, dzięki czemu głosy AI brzmią jak prawdziwi ludzie, nawet w przypadku skomplikowanych wzorców językowych.  

 

  • techniki syntezy mowy – umożliwiają maszynom przekształcanie przetworzonego tekstu w zrozumiałą i wyrazistą mowę. Można to zrobić na różne sposoby, na przykład poprzez składanie nagranej mowy w celu utworzenia zdań (synteza konkatenatywna) lub używanie modeli matematycznych do tworzenia mowy (synteza parametryczna), co pozwala na większe dostosowanie. W ostatnim czasie pojawiła się przełomowa metoda zwana neuronowym TTS (Text-to-Speech). Wykorzystuje modele głębokiego uczenia się, takie jak sieci neuronowe, do generowania mowy z tekstu. Dzięki tej technice głosy AI brzmią jeszcze bardziej naturalnie i wyraziście, rejestrując najdrobniejsze szczegóły, które sprawiają, że ludzka mowa jest wyjątkowa, takie jak rytm i ton.  

 

 

W praktyce dostępne narzędzia można podzielić na dwie główne kategorie: Text-to-Speech oraz Voice-to-Voice. Każde z nich umożliwia stworzenie klonu głosu danej osoby, jednak TTS jest dużo bardziej ograniczony w zakresie odtwarzania nietypowych słów, odgłosów, reakcji oraz możliwości wyrażania emocji. Voice-to-Voice w dużym uproszczeniu „zastępuje” brzmienie jednego głosu drugim, umożliwiając na przykład stworzenie sztucznego wykonania utworu jednego wokalisty przez zupełnie innego wokalistę, zaś Text-to-Speech wykorzystuje stworzony model głosu do odczytania wprowadzonego tekstu (tworząc z tekstu mel spektrogram, a następnie przekazując go do vocodera, który generuje plik audio) [1]. Podobnie jak w przypadku każdego zagadnienia związanego z uczeniem maszynowym, tak i tutaj jakość ostatecznie wygenerowanej mowy zależy w dużej mierze od modelu i danych, na których model ten był trenowany.  

Początki badań nad ludzką mową miały miejsce już pod koniec XVIII wieku, jednak prace nad syntezą mowy nabrały rozpędu dużo później, gdyż w latach 20-30. XX wieku, kiedy to w Bell Labs opracowano pierwszy vocoder [2]. Zagadnienia związane z imitacją i klonowaniem głosu (co określane jest też mianem głosowych deepfake’ów) pierwszy raz na szerszą skalę poruszono w artykule naukowym opublikowanym w 1997 roku, zaś najszybszy rozwój technologii znanych nam dzisiaj nastąpił po 2010 roku. Szczególnym wydarzeniem, które napędziło popularność i dostępność narzędzi do klonowania głosu, było opublikowanie przez Google w 2017 roku algorytmu do syntezy mowy Tacotron [3].   

 

Już teraz sztuczna inteligencja „rozmawia” z nami w wielu sytuacjach z codziennego życia: wirtualni asystenci jak Siri czy Alexa w urządzeniach czy automaty do telefonicznej obsługi klienta w różnych firmach i instytucjach to już powszechne zjawisko. Jednakże technologia ta daje możliwości, które mogą być źródłem problemów, co wzbudza kontrowersje dotyczące etyczności rozwijania jej w przyszłości. 

Na pierwszy plan wysuwają się tutaj problemy zgłaszane przez osoby pracujące głosem, które obawiają się niebezpieczeństwa utraty pracy na rzecz maszyn. W przypadku tych osób głos, poza byciem częścią tożsamości, jest też źródłem wyrazu artystycznego i narzędziem pracy. W przypadku stworzenia odpowiednio dobrego modelu głosu danego człowieka, dalsza jego praca nagle, teoretycznie, przestaje być potrzebna. Dokładnie ten temat był przedmiotem dyskusji, która rozpaliła Internet w sierpniu 2023, kiedy to jeden z twórców wstawił na serwis YouTube wykonaną samodzielnie w Blenderze animację inspirowaną kultowym serialem Scooby-Doo [4]. Powodem kontrowersji było użycie przez początkującego autora AI do wygenerowania dialogów dla 4 występujących postaci, które używały modeli głosowych oryginalnej (i wciąż czynnej zawodowo) obsady. Na twórcę spadła fala krytyki za używanie czyjegoś głosu bez pozwolenia, na własny użytek. Sprawa dyskutowana była w środowisku osób zawodowo związanych z animacją, skomentowała ją także jedna z aktorek głosowych z oryginalnej obsady serialu. Wyraziła ona swoje oburzenie i dodała, że nigdy nie podejmie współpracy z tym twórcą oraz że będzie ostrzegała przed nim swoich kolegów z branży. Po opublikowaniu przeprosin przez twórcę (który przyznał się do błędu i tłumaczył swoje działania brakiem funduszy na zatrudnienie osób podkładających głos oraz całkowicie hobbystycznym i niezarobkowym charakterem stworzonej animacji) „wilczy bilet” został cofnięty, a strony pogodziły się. Z dyskusji wyłaniał się jednak wniosek o konieczności uregulowania prawnego wykorzystywania sztucznej inteligencji do takich celów. Lista zawodów, których ten temat dotyczy jest długa, a już w tym momencie istnieje mnóstwo utworów korzystających z czyjegoś głosu w podobny sposób. I mimo, że są to w większości treści tworzone przez fanów i dla fanów, w swego rodzaju hołdzie dla materiału źródłowego, to nadal jest to technicznie wykorzystanie części czyjejś tożsamości bez jego zgody. 

 

Kolejnym dylematem są wątpliwości etyczne, gdy rozważamy wykorzystanie głosu osoby zmarłej do tworzenia nowych treści. Internet pełen jest już „coverów”, w których nowo wydane utwory są „śpiewane” przez nieżyjących już artystów. Jest to temat niezwykle delikatny, biorąc pod uwagę uczucia rodziny, bliskich i fanów zmarłego, jak i to, jak zmarła osoba postrzegałaby takie wykorzystanie części jej wizerunku.  

Następnym zagrożeniem jest oszukiwanie i wprowadzanie w błąd za pomocą tej technologii. O ile przeróbki z politykami grającymi w gry multiplayer pozostają raczej w strefie niewinnych żartów, tak wkładanie w usta polityków słów, których nigdy nie wypowiedzieli, na przykład w trakcie kampanii wyborczej jest już sytuacją niebezpieczną, która może mieć poważne konsekwencje dla całego społeczeństwa. Na takie fałszywki i manipulacje są narażone obecnie zwłaszcza osoby starsze, jednak wraz z udoskonalaniem modeli i równoległym rozwojem metod generowania obrazu i ruchu ust, nawet osoby zaznajomione ze zjawiskiem mogą mieć coraz większe problemy z rozdzieleniem fałszu od rzeczywistości [5].  

Podobne oszustwa w najgorszym przypadku mogą poskutkować kradzieżą tożsamości. Co jakiś czas nagłaśniane są sprawy, gdy postać celebryty występuje w reklamie, o której on sam nigdy nie słyszał [6]. Ofiarami takich kradzieży tożsamości mogą być również eksperci bądź autorytety w danej dziedzinie, na przykład lekarze, których sztucznie wytworzony wizerunek jest wykorzystywany do reklamowania rozmaitych, często nie mających żadnego związku z medycyną preparatów. Tego typu sytuacje, już teraz mające miejsce w naszym kraju [7], są szczególnie szkodliwe, gdyż potencjalni odbiorcy takich reklam są narażeni nie tylko na niepotrzebny wydatek, lecz również ryzykują swoim zdrowiem a może i życiem. Nie jest także rzadkością weryfikacja biometryczna za pomocą głosu – w przypadku wiernego modelu głosu klienta i wycieku jego danych osobistych sytuacja taka może skutkować potencjalną katastrofą. Ryzyko takiego scenariusza potwierdzono już w przypadku jednej ze stworzonych przez australijski rząd aplikacji [8]. 

 

Niezwykle trudno przewidzieć w jakim kierunku będzie zmierzał rozwój sztucznej inteligencji w zastosowaniu do generowania głosu ludzkiego. Konieczne wydają się regulacje w kwestii możliwości stosowania modeli głosu celebrytów w celach zarobkowych oraz zapewnienie, iż człowiek nie zostanie w tej sferze całkowicie zastąpiony przez maszynę. Brak znaczących zmian w tej materii może poskutkować dalszą utratą zaufania do narzędzi wykorzystujących sztuczną inteligencję. Ten temat dzieli ludzi, ma wielu zwolenników jak i przeciwników.  Jak każde narzędzie, nie jest ono dobre ani złe – wszystko zależy od sposobu wykorzystania i intencji korzystającego. Już teraz istnieją narzędzia, które pozwalają wykryć, czy dane nagranie zostało sztucznie wygenerowane. Nie można też zapominać, iż do stworzenia przekonującego klonu ludzkiego głosu potrzebna jest wiedza, umiejętności i wysiłek. W przeciwnym wypadku rezultat jest niezgrabny i natychmiast można rozpoznać, że coś jest nie tak, doświadczamy wtedy „doliny niesamowitości” (eng. uncanny valley). Obecne w ludzkim głosie subtelności, emocje, różnice, akcenty, niedoskonałości są niezwykle trudne do odwzorowania. To daje nadzieję, iż maszyna nie wyprze całkiem człowieka i to tylko dzięki naszej doskonałej niedoskonałości.

 

Problemy w danych historycznych i zakodowane uprzedzenia

Prater & Borden

 

W 2014 roku osiemnastoletnia Brisha Borden została oskarżona o popełnienie kradzieży mienia wartości osiemdziesięciu dolarów po tym, jak postanowiła przejechać się pozostawionym i niezabezpieczonym rowerkiem dziecięcym. Brisha w przeszłości, w wieku nieletnim, popełniła mniejsze wykroczenia. 

 

Rok wcześniej czterdziestojednoletni Vernon Prater został przyłapany na kradzieży narzędzi ze sklepu o łącznej wartości 86,35 dolarów. Vernon był już oskarżony o kradzież z bronią w ręku, za co dostał wyrok pięciu lat pozbawienia wolności. Był też oskarżony o próbę dokonania napadu z bronią w ręku. 

 

W USA w tamtym czasie używany był system służący predykcji ryzyka, który miał na celu ocenę, czy dana osoba w przyszłości będzie popełniać inne przestępstwa. System ten dawał ocenę od 1 do 10, gdzie im wyższa wartość liczbowa, tym większe ryzyko popełniania przestępstw w przyszłości. Borden – czarna nastolatka – dostała ocenę wysokiego ryzyka: 8. Prater zaś – biały, dorosły mężczyzna – ocenę niskiego ryzyka: 3. Po dwóch latach Brisha Borden nie popełniła żadnego przestępstwa, natomiast Vernon Prater odsiadywał wyrok ośmiu lat pozbawienia wolności po tym, jak włamał się do magazynu i ukradł elektronikę wartości kilku tysięcy dolarów. [1] 

 

Ukryte dane

 

Zautomatyzowane systemy uczenia maszynowego i big data są coraz liczniejsze w naszym codziennym życiu. Poczynając od algorytmów proponujących użytkownikowi serial do obejrzenia, kończąc na takim, który zadecyduje o racie twojego kredytu hipotecznego. I właśnie, w momencie, kiedy algorytm decyduje o tak ważnej dla człowieka sprawie wchodzimy na dość niebezpieczny grunt. Czy możemy w ogóle ufać takim systemom, aby podejmowały istotne decyzje? Algorytmy komputerowe dają poczucie bezstronności i obiektywności. Czy jednak istotnie tak jest? 

 

W dużym skrócie – algorytmy uczenia maszynowego „uczą się” podejmować decyzje na podstawie dostarczonych danych. Niezależnie od sposobu tej nauki, czy to proste drzewa decyzyjne, czy bardziej zaawansowane sztuczne sieci neuronowe, z założenia algorytm powinien wyciągnąć ukryte w danych wzorce. Tak więc algorytm będzie tak obiektywny, jak obiektywne są dane uczące. O ile możemy się zgodzić, że na przykład dane medyczne czy pogodowe są obiektywne, ponieważ oczekiwane rezultaty nie wynikają z decyzji ludzkich, o tyle decyzje o np. przyznaniu kredytu czy zatrudnieniu były historycznie podejmowane przez ludzi. A ludzie, jak wiadomo, nie są stuprocentowo obiektywni i kierują się określonym światopoglądem i niestety też uprzedzeniami. A te uprzedzenia trafiają do danych w mniej lub bardziej bezpośredni sposób. 

 

Kwestia przygotowania danych nadających się do trenowania algorytmów uczenia maszynowego to bardzo obszerne zagadnienie. Omówienie możliwych rozwiązań to temat na osobny artykuł. 

 

W takim razie, skoro nie chcemy aby algorytm podejmował decyzje na podstawie płci, wieku czy koloru skóry, to czy nie można po prostu nie podawać tych danych? Takie naiwne podejście, choć wydaje się logiczne, ma jedną dużą lukę. Informacja o tych danych wrażliwych może być (i prawdopodobnie jest) zakodowana w innych, pozornie niepowiązanych informacjach. 

 

Dane historyczne są tworzone przez ludzi, a ludzie niestety kierują się pewnymi uprzedzeniami. Decyzje te przesiąkają przez dane, i nawet jeśli tworząc model uwzględni się, aby na wejściu nie uwzględniał danych o rasie, wieku, płci itp. to może się okazać, że informacje te przedostają się pośrednio poprzez np. informacje o kodzie pocztowym. Można przykładowo użyć sieci Bayesowskich (Bayesian networks) do zwizualizowania wzajemnych połączeń między różnymi cechami. To narzędzie ma na celu wskazanie gdzie mogą ukryte być dane, na podstawie których nie chcielibyśmy podejmować decyzji. [2]

Sądowy system oceny ryzyka w USA

 

Powróćmy do algorytmu wykorzystywanego w systemie karnym USA (system COMPAS). Julia Dressel i Hany Farid [3] spróbowali zbadać działanie tego systemu. Na początku przeprowadzili sondę, w której ankietowani bez żadnego doświadczenia w kryminologii dostali krótki opis dokonanego przestępstwa osoby oskarżonej (w tym jej wiek i płeć, ale nie rasę) i historię jej wcześniejszych oskarżeń, ich celem było przewidzenie, czy dana osoba będzie ponownie karana w ciągu najbliższych dwóch lat. Wyniki przeprowadzonego badania wykazały skuteczność (67%) podobną do systemu wykorzystywanego przez system karny USA (65,2%). Co ciekawe, udział odpowiedzi fałszywie pozytywnych, czyli takich, w których osoby oskarżone zostały przydzielone błędnie do grupy wysokiego ryzyka, był stały bez względu na rasę. Osoby czarnoskóre, zarówno w anonimowej sondzie, jak i według systemu COMPAS, miały większe prawdopodobieństwo bycia zakwalifikowanymi do grupy wyższego ryzyka niż osoby białe. Dla przypomnienia – ankietowani nie posiadali informacji o rasie osób oskarżonych. 

 

Następnie przetestowane zostały inne metody uczenia maszynowego, w tym algorytm regresji logistycznej z dwoma cechami na wejściu – wiek i liczba wcześniejszych oskarżeń. Algorytm ten działa w taki sposób, że na (w tym przypadku) dwuwymiarowej płaszczyźnie (każda oś jest wartością danej cechy) umieszczane są poszczególne pomiary ze zbioru treningowego. Następnie wyznaczana jest prosta oddzielająca przypadki z dwóch różnych kategorii. Zwykle nie jest możliwe idealne wyznaczenie prostej, która by bezbłędnie oddzielała dwie kategorie. Dlatego też wyznacza się prostą, której błąd jest minimalny. W ten sposób uzyskano takie działanie prostej, która dzieli płaszczyznę na dwie kategorie – osoby które w przeciągu dwóch lat zostały oskarżone, i te które nie zostały oskarżone (Rys.1). 

wykres liniowy przedstawiający analizę danych historycznych
Rys.1 Sposób działania algorytmu regresji logistycznej.

Algorytm ten ma skuteczność (66,8%) zbliżoną do systemu COMPAS (65,4%). W tym przypadku również zaobserwowano dużo wyższy odsetek osób czarnych niepoprawnie sklasyfikowanych jako osoby wyższego ryzyka od osób białych. 

 

Jak się okazuje, informacja o rasie może przeniknąć też w danych o ilości zatrzymań [2][3]. Na przykład w USA osoby czarnoskóre są aresztowane za posiadanie narkotyków cztery razy częściej od osób białych [8][9]. 

 

Niedziałające modele

 

Czasami modele po prostu nie działają. 

 

W 2012 roku opublikowano dane systemu oceniającego nowojorskich nauczycieli z lat 2007-2010. System ten dawał nauczycielom ocenę od 1 do 100 rzekomo na podstawie osiągnięć uczniów danego nauczyciela. Gary Rubinstein [4] postanowił przyjrzeć się opublikowanym danym. Zauważył, że w statystykach nauczyciele, którzy zostali objęci programem oceny przez kilka lat, mają osobną ocenę z każdego roku. Wychodząc z założenia, że ocena nauczyciela nie powinna się dramatycznie zmienić z roku na rok, postanowił sprawdzić jak zmieniła się w rzeczywistości. Wykreślił oceny nauczycieli, gdzie na osi X oznaczył ocenę z nauczania pierwszego roku, a na osi Y ocenę z drugiego roku nauczania tej samej klasy. Każda kropka na wykresie reprezentuje jednego nauczyciela (Rys.2).

analiza danych historycznych na wykresie z różowymi kwadratami
Rys.2 Wykres ocen nauczycieli w dwóch następujących po sobie latach. [4]

Logicznym wynikiem byłaby zależność zbliżona do liniowej, bądź inna korelacja, ze względu na to że wyniki tej samej klasy u jednego nauczyciela z roku na rok nie powinien się drastycznie zmienić. Tutaj wykres przypomina bardziej generator liczb losowych, a niektóre klasy oceniane na ocenę bliską 100, następnego roku miały wynik bliski 0 i vice versa. Nie jest to wynik, który powinien zwracać system, na podstawie którego ustalane są płace nauczycieli, czy nawet decyzja czy zwolnić taką osobę. Ponieważ ten system po prostu nie działa. 

 

Podobny problem mają algorytmy rozpoznawania twarzy. Zwykle takie technologie są tworzone w taki sposób, że algorytm uczenia maszynowego analizuje wiele obrazów, które są twarzą, i wiele obrazów które przedstawiają coś innego. System wykrywa wzorce, które są charakterystyczne dla twarzy, które nie występują na innych obrazach. Problem zaczyna się, gdy ktoś ma twarz odbiegającą od tych występujących w zbiorze treningowym. Osoby tworzące taki algorytm powinny postarać się o jak najbardziej różnorodny zbiór treningowy. Niestety okazuje się, że często w zbiorach treningowych jest niedostateczna reprezentacja osób o ciemniejszym kolorze skóry. Zbiory treningowe najczęściej mają dystrybucję koloru skóry podobną do społeczeństwa, z którego są zbierane dane. To znaczy, jeżeli zbiór treningowy składa się na przykład ze zdjęć obywateli USA i Europy, wtedy procentowy udział każdego koloru skóry w zbiorze danych będzie zbliżony do tego w demografii USA i Europy, gdzie przeważają osoby o jasnej karnacji (Rys.3). 

wykres słupkowy przedstawiający dane historyczne z podziałem na rasy
Rys.3 Po lewej: dane ze spisu ludności w USA [6]. Po prawej: procentowy udział ras w ogólnodostępnych zbiorach danych [7].

Na uniwersytecie MIT [5] zbadano dokładność algorytmów rozpoznawania twarzy z uwzględnieniem podziału na płeć i kolor skóry. Okazało się, że technologie najpopularniejszych firm, takich jak Amazon czy IBM, nie radzą sobie z rozpoznawaniem kobiet o ciemnym kolorze skóry (rys.4). W sytuacji, gdy technologie te używane są w produktach wykorzystujących technologię rozpoznawania twarzy, pojawia się problem dostępności i bezpieczeństwa. Jeśli dokładność działania jest niska nawet dla jednej określonej grupy odbiorców, istnieje duże ryzyko uzyskania dostępu do np. telefonu przez osobę do tego nieupoważnioną. W czasach kiedy technologie rozpoznawania twarzy wykorzystywane są przez policję w kamerach monitoringu, istnieje duże ryzyko, że niewinne osoby zostaną błędnie rozpoznane jako osoby poszukiwane. Takie sytuacje już miały wielokrotnie miejsce. A wszystko przez niepoprawnie działający algorytm, który dość łatwo można by naprawić poprzez odpowiednie dobranie danych uczących. 

wykres słupkowy przedstawiający dane historyczne z podziałem na przedsiębiorstwa
Rys.4 Zbadana dokładność technologii rozpoznawania twarzy. [5]

Po opublikowaniu badania MIT większość firm poprawiła działanie swoich algorytmów, dzięki czemu dysproporcje w rozpoznawaniu twarzy są znikome. 

 

Inkluzywny kod

 

Nie możemy być w stu procentach ufni algorytmom uczenia maszynowego i big data. Zwłaszcza jeśli w grę wchodzi decydowanie o ludzkim losie. 

Jeśli chcemy tworzyć narzędzia, które są skuteczne, i nie uczą się uprzedzeń ludzkich, należy zejść do poziomu danych. Trzeba analizować wzajemne zależności atrybutów, które mogą wskazywać na rasę, płeć, czy wiek. Selekcjonować te, które są naprawdę niezbędne do poprawnego działania algorytmu. Następnie konieczna jest analiza samego działania algorytmu i jego wyników, aby zapewnić, że algorytm jest w istocie obiektywny. 

Modele uczenia maszynowego uczą się poszukując wzorców i odtwarzając je. Jeśli podajemy nieprzefiltrowane dane historyczne, nie tworzymy tak naprawdę nowych, skuteczniejszych narzędzi, tylko automatyzujemy status quo. A gdy w grę wchodzi ludzki los, my, jako developerzy, nie możemy pozwolić sobie na powtarzanie starych błędów.

 

Bibliografia

Grać jak z nut – cz.3

W drugiej części artykułu stworzyliśmy harmonię utworu. Potrzebujemy teraz jakiejś dobrej melodii, która będzie do tej harmonii pasować. Melodie składają się z motywów, czyli małych fragmentów ok. 2-5 nutowych oraz ich wariacji (czyli przekształceń). Zaczniemy od wygenerowania pierwszego motywu – jego rytmu i dźwięków. Podobnie jak w przypadku generowaniu harmonii, skorzystamy ze statystyk, N-gramów, wyznaczonych na utworach muzycznych. Do przygotowania takich statystyk wykorzystamy bazę Essen Folksong Collection. Równie dobrze można skorzystać z dowolnej innej bazy melodii, taki wybór bazy będzie rzutować na to, jakiego rodzaju melodie będą generowane. Z każdego utworu trzeba wyodrębnić melodię, zamienić ją na ciąg wartości rytmicznych oraz ciąg dźwięków, a z tych  ciągów wyciągnąć statystyki. Przy tworzeniu statystyk dźwięków warto melodie najpierw  w pewien sposób przygotować –  przetransponować je wszystkie do dwóch tonacji, np. C-dur i c-moll. Zmniejszy to liczbę możliwych (prawdopodobnych) N-gramów 12-krotnie, a dzięki temu statystyki będą lepiej oszacowane.

Dobry motyw

Stworzenie pierwszego motywu zaczniemy od wygenerowania jego rytmu. Przypomnę tutaj, że przyjęliśmy wcześniej pewne uproszczenie – każdy z motywów i ich wariacji będzie trwać dokładnie jeden takt. Kolejne kroki generowania rytmu motywu: – losujemy pierwszą wartość rytmiczną z użyciem unigramów, – losujemy kolejną wartość rytmiczną z użyciem bigramów i unigramów – kontynuujemy losowanie kolejnych wartości rytmicznych, z użyciem N-gramów co raz wyższych rzędów (aż do 5-gramów), – przerywamy aż osiągniemy sumaryczną wartość rytmiczną równą długości jednego taktu – jeśli przekroczyliśmy długość 1 taktu, zaczynamy cały proces od początku (takie generowanie jest to na tyle szybkie, że możemy sobie pozwolić na taką niezbyt optymalną metodę prób i błędów).

Następny etap to wygenerowanie dźwięków motywu. Kolejnym uproszczeniem jakie wcześniej przyjęliśmy jest to, że generujemy utwory tylko w tonacji C-dur, dlatego skorzystamy ze statystyk N-gramów stworzonych na utworach przetransponowanych do tej tonacji, z wyłączeniem utworów w tonacjach molowych. Schemat działania jest podobny do tego przy generowaniu rytmu: – losujemy pierwszy dźwięk z użyciem unigramów, – losujemy kolejny dźwięk z użyciem bigramów i unigramów, – kontynuujemy aż wylosujemy tyle dźwięków, ile wylosowaliśmy wcześniej wartości rytmicznych – sprawdzamy, czy motyw pasuje do harmonii, jeśli nie to wracamy zaczynamy od początku – jeśli po ok. 100 próbach nie udało się wygenerować motywu pasującego do harmonii, to może oznaczać, że przy zadanej harmonii i zadanym rytmie jest bardzo małe prawdopodobieństwo wylosowania dźwięków, które będą pasować do harmonii. W takim przypadku cofamy się i generujemy nowy rytm motywu.

Generuj do skutku

Zarówno przy generowaniu rytmu motywu jak i generowaniu jego dźwięków stosujemy metodę prób i błędów. Będziemy ją też stosować w opisanym niżej generowaniu wariacji motywów. Choć taki sposób może się to wydawać “głupi”, to jest prosty i działa. Pomimo iż bardzo często takie losowo wygenerowane motywy nie pasują do harmonii, to możemy sobie pozwolić na wiele takich pomyłek. Nawet 1000 prób zajmuje krótki czas obliczeń na dzisiejszych komputerach, a wystarczy by znaleźć odpowiedni motyw.

Wariacje z powtórzeniami

Mamy pierwszy motyw, a następnie potrzebujemy dalszego ciągu melodii. Nie będziemy jednak cały czas generować nowych motywów, ponieważ utwór stałby się chaotyczny. Nie możemy także ciągle powtarzać tego samego motywu, ponieważ utwór stałby się zbyt nudny. Rozsądną drogą będzie oprócz powtórzeń motywów stworzyć także modyfikację tego motywu co zapewni zróżnicowanie, ale nie uczyni utworu chaotycznym.

Istnieje wiele metod tworzenia wariacji motywu. Jedną z nich jest transpozycja chromatyczna. Polega ona na tym, że wszystkie nuty transponowane są w górę lub dół o ten sam interwał. W takim przypadku zdarza się, że wariacja motywu posiada dźwięki spoza tonacji utworu. To z kolei powoduje, że szansa na to, że wariacja będzie pasować do harmonii jest bardzo mała. Kolejnym sposobem jest transpozycja diatoniczna, gdzie wszystkie nuty są transponowane o tę samą liczbę stopni skali. W przeciwieństwie do poprzedniej metody, wariacje diatoniczne nie posiadają dźwięków spoza tonacji.

Następnym sposobem jest zmiana jednego interwału – zmieniamy wtedy jeden z interwałów motywu pozostawiając wszystkie pozostałe interwały niezmienione. W ten sposób jedna część motywu (początek lub koniec) transponujemy (transpozycją chromatyczną lub diatoniczną). Inne metody to zamiana dwóch nut o tej samej wartości rytmicznej na jedną oraz zamiana jednej nuty na dwie nuty o tej samej wartości rytmicznej. W przypadku pierwszej metody, jeśli motyw posiada dwie nuty o tej samej wartości rytmicznej to możemy zmienić jego rytm i połączyć dwie takie nuty. W przypadku drugiej metody w sposób losowy wybieramy nutę, która zamieniamy na dwie „krótsze”.

Dzięki każdemu z opisanych sposobów tworzenia wariacji można wygenerować różne motywy. Wymienione metody nie są jedynymi obowiązującymi. Można ich wymyślić znacznie więcej. Jedyną zasadą ograniczającą w tym procesie jest to by wygenerowane wariacje nie różniły się za bardzo od oryginalnego motywu. W przeciwnym wypadku to już nie będzie wariacja tylko nowy motyw. Granica pomiędzy tym gdzie kończy się wariacja, a gdzie zaczyna już inny motyw jest umowna.

Itp. itd.

Metod do tworzenia wariacji motywów jest o wiele więcej, wymyślić można ich mnóstwo. Jedyne co nas ogranicza, to zasada, by wygenerowane wariacje nie różniły się za bardzo od oryginalnego motywu. W przeciwnym wypadku to już nie będzie wariacja, tylko nowy motyw. Granica pomiędzy tym gdzie kończy się wariacja a gdzie zaczyna już inny motyw jest raczej umowna i każdy trochę inaczej ją “czuje”, definiuje.

Czy to już koniec?

No to tyle jeśli chodzi o generowanie utworów. Podsumujmy więc kroki jakie przedsięwzięliśmy:

  1. Generacja harmonii utworu:
    • generacja rytmu harmonicznego,
    • generacja progresji akordów.
  2. Generacja melodii:
    • generowanie rytmu motywu,
    • generowanie dźwięków motywu,
    • tworzenie wariacji motywów,
    • tworzenie motywów i wariacji “aż do skutku”, czyli aż będą dopasowane do wygenerowanej harmonii

Pozostało nam jeszcze sprawienie by wygenerowane utwory miały zadaną, tj. dopasowaną do umiejętności grającego, trudność.

Sterowanie trudnością

Jednym z naszych założeń była możliwość sterowania trudnością utworu. Możemy to uzyskać dzięki dwóm podejściom:

  1. generowaniu utworów „jak leci” i sprawdzanie ich poziomów trudności (wg sposobów opisanych wcześniej); przygotowaniu w ten sposób dużej bazy utworów, z której następnie zostaną wybrane losowe utwory o zadanej trudności,
  2. sterowaniu parametrami tworzenia harmonii, motywów i wariacji tak by częściej generowały elementy muzyczne o zadanej trudności

Oba sposoby nie wykluczają się wzajemnie, dlatego możemy z powodzeniem stosować je razem. W pierwszej kolejności należy wygenerować losowo np. 1000 utworów, a następnie sterować parametrami tak by wytworzyć kolejne (ale tylko takie jakich nam brakuje). Odnośnie sterowania parametrami warto zaznaczyć, że można zmieniać prawdopodobieństwo powtórzenia się motywu. Dla utworów o zadanym niskim poziomie trudności nadane prawdopodobieństwo będzie większe (powtórzenia gra się łatwiej). Trudne utwory z kolei będą miały nadane większe prawdopodobieństwo oraz rzadziej spotykane harmonie (które wymuszą także rzadziej spotykane motywy i wariacje).

Grać jak z nut – cz. 2

W pierwszej części artykułu poznaliśmy bardzo dużo pojęć muzycznych i technicznych. Teraz czas je wykorzystać do zbudowania automatycznego kompozytora. Zanim jednak do tego przystąpimy, musimy przyjąć pewne założenia (a raczej uproszczenia):

  • utwory będą się składały z 8 taktów w budowie okresowej (poprzednik 4 takty, następnik 4 takty)
  • metrum będzie 4/4 (czyli 4 ćwierćnuty na takt, akcent na pierwszą i trzecią miarę taktu)
  • długość każdego motywu wynosi 1 takt (mimo że to wymaganie wydaje się restrykcyjne, jednak wiele popularnych utworów jest zbudowanych właśnie z motywów, które trwają 1 takt).
  • stosowana będzie tylko tonacja C-dur (w razie potrzeby zawsze można po wygenerowaniu utworu przetransponować go do dowolnej tonacji)
  • ograniczymy się do ok. 25 najczęściej stosowanych odmian stopni harmonicznych (stopni jest 7, ale część z nich ma kilka wersji, z dodatkowymi dźwiękami, które zmieniają barwę akordu).

Co jest potrzebne do stworzenia utworu?

Do stworzenia w automatyczny sposób prostego utworu muzycznego potrzebne nam jest:

  • wygenerowanie harmonii utworu – akordów i ich rytmu
  • stworzenie motywów – ich dźwięków (wysokości) i rytmu
  • stworzenie wariacji tych motywów – j.w.
  • połączenia motywów i wariacji w melodię, dopasowując je do harmonii

Po opanowaniu podstaw możemy przejść do pierwszej części automatycznego komponowania – generowania harmonii. Zacznijmy od stworzenia rytmu harmonii.

Wolny rytm

Choć można by się pokusić o stworzenie statystycznego modelu rytmu harmonicznego, to, niestety, (przynajmniej w chwili pisania tego artykułu) nie ma dostępnej bazy, która by to umożliwiła. Wobec powyższego, musimy poradzić sobie w inny sposób – sami wymyślmy taki model. W tym celu wybierzmy kilka “sensownych” rytmów harmonicznych i zadamy im jakieś “sensowne” prawdopodobieństwa.

rytmprawdopodobieństworytmprawdopodobieństwo
[8]0.2[2,2]0.1
[6, 2]0.1[2,1,1]0.02
[2, 6]0.1[3,1]0.02
[7, 1]0.02[1,1,1,1]0.02
[4]0.4[1,1,2]0.02
Tab1. Rytmy harmoniczne, wartości wyrażane w ćwierćnutach – [6, 2] oznacza rytm, w którym są dwa akordy, pierwszy trwa 6 ćwierćnut, a drugi 2 ćwierćnuty.


Rytmy w tabeli przedstawione są w postaci tego, jak długo akordy będą trwały, a długość trwania przedstawiona jest w liczbie ćwierćnut. Niektóre rytmy trwają dwa takty (np. [8], [6, 2]), a pozostałe jeden takt ([4], [1, 1, 2] itd.).

Generowanie rytmu harmonii przebiega w następujący sposób. Losujemy kolejne rytmy aż do momentu, gdy otrzymamy tyle taktów, ile potrzebowaliśmy (w naszym przypadku 8). Ze względu na to, że rytmy mają różną długość, czasami mogą wyniknąć z tego pewne komplikacje. Przykładowo, może zaistnieć taka sytuacja, że do zakończenia generacji będzie potrzebny ostatni rytm o długości 4 ćwierćnut, a my natomiast wylosujemy rytm o długości 8. W takim przypadku, aby uniknąć niepotrzebnych problemów, można wymusić losowanie z podzbioru rytmów o długości 4 ćwierćnut.

W takim razie, zgodnie z powyższymi ustaleniami, załóżmy, że wylosowaliśmy następujące rytmy:

  • poprzednik: [4, 4], [2, 2], [3, 1], 
  • następnik: [3, 1], [8], [2, 2]

Likelihood

W kolejnym kroku będziemy wykorzystywali pojęcie likelihood. Jest to nieznormalizowane do jedynki prawdopodobieństwo (tzw. pseudo-prawdopodobieństwo), które pomaga ocenić względny poziom prawdopodobieństwa różnych zdarzeń. Dla przykładu, jeżeli likelihoody zdarzeń A i B wynoszą odpowiednio 10 oraz 20, to oznacza, że zdarzenie B jest dwa razy bardziej prawdopodobne od zdarzenia A. Równie dobrze mogłyby te likelihoody wynosić 1 oraz 2, albo 0.005 oraz 0.01. Z likelihoodów można policzyć prawdopodobieństwo. Jeśli założymy, że jedynie zdarzenia A i B mogą wystąpić, to ich prawdopodobieństwa będą wynosić odpowiednio:

Obrazek posiada pusty atrybut alt; plik o nazwie Zasob-1.svg

Progresje akordów

Aby wygenerować prawdopodobne przebiegi harmoniczne najpierw przygotujemy sobie modele N-gramowe stopni harmonicznych. W tym celu skorzystamy z modeli n-gramów udostępnionych na githubie (https://github.com/DataStrategist/Musical-chord-progressions).

Nasz przykładzie będzie wykorzystywać 1-, 2-, 3-, 4- i 5-gramy.

W rytmie harmonii poprzednika jest 6 wartości rytmicznych, więc musimy przygotować przebieg 6 stopni harmonicznych. Pierwszy akord generujemy z użyciem unigramów (1-gramów). Przygotowujemy sobie zatem najpierw likelihoody dla każdego możliwego stopnia, a następnie losujemy z uwzględnieniem tych likelihoodów. Wzór na likelihood jest w tym przypadku dość prosty:

likelihoodX=p(X)

gdzie
X oznacza dowolny stopień harmoniczny
p(X) to prawdopodobieństwo 1-gramu X

My w tym przypadku wylosowaliśmy IV stopień (w tej tonacji F-dur).

Drugi akord generujemy z użyciem bigramów oraz unigramów, z wagą większą dla bigramów:

likelihoodX=waga2gramp(X v IV)+waga1gram*p(X)

gdzie:

  • p(X v IV) to prawdopodobieństwo przebiegu (IV, X)
  • wagaNgram to przyjęta waga N-gramu (im większa tym większy wpływ tego modelu n-gramowego, a mniejszy wpływ innych modeli)

Wagi n-gramów możemy przyjąć takie, jakie chcemy. Na potrzeby przykładu wybraliśmy takie:

n-gram12345
waga0.0010.010.115

Kolejny akord jaki wylosowaliśmy to: vi stopień (a-moll).

Generowanie trzeciego akordu przebiega podobnie, z tym że możemy już wykorzystać 3-gramy:

likelihoodX=waga3gramp(X v IV, vi)+waga2gramp(X v IV)+waga1gram*p(X)

I tak kontynuujemy, aż wygenerujemy wszystkie potrzebne akordy. W naszym przypadku wylosowaliśmy:

IV,  vi, I, iii, IV, vi (w przyjętej tonacji C-dur to są kolejno akordy F-dur, a-moll, C-dur, e-moll, F-dur, a-moll)

Nie jest to jakiś bardzo często spotykany przebieg akordów, ale jak się okazuje występuje w 5 popularnych piosenkach (https://www.hooktheory.com/trends#node=4.6.1.3.4.6&key=rel)

Podsumowanie

Udało nam się wygenerować rytmy i akordy, które są składowymi harmonii utworu. Należy tutaj jednak zwrócić jeszcze uwagę, że dla uproszczenia, nie wzięliśmy pod uwagę dwóch ważnych czynników:

  • Przebiegi harmoniczne poprzednika i następnika są bardzo często w jakiś sposób powiązane. Harmonia następnika może być identyczna do tej poprzednika lub ewentualnie lekko zmieniona, aby sprawiać wrażenie, że te dwa zdania są ze sobą w jakiś sposób powiązane.
  • Poprzednik i następnik kończą się prawie zawsze na konkretnych stopniach harmonicznych. Nie jest to ścisła reguła, ale niektóre stopnie harmoniczne są o wiele bardziej prawdopodobne od innych na końcach zdań muzycznych.

Na potrzeby przykładu można jednak uznać zadanie za zakończone. Harmonię utworu mamy już gotową, teraz należy jedynie stworzyć melodię do tej harmonii. W trzeciej części naszego artykułu można dowiedzieć się, jak właśnie taką melodię skomponować.

Grać jak z nut – cz. 1

Muzycy w czasie swojej edukacji muszą posiąść umiejętność gry a vista – grania nowego dla nich utworu muzycznego, bez wcześniejszego dokładnego zapoznania się z nim. Dzięki temu wirtuozi nie tylko mogą grać bez przygotowania większość utworów, ale też potrzebują dużo mniej czasu na zapoznanie się z bardziej wymagającymi kompozycjami. Do ćwiczeń gry a vista potrzebne jest jednak sporo utworów. Powinny być to raczej mało znane utwory i dopasowane do umiejętności danego muzyka poziomie trudności. Przyszły wirtuoz musi więc poświęcić sporo swojego (i nauczyciela) czasu na przygotowanie takiej playlisty, co dodatkowo demotywuje do nauki. Co gorsza, raz wykorzystana playlista nie jest już do niczego potrzebna.

Tranzystorowy kompozytor

A co gdyby było coś, co samo przygotowuje te utwory, w pełni zautomatyzowany sposób? Nie tylko samo je tworzy, ale też dopasowuje poziom trudności do umiejętności muzyka. Tak powstał pomysł na stworzenie automatycznego kompozytora – programu komputerowego komponującego utwory muzyczne za pomocą sztucznej inteligencji, która w ostatnim czasie nabiera dużego rozgłosu.

Słowo „komponowanie” może jest tu użyte trochę na wyrost, bardziej pasuje „generowanie”. Choć w sumie, kompozytorzy też tworzą kompozycje w oparciu o swoje własne algorytmy. Semantyka na bok, ważne, że stworzenie takiego (prostego póki co) programu się udało i początkujący muzycy mogliby z niego skorzystać.

Zanim jednak przejdziemy do tego, jak generować utwory muzyczne musimy najpierw poznać podstawy, dowiedzieć się jak zbudowane są utwory, a także od czego zależy ich trudność.

Muzyczne ABC

Interwał, półton, akord, takt, metrum, skala muzyczna, tonacje utworu to podstawowe pojęcia w muzycznym ABC. Interwał to wielkość opisująca odległość pomiędzy dwoma kolejnymi dźwiękami melodii. Chociaż jej jednostką jest półton, to zazwyczaj używa się nazw konkretnych interwałów. Z kolei półton to najmniejsza przyjęta różnica pomiędzy wysokościami dźwięków (ok. 5%). Oczywiście różnice te mogą być nieskończenie małe, po prostu taki podział interwałów przyjął się jako standard. Akord to trzy lub więcej dźwięków granych jednocześnie. Następnym pojęciem jest takt, czyli to co znajduje się pomiędzy pionowymi kreskami na pięciolinii. Czasami utwór zaczyna się niepełnym taktem (przedtaktem).

Wizualizacja przedtaktu
Rys. 1 Wizualizacja przedtaktu

Metrum – określenie to odnosi się do tego, ile wartości rytmicznych znajduje się w jednym takcie. W metrum 4/4 w jednym takcie powinny się znaleźć cztery ćwierćnuty. W metrum 3/4 – trzy ćwierćnuty, w metrum 6/8 sześć ósemek. Chociaż 3/4 oraz 6/8 oznaczają taką samą liczbę wartości rytmicznych, to metra te są inne, akcenty w nich przypadają na inne miejsca w takcie. W metrum 3/4 akcent przypada na pierwszą ćwierćnutę (poprawnie mówi się „na pierwszą miarę taktu”). Natomiast w metrum 6/8 akcent przypada na pierwszą i czwartą miarę taktu.

Skala muzyczna to zbiór dźwięków, które określają materiał dźwiękowy, z jakiego utwory muzyczne korzystają. Skale są uporządkowane, zazwyczaj przedstawia się je zgodnie z rosnącą wysokością dźwięków. Najbardziej popularnymi skalami są durowa i molowa. Skal muzycznych jest o wiele więcej, jednak w zachodnim kręgu kulturowym te dwie skale są dominujące. Wykorzystywane były w większości starszych oraz obecnie popularnych utworach. Kolejne pojęcie to tonacja utworu, czyli określenie z jakich dźwięków utwory korzystają. Skala vs. tonacja – skala jest bardziej szerokim określeniem, jest wiele tonacji o danej skali, ale dana tonacja posiada swoją skalę. Tonacja określa od jakiego dźwięku zaczyna się skala.

Budowa utworu muzycznego

W muzyce klasycznej najbardziej popularną zasadą kształtowania utworu muzycznego jest budowa okresowa. Kompozycje budowane są z pewnych elementów – okresów, stanowiących odrębną całość. By jednak zrozumieć, czym one są należy wprowadzić kilka innych pojęć.

Motyw jest to ciąg kilku nut, powtarzających się w tej samej lub nieco odmienionej postaci (wariacja) w innych miejscach utworu. Zazwyczaj czas trwania motywu jest równy długości jednego taktu.

Wariacją motywu nazywamy zmienioną w jakiś sposób formę motywu, zachowującą jednak większość jego właściwości, jak np. rytm bądź charakterystyczny interwał. W utworach muzycznych nie ma bardzo dużej liczby motywów. Większość utworu stanowią wariacje motywów. Dzięki temu utwór ma tak jakby swój charakter i nie zaskakuje słuchacza co raz to nowym materiałem muzycznym.

Muzyczny temat jest to zazwyczaj ciąg 2-3 motywów, które powtarzają się (ewentualnie w nieco zmienionych wersjach) przez cały utwór. Nie każdy utwór musi posiadać swój temat.

Zdanie muzyczne jest to dwie lub więcej fraz.

Okresem muzycznym określamy połączenie dwóch zdań muzycznych. Poniżej przedstawiono prosty okres mały z zaznaczonymi podstawowymi elementami.

Schemat budowy okresowej utworu muzycznego
Rys. 2 Schemat budowy okresowej utworu muzycznego

Tak w uproszczeniu wygląda budowa okresowa. Kilka nut tworzy motywy, kilka motywów frazę, kilka fraz zdanie, kilka zdań okres i w końcu – jeden lub kilka okresów cały utwór muzyczny. Istnieją również alternatywne metody tworzenia utworów muzycznych. Jednakże budowa okresowa jest najbardziej rozpowszechniona, a co ważne w tym przypadku – łatwiejsza do zaprogramowania.

Komponowanie w harmonii

Zazwyczaj kompozycje oparte są na przebiegach harmonicznych – akordach, które mają swoją własną „melodię” i swój własny rytm. Kolejne akordy w przebiegach harmonicznych nie są zupełnie przypadkowe. Na przykład, po akordach F-dur i G-dur bardzo prawdopodobne jest, że następnym akordem będzie C-dur. Mniej prawdopodobne będzie natomiast to, że będzie to e-moll, a zupełnie nieprawdopodobne, by był to Dis-dur. Istnieją pewne reguły rządzące tymi zależnościami między akordami. Nie musimy się jednak w nie bardziej zagłębiać, gdyż będziemy stosować modele statystyczne do generowania harmonii utworów.

Musimy za to zrozumieć, co to są stopnie harmoniczne. Tonacje posiadają kilka ważnych akordów, trójdźwięków. Ich podstawowy dźwięk, prymą są kolejne dźwięki danej tonacji. Pozostałe dźwięki należą do tej tonacji, np. pierwszym stopniem tonacji C-dur jest akord C-dur, drugim stopniem akord d-moll, trzecim e-moll, itd. Stopnie harmoniczne oznaczane są rzymskimi literami, akordy durowe oznaczane są zazwyczaj dużymi literami, a molowe małymi (podstawowe stopnie skali durowej: I, ii, iii, IV, V, vi,VII).

Stopnie harmoniczne są takimi „uniwersalnymi” akordami, niezależnie od jakiego dźwięku zaczyna się tonacja, prawdopodobieństwa kolejnych stopni harmonicznych są takie same. W tonacji C-dur ciąg akordów: C – F – G – C jest tak samo prawdopodobny jak w tonacji G-dur przebieg: G – C – D – G. W tym przykładzie został przedstawiony jeden z najczęściej stosowanych w muzyce przebiegów harmonicznych, wyrażony w stopniach: I – IV – V – I.

Dźwięki melodii nie są zupełnie dowolne, jest wiele reguł i wyjątków, które nimi rządzą. Przykład reguły i wyjątku w tworzeniu harmonii:

  • reguła: na każdą miarę taktu powinien wystąpić dźwięk należący do danego akordu,
  • wyjątek: czasami na daną miarę taktu używa się innych dźwięków, nienależących do tego akordu, lecz po których stosunkowo szybko występuje nuta tego akordu.

Te reguły i wyjątki w harmonii nie muszą być ściśle przestrzegane. Jeśli jednak będziemy się do nich stosować, to istnieje dużo większa szansa, że komponowana przez nas muzyka będzie dobrze, naturalnie brzmieć.

Od czego zależy trudność utworu muzycznego

Jest kilka czynników, które wpływają na trudność utworu:

  • szybkość- generalnie, niezależnie od instrumentu im szybciej, tym trudniej (szczególnie w kontekście gry a vista)
  • dynamika melodii – melodia składająca się z dwóch dźwięków będzie prostsza do zagrania niż taka, która wykorzystuje wiele różnych dźwięków
  • trudność rytmiczna – im bardziej złożony rytm, tym trudniej. Im więcej synkop, trioli, legowanych nut itp. „urozmaiceń” rytmicznych, tym trudniej
  • powtarzalność – nieważne jak trudna melodia, jeśli jej fragmenty się powtarzają, to gra się ją dużo łatwiej, niż taką, która cały czas się zmienia. Jeszcze gorzej jeśli się powtarza, ale w nieco zmieniony, można by rzec „podchwytliwy” sposób (gdy zmiana melodii jest łatwa do przeoczenia)
  • trudności związane z zapisem nutowym – im więcej dodatkowych znaków chromatycznych (bemoli, krzyżyków, kasowników) tym trudniej
  • trudności związane z danym instrumentem – niektóre przebiegi melodyczne mogą mieć diametralnie różne poziomy trudności na różnych instrumentach np. dwudźwięki na pianinie lub gitarze są znacznie prostsze do zagrania niż dwudźwięki na skrzypcach

Niektóre tonacje są trudniejsze od innych, bo posiadają więcej znaków przykluczowych, o których trzeba pamiętać.

Techniczne strony zagadnienia

Muzyczną stronę staraliśmy się nakreślić w poprzednich akapitach natomiast teraz skupimy się na stronie technicznej. Aby dobrze w nią wejść potrzebne jest zagłębienie się w zagadnienie „prawdopodobieństwa warunkowego”. Na początek przykład.

Załóżmy, że nie wiemy gdzie jesteśmy ani nie znamy dzisiejszej daty. Jakie jest prawdopodobieństwo, że jutro zacznie padać śnieg? Zapewne dosyć małe (w większości miejsc na ziemi śnieg nigdy lub prawie nigdy nie pada) więc oszacujemy je na jakieś 2%. Dowiedzieliśmy się jednak, że znajdujemy się w Laponii. Jest to kraina tuż za północnym kołem podbiegunowym. Jak teraz określimy prawdopodobieństwo tego, że jutro spadnie śnieg? Otóż będzie ono dużo wyższe niż przed chwilą. Niestety, dalej taka informacja nie rozwiązuje naszej zagadki, ponieważ nie znamy pory roku jaka obecnie panuje. W związku z tym określimy nasze prawdopodobieństwo na 10%. Kolejną informacją jaką otrzymaliśmy jest to, że jest środek lipca, lato w pełni. Biorąc pod uwagę najnowsze informacje możemy określić prawdopodobieństwo tego, że jutro spadnie śnieg określimy na 0,1%.

Prawdopodobieństwo warunkowe

Z historii powyżej bardzo prosto wysnuć jeden wniosek. Prawdopodobieństwo zależało od stanu naszej wiedzy i zmieniało się na jej podstawie w różne strony. W ten sposób działają prawdopodobieństwa warunkowe, oznaczane w następujący sposób:

P(A|B)

Informują nas o tym, jakie jest prawdopodobieństwo wystąpienia zdarzenia (tutaj A), jeśli wystąpiły jakieś inne zdarzenia (tutaj B). „Zdarzenie” nie musi oznaczać jakiegoś wydarzenia, incydentu – może to być jak w naszym przykładzie dowolny warunek, informacja.

Aby obliczyć prawdopodobieństwo warunkowe musimy wiedzieć, jak często występuje zdarzenie B i jak często występują oba zdarzenia – A i B jednocześnie. Lepiej to zrozumiemy wracając do naszego przykładu. Zakładając, że A to padający śnieg, a B to znajdowanie się w Laponii, to prawdopodobieństwo, że śnieg padać będzie w Laponii jest równe:

wzór na prawdopodobieństwo, że śnieg będzie padać w Laponii

To samo równanie, wyrażone bardziej formalnie i zgodnie z przyjętymi symbolami A i B, będzie wyglądało następująco:

To nie jest to samo, co prawdopodobieństwo tego, że będzie padało w Laponii. Może częściej jeździmy do Laponii zimą i jak już jesteśmy w Laponii, to bardzo prawdopodobne, że będzie padał śnieg?

Aby teraz policzyć dokładnie, ile wynosi to prawdopodobieństwo, potrzebne nam są dwie statystyki:

  • NA∩B ile razy, gdy byliśmy w Laponii, padało,
  • NB ile razy byliśmy w Laponii,

oraz to ile dni do tej pory przeżyliśmy (albo ile dni upłynęło od kiedy zaczęliśmy prowadzić powyższe statystyki):

  • NTOTAL.

Te dane posłużą nam do policzenia odpowiednio P(A∩B) i P(B):

W końcu mamy to, czego oczekiwaliśmy:

Czyli prawdopodobieństwo, że będzie padało, jeżeli znajdujemy się w Laponii jest równe stosunkowi tego ile razy, gdy byliśmy w Laponii padało, do tego jak wiele razy byliśmy w Laponii. Warto też dodać, że im częściej bywaliśmy w Laponii, tym to prawdopodobieństwo będzie dokładniejsze (jeżeli byliśmy 1000 dni w Laponii to będziemy mieli lepsze rozeznanie, niż jeżeli byliśmy tam 3 razy).

N-gramy

Kolejną rzeczą, jaką musimy poznać przed przystąpieniem do algorytmicznego komponowania są N-gramy, jak je stworzyć i jak z nich korzystać do generowania prawdopodobnych sekwencji danych. N-gramy są to modele statystyczne. Jeden N-gram to ciąg elementów o długości równej N. Występują 1-gramy, 2-gramy, 3-gramy, itd. Modele te są często wykorzystywane przy modelowaniu języka. Pozwalają określić, jakie jest prawdopodobieństwo wystąpienia ciągu słów. Bierze się korpus języka (mnóstwo książek, gazet, stron internetowych, forum, itp.) i na podstawie niego zlicza, ile razy wystąpił dany ciąg słów. Na przykład jeśli w zbiorze wystąpił 1000 razy ciąg „zamek królewski”, a tylko 10 razy ciąg „zamek błyskawiczny”, to oznacza, że pierwszy ciąg jest 100 razy bardziej prawdopodobny od drugiego. Takie informacje mogą nam się przydać. Dzięki nim możemy określić, jak prawdopodobne jest każde zdanie.