Wspólna Filtracja Danych: Charakterystyka i Metody

Jedną z podstawowych funkcjonalności listy jest możliwość wyszukiwania czy filtrowania danych. Najprostszą metodą jest skorzystanie z wyszukiwarki globalnej albo z wyszukiwania po kolumnach listy. Można tak wyszukać dokumenty zawierające konkretną nazwę, powiązane z kontrahentem czy stworzone przez użytkownika. Często to jednak nie wystarcza. Chcielibyśmy stworzyć filtry które w łatwy sposób pokażą nam istotne dane, np. Administrator konfigurujący system może zdefiniować dodatkowe filtry których przykład widać na powyższym zrzucie ekranu.

Filtry w Systemie NAVIGATOR

Filtry tworzymy w konfiguracji listy poprzez Ustawienia > Personalizacja > Listy. Po przełączeniu na tę zakładkę widzimy puste miejsce z przyciskiem do dodawania filtrów. NAVIGATOR oferuje trzy kategorie filtrów: Polecenie SQL, Kreator filtrów oraz Filtr na podstawie danych z kolumny.

Typy Filtrów

  • Polecenie SQL: Jest najbardziej uniwersalnym rodzajem filtra, daje też największe możliwości konfiguracji. Niestety, jest równocześnie najtrudniejszym w konfiguracji filtrem. W tej opcji pola Kolumna i Operator powinny zawiera informacje po której kolumnie z listy chcemy filtrować oraz jakiego operatora do filtrowania użyć. ID - identyfikator z bazy dla wartości filtra.
  • Kreator filtrów: Jest on znacznie prostszy w użycie niż Polecenie SQL ma jednak pewne ograniczenia. Nadajemy nazwę i definiujemy warunki w oparciu o wartości elementów z listy. Przy konfigurowaniu kreatora filtrów mamy do dyspozycji warunki proste. Są to identyczne konstrukcje jak te, których możemy użyć przy konfigurowaniu formularza. Możemy zdefiniować sumę logiczną (lub) albo iloczyn logiczny (oraz) warunków. Każdy z warunków musi się opierać na o pojedynczą kolumnę z listy.
  • Filtr na podstawie danych z kolumny: W konfiguracji wystarczy podać kolumnę oraz metodę sortowania. System przeszukuje listę i grupuje elementy z identyczną wartością w wybranej kolumnie. Warto zwrócić uwagę, że kolumna po której filtrujemy nie jest widoczna na liście.

Obok typu filtra administrator musi podać jego nazwę oraz metodę sortowania. Nazwa filtra jest istotnym parametrem gdyż będzie ona wyświetlana w panelu filtra. Każdy z typów filtra posiada inną konfigurację. Wspólne są jedynie opcje Kolumna - określająca której kolumny na liście dotyczy filtr oraz Multiwybór. Zaznaczenie opcji Multiwybór spowoduje, że użytkownik będzie mógł wybrać więcej niż jedną wartość z filtra.

Przykład Polecenia SQL

Poniżej przykład zapytania, które generuje filtr oparty o status dokumentu. W pierwszej linii pobieramy ID z tabeli DoPa w której przechowywane są między innymi statusy dokumentu. Tu jako ID używamy kolumny Name zawierającej nazwę statusu. Zawsze należy sprawdzić jakie dane są zawarte w wybranej kolimnie konfiguracji i dopasowanie kolumny ID do tej kolumny. W kolumnie Values używamy funkcji NAVIGATORA fn_Get_Ic_ById która zwraca ikonę statusu. Operacja ta jest wykonywana jest dlatego, że w tabeli DoPa przechowywane są zarówno typy dokumentów jak i statusy. W klauzuli WHERE zawężamy zwracaną listę do konkretnego typu dokumentu. Używamy tu kolumny GUID.

Przykład Kreatora Filtrów

W powyższym przykładzie mamy listę pojazdów, która posiada kolumny z datami ważności ubezpieczenie i przeglądu. W zależności od typu danych w kolumnie mamy do dyspozycji różne operatory. Zawsze mamy operatory porównania (równy, nierówny) oraz pusty / niepusty. Dodatkowo dla dat możemy użyć zmiennych które pozwolą nam na odniesienie wartości z kolumny do aktualnej daty. Do dyspozycji mamy takie zmienne jak Bieżący dzień, tydzień, miesiąc, kwartał i rok. Dodatkowo, poprzez opcję przesunięcie, możemy określać daty w zależności od bieżącego dnia. Np. bieżący (dzień +1) to jutrzejszy dzień a (tydzień - 1) to poprzedni tydzień.

Przeczytaj także: Definicja i pomiar filtracji kłębuszkowej

Na przykładzie ze zrzutu ekranu widać, że użyliśmy w pierwszym filtrze opcji Bieżący tydzień a w drugim Bieżący tydzień +1. Pozwoli nam to na znalezienie pojazdów, którym termin upływa w bieżącym lub przyszłym tygodniu.

Rola Danych w Projektach Sztucznej Inteligencji (AI)

