Ruchome średnie czyste dane


Wprowadzenie do modeli nierównomiernych ARIMA. RAZDA ARIMA Procesy prognozowania Modele ARIMA są, teoretycznie, najbardziej ogólną klasą modeli prognozowania szeregów czasowych, które mogą być nieruchome, w razie potrzeby różnicując, być może w połączeniu z transformacjami nieliniowymi takie jak rejestrowanie lub deflacja w razie potrzeby Zmienna losowa, która jest szeregiem czasowym, jest stacjonarna, jeśli jej właściwości statystyczne są stałe w czasie A stacjonarne serie nie mają tendencji, jej wahania wokół jego średniej mają stałą amplitudę i poruszają się w spójny sposób tzn. krótkoterminowe wzorce czasu losowego zawsze wyglądają identycznie w sensie statystycznym. Ten ostatni warunek oznacza, że ​​jego korelacje autokorelacji z własnymi wcześniejszymi odchyleniami od średniej pozostają niezmienne w czasie lub równoważnie, że jego widmo mocy pozostaje stałe w czasie A losowo zmienna tego formularza może być postrzegana jako zwykła kombinacja sygnału i hałasu, a sygnał, jeśli jest widoczny, może być patt ern szybkiego lub powolnego przecięcia średniego lub oscylacji sinusoidalnej lub szybkiej zmiany na znaku, a także może mieć składnik sezonowy. Model ARIMA może być postrzegany jako filtr, który próbuje oddzielić sygnał od hałasu, a następnie sygnał ekstrapolowane w przyszłość w celu uzyskania prognoz. Równanie ARIMA dla serii czasów stacjonarnych jest liniowym równaniem regresji typu, w którym predykatory składają się z opóźnień w zmiennej zależnej i / lub opóźnień prognozowanych błędów. Prawidłowa wartość Y stała lub ważona suma jednej lub kilku ostatnich wartości Y i lub ważonej sumy jednej lub więcej wartości błędów. Jeśli predykatory składają się tylko z opóźnionych wartości Y, jest to czysty, autoregresywny samoregulowany model, która jest tylko specjalnym przypadkiem modelu regresji i może być wyposażona w standardowe oprogramowanie regresyjne Na przykład, autoregresywny model AR1 dla pierwszego rzędu jest prostym modelem regresji, w którym zmienna niezależna i s tylko Y z opóźnieniem o jeden okres LAG Y, 1 w Statgraphics lub YLAG1 w RegressIt Jeśli niektóre predykatory są błędami, model ARIMA nie jest modelem regresji liniowej, ponieważ nie ma sposobu na określenie błędu ostatniego okresu jako niezależna zmienna błędy muszą być obliczane okresowo, gdy model jest dopasowany do danych Z technicznego punktu widzenia, problem z wykorzystaniem opóźnionych błędów jako predykcyjnych jest taki, że przewidywania modelu nie są funkcjami liniowymi współczynniki, nawet jeśli są to liniowe funkcje poprzednich danych Więc współczynniki w modelach ARIMA, które zawierają opóźnione błędy, należy oszacować przez nieliniowe metody optymalizacyjne, a nie po prostu rozwiązać system równań. Akronim ARIMA oznacza automatyczną regresywną integrację Przenoszenie średnich opóźnień szeregów stacjonarnych w równaniu prognozowania nazywa się terminami autoregresywnymi, opóźnienia w błędach prognozują nazywane są średnie ruchome i serie czasowe, które muszą być rozróżniana stacjonarnie mówi się, że jest zintegrowaną wersją stacjonarnych modeli losowych i przypadkowych modeli, modeli autoregresji i wykładniczych modeli wygładzania są szczególnymi przypadkami modeli ARIMA. Niedemysłowy model ARIMA jest klasyfikowany jako ARIMA p, d, q model, gdzie. p jest liczbą terminów autoregresji. d jest liczbą nierównomiernych różnic potrzebnych do stacjonarności, a. q jest liczbą opóźnionych błędów prognozy w równaniu predykcyjnym. Równanie prognozowania jest skonstruowane w następujący sposób Po pierwsze, niech y oznacza dt różnicę Y, która oznacza. Zwróć uwagę, że druga różnica Y przypadku d2 nie różni się od 2 okresów temu Raczej, jest pierwszą różniczką pierwszej różnicy dyskretny analog drugiej pochodnej, tzn. lokalne przyspieszenie szeregu, a nie jego lokalny trend. Jeśli chodzi o y, to ogólne równanie prognozowania jest tutaj. Tutaj poruszają się średnie parametry s tak, że ich znaki są ujemne w eq po konwencji wprowadzonej przez Box i Jenkins Niektórzy autorzy i oprogramowanie, w tym język programowania R, definiują je tak, że mają znaki plus Gdy faktyczne liczby są podłączone do równania, nie ma niejasności, ale ważne jest, aby wiedzieć, która konwencja używanie oprogramowania podczas odczytywania danych wyjściowych Często parametry są oznaczone przez AR 1, AR 2, i MA 1, MA 2 itd. Aby zidentyfikować odpowiedni model ARIMA dla Y, rozpoczyna się od określenia kolejności różnicowania wymagających stacjonować serie i usunąć cechy brutto sezonowości, być może w połączeniu z transformacją stabilizującą wahania, taką jak rejestrowanie lub deflacja Jeśli zatrzymasz się w tym punkcie i przewidujesz, że zróżnicowane serie są stałe, masz tylko dopasowany losowy chód lub losowo model tendencji Jednakże serie stacjonarne mogą wciąż zawierać błędy autokorelacyjne, co sugeruje, że potrzebna jest pewna liczba terminów AR1 i lub niektórych terminów MA1 q w równaniu prognozowania. Proces wyznaczania wartości p, d i q najlepszych dla danej serii czasowej zostanie omówiony w dalszych sekcjach notatek, których łącza są u góry tej strony, ale podgląd niektórych typów niejednorodnych modeli ARIMA, które są powszechnie spotykane, podano poniżej. Model z autodestruacją z pierwszego rzędu, o wartości 100,0%, jeśli seria jest stacjonarna i autokorelowana, być może można ją przewidzieć jako wielokrotność swojej poprzedniej wartości, plus stała Równanie prognozowania w tym przypadku jest to, co jest regresowane przez siebie na pewien czas opóźnione przez jeden okres Jest to stały model ARIMA 1,0,0 Jeśli średnia Y jest równa zeru, wówczas nie będzie uwzględnione określenie stałe. Jeśli nachylenie współczynnik 1 jest dodatni i mniejszy niż 1 na wielkość musi być mniejszy niż 1 w skali, jeśli Y jest nieruchoma, model opisuje zachowanie średniego zwrotu, w którym przewiduje się, że wartość następnego okresu 1 razy jest daleko od średniej ta wartość okresu Jeśli 1 jest ujemna, to przewiduje zachowanie średnie z odwróceniami oznaczeń, tzn. przewiduje również, że Y będzie poniżej średniego następnego okresu, jeśli jest powyżej średniej tego okresu. W modelu autoregresji drugiego rzędu ARIMA 2,0,0 będzie Y t-2 po prawej, a tak dalej W zależności od oznakowania i wielkości współczynników, model ARIMA 2,0,0 może opisywać system, którego średnie odwrócenie zachodzi w sinusoidalnie oscylujący sposób, podobnie jak ruch masy na sprężynie poddawanej przypadkowemu wstrząsowi. ARIMA 0,1,0 przypadkowy spacer Jeśli seria Y nie jest stacjonarna, najprostszym modelem jest model przypadkowego spaceru, który może być uważany za ograniczający przypadek model AR1, w którym współczynnik autoregresji jest równy 1, tj. seria z nieskończenie powolnym średnim odwróceniem Współczynnik predykcji dla tego modelu może być zapisany jako. gdzie stały termin to średnia zmiana między okresem, tj. długoterminowa dryft w Y Ten model może być zamontowany jako niekontrolowany model graniczny, w którym pierwsza różnica Y jest zmienną zależną Ponieważ uwzględnia ona jedynie różnicę pozaserwową i okres stały, jest on klasyfikowany jako model ARIMA 0,1,0 ze stałą Model przypadkowego chodu bez modelu model ARIMA 0,1,0 bez stałej. ARIMA 1,1,0 zróżnicowany model autoregresji pierwszego rzędu Jeśli błędy modelu losowego spaceru są autokorelowane, być może problem może zostać rozwiązany przez dodanie jednego opóźnienia zmiennej zależnej do równanie predykcji - tzn. przez regresję pierwszej różnicy Y na sobie opóźnionej przez jeden okres Spowodowałoby to poniższe równanie predykcji, które można przestawić na. Jest to model autoregresji pierwszego rzędu z jednym porządkiem nierównomiernego różnicowania i stałym określeniem - model ARIMA 1,1,0.ARIMA 0,1,1 bez stałego prostego wygładzania wykładniczego Inna strategia korygowania błędów autokorelacji w modelu losowego spaceru sugeruje prosty wykładniczy model wygładzania Przypomnijmy, że dla niektórych nieustannych szeregów czasowych np. tych, które wykazują hałaśliwą fluktuacje wokół średniej różniących się powoli, model losowego chodu nie wykonuje się, a także średnia ruchoma poprzednich wartości Innymi słowy, a nie biorąc pod uwagę najnowsze obserwacje jako prognozę następnej obserwacji , lepiej jest użyć średniej z ostatnich kilku obserwacji w celu odfiltrowania szumu i dokładniej oszacować lokalną średnią. Prosty model wygładzania wykładniczego wykorzystuje średnią ważoną wykładniczą ważoną średnią ruchową poprzednich wartości, aby osiągnąć ten efekt. Równanie predykcji dla prosty model wyrównywania wykładów można zapisać w formie matematycznie równoważnych, z których jedna jest tak zwana korekcją błędów, w której poprzednia prognoza jest dostosowywana w kierunku popełnionego błędu. Ponieważ e t-1 Y t - 1 - t-1 z definicji, może być przepisana jako., Co oznacza równanie ARIMA 0,1,1 - bez zachowania stałej prognozy równe 1 1 - Oznacza to, że można zmieścić prostą wykładniczą smoo rzecz biorąc, określając ją jako model ARIMA 0,1,1 bez stałej, a szacowany współczynnik MA1 odpowiada 1-minus-alfa w formule SES Przypomnijmy, że w modelu SES średni wiek danych w 1- prognozy na okres poprzedni 1 oznaczają, że będą one wykazywały tendencję do opóźnienia w trendach lub punktach zwrotnych o około 1 okresy. Wynika z tego, że średni wiek danych w prognozie 1-wyprzedzającej ARIMA 0,1,1 - stałym modelem jest 1 1 - 1 Na przykład, jeśli 1 0 8, średni wiek wynosi 5 Kiedy 1 zbliża się do 1, ARIMA 0,1,1 - bez modelu stałego staje się bardzo długoterminową średnią ruchoma, a jako że 1 podejście 0 staje się modelem losowo-chodnik bez drift. Jest to najlepszy sposób poprawienia autokorelacji dodawania terminów AR lub dodania terminów macierzystych W poprzednich dwóch omawianych modelach problem autokorelacji błędów w modelu przypadkowego spaceru został ustalony na dwa różne sposoby, dodając lagged wartości zróżnicowanych serii do równania lub dodając opóźnioną wartość foreca st error Jakie podejście jest najlepszym Zasadą w tej sytuacji, która zostanie omówiona bardziej szczegółowo później, jest pozytywna autokorelacja najlepiej jest traktowana przez dodanie terminu AR do modelu, a negatywna autokorelacja zwykle jest najlepiej traktowana przez dodając termin MA W serii czasów gospodarczych i gospodarczych, ujemna autokorelacja często pojawia się jako artefakt różnicowania Ogólnie rzecz biorąc, rozróżnienie zmniejsza dodatnią autokorelację, a nawet może powodować przejście z pozytywnej na ujemną autokorelację Więc model ARIMA 0,1,1 w które różni się terminem magisterskim, jest częściej stosowane niż model ARIMA 1,1,0.ARIMA 0,1,1 przy stałym prostokątnym wygładzaniu wykładniczym przy wzroście Wdrażając model SES jako model ARIMA, rzeczywiście zyskujesz elastyczność Przede wszystkim szacowany współczynnik MA 1 może być ujemny, co odpowiada współczynnikowi wygładzania większym niż 1 w modelu SES, co zwykle nie jest dozwolone w procedurze dopasowania modelu SES Sec ond, możesz oszacować przeciętny trend niezerowy Model ARIMA 0,1,1 ze stałą ma równanie predykcyjne. Jednorazowe wyprzedzanie prognozy z tego modelu są jakościowo podobne do modelu SES, z wyjątkiem tego, że trajektoria prognoz długoterminowych jest zazwyczaj linią ukośną, której nachylenie jest równe mu, a nie w linii poziomej. ARIMA 0,2,1 lub 0, 2,2 bez stałych liniowych wygładzeń wykładniczych Liniowe modele wygładzania wykładniczego są modelami ARIMA, które wykorzystują dwie nierównomierne różnice w powiązaniu z pojęciami drugorzędnymi Druga różnica serii Y nie jest po prostu różnicą między samą Y a samą w tyle przez dwa okresy, ale raczej jest pierwsza różnica pierwszej różnicy - ie zmiana w Y w okresie t Tak więc druga różnica Y w okresie t jest równa Y t - Y t-1 - Y t-1 - Y t-2 Y t-2Y t-1 Y t-2 Drugą różnicą funkcji dyskretnych jest analogou s do drugiej pochodnej funkcji ciągłej mierzy przyspieszenie lub krzywiznę w funkcji w danym punkcie czasowym. Model ARIMA 0,2,2 bez stałej przewiduje, że druga różnica serii jest równa liniowej funkcji ostatniego dwa błędy prognozy, które mogą być przekształcone jako. w 1 i 2 są współczynnikami MA 1 i MA 2 Jest to ogólny linearny wykładnik wykładniczy równomierny model wygładzania zasadniczo taki sam jak model Holt, a model Brown's jest szczególnym przypadkiem Używa wykładniczej wagi średnie kroczące w celu oszacowania zarówno poziomu lokalnego, jak i lokalnego trendu Szereg długoterminowych prognoz tego modelu zbliża się do prostej, której nachylenie zależy od średniej tendencji obserwowanej pod koniec serii. ARIMA 1,1,2 bez ciągły trend tłumienia liniowego tłumienia wykładów. Ten model jest zilustrowany na załączonych slajdach w modelach ARIMA. Ekstrapoluje tendencję lokalną na końcu serii, ale spłaszczając ją w dłuższych horyzontach prognoz, aby wprowadzić ote konserwatyzmu, praktyce, która ma empiryczne wsparcie Zobacz artykuł o tym, dlaczego Damped Trend działa przez Gardnera i McKenziego oraz artykuł Golden Rule autorstwa Armstronga i innych o szczegóły. Zazwyczaj zaleca się przyklejenie się do modeli, w których co najmniej jedna z p i q nie jest większa niż 1, tzn. nie próbuj dopasować modelu, takiego jak ARIMA 2,1,2, ponieważ prawdopodobnie doprowadzi to do nadmiernych i ogólnych problemów, które są omówione bardziej szczegółowo w uwagach dotyczących matematyki struktura modeli ARIMA. Implementacja arkuszy ARIMA, takie jak te opisane powyżej, są łatwe do wdrożenia w arkuszu kalkulacyjnym. Równanie predykcji jest po prostu równaniem liniowym, które odnosi się do poprzednich wartości oryginalnych serii czasowych i wartości przeszłych błędów. Dzięki temu można skonfigurować arkusz kalkulacyjny ARIMA przez przechowywanie danych w kolumnie A, formuła prognozowania w kolumnie B oraz dane o błędach pomniejszone o prognozy w kolumnie C formuła prognozowania w typowej komórce w kolumnie B będzie po prostu linearnym wyrażeniem n odnosząc się do wartości w poprzednich wierszach kolumn A i C, pomnożonych przez odpowiednie współczynniki AR lub MA przechowywane w komórkach gdzie indziej w arkuszu kalkulacyjnym. Ja gram w Pythonie jeszcze raz i znalazłem schludną książkę z przykładami Jednym z przykładów jest wykreowanie niektórych danych mam plik z dwiema kolumnami i mam dane wykreślone dane tylko w porządku, ale w ćwiczeniu mówi Modyfikować swój program dalej obliczać i wykreślić średnią uruchomienia danych, zdefiniowane przez. where r 5 w tym przypadku i yk jest drugą kolumną w pliku danych Czy program zarabia zarówno oryginalne dane, jak i średnią na tej samej wykresie. Ale mam to. Więc jak obliczyć sumę W Mathematica to proste ponieważ to symboliczna manipulacja Sum i, na przykład, ale jak obliczyć sumę w python, która zajmuje co dziesięć punktów w danych i średnich, a robi to do końca punktów. Spojrzałem na książkę, ale nie znalazłem nic, co by wyjaśnij to. heltonbiker s kod did the trick D. Thank yo u bardzo dużo. Czy istnieje problem z zaakceptowaną odpowiedzią Myślę, że musimy użyć prawidłowego zamiast tego samego tutaj - okna powrotu, same. As przykład wypróbować MA tego zbioru danych 1,5,7,2,6 , 7,8,2,2,7,8,3,7,3,7,3,15,6 - wynik powinien wynosić 4 2,5 4,6 0,5 0,5 0,5 2,5 4,4 4,5 4,5 6,5 6,4 6,7 0,6 8, ale posiadające to samo daje niewłaściwy wynik wynoszący 2 6,3 0,4 2,5 4,6 0,5 0,5 0,5 2,5 4,4 4,5 4,5 6,5 6, 4 6,7 0,6 8,6 2,4 8.Rustyczny kod, aby go wypróbować. Zrób to z poprawnym i sprawdź, czy matematyka czyni sense. answered Październik 29 14 w 4 27.Haven t wypróbował to, ale będę patrzeć w to, To było trochę czasu, bo ja zakodowałem w Python Dingod 29 października 14 w 7 07. dingod Dlaczego nie t szybko spróbuję to z zardzewiałym kodeksem i przykładowym zestawem danych jako prostą listą, wysłałem Dla niektórych leniwych ludzi takich jak ja byłem na początku - jego maski na fakt, że średnia ruchoma należy rozważyć edytowanie oryginalnej odpowiedzi próbowałem to tylko wczoraj i podwójne sprawdzenie uratowało mi twarz przed złym spojrzeniem na raportowanie do Cxo l evel Wszystko co musisz zrobić, to spróbować tej samej średniej ruchomej raz z ważnym i innym razem z tym samym - i kiedy jesteś przekonany, daj mi trochę miłości aka-up-vote ekta 29 października w wieku 7 16. Wiem, że to jest stare pytanie, ale tutaj jest rozwiązanie, które nie używa żadnych dodatkowych struktur danych lub bibliotek Jest liniowy w liczbie elementów listy wejściowej i nie mogę myśleć o innym sposobie, aby uczynić go bardziej skutecznym jeśli ktoś wie o lepszym w jaki sposób przydzielić wynik, proszę dać mi znać. Wszelkie to byłoby znacznie szybsze przy użyciu numpy tablicy zamiast listy, ale chciałem wyeliminować wszystkie zależności Byłoby to również możliwe do poprawy wydajności przez wielowątkowe wykonanie. Funkcja zakłada że lista wejściowa jest w jednym wymiarze, więc bądź ostrożna. UPD bardziej wydajne rozwiązania zostały zaproponowane przez Alleo i jasaarim. You może używać tego argumentu trybu. Określa sposób obsługi krawędzi wybrałem prawidłowy tryb tutaj, ponieważ myślę, że s jak wiele osób spodziewa się, że bieganie działa, ale możesz mieć inne priorytety Oto spisek, który ilustruje różnicę między trybami. odpowiedzi 24 marca w 22 01. Lubię to rozwiązanie, ponieważ jest czysty jeden wiersz i stosunkowo wydajna praca wykonana wewnątrz numpy Ale Alleo s Skuteczne rozwiązanie przy użyciu has lepsza złożoność Ulrich Stern 25 września 15 w 0 31. Możesz obliczyć średnią bieżącej z. Na szczęście numpy zawiera funkcję konwekcyjną, którą możemy użyć do przyspieszenia czynności. Średnia bieżąca jest równoważna x x z wektorem, który jest N dłuższy, z wszystkimi członkami równymi 1 N Numperowska implementacja convolve obejmuje początkowe przejściowe, więc musisz usunąć pierwsze punkty N-1. Na mojej maszynie szybka wersja jest 20-30 razy szybsza, w zależności od długości wejścia wektor i rozmiar średniej window. Note, że convolve zawiera ten sam tryb, który wydaje się, że powinien on rozwiązać problem przejściowy przejściowy, ale dzieli go między początkiem i końcem. Usuwa przejściowe od końca, a beginni ng nie ma jednego Dobrze, myślę, że to kwestia priorytetów, nie potrzebuję tej samej liczby wyników na koszt uzyskania stoku w kierunku zero, który nie ma w danych BTW, oto polecenie pokazujące różnicę pomiędzy trybami pełnych, identycznymi, poprawnymi splotami 200, tymi 50, 50, trybami m dla osi m w trybach oś -10, 251, - 1, 1 1 tryby legendy, loc dolne centrum z piPLot i numpy importowane lapis Mar 24 14 at 13 56.pandas jest bardziej odpowiedni dla tego niż NumPy lub SciPy Jego funkcja rollingmean robi zadanie wygodnie Pozwala również zwrócić tablicę NumPy, gdy wejście jest tablicą. Nie trudno pokonać rollingmean w wydajności z dowolnego niestandardowego czystego wykonania Pythona Oto przykładowa wydajność w stosunku do dwóch proponowanych rozwiązań. Są też ładne opcje, jak radzić sobie z wartościami krawędzi. Je zawsze jestem zirytowany przez funkcję przetwarzania sygnału, która zwraca sygnały wyjściowe o różnym kształcie niż sygnały wejściowe, gdy oba wejścia i wyjścia są tego samego na ture np. oba sygnały czasowe Zerwanie korespondencji z powiązaną niezależną zmienną, np. generowanie wykresu czasu, czy też porównanie, również nie jest sprawą bezpośrednią, jeśli podzielisz się uczuciem, możesz zmienić ostatnie wiersze proponowanej funkcji jako tę samą odpowiedź y windowlen -1 - windowlen-1 Christian O Reilly 25 sierpnia 15 w 19 56. Trochę późno na imprezę, ale zrobiłem własną własną funkcję, która NIE owija się wokół końców lub wkładek z zerami, które są następnie używane do średniej jak również W kolejnym traktowaniu, że również ponownie pobrać próbkę sygnału w punktach rozmieszczonych liniowo Dostosuj kod na żądanie, aby uzyskać inne funkcje. Metoda jest prostym mnożeniem macierzy z znormalizowanym jądrem Gaussa. Prosty sposób użycia na sinusoidalnym sygnale z dodatkiem normalnego rozproszonego noise. This pytanie jest teraz nawet starszy niż kiedy NeXuS napisał o tym w zeszłym miesiącu, ALE lubię, jak jego kod dotyczy przypadków krawędzi jednak, ponieważ jest to prosta średnia ruchoma, to wyniki lag za danymi y odnoszą się do Myślałem, że zajmowanie się sprawami krawędzi w bardziej satysfakcjonujący sposób, niż tryby NumPy s ważne w tym samym i pełnym można osiągnąć poprzez zastosowanie podobnego podejścia do metod opartych na splocie. Mój wkład wykorzystuje centralną średnią, aby wyrównać jej wyniki z ich dane Jeśli w oknie pełnej wielkości używane są dwa punkty, średnie uśrednione są obliczane z kolejno mniejszych okien na krawędziach tablicy Właściwie z kolejno większych okien, ale to jest szczegółowo implementacja. Jest to stosunkowo powolne ponieważ używa wiolonczeli i może być sprobany dość dużo przez prawdziwą Pythonistę, jednak wierzę, że idea stoi. Jan 2 w 0 28. jest ładny, ale powolny, gdy szerokość okna rośnie Duża Niektóre odpowiedzi zapewniają bardziej efektywne algorytmy z ale wydaje się niezdolny do obsługi wartości krawędzi ja sam zaimplementował algorytm, który może obsłużyć ten problem dobrze, jeśli ten problem jest zadeklarowany as. Input parametr mergenum można uznać za 2 windowwi dth 1.Wiem, że ten kod jest trochę nieczytelny, jeśli u uzna to za użyteczne i chce trochę rozszerzeń, proszę dać mi znać i będę aktualizować tę odpowiedź Ponieważ pisanie wyjaśnienia może kosztować mn dużo czasu, mam nadzieję, że to zrobić tylko wtedy, gdy ktoś potrzebuje Proszę wybacz mi za moje lenistwo. Jeśli tylko u jesteś zainteresowany jego oryginalną wersją. Jest jeszcze bardziej nieczytelne pierwsze rozwiązanie pozbywa się problemu krawędzi przez zerowe wypełnienie wokół tablicy, ale drugie rozwiązanie rozwiązane tutaj obsadza to w trudny i bezpośredni sposób. W moim ostatnim zdaniu próbowałem wskazać, dlaczego pomaga błąd zmiennoprzecinkowy Jeśli dwie wartości są w przybliżeniu takie same rzędy wielkości, to dodanie ich traci mniej precyzji niż jeśli dodałeś bardzo dużą liczbę do bardzo małej Kod łączy sąsiadujące wartości w taki sposób, że nawet sumy pośrednie powinny zawsze być rozsądnie bliskie wielkości, aby zminimalizować błąd zmiennoprzecinkowy Nic nie jest dowodem na głupotę, ale ta metoda uratowała kilka bardzo słabo zrealizowanych projektów w produkcji Mayur Patel Dec 15 14 at 17 22. Alleo Zamiast robić jeden dodatek na wartość, będziesz robił dwa Dowód jest taki sam, jak problem z odwzorowaniem bitów Ale punktem tej odpowiedzi niekoniecznie jest wydajność, ale precyzyjne wykorzystanie pamięci dla uśrednienia 64-bitowych wartości nie przekraczałoby 64 elementów w pamięci podręcznej, więc jest przyjazne w użyciu pamięci, a także Mayur Patel 29 grudnia w 17 04.

Comments

Popular posts from this blog

Forex reklama na facebook

Forex jest bardzo łatwy do zarobić

Option trading help