Rozpoznawanie twarzy z użyciem AWS Rekognition

W grudniu 2016 roku Amazon zapowiedział, że AWS zostanie wzbogacony o nową usługę – AWS Rekognition. Pozwala ona na korzystanie z ich sztucznej sieci neuronowej do rozpoznawania zdjęć. Uważam, że jest to świetne rozwiązanie dla małych firm i startupów, które nie mają czasu, środków ani potężnej bazy zdjęć, aby wytrenować własną sieć neuronową do takiego Read more about Rozpoznawanie twarzy z użyciem AWS Rekognition[…]

LSH

Kontynuując poprzedni wpis… Wiemy już, że dokumenty mogą być reprezentowane przez sygnatury, które umożliwiają obliczenie odległości Jaccarda pomiędzy dowolną parą. Nadal jednak pozostaje pewien problem. Jeśli chcemy znaleźć podobne do siebie dokumenty, to musimy porównać każdy z każdym, co w przypadku dużych zbiorów danych jest niewykonalne w sensownym czasie. Większość czasu będzie zmarnowana na obliczanie podobieństwa pomiędzy Read more about LSH[…]

MinHash

Załóżmy, że musimy porównać ze sobą wiele dokumentów o dużym rozmiarze. Stosując podejście tradycyjne musielibyśmy podzielić dokumenty na wyrazy lub k-długie podciągi, tak aby każdy dokument był reprezentowany jako zbiór występujących w nim podciagów, dopiero wtedy porównywalibyśmy te zbiory. Podejście MinHash polega na tym, aby dla każdego dokumentu wygenerować jego sygnaturę, i porównywać ze sobą Read more about MinHash[…]

Obliczanie współczynnika Jaccarda dla wielu obiektów.

Problem: Mamy dane z serwisu muzycznego – log odsłuchanych utworów, postaci: IdUtworu, IdUżytkownika, Data odtworzenia. Chcemy się dowiedzieć, którzy użytkownicy mają podobny gust muzyczny. Dla każdego użytkownika chcemy dostać listę jego najbliższych sąsiadów. Do miary podobieństwa użyjemy współczynnika Jaccarda. Wpisów jest ponad 27 mln. (plik tekstowy ma ponad 500 MB), użyte algorytmy i struktury danych mają więc Read more about Obliczanie współczynnika Jaccarda dla wielu obiektów.[…]

Parallel.For – Czyli prosty sposób na zrównoleglenie.

Ogromna większość dzisiejszych procesorów posiada wiele rdzeni, co umożliwia działanie programu na wielu wątkach oraz przyspieszenie obliczeń. Pętle, które posiadają dużą ilość kroków czasami, aż proszą się o to by zastosować przetwarzanie równoległe. Oczywiście, zrównoleglenia można użyć tylko w przypadku gdy kolejne kroki pętli (oraz wyniki otrzymywane w pojedynczym kroku) są od siebie niezależne. W przeciwnym Read more about Parallel.For – Czyli prosty sposób na zrównoleglenie.[…]