Comment modéliser une pièce biaisée avec un biais variant dans le temps?


10

Les modèles de pièces biaisées ont généralement un paramètre . Une façon d'estimer la partir d'une série de tirages est d'utiliser une distribution bêta a priori et de calculer la distribution postérieure avec vraisemblance binomiale.θθ=P(Head|θ)θ

Dans mes paramètres, en raison d'un processus physique étrange, les propriétés de ma pièce changent lentement et devient une fonction du temps . Mes données sont un ensemble de tirages ordonnés, c'est-à-dire . Je peux considérer que je n'ai qu'un seul tirage pour chaque sur une grille temporelle discrète et régulière.t { H , T , H , H , H , T , . . . } tθt{H,T,H,H,H,T,...}t

Comment modéliseriez-vous cela? Je pense à quelque chose comme un filtre de Kalman adapté au fait que la variable cachée est et garde la vraisemblance binomiale. Que puis-je utiliser pour modéliser pour garder l'inférence traitable?P ( θ ( t + 1 ) | θ ( t ) )θP(θ(t+1)|θ(t))

Modifiez les réponses suivantes (merci!) : Je voudrais modéliser comme une chaîne de Markov d'ordre 1 comme cela se fait dans les filtres HMM ou Kalman. La seule hypothèse que je peux faire est que est lisse. Je pourrais écrire avec un petit bruit gaussien (idée de filtre de Kalman), mais cela briserait l'exigence que doit rester dans . Suivant l'idée de @J Dav, je pourrais utiliser une fonction probit pour mapper la ligne réelle à , mais j'ai l'intuition que cela donnerait une solution non analytique. Une distribution bêta avec une moyenneθ ( t ) P ( θ ( t + 1 ) | θ ( t ) ) = θ ( t ) + ϵ ϵ θ [ 0 , 1 ] [ 0 , 1 ] θ ( t )θ(t)θ(t)P(θ(t+1)|θ(t))=θ(t)+ϵϵθ[0,1][0,1]θ(t) et une variance plus large pourrait faire l'affaire.

Je pose cette question car j'ai le sentiment que ce problème est si simple qu'il doit avoir été étudié auparavant.


Vous pouvez obtenir une estimation si vous avez un modèle sur la façon dont la proportion de succès change avec le temps. De nombreux modèles différents fonctionneraient et les estimations pourraient varier considérablement en fonction du modèle supposé. Je ne pense pas que la tractabilité soit un critère pratique pour choisir un modèle. Je voudrais comprendre le processus et chercher un modèle qui présente des caractéristiques qui correspondent au comportement que vous attendez.
Michael R. Chernick

@MichaelChernick: Merci. La seule hypothèse que je peux faire est que se déplace doucement et lentement. De plus, la tractabilité est un critère important car je souhaite en fait étendre la solution au cas multivarié avec des interdépendances non triviales. Une solution idéale serait analytique et donnerait une mise à jour «en ligne» des estimations des paramètres lorsqu'une nouvelle donnée arriverait. θ
repied2

1
Pouvez-vous quantifier ce que vous entendez par " se déplace en douceur et lentement?" Les entiers sont discrets et il existe des fonctions lisses qui prennent des valeurs arbitraires sur les entiers, ce qui signifie que le lissage ne donne aucune contrainte. Certaines notions de «lentement» ne donnent toujours aucune contrainte, tandis que d'autres le font. θ
Douglas Zare

Quelle est la vitesse "lentement", comme un changement de probabilité de 0,1 / unité de temps ou 0,001 ou ... Et combien de temps prévoyez-vous avoir une séquence? La plage est-elle relativement étroite (par exemple, 0,2 - 0,4) ou est-elle proche de (0,1)?
jbowman

@DouglasZare Par 'lisse', je voulais dire que E [θ_t + 1 | θ_t] = θ_t (ou très proche) et VAR (θ_t + 1 | θ_t) est petit. θ ne saute pas (sinon rien ne pourrait vraiment être fait).
repied2

Réponses:


2

Je doute que vous puissiez trouver un modèle avec une solution analytique, mais l'inférence peut toujours être rendue exploitable en utilisant les bons outils car la structure de dépendance de votre modèle est simple. En tant que chercheur en apprentissage automatique, je préférerais utiliser le modèle suivant car l'inférence peut être rendue assez efficace en utilisant la technique de propagation des attentes:

Soit le résultat du ème essai. Définissons le paramètre variant dans le tempstX(t)t

η(t+1)N(η(t),τ2) pour .t0

Pour lier avec , introduisez des variables latentesη(t)X(t)

Y(t)N(η(t),β2) ,

et le modèle doit êtreX(t)

