It entirely depends on the the work that you want to get done. As you mentioned, there are different parameters on which you will have to decide what to do.
Learning curve -- Does not matter if a framework is big or small, there will be initial learning curve to understand the structure. You gotta acclimatize yourself with the behaviour of the framework.
Performance -- You should decide on the features you require because a heavy framework like Symphony2 can be an overkill for sure if you really do not want a lot. Why would you waste your resources for the things you don't want? So go for something that is light-weight but is enough to get the job done without killing performance.
Planning -- Plan things for the future. May be a light-weight framework like cilex will be enough for the time being but supporting the structure might become difficult in future. Plus, if a feature is not there you might have to re-invent the wheel again to create one.
With a bigger framework that has got a lot of features already included and a nice community support, you will save yourself from wasting your time creating something that is already there.
So keep these things in mind and then choose the right step wisely. Hope that helps.