In statistics and signal processing, a minimum mean square error (MMSE) estimator is an estimation method which minimizes the mean square error (MSE), which is a common measure of estimator quality, of the fitted values of a dependent variable. In the Bayesian setting, the term MMSE more specifically refers to estimation with quadratic loss function. In such case, the MMSE estimator is given by the posterior mean of the parameter to be estimated. Since the posterior mean is cumbersome to calculate, the form of the MMSE estimator is usually constrained to be within a certain class of functions. Linear MMSE estimators are a popular choice since they are easy to use, easy to calculate, and very versatile. It has given rise to many popular estimators such as the Wiener–Kolmogorov filter and Kalman filter.
Motivation[edit]
The term MMSE more specifically refers to estimation in a Bayesian setting with quadratic cost function. The basic idea behind the Bayesian approach to estimation stems from practical situations where we often have some prior information about the parameter to be estimated. For instance, we may have prior information about the range that the parameter can assume; or we may have an old estimate of the parameter that we want to modify when a new observation is made available; or the statistics of an actual random signal such as speech. This is in contrast to the non-Bayesian approach like minimum-variance unbiased estimator (MVUE) where absolutely nothing is assumed to be known about the parameter in advance and which does not account for such situations. In the Bayesian approach, such prior information is captured by the prior probability density function of the parameters; and based directly on Bayes theorem, it allows us to make better posterior estimates as more observations become available. Thus unlike non-Bayesian approach where parameters of interest are assumed to be deterministic, but unknown constants, the Bayesian estimator seeks to estimate a parameter that is itself a random variable. Furthermore, Bayesian estimation can also deal with situations where the sequence of observations are not necessarily independent. Thus Bayesian estimation provides yet another alternative to the MVUE. This is useful when the MVUE does not exist or cannot be found.
Definition[edit]
Let be a hidden random vector variable, and let be a known random vector variable (the measurement or observation), both of them not necessarily of the same dimension. An estimator of is any function of the measurement . The estimation error vector is given by and its mean squared error (MSE) is given by the trace of error covariance matrix
where the expectation is taken over conditioned on . When is a scalar variable, the MSE expression simplifies to . Note that MSE can equivalently be defined in other ways, since
The MMSE estimator is then defined as the estimator achieving minimal MSE:
Properties[edit]
- When the means and variances are finite, the MMSE estimator is uniquely defined[1] and is given by:
-
- In other words, the MMSE estimator is the conditional expectation of given the known observed value of the measurements. Also, since is the posterior mean, the error covariance matrix is equal to the posterior covariance matrix,
- .
- The MMSE estimator is unbiased (under the regularity assumptions mentioned above):
- The MMSE estimator is asymptotically unbiased and it converges in distribution to the normal distribution:
-
- where is the Fisher information of . Thus, the MMSE estimator is asymptotically efficient.
-
- for all in closed, linear subspace of the measurements. For random vectors, since the MSE for estimation of a random vector is the sum of the MSEs of the coordinates, finding the MMSE estimator of a random vector decomposes into finding the MMSE estimators of the coordinates of X separately:
- for all i and j. More succinctly put, the cross-correlation between the minimum estimation error and the estimator should be zero,
Linear MMSE estimator[edit]
In many cases, it is not possible to determine the analytical expression of the MMSE estimator. Two basic numerical approaches to obtain the MMSE estimate depends on either finding the conditional expectation or finding the minima of MSE. Direct numerical evaluation of the conditional expectation is computationally expensive since it often requires multidimensional integration usually done via Monte Carlo methods. Another computational approach is to directly seek the minima of the MSE using techniques such as the stochastic gradient descent methods ; but this method still requires the evaluation of expectation. While these numerical methods have been fruitful, a closed form expression for the MMSE estimator is nevertheless possible if we are willing to make some compromises.
One possibility is to abandon the full optimality requirements and seek a technique minimizing the MSE within a particular class of estimators, such as the class of linear estimators. Thus, we postulate that the conditional expectation of given is a simple linear function of , , where the measurement is a random vector, is a matrix and is a vector. This can be seen as the first order Taylor approximation of . The linear MMSE estimator is the estimator achieving minimum MSE among all estimators of such form. That is, it solves the following the optimization problem:
One advantage of such linear MMSE estimator is that it is not necessary to explicitly calculate the posterior probability density function of . Such linear estimator only depends on the first two moments of and . So although it may be convenient to assume that and are jointly Gaussian, it is not necessary to make this assumption, so long as the assumed distribution has well defined first and second moments. The form of the linear estimator does not depend on the type of the assumed underlying distribution.
The expression for optimal and is given by:
where , the is cross-covariance matrix between and , the is auto-covariance matrix of .
Thus, the expression for linear MMSE estimator, its mean, and its auto-covariance is given by
where the is cross-covariance matrix between and .
Lastly, the error covariance and minimum mean square error achievable by such estimator is
Univariate case[edit]
For the special case when both and are scalars, the above relations simplify to
where is the Pearson’s correlation coefficient between and .
The above two equations allows us to interpret the correlation coefficient either as normalized slope of linear regression
or as square root of the ratio of two variances
- .
When , we have and . In this case, no new information is gleaned from the measurement which can decrease the uncertainty in . On the other hand, when , we have and . Here is completely determined by , as given by the equation of straight line.
Computation[edit]
Standard method like Gauss elimination can be used to solve the matrix equation for . A more numerically stable method is provided by QR decomposition method. Since the matrix is a symmetric positive definite matrix, can be solved twice as fast with the Cholesky decomposition, while for large sparse systems conjugate gradient method is more effective. Levinson recursion is a fast method when is also a Toeplitz matrix. This can happen when is a wide sense stationary process. In such stationary cases, these estimators are also referred to as Wiener–Kolmogorov filters.
Linear MMSE estimator for linear observation process[edit]
Let us further model the underlying process of observation as a linear process: , where is a known matrix and is random noise vector with the mean and cross-covariance . Here the required mean and the covariance matrices will be
Thus the expression for the linear MMSE estimator matrix further modifies to
Putting everything into the expression for , we get
Lastly, the error covariance is
The significant difference between the estimation problem treated above and those of least squares and Gauss–Markov estimate is that the number of observations m, (i.e. the dimension of ) need not be at least as large as the number of unknowns, n, (i.e. the dimension of ). The estimate for the linear observation process exists so long as the m-by-m matrix exists; this is the case for any m if, for instance, is positive definite. Physically the reason for this property is that since is now a random variable, it is possible to form a meaningful estimate (namely its mean) even with no measurements. Every new measurement simply provides additional information which may modify our original estimate. Another feature of this estimate is that for m < n, there need be no measurement error. Thus, we may have , because as long as is positive definite, the estimate still exists. Lastly, this technique can handle cases where the noise is correlated.
Alternative form[edit]
An alternative form of expression can be obtained by using the matrix identity
which can be established by post-multiplying by and pre-multiplying by to obtain
and
Since can now be written in terms of as , we get a simplified expression for as
In this form the above expression can be easily compared with weighed least square and Gauss–Markov estimate. In particular, when , corresponding to infinite variance of the apriori information concerning , the result is identical to the weighed linear least square estimate with as the weight matrix. Moreover, if the components of are uncorrelated and have equal variance such that where is an identity matrix, then is identical to the ordinary least square estimate.
Sequential linear MMSE estimation[edit]
In many real-time applications, observational data is not available in a single batch. Instead the observations are made in a sequence. One possible approach is to use the sequential observations to update an old estimate as additional data becomes available, leading to finer estimates. One crucial difference between batch estimation and sequential estimation is that sequential estimation requires an additional Markov assumption.
In the Bayesian framework, such recursive estimation is easily facilitated using Bayes’ rule. Given observations, , Bayes’ rule gives us the posterior density of as
The is called the posterior density, is called the likelihood function, and is the prior density of k-th time step. Here we have assumed the conditional independence of from previous observations given as
This is the Markov assumption.
The MMSE estimate given the k-th observation is then the mean of the posterior density . With the lack of dynamical information on how the state changes with time, we will make a further stationarity assumption about the prior:
Thus, the prior density for k-th time step is the posterior density of (k-1)-th time step. This structure allows us to formulate a recursive approach to estimation.
In the context of linear MMSE estimator, the formula for the estimate will have the same form as before: However, the mean and covariance matrices of and will need to be replaced by those of the prior density and likelihood , respectively.
For the prior density , its mean is given by the previous MMSE estimate,
- ,
and its covariance matrix is given by the previous error covariance matrix,
as per by the properties of MMSE estimators and the stationarity assumption.
Similarly, for the linear observation process, the mean of the likelihood is given by and the covariance matrix is as before
- .
The difference between the predicted value of , as given by , and its observed value gives the prediction error , which is also referred to as innovation or residual. It is more convenient to represent the linear MMSE in terms of the prediction error, whose mean and covariance are and .
Hence, in the estimate update formula, we should replace and by and , respectively. Also, we should replace and by and . Lastly, we replace by
Thus, we have the new estimate as new observation arrives as
and the new error covariance as
From the point of view of linear algebra, for sequential estimation, if we have an estimate based on measurements generating space , then after receiving another set of measurements, we should subtract out from these measurements that part that could be anticipated from the result of the first measurements. In other words, the updating must be based on that part of the new data which is orthogonal to the old data.
The repeated use of the above two equations as more observations become available lead to recursive estimation techniques. The expressions can be more compactly written as
The matrix is often referred to as the Kalman gain factor. The alternative formulation of the above algorithm will give
The repetition of these three steps as more data becomes available leads to an iterative estimation algorithm. The generalization of this idea to non-stationary cases gives rise to the Kalman filter. The three update steps outlined above indeed form the update step of the Kalman filter.
Special case: scalar observations[edit]
As an important special case, an easy to use recursive expression can be derived when at each k-th time instant the underlying linear observation process yields a scalar such that , where is n-by-1 known column vector whose values can change with time, is n-by-1 random column vector to be estimated, and is scalar noise term with variance . After (k+1)-th observation, the direct use of above recursive equations give the expression for the estimate as:
where is the new scalar observation and the gain factor is n-by-1 column vector given by
The is n-by-n error covariance matrix given by
Here, no matrix inversion is required. Also, the gain factor, , depends on our confidence in the new data sample, as measured by the noise variance, versus that in the previous data. The initial values of and are taken to be the mean and covariance of the aprior probability density function of .
Alternative approaches: This important special case has also given rise to many other iterative methods (or adaptive filters), such as the least mean squares filter and recursive least squares filter, that directly solves the original MSE optimization problem using stochastic gradient descents. However, since the estimation error cannot be directly observed, these methods try to minimize the mean squared prediction error . For instance, in the case of scalar observations, we have the gradient Thus, the update equation for the least mean square filter is given by
where is the scalar step size and the expectation is approximated by the instantaneous value . As we can see, these methods bypass the need for covariance matrices.
[edit]
In many practical applications, the observation noise is uncorrelated. That is, is a diagonal matrix. In such cases, we can update the estimate iteratively, using the scalar update formulas as:
Examples[edit]
Example 1[edit]
We shall take a linear prediction problem as an example. Let a linear combination of observed scalar random variables and be used to estimate another future scalar random variable such that . If the random variables are real Gaussian random variables with zero mean and its covariance matrix given by
then our task is to find the coefficients such that it will yield an optimal linear estimate .
In terms of the terminology developed in the previous sections, for this problem we have the observation vector , the estimator matrix as a row vector, and the estimated variable as a scalar quantity. The autocorrelation matrix is defined as
The cross correlation matrix is defined as
We now solve the equation by inverting and pre-multiplying to get
So we have and
as the optimal coefficients for . Computing the minimum
mean square error then gives .[2] Note that it is not necessary to obtain an explicit matrix inverse of to compute the value of . The matrix equation can be solved by well known methods such as Gauss elimination method. A shorter, non-numerical example can be found in orthogonality principle.
Example 2[edit]
Consider a vector formed by taking observations of a fixed but unknown scalar parameter disturbed by white Gaussian noise. We can describe the process by a linear equation , where . Depending on context it will be clear if represents a scalar or a vector. Suppose that we know to be the range within which the value of is going to fall in. We can model our uncertainty of by an aprior uniform distribution over an interval , and thus will have variance of . Let the noise vector be normally distributed as where is an identity matrix. Also and are independent and . It is easy to see that
Thus, the linear MMSE estimator is given by
We can simplify the expression by using the alternative form for as
where for we have
Similarly, the variance of the estimator is
Thus the MMSE of this linear estimator is
For very large , we see that the MMSE estimator of a scalar with uniform aprior distribution can be approximated by the arithmetic average of all the observed data
while the variance will be unaffected by data and the LMMSE of the estimate will tend to zero.
However, the estimator is suboptimal since it is constrained to be linear. Had the random variable also been Gaussian, then the estimator would have been optimal. Notice, that the form of the estimator will remain unchanged, regardless of the apriori distribution of , so long as the mean and variance of these distributions are the same.
Example 3[edit]
Consider a variation of the above example: Two candidates are standing for an election. Let the fraction of votes that a candidate will receive on an election day be Thus the fraction of votes the other candidate will receive will be We shall take as a random variable with a uniform prior distribution over so that its mean is and variance is A few weeks before the election, two independent public opinion polls were conducted by two different pollsters. The first poll revealed that the candidate is likely to get fraction of votes. Since some error is always present due to finite sampling and the particular polling methodology adopted, the first pollster declares their estimate to have an error with zero mean and variance Similarly, the second pollster declares their estimate to be with an error with zero mean and variance Note that except for the mean and variance of the error, the error distribution is unspecified. How should the two polls be combined to obtain the voting prediction for the given candidate?
As with previous example, we have
Here, both the . Thus, we can obtain the LMMSE estimate as the linear combination of and as
where the weights are given by
Here, since the denominator term is constant, the poll with lower error is given higher weight in order to predict the election outcome. Lastly, the variance of is given by
which makes smaller than Thus, the LMMSE is given by
In general, if we have pollsters, then where the weight for i-th pollster is given by and the LMMSE is given by
Example 4[edit]
Suppose that a musician is playing an instrument and that the sound is received by two microphones, each of them located at two different places. Let the attenuation of sound due to distance at each microphone be and , which are assumed to be known constants. Similarly, let the noise at each microphone be and , each with zero mean and variances and respectively. Let denote the sound produced by the musician, which is a random variable with zero mean and variance How should the recorded music from these two microphones be combined, after being synced with each other?
We can model the sound received by each microphone as
Here both the . Thus, we can combine the two sounds as
where the i-th weight is given as
See also[edit]
- Bayesian estimator
- Mean squared error
- Least squares
- Minimum-variance unbiased estimator (MVUE)
- Orthogonality principle
- Wiener filter
- Kalman filter
- Linear prediction
- Zero-forcing equalizer
Notes[edit]
- ^ «Mean Squared Error (MSE)». www.probabilitycourse.com. Retrieved 9 May 2017.
- ^ Moon and Stirling.
Further reading[edit]
- Johnson, D. «Minimum Mean Squared Error Estimators». Connexions. Archived from Minimum Mean Squared Error Estimators the original on 25 July 2008. Retrieved 8 January 2013.
- Jaynes, E.T. (2003). Probability Theory: The Logic of Science. Cambridge University Press. ISBN 978-0521592710.
- Bibby, J.; Toutenburg, H. (1977). Prediction and Improved Estimation in Linear Models. Wiley. ISBN 9780471016564.
- Lehmann, E. L.; Casella, G. (1998). «Chapter 4». Theory of Point Estimation (2nd ed.). Springer. ISBN 0-387-98502-6.
- Kay, S. M. (1993). Fundamentals of Statistical Signal Processing: Estimation Theory. Prentice Hall. pp. 344–350. ISBN 0-13-042268-1.
- Luenberger, D.G. (1969). «Chapter 4, Least-squares estimation». Optimization by Vector Space Methods (1st ed.). Wiley. ISBN 978-0471181170.
- Moon, T.K.; Stirling, W.C. (2000). Mathematical Methods and Algorithms for Signal Processing (1st ed.). Prentice Hall. ISBN 978-0201361865.
- Van Trees, H. L. (1968). Detection, Estimation, and Modulation Theory, Part I. New York: Wiley. ISBN 0-471-09517-6.
- Haykin, S.O. (2013). Adaptive Filter Theory (5th ed.). Prentice Hall. ISBN 978-0132671453.
Linear regression
Table of contents
Used software:
- Python-IDE: PyCharm Community 2017.2;
- Project Interpreter: python 3.5.3 (amd64);
- Used python packeges:
- matplotlib v2.1.0;
- tabulate v0.8.1;
- numpy v1.13.3.
Problem
- Implement linear regression;
- Configure the coefficient vector in two ways — gradient descent and evolution algorithm;
- To assess the quality of use MSE;
- Select hyperparameters and methods arbitrarily;
- Perform data visualization;
- Teach the code to take additional points from the console to check the already trained model.
Start dataset
Dataset.txt — dependence of objects: area, number of rooms, price.
Program structure
- DatasetProcessing:
- getDataset;
- getSeparetedData;
- getAvgData;
- getStandardDeviationData;
- getNormalizeDataset;
- getNormalizeInputDataset;
- getCombinedInputData.
- GradientDescent:
- calculateGradientDescent;
- calculateInputPrice.
- Visualization:
- build3DStartDataset (start dots);
- build3DRegressionLinearPlusInput (gradient);
- build3DRegressionLinear (all);
- build3DRegressionLinearGradientVsEvolution (together);
- build3DCostFunction (gradient);
- build2DInfo (together);
- build2DIndividualMSEEvolution (evolution).
- Evolution:
- startEvolution;
- calculateNewPrice (off):
- testEvo;
- weightStartIntialization;
- calculateMSE;
- mutationProbability;
- selectionIndividuals;
- testEvo;
- selection (off);
- crossing (off).
- presentation files:
- main.
Output (one start)
- example-outputGradient
- example-outputEvolution
Other results:
- google table
- outputGradient500Dynamic
- outputEvolution60000-50percentMutation
- outputEvolution60000-100percentMutation
Graphics (example-output):
FAQ
Gradient descent:
Evolution algorithm:
- Generate 7 coefficient vector (np.random.randn(3, 1));
2.1 Calculate MSE for each coefficient vector:
2.2 Find the top three MSE and coefficient vectors.
- Produce selection with mutation:
- top one on step 2.2 record to new_w0 without changes/mutations;
- other six descendats have two mandatory parents (mutation replaces first parent with probability given in main.py);
- for one descendats possibly only one mutation (probability 33% for each chromosome).
- evolution goes through a certain number of iterations given in main.py.
-
Question:
Что такое линейная регрессия?Answer:
Линейная регрессия — метод восстановления зависимости между двумя переменными. -
Question:
Что такое среднеквадратичное отклонение/ошибка?Answer:
Это функционал ошибки. Его преимущество (по сравнению с модулем отклюнения алгоритма/прогноза) заключается в том, что квадрат отклонения алгоритма от истинного ответа , содержащийся в нем, является гладкой функцией (имеет производную во всех точках), что позволит использовать минимизацию градиентными методами.
Для линейной модели (вместо , подставляя получается не функционал, а функция:
Ошибка зависит не от некоторой функции , а от вектора весов , который возможно подвергнуть оптимизации.
-
Question:
Как записать в матричном виде среднеквадратичную ошибку?Answer:
Среднеквадратичная ошибка в матричном виде:
, где:
— матрица «объекты-признаки».
— все признаки i-ого объекта.
— значения j-ого признака на всех объектах.
— вектор ответов.
-
Question:
Зачем использовать градиентный спуск, если существует способ получения аналитического решения задачи минимизации среднеквадратичной ошибки без оптимизации?Аналитическое решение:
Answer:
Основная проблема состоит в том, что необходимо обращать матрицу (число признаков на признаков) — число операций . На тысяче признаков — критическая сложность вычислений.Кроме того, при обращении могут возникнуть численные проблемы при определенном устройстве матриц.
-
Question:
Что такое градиентый спуск?Answer:
Градиентый спуск — это способ поиска решения оптимизационным подходом.Подход основан на том, что среднеквадратичная ошибка обладает свойствами выпуклой и гладкой функции.
Из выпуклости функции следует, что у функции существует один минимум, а из гладкости, что в каждой точки функции возможно вычислить градиент.
Градиент — это вектор, указывающий направление наибольшего возрастания некоторой величины.
Другими словами, градиент показывает сторону наискорейшего возрастания функции, а антиградиент показывает сторону наискорейшего убавания функции.
Алгоритм:
- Инициализация:
Каким-то образом находится начальное приближение для вектора весов: либо вектор заполняется нулями : , либо случайными небольшими числами.
-
Цикл t:
, где
— вектор градиентов этой точки;
— шаг, регулирует, на сколько далеко шагаем в сторону антиградиента (оптимальный шаг не слишком большой).
Градиентные шаги повторяются до наступления сходимости.
Сходимость можно определять:
-
как ситуацию, когда векторы весов от шага к шагу меняются не очень сильно:
; -
производить сравнение функционала ошибки между текущей иттерацией и предыдущей.
-
-
Question:
Настройка коэффециентов линейной регрессии генетикойAnswer:
-
Question:
Среднеквадратичная линейная регрессияAnswer:
other:
параметры сглаживания (2)
регуляризация
коэффициент сглаживания
матрица весов (нули)
градиент ошибки — производная по всем направлениям
эвристики для подбора матрицы весов (веса в отрезке)
критерий останова (епсилон)
количество итераций (2000), ошибка (0,063)
задача линейной регрессии
эмпирический риск
псевдообразная матрица (точное решение)
включать случайные в алгоритм для генетического разнообразия (чтобы не застрять в локальном минимуме)
цель — оптимизация функции ошибки (эмперического риска)
Links
- линейная регрессия;
https://ru.coursera.org/learn/supervised-learning/lecture/hCGR6/obuchieniie-linieinoi-rieghriessii
https://basegroup.ru/deductor/function/algorithm/linear-regression
http://www.machinelearning.ru/wiki/images/6/6d/Voron-ML-1.pdf - London Machine Learning Stydy Group. Lecture 1;
- Trace in linear algebra;
- Evolution algohithms [RUS].
Многие процедуры вывода преследуют общую цель — минимизировать среднее значение или сумму квадратов ошибок. Это имеет грандиозную историю, восходящую к Гауссу, имеет интуитивный смысл и поддается анализу и расчету. Это ядро аналитических методов от обычной линейной регрессии почти до всего машинного обучения и искусственного интеллекта.
В финансах это тоже заставляет нас делать ошибки! Почему это так и почему это то, о чем мы должны заботиться? Ответ приходит из понимания базовых допущений наших методов и очевидной неприменимости этих допущений к финансовым рынкам.
Все системы прогнозирования создают функцию наблюдаемых данных и используют ее для прогнозирования ненаблюдаемых данных. Сделанная ошибка оценивается и во время обучения используется для настройки функции прогнозирования с помощью некоторых параметров управления. В статистической обстановке мы обычно рассматриваем некоторые из этих параметров как «оценки» истинных значений вещей, которые имеют значение в математической модели природы. В машинном обучении и искусственном интеллекте мы игнорируем «значение» параметров (что на самом деле означают веса внутри искусственной нейронной сети?), Но они все еще существуют. В обоих случаях мы стремимся минимизировать некоторую совокупную меру непригодности модели для набора данных с известными ответами.
В статистике есть метод, называемый оценкой максимального правдоподобия (MLE), который предполагает, что мы хотим найти значения этих параметров, которые являются наиболее вероятной причиной данных, которые мы наблюдали, с учетом вероятностной модели для процесса генерации данных. Часто конкретный процесс генерации вероятностных данных имеет связанную с ним естественную функцию оценки, которая может быть получена с использованием метода MLE. Например, если ваши данные имеют неприятные толстые хвосты, они могут быть хорошо смоделированы распределением Лапласа, и из этого довольно просто показать, что вы хотите минимизировать среднюю абсолютную ошибку, а не среднеквадратичную ошибку — т.е. ваши данные требуют « Надежный Регресс .
Распределение вероятностей, которое говорит вам минимизировать сумму квадратов ошибок, представляет собой модель линейного аддитивного шума с гомоскедастичными (т. Е. Постоянной дисперсией), нормально распределенными ошибками.
Но вот проблема в финансах: существует довольно много неопровержимых доказательств того, что одно, что вы можете сказать о доходности фондового рынка с большой уверенностью, — это то, что обычно они не распределяются с постоянной дисперсией.
Хорошо, но это же всего лишь модель, не так ли? И как сказал Джордж Бокс: все модели неправильные, но некоторые модели полезны.
Вопрос в том, насколько вы неправы и каковы последствия того, что вы ошибаетесь? Когда ваш набор данных включает выброс в три или четыре стандартных отклонения, что не является чем-то необычным в контексте подгонки модели к финансовым данным, метод наименьших квадратов считает, что эта ошибка действительно, действительно, действительно, важно. И это искажает выбранные вами параметры, чтобы их не было. Это концепция «влияния» наблюдаемых данных. Каждая база данных по-разному влияет на общий выбор параметров в вашей модели, и не все они обрабатываются одинаково, когда используется неправильная функция оценки.
Реальные рыночные данные непостоянны, но демонстрируют сгустки высокой и низкой дисперсии, поэтому игнорирование этого свойства также означает, что вы уделяете гораздо больше внимания одним периодам времени, чем другим.
Это простой, но действительно важный момент: хотите ли вы соответствовать модели, которая будет верна в любое время или только во время финансового кризиса 2008 года?
Итак, какова хорошая модель доходности фондового рынка и существует ли она вообще? К счастью, да! Эмпирически ежедневная доходность хорошо согласуется с асимметричной моделью GARCH (1,1) с принципиально лептокуртотическим распределением вероятностей, такой как t Стьюдента или обобщенное распределение ошибок (о котором я подробно писал в другом месте). Это хорошо на протяжении многих десятилетий, и на данном этапе мне потребовалось бы серьезное изменение режима, чтобы прекратить его использовать. Просто проверьте, насколько лучше подогнанная гистограмма на графиках ниже!
Ok. Итак, возвращаясь к Джорджу Боксу, разве нормальная модель не полезна, даже если она неправильная? Да … но он делает ошибки, которые не нужно делать, когда у вас есть инструменты (то есть современные компьютеры), которые действительно могут обрабатывать данные, должным образом учитывая реальный характер данных — вместо того, чтобы предполагать, что вы можете получить отказаться от использования принципиально сломанной (в данном контексте) модели независимо и идентично распределенного белого шума.
Я подобрал те же данные для ежедневной общей доходности SPY ETF, используя как линейную регрессию, так и гораздо более реалистичную модель для процесса генерации данных, о котором говорилось выше. «Альфа» -модель в обоих случаях одинакова — линейная аддитивная модель шума с однодневным сроком обращения. Член реверсии статистически значим в обоих анализах, но принимает разные значения (-6,7% для линейной регрессии и -4,0% для модели GARCH) и указывается как более статистически значимый при использовании менее реалистичного метода линейной регрессии — p -Значение члена линейной регрессии составляет 0,00000022, тогда как для более реалистичной модели это всего лишь 0,0015. Это важные отличия!
Графики выше показывают эффективность элементарной торговой стратегии вне выборки для обоих методов. Стратегия заключается в том, чтобы позиция была равна знаку ожидаемой доходности на каждый день: то есть, если вы ожидаете, что рынок пойдет вверх, тогда открывайте длинную позицию по одному контракту, а если вы ожидаете, что она пойдет вниз, то открывайте короткую позицию по одному контракту с сделки, совершенные на момент закрытия. Мы не предполагаем никаких транзакционных издержек, что уже не является нереалистичным предположением, и никакого влияния на рынок. Альфа, основанная на реалистичной вероятностной модели, имеет коэффициент Шарпа 1,4, тогда как одна альфа, основанная на линейной регрессии, имеет коэффициент Шарпа 0,8.
Ясно видно, что модель с более надежной оценкой работает лучше, и это сказывается на использовании правильного метода, а не на том, чтобы просто забегать вперед, предполагая, что минимизация среднеквадратичной ошибки «достаточно хороша».
Если вам понравилась эта статья и вы хотите прочитать больше моих работ, рассмотрите мою книгу Приключения в области науки о финансовых данных, которая доступна в виде электронной книги для Kindle, а также в Apple Books и Google Книги. Исправленное второе издание будет опубликовано World Scientific.
Вы также можете заказать мягкую обложку прямо у меня на нашем веб-сайте.
Вы можете напрямую поддержать мои статьи на Medium, подписавшись по этой партнерской ссылке.
Среднеквадратичная ошибка (Mean Squared Error) – Среднее арифметическое (Mean) квадратов разностей между предсказанными и реальными значениями Модели (Model) Машинного обучения (ML):
Рассчитывается с помощью формулы, которая будет пояснена в примере ниже:
$$MSE = frac{1}{n} × sum_{i=1}^n (y_i — widetilde{y}_i)^2$$
$$MSEspace{}{–}space{Среднеквадратическая}space{ошибка,}$$
$$nspace{}{–}space{количество}space{наблюдений,}$$
$$y_ispace{}{–}space{фактическая}space{координата}space{наблюдения,}$$
$$widetilde{y}_ispace{}{–}space{предсказанная}space{координата}space{наблюдения,}$$
MSE практически никогда не равен нулю, и происходит это из-за элемента случайности в данных или неучитывания Оценочной функцией (Estimator) всех факторов, которые могли бы улучшить предсказательную способность.
Пример. Исследуем линейную регрессию, изображенную на графике выше, и установим величину среднеквадратической Ошибки (Error). Фактические координаты точек-Наблюдений (Observation) выглядят следующим образом:
Мы имеем дело с Линейной регрессией (Linear Regression), потому уравнение, предсказывающее положение записей, можно представить с помощью формулы:
$$y = M * x + b$$
$$yspace{–}space{значение}space{координаты}space{оси}space{y,}$$
$$Mspace{–}space{уклон}space{прямой}$$
$$xspace{–}space{значение}space{координаты}space{оси}space{x,}$$
$$bspace{–}space{смещение}space{прямой}space{относительно}space{начала}space{координат}$$
Параметры M и b уравнения нам, к счастью, известны в данном обучающем примере, и потому уравнение выглядит следующим образом:
$$y = 0,5252 * x + 17,306$$
Зная координаты реальных записей и уравнение линейной регрессии, мы можем восстановить полные координаты предсказанных наблюдений, обозначенных серыми точками на графике выше. Простой подстановкой значения координаты x в уравнение мы рассчитаем значение координаты ỹ:
Рассчитаем квадрат разницы между Y и Ỹ:
Сумма таких квадратов равна 4 445. Осталось только разделить это число на количество наблюдений (9):
$$MSE = frac{1}{9} × 4445 = 493$$
Само по себе число в такой ситуации становится показательным, когда Дата-сайентист (Data Scientist) предпринимает попытки улучшить предсказательную способность модели и сравнивает MSE каждой итерации, выбирая такое уравнение, что сгенерирует наименьшую погрешность в предсказаниях.
MSE и Scikit-learn
Среднеквадратическую ошибку можно вычислить с помощью SkLearn. Для начала импортируем функцию:
import sklearn
from sklearn.metrics import mean_squared_error
Инициализируем крошечные списки, содержащие реальные и предсказанные координаты y:
y_true = [5, 41, 70, 77, 134, 68, 138, 101, 131]
y_pred = [23, 35, 55, 90, 93, 103, 118, 121, 129]
Инициируем функцию mean_squared_error()
, которая рассчитает MSE тем же способом, что и формула выше:
mean_squared_error(y_true, y_pred)
Интересно, что конечный результат на 3 отличается от расчетов с помощью Apple Numbers:
496.0
Ноутбук, не требующий дополнительной настройки на момент написания статьи, можно скачать здесь.
Автор оригинальной статьи: @mmoshikoo
Фото: @tobyelliott