Zbadanie szybkości działania metody PCA za pomocą karty
Transkrypt
Zbadanie szybkości działania metody PCA za pomocą karty
II Wyjazdowa Sesja Naukowa Doktorantów Politechniki Łódzkiej Kwiecień 16 – 18, 2012; Rogów – Polska ZBADANIE SZYBKOŚCI DZIAŁANIA METODY PCA ZA POMOCĄ KART GRAFICZNYCH I GPU COMPUTING IMPLEMENTACJĄ WŁASNYCH WSPÓŁCZYNNIKÓW DO STABILIZACJI WYNIKÓW METODY GŁÓWNYCH SKŁADOWYCH Doktorant: Łukasz Wąs Promotor: prof., dr hab. Inż. Sławomir Wiak Instytut Mechatroniki i Systemów Informatycznych Wydział Elektrotechniki Elektroniki Automatyki i Informatyki Politechnika Łódzka, Polska e-mail:[email protected] Streszczenie: W literaturze spotkać można wyczerpujące opisy działania analizy głównych składowych (ang. Principal Component Analysis, PCA) jednej ze statystycznych metod analizy czynnikowej. Celem PCA jest taki obrót układu współrzędnych, aby maksymalizować w pierwszej kolejności wariancję pierwszej współrzędnej, następnie wariancję drugiej współrzędnej, itd.. Tak przekształcone wartości współrzędnych nazywane są ładunkami wygenerowanych czynników (składowych głównych). W ten sposób konstruowana jest nowa przestrzeń obserwacji, w której najwięcej zmienności wyjaśniają początkowe czynniki. PCA jest często używana do zmniejszania rozmiaru zbioru danych statystycznych, poprzez odrzucenie ostatnich czynników. Można też poszukać merytorycznej interpretacji czynników, zależnej od rodzaju danych, co pozwala lepiej zrozumieć naturę danych, choć bywa trudne przy większej liczbie badanych zmiennych. W przetwarzaniu sygnałów PCA jest używana np. do kompresji sygnału. PCA może być oparte albo na macierzy korelacji, albo macierzy kowariancji utworzonej ze zbioru wejściowego. Algorytm w obydwu wersjach jest poza tym identyczny, jednak różne są uzyskane wyniki. W przypadku użycia macierzy kowariancji, zmienne w zbiorze wejściowym o największej wariancji mają największy wpływ na wynik, co może być wskazane, jeśli zmienne reprezentują porównywalne wielkości. Użycie macierzy korelacji natomiast odpowiada wstępnej normalizacji zbioru wejściowego tak, aby każda zmienna miała na wejściu identyczną wariancję, co może być wskazane, jeśli wartości zmiennych nie są porównywalne. W najprostszym przypadku stosujemy analizę składowych głównych (PCA) lub inną, podobną metodę (FDA, ICA), ale nie widziałem zastosowań tych metod w sytuacjach, w których można wyróżnić kilka grup cech, dla których zastosowano PCA niezależnie oraz sprawdzenia pomiaru wydajności obliczeniowej metody analizy głównych składowych Ja poza sprawdzeniem wydajności samej metody, którą zaprezentuję również staram się w oparciu o autorski algorytm przyśpieszyć samą metodę PCA używając programowania GPU Computing oraz procesorów graficznych używanych przez producentów kart graficznych NVIDIA oraz ATI . Należy rozważyć korelacyjne i informatyczne metody agregacji cech, jak i metody selekcji podgrup cech. Są też metody specyficzne dla sieci neuronowych, w których pierwsza warstwa służy agregacji a druga klasyfikacji. Metody powinny być testowane i porównane na około większej liczbie baz danych. Szczególnie ambitne zadania stoją przed bio informatyką, gdzie mamy ok. 30.000 genów, z których tylko niewiele jest aktywnych, a badania są kosztowne i mamy niewiele przykładów, w oparciu o które należy odkrywać wiedzę i budować teorie. Szczególnie ważnym zadaniem jest stabilizacja metod selekcji i agregacji, gdyż często zachowują się bardzo chaotycznie, po dodaniu nowej cechy dokładność spada zamiast rosnąć. 98 II Wyjazdowa Sesja Naukowa Doktorantów Politechniki Łódzkiej Kwiecień 16 – 18, 2012; Rogów – Polska THE EXAMINATION THE SPEED OF THE PCA METHOD USING GRAPHICS CARDS AND GPU COMPUTING IMPLEMENTATION OF STABILIZATION RESULTS FACTORS IN THE METHOD OF PRINCIPALS COMPONENTS PhD Student: Łukasz Wąs Supervisor: Prof., dr hab. Inż. Sławomir Wiak Institute of Mechatronic and Information Systems The Faculty of Electrical Electronic Computer and Control Engineering Technical University of Lodz, Poland e-mail address: [email protected] Abstract: In the literature we can meet comprehensive descriptions of the principal component analysis of one of the statistical methods of factor analysis. The purpose of PCA is the rotation of the coordinate system to maximize the variance in the first place the first coordinate, then the variance of the second coordinate, and so on. That transformed the coordinate values are called the charges generated factors (principal components). In this way a new space is constructed of observation, which explains the most variation of the initial factors. PCA is often used to reduce the size of a set of statistics, through the rejection of the last factors. You can also search for the substantive interpretation of the factors depending on the type of data, allowing you to better understand the nature of the data, although it can be difficult with more variables studied. The signal processing such as PCA is used to compress the signal. PCA can be based either on the correlation matrix or covariance matrix formed from the set of input. The algorithm in both versions are otherwise identical, but different results are obtained. If you use the covariance matrix in the set of input variables with the largest variance have the greatest impact on the outcome, which may be indicated if the variables represent a comparable size. Using the correlation matrix corresponding to the initial normalization of the input set so that each input variable was the same variance, which may be indicated if the values are not comparable. In the simplest case, we use principal component analysis (PCA) or other similar method (FDA, ICA), but I could not use these methods in situations where we can distinguish several groups of characteristics for which PCA was applied independently verify the performance measurement and computational methods of analysis principal components. Beyond checking the efficiency of the method, which I will also present I also try to accelerate the PCA method based on original algorithm and GPU Computing programming and graphics processors used by the manufacturers of graphics cards from NVIDIA and ATI. We need to Consider the correlation and information aggregation method features and the method for selecting subsets of features. There are also methods specific to the neural network in which the first layer serves the aggregation and the second classification. Methods should be tested and compared to some larger number of databases. Particularly challenging tasks facing the bio informatics, where we have about 30,000 genes, of which only few are active, and studies are expensive and there is little evidence, on which to explore the knowledge and build theories. A particularly important task is to stabilize the method of selection and aggregation, as they often behave very erratically, with the addition of the new features of accuracy falls instead of rising. 99