W swojej książce Księga dlaczego, Judea Pearl opowiada się za nauczaniem maszyn zasad przyczyny i skutku w celu zwiększenia ich inteligencji. Osiągnięcia głębokiego uczenia się są zasadniczo tylko rodzajem dopasowania krzywej, podczas gdy przyczynowość może być wykorzystana do odkrycia interakcji między systemami świata przy różnych ograniczeniach bez bezpośredniego testowania hipotez. Może to dostarczyć odpowiedzi, które doprowadzą nas do AGI (sztuczna uogólniona inteligencja).
To rozwiązanie proponuje ramy wnioskowania przyczynowego z wykorzystaniem sieci bayesowskich do reprezentowania zależności przyczynowych i wyciągania wniosków przyczynowych na podstawie obserwowanych zdjęć satelitarnych i danych z prób eksperymentalnych w postaci symulowanych warunków pogodowych i glebowych. The studium przypadku jest związek przyczynowy między stosowaniem nawozów azotowych a plonami kukurydzy.
Zdjęcia satelitarne są przetwarzane przy użyciu specjalnie zbudowanych Możliwości geoprzestrzenne Amazon SageMaker i wzbogacony o wykonane na zamówienie Przetwarzanie Amazon SageMaker operacje. Mechanizm wnioskowania przyczynowego jest wdrażany z Asynchroniczne wnioskowanie Amazon SageMaker.
W tym poście pokazujemy, jak utworzyć tę kontrfaktyczną analizę za pomocą Amazon SageMaker JumpStart rozwiązania.
Omówienie rozwiązania
Poniższy diagram przedstawia architekturę kompleksowego przepływu pracy.
Wymagania wstępne
Potrzebujesz Konto AWS skorzystać z tego rozwiązania.
Aby uruchomić to rozwiązanie JumpStart 1P i mieć wdrożoną infrastrukturę na swoim koncie AWS, musisz utworzyć aktywną Studio Amazon SageMaker instancja (zob Na pokładzie do domeny Amazon SageMaker). Gdy instancja Studio będzie gotowa, postępuj zgodnie z instrukcjami w SageMaker Szybki start uruchomienie rozwiązania dotyczącego kontrfaktów dotyczących plonów upraw.
Należy pamiętać, że to rozwiązanie jest obecnie dostępne tylko w regionie zachodnich Stanów Zjednoczonych (Oregon).
Wnioskowania przyczynowego
Przyczynowość polega na zrozumieniu zmian, ale sformalizowanie tego w statystyce i uczeniu maszynowym (ML) nie jest trywialnym ćwiczeniem.
W tym badaniu plonów azot dodany jako nawóz i wyniki plonów mogą być zakłócone. Podobnie azot dodawany jako nawóz i wyniki wypłukiwania azotu również mogą być mylone w tym sensie, że wspólna przyczyna może wyjaśnić ich związek. Jednak skojarzenie nie jest przyczyną. Jeśli wiemy, które zaobserwowane czynniki zaburzają powiązanie, uwzględniamy je, ale co, jeśli istnieją inne ukryte zmienne odpowiedzialne za zakłócenie? Zmniejszenie ilości nawozów niekoniecznie zmniejszy resztkowy azot; podobnie może nie zmniejszyć drastycznie plonu, podczas gdy gleba i warunki klimatyczne mogą być obserwowanymi czynnikami, które zakłócają związek. Centralnym problemem wnioskowania przyczynowego jest sposób radzenia sobie z zamieszaniem. Technika wprowadzona przez RA Fishera tzw randomizowana kontrolowana próba ma na celu przełamanie możliwych zakłóceń.
Jednak w przypadku braku randomizowanych badań kontrolnych istnieje potrzeba wnioskowania przyczynowego wyłącznie na podstawie danych obserwacyjnych. Istnieją sposoby łączenia pytań przyczynowych z danymi w badaniach obserwacyjnych poprzez napisanie przyczynowego modelu graficznego tego, co postulujemy jako sposób, w jaki rzeczy się dzieją. Wiąże się to z twierdzeniem, że odpowiednie ciągi przejściowe uchwycą odpowiednie zależności, jednocześnie spełniając graficzne kryterium warunkowej nierozważalności (do jakiego stopnia możemy traktować związek przyczynowy jako związek oparty na założeniach przyczynowych). Po postulowaniu struktury możemy użyć implikowanych niezmienników, aby uczyć się na podstawie danych obserwacyjnych i wstawiać pytania przyczynowe, wnioskując o twierdzeniach przyczynowych bez randomizowanych prób kontrolnych.
Rozwiązanie to wykorzystuje zarówno dane z symulowanych randomizowanych badań kontrolnych (RCT), jak i dane obserwacyjne ze zdjęć satelitarnych. Seria symulacji przeprowadzonych na tysiącach pól i przez wiele lat w Illinois (Stany Zjednoczone) jest wykorzystywana do badania reakcji kukurydzy na rosnące dawki azotu dla szerokiej kombinacji zmian pogody i gleby obserwowanych w regionie. Zajmuje się ograniczeniem korzystania z danych próbnych ograniczonych liczbą gleb i lat, które można zbadać, wykorzystując symulacje upraw w różnych scenariuszach rolniczych i geograficznych. Baza danych została skalibrowana i zweryfikowana na podstawie danych z ponad 400 prób w regionie. Początkowe stężenie azotu w glebie ustalono losowo w rozsądnym zakresie.
Dodatkowo baza danych jest wzbogacona o obserwacje ze zdjęć satelitarnych, podczas gdy statystyki strefowe pochodzą z indeksów spektralnych w celu przedstawienia czasoprzestrzennych zmian wegetacji, widzianych na różnych obszarach geograficznych i fazach fenologicznych.
Wnioskowanie przyczynowe z sieciami bayesowskimi
Strukturalne modele przyczynowe (SCM) wykorzystują modele graficzne do reprezentowania zależności przyczynowych poprzez włączenie danych wejściowych opartych na danych i ludzi. Zaproponowano szczególny typ modelu przyczynowego struktury, zwany sieciami bayesowskimi, do modelowania dynamiki fenologii upraw przy użyciu wyrażeń probabilistycznych, przedstawiając zmienne jako węzły i relacje między zmiennymi jako krawędzie. Węzły są wskaźnikami wzrostu upraw, warunków glebowych i pogodowych, a krawędzie między nimi reprezentują zależności przyczynowo-przestrzenne. Węzły nadrzędne to parametry związane z polem (w tym dzień siewu i obszar obsadzenia), a węzły podrzędne to parametry dotyczące plonów, poboru azotu i wypłukiwania azotu.
Aby uzyskać więcej informacji, zapoznaj się z charakterystyka bazy danych oraz poprowadzi do identyfikacji etapów wzrostu kukurydzy.
Do zbudowania modelu sieci Bayesa potrzeba kilku kroków (z PrzyczynowyNex), zanim będziemy mogli użyć go do analizy kontrfaktycznej i interwencyjnej. Struktura modelu przyczynowego jest początkowo poznawana z danych, podczas gdy wiedza merytoryczna (wiarygodna literatura lub przekonania empiryczne) jest wykorzystywana do postulowania dodatkowych zależności i zależności między zmiennymi losowymi a zmiennymi interwencyjnymi, a także do stwierdzenia, że struktura jest przyczynowa.
Korzystanie z BEZ ŁEZ, algorytm ciągłej optymalizacji do uczenia się struktury, struktura wykresu opisująca zależności warunkowe między zmiennymi jest uczona z danych, z zestawem ograniczeń nałożonych na krawędzie, węzły nadrzędne i węzły podrzędne, które nie są dozwolone w modelu przyczynowym. Zachowuje to zależności czasowe między zmiennymi. Zobacz następujący kod:
"""
tabu_edges: Imposing edges that are not allowed in the causal model
tabu_parents: Imposing parent nodes that are not allowed in the causal model
tabu_child: Imposing child nodes that are not allowed in the causal model """
from causalnex.structure.notears import from_pandas g_learned = from_pandas( X, tabu_edges=tabu_edges, tabu_parent_nodes=tabu_parents, tabu_child_nodes=tabu_child, max_iter=100,
)
Następny krok polega na zakodowaniu wiedzy domeny w modelach i uchwyceniu dynamiki fenologicznej, przy jednoczesnym uniknięciu fałszywych relacji. Analiza współliniowości, analiza czynników inflacji zmienności i wykorzystanie globalnej ważności cech KSZTAŁT analizy są przeprowadzane w celu uzyskania spostrzeżeń i ograniczeń dotyczących zmiennych stresu wodnego (ekspansja, fenologia i fotosynteza wokół kwitnienia), zmiennych pogodowych i glebowych, wskaźników spektralnych i wskaźników opartych na azocie:
"""
edges: Modifying the structure by imposing constraints on edges """
from causalnex.structure import StructureModel g = StructureModel()
g.add_edges_from( edges, origin="expert" )
Sieci bayesowskie w CausalNex obsługują tylko dystrybucje dyskretne. Wszelkie cechy ciągłe lub cechy z dużą liczbą kategorii są dyskretyzowane przed dopasowaniem do sieci Bayesa:
from causalnex.discretiser.discretiser_strategy import ( DecisionTreeSupervisedDiscretiserMethod, MDLPSupervisedDiscretiserMethod
) discretiser = DecisionTreeSupervisedDiscretiserMethod( mode="single", tree_params={"max_depth": 2, "random_state": 2022},
)
discretiser.fit( feat_names=features, dataframe=df, target_continuous=True, target=target,
)
Po przejrzeniu struktury warunkowy rozkład prawdopodobieństwa każdej zmiennej, biorąc pod uwagę jej rodziców, można wywnioskować z danych w kroku zwanym oszacowanie prawdopodobieństwa:
from causalnex.network import BayesianNetwork bn = BayesianNetwork(g)
bn = bn.fit_node_states(discretised_data)
bn = bn.fit_cpds( train, method="BayesianEstimator", bayes_prior="K2",
)
Wreszcie struktura i prawdopodobieństwa są wykorzystywane do przeprowadzania wnioskowania obserwacyjnego w locie, zgodnie z determinizmem Algorytm drzewa połączeń (JTA) oraz dokonywanie interwencji z wykorzystaniem zrób rachunek. Wnioskowanie asynchroniczne SageMaker umożliwia kolejkowanie przychodzących żądań i przetwarza je asynchronicznie. Ta opcja jest idealna zarówno dla scenariuszy wnioskowania obserwacyjnego, jak i kontrfaktycznego, w których procesu nie można zrównoleglić, przez co aktualizacja prawdopodobieństw w całej sieci zajmuje dużo czasu, chociaż wiele zapytań może być uruchamianych równolegle. Zobacz następujący kod:
"""
Query the marginal likelihood of states in the graph given some observations. These observations can be made anywhere in the network, and their impact will be propagated through to the node of interest. """
from causalnex.inference import InferenceEngine ie = InferenceEngine(bn) pseudo_observation = [{"day_sow":0}, {"day_sow":1}, {"day_sow":2}]
marginals_multi = ie.query( pseudo_observation, parallel=True, num_cores=multiprocessing.cpu_count(),
)
# distribution before intervention
marginals_before = ie.query()["Y_corn"] # updating a node distribution
ie.do_intervention("N_fert", 0) # effect of do on marginals
marginals_after = ie.query()["Y_corn"] # Resetting the node distribution
ie.reset_do("N_fert")
Aby uzyskać więcej informacji, zapoznaj się z skrypt wnioskowania.
Model przyczynowy notatnik jest przewodnikiem krok po kroku dotyczącym wykonywania poprzednich kroków.
Przetwarzanie danych geoprzestrzennych
Praca związana z obserwacją Ziemi (EOJ) są połączone ze sobą w celu pozyskiwania i przekształcania zdjęć satelitarnych, podczas gdy specjalnie zaprojektowane operacje i wstępnie wytrenowane modele są wykorzystywane do usuwania chmur, mozaikowania, operacji pasmowo-matematycznych i ponownego próbkowania. W tej sekcji omówimy bardziej szczegółowo etapy przetwarzania danych geoprzestrzennych.
Obszar zainteresowań
Na poniższym rysunku zielone wielokąty to wybrane hrabstwa, pomarańczowa siatka to mapa bazy danych (siatka komórek o wymiarach 10 x 10 km, w których przeprowadzane są próby w regionie), a siatka kwadratów w skali szarości to 100 km x 100 km Siatka kafelkowa Sentinel-2 UTM.
Pliki przestrzenne są używane do mapowania symulowanej bazy danych z odpowiednimi obrazami satelitarnymi, nakładającymi wielokąty komórek o wymiarach 10 km x 10 km, które dzielą stan Illinois (gdzie w regionie przeprowadzane są próby), wielokąty hrabstw i 100 km x 100 km Sentinel- 2 płytki UTM. Aby zoptymalizować potok przetwarzania danych geoprzestrzennych, najpierw wybiera się kilka pobliskich płytek Sentinel-2. Następnie zagregowane geometrie płytek i komórek są nakładane w celu uzyskania obszaru zainteresowania (RoI). Hrabstwa i identyfikatory komórek, które są w pełni obserwowane w RoI, są wybierane w celu utworzenia geometrii wielokątów przekazywanej do EOJ.
Zakres czasu
W tym ćwiczeniu cykl fenologiczny kukurydzy jest podzielony na trzy etapy: etapy wegetatywne od v5 do R1 (wschody, kołnierze liściowe i frędzle), etapy reprodukcyjne od R1 do R4 (jedwabnienie, pęcherze, mleko i ciasto) oraz etapy reprodukcyjne R5 (wgnieciony) i R6 (dojrzałość fizjologiczna). Dla każdego etapu fenologicznego pozyskiwane są kolejne wizje satelitarne w przedziale czasowym do 2 tygodni i z góry określonego obszaru zainteresowania (wybrane powiaty), co umożliwia przestrzenną i czasową analizę zdjęć satelitarnych. Poniższy rysunek ilustruje te metryki.
Usuwanie chmur
Usuwanie chmur dla danych Sentinel-2 wykorzystuje model segmentacji semantycznej oparty na ML w celu identyfikacji chmur na obrazie, gdzie zachmurzone piksele są zastępowane wartością -9999 (wartość nodata):
request_polygon_coordinates = [[(-90.571754, 39.839326), (-90.893651, 39.84092), (-90.916609, 39.845075), (-90.916071, 39.757168), (-91.147678, 39.75707), (-91.265848, 39.757258), (-91.365125, 39.758723), (-91.367962, 39.759124), (-91.365396, 39.777266), (-91.432919, 39.840554), (-91.446385, 39.870394), (-91.455887, 39.945538), (-91.460287, 39.980333), (-91.494865, 40.037421), (-91.510322, 40.127994), (-91.512974, 40.181062), (-91.510332, 40.201142), (-91.258828, 40.197299), (-90.911969, 40.193088), (-90.909756, 40.284394), (-90.450227, 40.276335), (-90.451502, 40.188892), (-90.199556, 40.183945), (-90.118966, 40.235263), (-90.033026, 40.377806), (-89.92468, 40.435921), (-89.717104, 40.435655), (-89.714927, 40.319218), (-89.602979, 40.320129), (-89.601604, 40.122432), (-89.578289, 39.976127), (-89.698259, 39.975309), (-89.701864, 39.916787), (-89.994506, 39.901925), (-89.994405, 39.87286), (-90.583534, 39.87675), (-90.582435, 39.854574), (-90.571754, 39.839326)]]
start_time = '2018-08-15T00:00:00Z'
end_time = '2018-09-15T00:00:00Z' eoj_input_config = { "RasterDataCollectionQuery": { "RasterDataCollectionArn": 'arn:aws:sagemaker-geospatial:us-west-2:378778860802:raster-data-collection/public/nmqj48dcu3g7ayw8', "AreaOfInterest": { "AreaOfInterestGeometry": { "PolygonGeometry": {"Coordinates": request_polygon_coordinates} } }, "TimeRangeFilter": {"StartTime": start_time, "EndTime": end_time}, "PropertyFilters": { "Properties": [{"Property": {"EoCloudCover": {"LowerBound": 0, "UpperBound": 10}}}], "LogicalOperator": "AND", }, }
} eoj_config = { "JobConfig": { "CloudRemovalConfig": { "AlgorithmName": "INTERPOLATION", "InterpolationValue": "-9999", "TargetBands": ["red", "green", "blue", "nir", "swir16"], }, }
} eojParams = { "Name": "cloudremoval", "InputConfig": eoj_input_config, **eoj_config, "ExecutionRoleArn": role_arn,
} eoj_response = sg_client.start_earth_observation_job(**eojParams)
Po utworzeniu EOJ ARN jest zwracany i używany do wykonania kolejnej operacji geomozaiki.
Aby uzyskać status zadania, możesz uruchomić sg_client.get_earth_observation_job(Arn = response['Arn']).
Geomozaika
Geomozaika EOJ służy do łączenia obrazów z wielu wizyt satelitarnych w dużą mozaikę poprzez nadpisywanie nodata lub przezroczystych pikseli (w tym pikseli zachmurzonych) pikselami z innych znaczników czasu:
eoj_config = {"JobConfig": {"GeoMosaicConfig": {"AlgorithmName": "NEAR"}}} eojParams = { "Name": "geomosaic", "InputConfig": {"PreviousEarthObservationJobArn": eoj_arn}, **eoj_config, "ExecutionRoleArn": role_arn,
} eoj_response = sg_client.start_earth_observation_job(**eojParams)
Po utworzeniu EOJ zwracany jest ARN i używany do wykonania kolejnej operacji ponownego próbkowania.
Ponowne próbkowanie
Ponowne próbkowanie służy do zmniejszenia rozdzielczości obrazu geoprzestrzennego w celu dopasowania do rozdzielczości masek przycinania (przeskalowanie rozdzielczości 10–30 m):
eoj_config = { "JobConfig": { "ResamplingConfig": { "OutputResolution": {"UserDefined": {"Value": 30, "Unit": "METERS"}}, "AlgorithmName": "NEAR", }, }
} eojParams = { "Name": "resample", "InputConfig": {"PreviousEarthObservationJobArn": eoj_arn}, **eoj_config, "ExecutionRoleArn": role_arn,
} eoj_response = sg_client.start_earth_observation_job(**eojParams)
Po utworzeniu EOJ zwracany jest ARN i używany do wykonania kolejnej operacji matematycznej pasm.
Matematyka zespołowa
Operacje matematyki pasmowej są używane do przekształcania obserwacji z wielu pasm widmowych do pojedynczego pasma. Zawiera następujące wskaźniki widmowe:
- EVI2 – Dwuzakresowy wskaźnik zwiększonej roślinności
- DGVI – Uogólniony wskaźnik różnic wegetacji
- NDMI – Znormalizowany wskaźnik wilgotności różnicowej
- NDVI – Znormalizowany indeks różnic wegetacji
- NDWI – Znormalizowany indeks różnicowy wody
Zobacz następujący kod:
spectral_indices = [['EVI2', ' 2.5 * ( nir - red ) / ( nir + 2.4 * red + 1.0 ) '], ['GDVI', ' ( ( nir * * 2.0 ) - ( red * * 2.0 ) ) / ( ( nir * * 2.0 ) + ( red * * 2.0 ) ) '], ['NDMI', ' ( nir - swir16 ) / ( nir + swir16 ) '], ['NDVI', ' ( nir - red ) / ( nir + red ) '], ['NDWI', ' ( green - nir ) / ( green + nir ) ']] eoj_config = { "JobConfig": { "BandMathConfig": {"CustomIndices": {"Operations": []}}, }
} for indices in spectral_indices: eoj_config["JobConfig"]["BandMathConfig"]["CustomIndices"]["Operations"].append( {"Name": indices[0], "Equation": indices[1][1:-1]} ) eojParams = { "Name": "bandmath", "InputConfig": {"PreviousEarthObservationJobArn": eoj_arn}, **eoj_config, "ExecutionRoleArn": role_arn,
} eoj_response = sg_client.start_earth_observation_job(**eojParams)
Statystyki strefowe
Indeksy widmowe są dodatkowo wzbogacane za pomocą Przetwarzanie Amazon SageMaker, gdzie niestandardowa logika oparta na GDAL jest używana do wykonywania następujących czynności:
- Połącz wskaźniki spektralne w jedną wielokanałową mozaikę
- Przeprojektuj mozaikę na przyciąć maskęprojekcja
- Zastosuj maskę kadrowania i ponownie rzuć mozaikę na CRC wielokątów komórek
- Oblicz statystyki strefowe dla wybranych wielokątów (komórki 10 km x 10 km)
W przypadku równoległej dystrybucji danych pliki manifestów (dla każdego etapu fenologicznego upraw) są dystrybuowane w kilku instancjach przy użyciu ShardedByS3Key
Typ dystrybucji danych S3. Aby uzyskać więcej informacji, patrz skrypt ekstrakcji cech.
Przetwarzanie geoprzestrzenne notatnik jest przewodnikiem krok po kroku dotyczącym wykonywania poprzednich kroków.
Poniższy rysunek przedstawia kanały RGB kolejnych wizyt satelitarnych reprezentujących etapy wegetatywne i reprodukcyjne cyklu fenologicznego kukurydzy, z (po prawej) i bez (po lewej) masek upraw (CW 20, 26 i 33, 2018 Central Illinois).
Na poniższym rysunku wskaźniki widmowe (NDVI, EVI2, NDMI) kolejnych wizyt satelitarnych reprezentują etapy wegetatywne i reprodukcyjne cyklu fenologicznego kukurydzy (CW 20, 26 i 33, 2018 Central Illinois).
Sprzątać
Jeśli nie chcesz już korzystać z tego rozwiązania, możesz usunąć utworzone przez nie zasoby. Po wdrożeniu rozwiązania w Studio wybierz Usuń wszystkie zasoby aby automatycznie usunąć wszystkie standardowe zasoby, które zostały utworzone podczas uruchamiania rozwiązania, w tym zasobnik S3.
Wnioski
To rozwiązanie zapewnia plan przypadków użycia, w których wnioskowanie przyczynowe z sieciami bayesowskimi jest preferowaną metodologią odpowiadania na pytania przyczynowe na podstawie kombinacji danych i danych wejściowych człowieka. Przepływ pracy obejmuje wydajną implementację silnika wnioskowania, który kolejkuje przychodzące zapytania i interwencje oraz przetwarza je asynchronicznie. Aspekt modułowy umożliwia ponowne wykorzystanie różnych komponentów, w tym przetwarzanie geoprzestrzenne z specjalnie zaprojektowanymi operacjami i wstępnie wytrenowanymi modelami, wzbogacanie zdjęć satelitarnych o niestandardowe operacje GDAL oraz multimodalną inżynierię cech (indeksy widmowe i dane tabelaryczne).
Ponadto rozwiązanie to można wykorzystać jako szablon do budowy siatkowych modeli upraw, w których przeprowadzane jest zarządzanie nawozami azotowymi oraz analiza polityki środowiskowej.
Aby uzyskać więcej informacji, zobacz Szablony rozwiązań i wykonaj poprowadzi uruchomienie rozwiązania dotyczącego kontrfaktów dotyczących plonów upraw w regionie zachodnich Stanów Zjednoczonych (Oregon). Kod jest dostępny w GitHub repo.
cytaty
Niemiecki Mandrini, Sotirios V. Archontoulis, Cameron M. Pittelkow, Taro Mieno, Nicolas F. Martin,
Symulowany zestaw danych reakcji kukurydzy na azot na tysiącach pól i wielu latach w Illinois,
Dane w skrócie, tom 40, 2022, 107753, ISSN 2352-3409
Przydatne zasoby
O autorach
Paweł Barna jest starszym analitykiem danych w laboratoriach prototypowania uczenia maszynowego w AWS.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- Platoblockchain. Web3 Inteligencja Metaverse. Wzmocniona wiedza. Dostęp tutaj.
- Źródło: https://aws.amazon.com/blogs/machine-learning/generate-a-counterfactual-analysis-of-corn-response-to-nitrogen-with-amazon-sagemaker-jumpstart-solutions/
- :Jest
- 1
- 10
- 100
- 2018
- 2021
- 2022
- 39
- 7
- a
- O nas
- Osiągnięcia
- Konto
- nabyć
- nabyty
- w poprzek
- aktywny
- w dodatku
- dodatek
- Dodatkowy
- Adresy
- Zwolennicy
- Po
- AGI
- Cele
- algorytm
- Wszystkie kategorie
- pozwala
- Chociaż
- Amazonka
- Amazon Sage Maker
- Amazon SageMaker JumpStart
- wśród
- ilość
- analiza
- i
- odpowiedzi
- nigdzie
- Zastosowanie
- architektura
- SĄ
- POWIERZCHNIA
- na około
- AS
- aspekt
- Twierdzenie
- Stowarzyszenie
- At
- automatycznie
- dostępny
- unikając
- AWS
- ZESPÓŁ MUZYCZNY
- na podstawie
- Bayesian
- BE
- zanim
- pomiędzy
- Niebieski
- książka
- przerwa
- szeroki
- budować
- Budowanie
- by
- nazywa
- CAN
- możliwości
- zdobyć
- przechwytuje
- Etui
- kategorie
- Spowodować
- Komórki
- centralny
- przykuty łańcuchem
- zmiana
- Zmiany
- kanały
- dziecko
- Dodaj
- twierdząc,
- roszczenia
- Chmura
- kod
- Obroże
- połączenie
- wspólny
- składniki
- stężenie
- Warunki
- przeprowadzone
- Skontaktuj się
- kolejny
- Ograniczenia
- ciągły
- kontrola
- kontrolowanych
- Odpowiedni
- mógłby
- Stwórz
- stworzony
- wole
- Obecnie
- krzywa
- zwyczaj
- Specyfikacji klienta
- cykl
- dane
- analiza danych
- naukowiec danych
- sterowane danymi
- Baza danych
- dzień
- głęboko
- głęboka nauka
- wykazać
- wdrażane
- Pochodny
- detal
- detale
- różnica
- bezpośrednio
- dyskutować
- dystrybuowane
- 分配
- Dystrybucje
- podzielony
- domena
- drastycznie
- rysować
- dynamika
- każdy
- efekt
- powstanie
- Umożliwia
- umożliwiając
- koniec końców
- silnik
- Inżynieria
- wzmocnione
- Wzbogacony
- środowiskowy
- Polityka dotycząca środowiska naturalnego
- istotnie
- Ćwiczenie
- ekspansja
- ekspert
- ekspertyza
- Wyjaśniać
- odkryj
- wyrażeń
- rozbudowa
- wyciąg
- Czynniki
- rolnictwo
- Cecha
- Korzyści
- kilka
- Łąka
- Postać
- obserwuj
- następujący
- W razie zamówieenia projektu
- Nasz formularz
- Framework
- od
- w pełni
- dalej
- Generować
- geografie
- otrzymać
- GitHub
- dany
- Globalne
- wykres
- Grayscale
- Zielony
- Krata
- Wzrost
- poprowadzi
- uchwyt
- zdarzyć
- Have
- Ukryty
- W jaki sposób
- How To
- Jednak
- HTML
- http
- HTTPS
- człowiek
- idealny
- zidentyfikować
- identyfikacja
- Illinois
- obraz
- zdjęcia
- Rezultat
- realizacja
- ukryty
- importować
- znaczenie
- nałożone
- imponujący
- in
- obejmuje
- Włącznie z
- Przybywający
- włączenie
- wzrastający
- wskaźniki
- Indeksy
- Informacja
- Infrastruktura
- początkowy
- początkowo
- spostrzeżenia
- przykład
- instrukcje
- Inteligencja
- Interakcje
- odsetki
- interwencja
- wprowadzono
- IT
- JEGO
- Praca
- Wiedzieć
- wiedza
- Labs
- duży
- uruchomić
- wodowanie
- prowadzić
- UCZYĆ SIĘ
- dowiedziałem
- nauka
- ograniczenie
- Ograniczony
- literatura
- dłużej
- maszyna
- uczenie maszynowe
- maszyny
- zrobiony
- Dokonywanie
- i konserwacjami
- mapa
- Martin
- maska
- Maski
- Mecz
- matematyka
- Materia
- dojrzałość
- Łączyć
- Metodologia
- Metryka
- może
- Mleko
- ML
- model
- modele
- Modułowa
- jeszcze
- wielokrotność
- Nazwa
- NASA
- Blisko
- koniecznie
- Potrzebować
- sieć
- sieci
- Następny
- Nicolas
- węzeł
- Dystrybucja węzłów
- węzły
- numer
- uzyskać
- of
- on
- działanie
- operacje
- optymalizacja
- Optymalizacja
- Option
- Orange
- zamówienie
- Oregon
- Inne
- Parallel
- parametry
- rodzice
- szczególny
- minęło
- wykonać
- Fotosynteza
- rurociąg
- plato
- Analiza danych Platona
- PlatoDane
- wtyczka
- polityka
- Wielokąt
- możliwy
- Post
- Korzystny
- Zasady
- Wcześniejszy
- Problem
- wygląda tak
- Obrobiony
- procesów
- przetwarzanie
- niska zabudowa
- własność
- zaproponowane
- proponuje
- prototypowanie
- zapewniać
- zapewnia
- czysto
- pytania
- przypadkowy
- Randomizowane
- zasięg
- ceny
- gotowy
- rozsądny
- Czerwony
- zmniejszyć
- redukcja
- region
- związek
- Relacje
- usuwanie
- otrzymuje
- reprezentować
- reprezentowanie
- wywołań
- wymagany
- Rozkład
- Zasoby
- odpowiedź
- odpowiedzialny
- recenzja
- RGB
- ROI
- run
- bieganie
- sagemaker
- satelita
- scenariusze
- Naukowiec
- Sekcja
- segmentacja
- wybrany
- senior
- rozsądek
- Serie
- zestaw
- kilka
- Targi
- Podobnie
- pojedynczy
- rozwiązanie
- Rozwiązania
- kilka
- Przestrzenne
- Widmowy
- kwadraty
- STAGE
- etapy
- standard
- Stan
- Zjednoczone
- statystyka
- Rynek
- Ewolucja krok po kroku
- Cel
- stres
- Struktura
- badania naukowe
- studio
- Badanie
- przedmiot
- kolejny
- wsparcie
- systemy
- biorąc
- taro
- Nauczanie
- szablon
- Testowanie
- że
- Połączenia
- Wykres
- Państwo
- świat
- ich
- Im
- a tym samym
- Te
- rzeczy
- tysiące
- trzy
- Przez
- poprzez
- czas
- do
- razem
- Pociąg
- Przekształcać
- transformatorowy
- przezroczysty
- leczyć
- próba
- Próby
- zaufany
- ucla
- odkryć
- dla
- zrozumienie
- jednostka
- Zjednoczony
- United States
- Aktualizacja
- aktualizowanie
- us
- posługiwać się
- zatwierdzony
- wartość
- różnorodny
- Wizyty
- Tom
- Uzdatnianie wody
- sposoby
- Pogoda
- tygodni
- DOBRZE
- Zachód
- Co
- który
- Podczas
- będzie
- w
- w ciągu
- bez
- świat
- pisanie
- X
- lat
- Wydajność
- plony
- You
- Twój
- zefirnet