2016-09-13 3 views
0

저는 최근에 축구 통계에 관심이있었습니다. 지금 나는 Python 3.5 (paper-link)로 유명한 Dixon-Coles 모델을 구현하고 싶다.Python의 볼록 최적화

기본 문제는이 백서에 설명 된 모델에서 최대 매개 변수 결과가있는 가능성 함수를 최대화해야한다는 것입니다.

예 : 하나의 Bundesliga 시즌에 대한 우도 함수가 37 개의 매개 변수가됩니다. 물론 해당하는 음수 대수 우도 함수의 최소화를 수행합니다. 나는이 log 기능이 엄격하게 볼록이므로 최적화가 너무 어렵지 않아야한다는 것을 알고 있습니다. 또한 분석 그라디언트가 포함되어 있지만 매개 변수 수가 ~ 10을 초과하므로 SciPy-Package의 최적화 방법이 실패했습니다 (scipy.optimize.minimize()).

내 질문 : ~ 40 개의 독립적 인 매개 변수와 관련된 최적화 문제에 가장 적합한 다른 최적화 기술은 무엇입니까?

다른 방법에 대한 힌트는 훌륭합니다!

+0

더 많은 정보를 제공해야합니다! 당신은 로그의 볼록성에 대해 논했지만, 전체 볼록도 볼록합니까? 그렇다면 볼록한 프로그래밍 솔버를 사용하십시오 (scipy에서는 사용할 수 없으며 solver ECOS 또는 SCS에서는 cvxpy를 사용하지 마십시오). 또한 귀하의 코드를 보여주지 않으시겠습니까? 어떤 옵티 마이저를 사용 했습니까? 실패는 무엇을 의미합니까 (가능한 많은 문제가 있습니까?)? – sascha

답변

0

볼록 및 비 볼록 공간 모두에서 작동하는 Metaheuristic 알고리즘을 사용할 수 있습니다. 아마도 가장 유명한 것은 Genetic algorithm입니다. 구현하기 쉽고 개념은 간단합니다. Genetic 알고리즘의 가장 좋은 점은 대부분의 최적화 문제를 해결하기 위해이를 적용 할 수 있다는 것입니다.