Dane stanowią fundament każdego projektu związanego ze sztuczną inteligencją (AI). Bez względu na to, czy mamy do czynienia z systemem rozpoznawania obrazów, przetwarzania języka naturalnego, czy przewidywania zachowań użytkowników, jakość i dostępność danych mają bezpośredni wpływ na skuteczność uczenia maszynowego i głębokościowego.

W kontekście AI dane pełnią rolę zarówno surowca, jak i źródła wiedzy. To właśnie na podstawie danych modele uczą się wzorców, relacji i zależności, które następnie wykorzystują do podejmowania decyzji lub formułowania predykcji. W przeciwieństwie do tradycyjnego programowania, gdzie reguły są definiowane przez człowieka, w uczeniu maszynowym reguły są wyprowadzane automatycznie na podstawie przykładów zawartych w zbiorach danych.

Typy Danych w AI

Wyróżnić można różne typy danych wykorzystywanych w systemach AI - od surowych, niesformatowanych informacji, po dane strukturalne i wysokiej jakości zestawy przetworzone. Każdy z tych typów danych odgrywa specyficzną rolę w procesie trenowania modeli i ma inne wymagania dotyczące przygotowania, przechowywania i analizy.

  • Dane surowe: To pierwotne, nieprzetworzone informacje zbierane bezpośrednio ze źródeł takich jak czujniki, pliki logów, urządzenia mobilne czy kamery. Przykładem może być nagranie audio z mikrofonu, zanim zostanie przekształcone w transkrypcję tekstową.
  • Dane przetworzone: To takie, które przeszły już etap przygotowania - mogą być oczyszczone, znormalizowane, zredukowane do odpowiedniego formatu lub wzbogacone o dodatkowe cechy. Przykładowo, wyodrębnione słowa kluczowe z artykułu prasowego lub obliczone cechy demograficzne na podstawie surowych danych użytkownika stanowią dane przetworzone.
  • Dane strukturalne: Charakteryzują się uporządkowaną organizacją - zwykle w postaci tabel, gdzie każdy wiersz reprezentuje rekord, a kolumny odpowiadają konkretnym atrybutom. Tego typu dane łatwo analizować za pomocą klasycznych technik statystycznych i algorytmów uczenia maszynowego.
  • Dane niestrukturalne: Natomiast nie są zorganizowane według z góry określonego modelu. Obejmują one m.in. teksty naturalne, obrazy, nagrania audio czy wideo. Przetwarzanie tego typu danych wymaga zastosowania bardziej zaawansowanych technik, takich jak przetwarzanie języka naturalnego (NLP) czy analiza obrazów (computer vision).

Pozyskiwanie Danych

Skuteczność systemów opartych na sztucznej inteligencji w dużej mierze zależy od jakości i odpowiedniej ilości danych wykorzystywanych w procesie uczenia. Istnieje wiele strategii pozyskiwania danych, które można dostosować do konkretnych wymagań danego projektu.

Przeczytaj także: Webber AP8400 - wymiana filtrów

  • Pozyskiwanie danych z istniejących źródeł (re-use data): Opiera się na wykorzystaniu już dostępnych zbiorów danych, takich jak otwarte dane publiczne, zasoby akademickie, bazy danych rządowych czy korpusy specjalistyczne.
  • Generowanie danych syntetycznych: Dane tworzone sztucznie przy użyciu symulacji, modelowania komputerowego lub generatywnych modeli (np. GAN-ów). Sprawdza się w przypadkach, gdy dane rzeczywiste są trudne do pozyskania.
  • Web scraping i crawling: Techniki automatycznego zbierania informacji z publicznych stron internetowych.
  • Ręczne anotowanie danych (labeling): Polega na ręcznym przypisywaniu etykiet do przykładów danych, szczególnie istotne w uczeniu nadzorowanym.
  • Rejestrowanie danych z urządzeń IoT i sensorów: Wykorzystywane głównie w systemach embedded, smart city, rolnictwie precyzyjnym czy przemyśle 4.0.
  • Zakup danych od zewnętrznych dostawców: Komercyjne źródła danych, często dobrze ustrukturyzowane i specjalistyczne (np. dane finansowe, demograficzne, geolokalizacyjne).

Dobór odpowiedniej metody pozyskiwania danych powinien być uzależniony od specyfiki problemu, dostępnych zasobów oraz wymagań jakościowych i prawnych. Ostateczny wybór często wiąże się z kompromisami pomiędzy kosztami, dostępnością a jakością danych.

Jakość Danych w AI

Jakość danych jest jednym z najważniejszych czynników wpływających na skuteczność i wiarygodność systemów sztucznej inteligencji. Nawet najlepszy algorytm uczenia maszynowego nie przyniesie oczekiwanych rezultatów, jeśli zostanie wytrenowany na danych niskiej jakości.

Rozpoznanie i zarządzanie jakością danych jest kluczowe już na etapie przygotowania zbioru treningowego. W praktyce stosuje się różne techniki czyszczenia danych (data cleaning), walidacji i transformacji, które mają na celu zwiększenie ich spójności i użyteczności. Wysoka jakość danych przekłada się bezpośrednio na jakość decyzji podejmowanych przez model. Dlatego kontrola i poprawa jakości danych powinna być integralną częścią każdego projektu AI - nie jednorazowym zadaniem, ale procesem ciągłym.