Y (X(t)=1 si , et sinon. Vous pouvez en fait ignorer les et les marginaliser pour simplement dire , (avec cdf de standard normal) mais l'introduction de variables latentes facilite l'inférence. Notez également que dans votre paramétrage initial .Y(t)0X(t)=0Y(t)P[X(t)=1]=Φ(η(t)/β)Φθ(t)=η(t)/β

Si vous souhaitez implémenter l'algorithme d'inférence, jetez un œil à cet article . Ils utilisent un modèle très similaire afin que vous puissiez facilement adapter l'algorithme. Pour comprendre EP, la page suivante peut être utile. Si vous souhaitez poursuivre cette approche, faites-le moi savoir; Je peux fournir des conseils plus détaillés sur la façon de mettre en œuvre l'algorithme d'inférence.


0

Pour élaborer mon commentaire, un modèle tel que p (t) = p exp (-t) est un modèle qui est simple et permet d'estimer p (t) en estimant p utilisant une estimation du maximum de vraisemblance. Mais la probabilité diminue-t-elle vraiment de façon exponentielle. Ce modèle serait clairement erroné si vous observez des périodes de temps avec une fréquence de réussite élevée que vous avez observée à des moments antérieurs et ultérieurs. Le comportement oscillatoire pourrait être modélisé comme p (t) = p | sint |. Les deux modèles sont très maniables et peuvent être résolus par un maximum de vraisemblance mais ils donnent des solutions très différentes.000


1
Il semble que l'OP cherche à modéliser la probabilité de réussite au temps , , comme un processus markovien, et non à spécifier une forme fonctionnelle pour . tθ(t)θ(t)
Macro

1
@macro a raison, je ne suis pas en mesure de fournir une forme paramétrique pour , et ce n'est pas souhaitable car cette fonction peut être fluide. Je veux un modèle de Markov d'ordre 1 similaire à un modèle de Markov caché ou un filtre de Kalman, mais avec une variable cachée qui prend des valeurs réelles entre 0 et 1, et avec une probabilité de Bernouilli. theta(t)
repied2

@pierre D'accord, avant la modification, il semblait que vous cherchiez à estimer la variation de temps p et proposiez simplement le HMM comme approche possible. Je ne recommandais pas une forme fonctionnelle pour la façon dont elle change avec t. Je tenais à souligner que sans informations complémentaires, de nombreux modèles de différents types pourraient être construits et mes deux exemples devaient montrer que sans informations complémentaires, les choix de modèles pouvaient donner des réponses très différentes. Pourquoi voudriez-vous insister sur un HMM? Si l'on a fonctionné et ajusté vos données, pourquoi les rejeter car elles sont "non analytiques.
Michael R. Chernick

Je suggère que trouver des solutions pratiques n'est pas le moyen de résoudre des problèmes statistiques pratiques!
Michael R. Chernick

1
@MichaelChernick Enfin: je voudrais trouver une solution analytique car j'espère que c'est un problème bien connu et les gens ont proposé une solution analytique suffisamment flexible. Mais je suis d'accord avec notre suggestion selon laquelle la modélisation de la «dynamique réelle» est plus importante que le coût de calcul en général. Malheureusement, c'est pour les
mégadonnées

0

Votre probabilité change avec mais comme Michael l'a dit, vous ne savez pas comment. linéairement ou non? Cela ressemble à un problème de sélection de modèle où votre probabilité :tp

p=Φ(g(t,θ)) peut dépendre d'une fonction hautement non linéaire . est juste une fonction englobante qui garantit entre 0 et 1 probabilités.g(t,θ)Φ

Une approche exploratoire simple serait d'essayer plusieurs probits pour avec différents non linéaires et d'effectuer une sélection de modèle basée sur des critères d'information standard.Φg()g()

Pour répondre à votre question rééditée :

Comme vous l'avez dit, l'utilisation de probit impliquerait uniquement des solutions numériques, mais vous pouvez utiliser une fonction logistique à la place:

Fonction logistique:P[θ(t+1)]=11+exp(θ(t)+ϵ)

Linéarisé par:logP1P=θ(t)+ϵ

Je ne sais pas comment cela peut fonctionner sous l'approche du filtre de Kalman, mais je crois toujours qu'une spécification non linéaire comme ou bien d'autres sans terme aléatoire fait le travail. Comme vous pouvez le voir, cette fonction est "douce" dans le sens où elle est continue et différenciable. Malheureusement, l'ajout de générerait des sauts de la probabilité résultante, ce que vous ne voulez pas, donc mon conseil serait de supprimer .ϵ ϵθ(t+1)=at3+bt2+ct+dϵϵ

Probabilité de logit:P[Coint+1=H|t]=11+exp(θ(t))

Vous avez déjà randomnes dans l'événement bernoulli (chaîne de Markov) et vous en ajoutez une source supplémentaire en raison de . Ainsi, votre problème pourrait être résolu comme un Probit ou un Logit estimé par Maximum de vraisemblance avec comme variable explicative. Je suppose que vous convenez que cette parcimonie est très importante. Sauf si votre objectif principal est d'appliquer une méthode donnée (HMM et Kalman Filter) et de ne pas donner la solution valide la plus simple à votre problème.tϵt


Si vous utilisez un probit, une extension multivariée est simple car un probit multivarié peut être estimé. Les dépendances seraient implicites par la matrice de covariance de la distribution normale multivariée implicite.
JDav
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.