Ile masz lat? To pytanie potrafi doprowadzić do bólu głowy.
fot. pxhere.com

Ile masz lat? 18, a może 28? Inteligentny algorytm ci podpowie

Wiek bywa tematem tabu. Pytanie: „ile masz lat?” może sprawić niemałe towrzyskie kłopoty. Być może niebawem nie będzie potrzeby zadawać tak trudnych pytań, ponieważ inteligentny algorytm od naukowców z Uniwersytetu z Bochum jest w stanie zrobić to bardzo dokładnie. Co ciekawe naukowcy nie do końca wiedza jak działa ich algorytm.

Neuroinformatyka – słyszałeś o czymś takim?

Według definicji znalezionej na Wikipedii neuroinformatyka jest to:

interdyscyplinarna dziedzina badawcza poświęcona przetwarzaniu i przepływie informacji w systemie nerwowym w celu zastosowania ich w systemach technicznych.

To bardzo okrojona definicja, ale pozwala wyobrazić sobie do czego dąży ta dziedzina nauki. Metodolodzy wytypowali także trzy główne nurty w neuroinformatyce. Należy do nich:

  • tworzenie komputerowych modeli systemu nerwowego i procesów neurologicznych,
  • tworzenie narzędzi do analizy i modelowania danych,
  • tworzenie narzędzi służących do zarządzania i dzielenia się danymi.

To, że naukowcy inspirują się naturą, nie jest niczym nowym. Od dawna także cały naukowy świat próbuje odtworzyć sposób funkcjonowania człowieka we wszelakich maszynach. Oby tylko ostatecznym celem nie było stworzenie Terminatora.

Funkcjonowanie np. mózgu wciąż pozostaje tajemnicą, ale ludzie już się na nim wzorują przy tworzeniu maszyn.
Funkcjonowanie np. mózgu wciąż pozostaje tajemnicą, ale ludzie już się na nim wzorują przy tworzeniu maszyn. | lifewire.com

Jak sama nazwa tej dziedziny nauki wskazuje, programiści i informatycy starają się odtworzyć model funkcjonowania ludzkiego systemu nerwowego, który bierze udział m.in. w analizowaniu otaczającego nas świata. Jest to szalenie trudne, ponieważ w naszym organizmie za nawet najbardziej błahe czynności odpowiadają niezliczone ilości komórek, które pozostają ze sobą w niezwykle złożonych relacjach funkcjonalnych i strukturalnych. Mimo to stworzono już takie algorytmy, które w jakiejś części odpowiadają temu, jak funkcjonuje układ nerwowy człowieka. Nawet nazwa zbioru takich algorytmów jest wymowna, bo określa się je jako sieć neuronowa. Na naszych łamach trochę już o nich było. Warto spojrzeć do wpisów o procesorach sieci neuronowych od Tomka i GAN, czyli uczeniu komputerów kreatywnego myślenia od Huberta.

Sieć neuronowa w badaniu wieku

Sieć neuronowa została stworzona na wzór funkcjonowania układu nerwowego człowieka.
Sieć neuronowa została stworzona na wzór funkcjonowania układu nerwowego człowieka. | fot. pxhere.com

Ze zdobyczy łączenia wiedzy o organizmie człowieka i budowania skomplikowanych algorytmów skorzystali naukowcy z Ruhr-Universität Bochum. Algorytm opracowany przez inżynierów z Bochum szacuje wiek i pochodzenie etniczne dokładnie w ten sam sposób jak robią to ludzie. Zanim pokrótce napiszę co też wymyślili naukowcy, przytoczę zaskakujące stwierdzenie profesor Laurenza Wiskotta z Institute for Neural Computation z Ruhr-Universität Bochum. Powiedział on:

Nie jesteśmy do końca pewni, jakich funkcji szuka nasz algorytm.

To dość kuriozalna sytuacja, bo już mamy problem ze zrozumieniem sztucznych sieci neuronowych, a przecież wciąż wiele pytań pozostaje bez odpowiedzi, jeśli chodzi o sposób funkcjonowania ludzkiego organizmu. Pomijając jednak ten szczegół, warto przyjrzeć się co tym razem osiągnęli ludzie. Co więc pomaga odpowiedzieć na pytanie: „Ile masz lat?”

Zmarszczki, bruzdy, plamy

Wszystkie trzy powyższe zjawiska na naszej twarzy są albo zupełnie nieakceptowane, albo ledwo tolerowane. Każde pomaga określić ile masz lat. Są to oznaki charakterystyczne, które towarzyszą procesowi starzenia się człowieka. Naukowcy ze wspomnianego wcześniej instytutu opracowali algorytm, który bardzo rzetelnie interpretuje te cechy i umożliwia dokładne oszacowanie wieku i pochodzenia etnicznego ludzi. Sztuczny system nauczył się oceniać twarze.

Kto lubi swoje zmarszczki?
Kto lubi swoje zmarszczki? | fot. pxfuel.com

Algorytm odpowiedzialny za sukces naukowców z Bochum to hierarchiczna sieć neuronowa o jedenastu poziomach. Naukowcy podali systemowi kilka tysięcy zdjęć twarzy w różnym wieku. Były to dane wejściowe. Wiek osób ze zdjęć był znany w każdym przypadku. Naukowcy wprowadzając te dane, postanowili także posortować twarze według wieku. Tak zhierarchizowane dane posłużyły do treningu algorytmu.

Szczególną funkcją rzeczonego kawałka kodu jest to, że został on tak napisany, że ignorowane są te funkcje, które różnią się w zależności od obrazu. Dla maszyny nie jest więc istoty kolor oczu, wielkość ust, czy długość nosa. System nauczył się brać pod uwagę tylko te charakterystyczne cechy, które zmieniają się powoli. Są to właśnie zmarszczki, bruzdy i plamy. Przedstawiając wytrenowanej już maszynie zdjęcie z twarzą, której wiek nie jest algorytmowi znany, potrafi ona oszacować z dokładnością do trzech lat wiek tej osoby. To zaś według badań oznacza to, że maszyna przewyższa w precyzji nawet ludzi, którzy są ekspertami w rozpoznawaniu i interpretacji wieku na podstawie wyglądu naturalnej twarzy.

Ile masz lat?

W jaki sposób przysłuży się człowiekowi ta umiejętność sztucznej maszyny. Być może łatwiej będzie poznać wiek niejednej celebrytki, która skrzętnie chowa te informacje? Być może agencje detektywistyczne łatwiej namierzą sprawców przestępstw? Być może nie będzie trzeba wybierać się do dermatologa, by dobrać odpowiednią kurację na pierwsze oznaki starzenia się?

Wydaje się, że możliwości jest sporo, a na ten moment największym sukcesem jest fakt, że naukowcom i inżynierom udało się opracować maszynę, która bezbłędnie naśladuje człowieka w tak złożonych procesach.