Kompletność Danych

Kompletność danych to jeden z kluczowych wymiarów jakości zbiorów wykorzystywanych w projektach sztucznej inteligencji. Braki danych, czyli tzw. missing data, mogą znacząco wpłynąć na efektywność, dokładność i rzetelność działania modeli AI. W zależności od typu braków, podejście do ich obsługi będzie inne.

Typowe sposoby radzenia sobie z brakami obejmują imputację (uzupełnianie danych) lub usuwanie niekompletnych rekordów. Wybór metody zależy od charakterystyki danych oraz celu modelu. Uwzględnienie problemów z kompletnością danych już na wczesnym etapie projektu AI pozwala uniknąć błędnych wniosków i zwiększyć wiarygodność modeli. Skuteczne zarządzanie brakami wymaga zarówno dobrej diagnozy ich źródeł, jak i wyboru odpowiedniej strategii uzupełniania.

Przeczytaj także: Optymalne rozcieńczenie bimbru

Heterogeniczność Danych

Współczesne systemy sztucznej inteligencji coraz częściej operują na danych pochodzących z wielu, zróżnicowanych źródeł. Takie zróżnicowanie, zwane heterogenicznością danych, odnosi się zarówno do formatu, struktury, jak i semantyki danych.

Przykładowe typy danych:

  • Dane tekstowe: np. artykuły prasowe, posty w mediach społecznościowych, raporty finansowe.
  • Dane numeryczne: np. pomiary temperatury, dane demograficzne, notowania giełdowe.
  • Dane wizualne: np. zdjęcia, filmy, obrazy medyczne.
  • Dane dźwiękowe: np. nagrania mowy, muzyka, szumy otoczenia.
  • Dane tabelaryczne: np. bazy danych klientów, transakcje sprzedaży, wyniki badań.

W praktyce modele AI muszą często integrować wiele z tych źródeł jednocześnie. Przykładowo, system wykrywający fake newsy może analizować nie tylko treść tekstu, ale też źródło informacji, czas publikacji i interakcje użytkowników w mediach społecznościowych.

Aby poradzić sobie z heterogenicznością, stosuje się różnorodne strategie, takie jak mapowanie cech do wspólnej przestrzeni wektorów, wykorzystanie architektur multimodalnych czy transformację danych do ujednoliconego formatu wejściowego. Wprowadzenie heterogenicznych danych do procesu uczenia maszynowego zwiększa potencjał modelu do uchwycenia złożonych zależności, ale także wymaga staranności w ich przetwarzaniu, unifikacji i analizie. Zrozumienie wpływu różnorodnych źródeł danych na jakość wyników stanowi kluczowy element w projektowaniu skutecznych systemów AI.

Praktyczne Przykłady Zastosowania Różnych Typów Danych

W projektach sztucznej inteligencji wykorzystywane są różnorodne typy danych, których dobór zależy od konkretnego zastosowania i celu modelu. Ich charakterystyka znacząco wpływa na sposób przetwarzania, wybór algorytmów oraz jakość końcowego rozwiązania. Poniżej przedstawiono kilka przykładów ilustrujących praktyczne wykorzystanie różnych rodzajów danych w systemach AI.

  • Surowe dane tekstowe: Są powszechnie stosowane w systemach przetwarzania języka naturalnego (NLP), takich jak chatboty, tłumacze maszynowe czy systemy analizy sentymentu. Przykładowo, dane zebrane z komentarzy użytkowników w mediach społecznościowych mogą służyć do klasyfikacji emocji lub intencji wypowiedzi.
  • Dane strukturalne: Takie jak rekordy z baz danych, wykorzystywane są w systemach rekomendacyjnych, prognozowaniu sprzedaży czy wykrywaniu oszustw finansowych. Dzięki swojej uporządkowanej formie umożliwiają szybkie modelowanie i analizę zależności między zmiennymi.
  • Dane niestrukturalne: Np. obrazy, dźwięki czy nagrania wideo, są podstawą działania systemów rozpoznawania twarzy, mowy oraz autonomicznych pojazdów. Modele uczą się na podstawie cech wizualnych lub dźwiękowych, aby identyfikować obiekty lub reagować na komendy głosowe.
  • Dane przetworzone: Czyli dane poddane wstępnemu oczyszczeniu i transformacji, są wykorzystywane w większości aplikacji AI, w tym w klasyfikacji medycznej, przewidywaniu awarii maszyn czy analizie obrazów satelitarnych. Wstępne przetworzenie pozwala na zmniejszenie szumu i poprawę jakości predykcji.

Typ danych determinuje również wybór odpowiednich narzędzi i metod uczenia maszynowego. Na przykład analiza danych tabelarycznych często wykorzystuje algorytmy klasyczne, takie jak drzewa decyzyjne, natomiast dane obrazowe przetwarzane są z pomocą głębokich sieci neuronowych. Dzięki temu możliwe jest dostosowanie architektury modelu do specyfiki danych wejściowych.

tags: #wspólna #filtracja #charakterystyka #danych

Popularne posty: