1 / 17

RS-lib

RS-lib. Nowa biblioteka skalowalnych metod przeznaczonych do analizy tablic danych. Plan prezentacji. Cel – biblioteka oprogramowania Przeznaczenie i możliwości biblioteki Kto miałby pracować w zespole? Zadania do wykonania Korzyści dla uczestników

axel
Download Presentation

RS-lib

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RS-lib Nowa biblioteka skalowalnych metod przeznaczonych do analizy tablic danych

  2. Plan prezentacji • Cel – biblioteka oprogramowania • Przeznaczenie i możliwości biblioteki • Kto miałby pracować w zespole? • Zadania do wykonania • Korzyści dla uczestników • Przygotowania do uruchomienia i uruchomienie projektu • Dlaczego Java? • Dyskusja

  3. Nasz cel: RS-lib • Zespół roboczy pracujący nad nową biblioteką oprogramowania: • oprogramowanie, • dokumentacja, • tutoriale, • dema... • Później: • zintegrowany interfejs graficzny

  4. Czym miałaby być RS-lib? • Biblioteka oprogramowania napisanego w języku Java przeznaczona do analizy zbiorów danych • Tworzona od początku według standardu Java Data Mining (JDM) • Nastawiona szczególnie na metody skalowalne analizy danych • Technicznie - umieszczona na witrynie internetowej ulokowanej w Rzeszowie wraz z dokumentacjami, samouczkami, przykładami itd.

  5. Klasyfikatory- narzędzia do aproksymacji pojęć na podstawie zbiorów danych,czyli o co głównie chodzi... Motywacja:- Potrzeba aproksymowania pojęć przy niepełnej informacji o obiektach i pojęciach- Niski koszt obliczeniowy i wysoka efektywność wnioskowań aproksymacyjnych prowadzonych w oparciu o aproksymacje pojęć Obiekt testowy Generowanie decyzji dla obiektu testowego Klasyfikator • Metody rozwijane w: • Wnioskowania statystyczne • Uczenie maszynowe (ang. machine learning) • Eksploracja danych (ang. datamining) • Rozpoznawanie wzorców (ang. pattern recognition) • Odkrywanie wiedzy (ang. knowledge discovery) • Sterowanie niekonwencjonalne(ang. soft control) Konstrukcja klasyfikatora Informacja o przynależności testowanego obiektu do pojęcia Dana tablica decyzyjna (przykłady obiektów) Przykładowe podejścia do tworzenia klasyfikatorów:- metody statystyczne - drzewa decyzyjne - reguły decyzyjne - sieci neuronowe...

  6. Ilustracja problemukonstruowania klasyfikatora • System informacyjnyjako para (U, A) • U- niepusty zbiór obiektów (wierszy) • A- niepusty zbiór atrybutów (kolumn) takich, że a: U  Vadla każdego atrybutu a • Va jest nazywany zbiorem wartości atrybutu a. • W systemie informacyjnym (U, A{d}) atrybut decyzyjny d (decyzja eksperta) jest wyróżniony; elementy A są nazywane atrybutami warunkowymi. • Wartości decyzji d definiują tzw. klasy decyzyjne. • W przykładzie, dla atrybutu decyzyjnego Grypa są dwie klasy decyzyjne: Grypa(Nie)={u1,u4, u5} oraz Grypa(Tak)={u2, u3, u6} • Problem: Jak skonstruować algorytm (klasyfikator) pozwalający na predykcję wartości atrybutu decyzyjnego na podstawie wartości atrybutów warunkowych? Reguły decyzyjne (propozycja rozwiązania) (temp=Normalna)=>(Grypa=Nie) 2 (temp=Bardzo_wys)=>(Grypa=Tak) 2(bol_glowy=Tak)&(temp=Wysoka)=>(Grypa=Tak) 1(bol_miesni=Tak)&(temp=Wysoka)=>(Grypa=Tak) 1(bol_miesni=Nie)=>(Grypa=Nie) 1(bol_glowy=Nie)&(temp=Wysoka)=>(Grypa=Nie) 1

  7. Teoria zbiorów przybliżonych • Zaproponowany w 1982r przez prof. Zdzisława Pawlaka formalizm matematyczny, stanowiący rozwinięcie klasycznej teorii zbiorów. • Zbiór przybliżony (ang. rough set) to obiekt matematyczny zbudowany z pary klasycznych zbiorów: przybliżenia dolnego i przybliżenia górnego. • Dany element może należeć do obydwu przybliżeń, do żadnego lub tylko do przybliżenia górnego. • Modelowanie niepewności

  8. Przyszłe możliwości RS-liba • Importowanie danych z plików tekstowych oraz z formatów innych systemów • Wstępna obróbka danych (np. wypełnianie pustych miejsc, dyskretyzacja, filtracja itd). • Klasyczne metody analizy danych (wykrywanie zależności w danych, tworzenie i testowanie klasyfikatorów i wiele innych) • Zaawansowane metody analizy danych nowej generacji powiązane z wiedzą dziedzinową (metody z RoughICE i nowe !!!)

  9. Kto miałby pracować nad biblioteką? • Pracownicy KI UR • Studenci UR (Informatyka, Matematyka,...) • Dodatkowe osoby z Rzeszowa • Dodatkowe osoby z innych miast Polski a szczególnie z grupy prof. Andrzeja Skowrona z Wydziału MIM Uniwersytetu Warszawskiego • Osoby z zagranicy...

  10. Zadania do wykonania • Przygotowanie przez ustalone osoby oprogramowania podstawowego wraz z dokumentacją • Podstawa biblioteki używana przez wszystkich • Przykłady obowiązującego stylu tworzenia klas (wg. zaleceń firmy Sun) • Postawienie witryny internetowej w której będą: • źródła oprogramowania wraz systemem kontroli wersji, • materiały na temat biblioteki, • lista dyskusyjna • Opracowanie w języku Java przez ustalone osoby głównych modułów wraz z ich dokumentacją • Konserwacja utworzonych modułów oraz dorabianie nowych modułów • Promocja biblioteki w Polsce i na świecie • utrzymywanie na wysokim poziomie witryny internetowej biblioteki, • prezentacje na konferencjach samej biblioteki oraz wyników badawczych uzyskanych przy jej użyciu, • organizowanie tutoriali

  11. Korzyści dla uczestników • Każdy uczestnik zespołu będzie widoczny jako twórca swojego modułu i będzie identyfikowany z tym modułem • Powstanie kolejnych modułów będzie wiązało się z powstaniem prac dyplomowych (licencjackich i inżynierskich), magisterskich i doktorskich • Studenci będą mogli zaliczyć praktykę • Będzie miało miejsce wzajemne wsparcie członków zespołu przy tworzeniu nowych modułów • Zwiększenie szybkości tworzenia i niezawodności oprogramowania • Nastąpi zwiększenie liczby publikacji członków zespołu • Współautorami każdej publikacji powstającej na bazie biblioteki będą wszystkie osoby pracujące nad modułem, który został wykorzystany • Wzrośnie zainteresowanie prowadzonymi w zespole pracami badawczymi oraz pojawią się liczne zastosowania wykonanych modułów • Kwalifikacje członków zespołu będą się ustawicznie zwiększać

  12. Przygotowanie do uruchomienia • Wybór funkcjonalności dotychczasowego oprogramowania, które powinny się znaleźć w nowej bibliotece jako jej moduły • Na początek zalecana ostrożność i powściągliwość aby nie było ich zbyt dużo • Pomoc w douczeniu się języka Java oraz w opanowaniu potrzebnych narzędzi • Książki, materiały, spotkania edukacyjne • Doradztwo i pomoc merytoryczna i techniczna w wykonaniu modułów

  13. Etapy techniczne uruchomienia projektu • Uruchomienie systemu kontroli wersji źródeł • Gdy będzie dostępne oprogramowanie stanowiące podstawę biblioteki • Ograniczone uruchomienie całej witryny wraz z grupą dyskusyjną • Tylko dla z góry zarejestrowanych użytkowników będących członkami zespołu • Gdy powstaną pierwsze wersje modułów • Dodanie możliwości rejestrowania się osób spoza zespołu • Gdy wszystko będzie już sprawnie funkcjonować...

  14. Co jest potrzebne i czego oczekujemy? • Szeroka dyskusja nad projektem • Gruntowne własne przemyślenie własnego udziału w projekcie • Deklaracja uczestnictwa w projekcie lub rezygnacja z uczestnictwa w nim • Ustalenie terminu spotkań

  15. Dlaczego Java? • Java jest pochodną starszych języków, tzn. C i C++ • Znając te języki łatwo się jej nauczyć • Jednak różni ją od nich przede wszystkim uproszczoną składnią programowania obiektowego • Stosuje bogaty zestaw bibliotek, które, w odróżnieniu od języka C++, wszystkie są standardowe na każdej ważniejszej platformie sprzętowej. • Dostarcza rozbudowane i zaawansowane narzędzia do takich działań jak: tworzenie graficznego interfejsu użytkownika, programowanie internetowe, wielowątkowość, multimedia i wiele innych. • Doskonale nadaje się do programowania zespołowego.

  16. TIOBE • Spośród wielu analiz „aktualności” nowoczesnych języków programowania szczególnie wyróżnia się analiza zwana „TIOBE Programming Community index“ • Prezentuje wskaźnik „popularności“ języków programowania na podstawie światowego zainteresowania w danym zakresie wykształconymi programistami, szkoleniami i literaturą • Sposobem zbierania informacji są specyficzne zapytania do wyszukiwarek: Google, MSN i Yahoo • Wynik - to procentowy wskaźnik popularności języków, publikowany w każdym miesiącu • We wcześniejszych miesiącach wynik był jeszcze bardziej korzystny dla języka Java

  17. Tymczasowa witryna projektu http://lambda.univ.rzeszow.pl/~bazan/rslib/ Użytkownik: rslib Hasło: roughsets Materiały wprowadzające i pomocnicze

More Related