Suppose we have a dataset $D\in\mathbb{R}^{n\times p}$, where $n = 60000$ samples/observations and $p = 3072$ variables. To my understanding one would perform cross validation if found in one of the following scenarios:
1.) model evaluation (my use case scenario)
2.) model selection
3.) model comparison
My approach involves splitting $D$ into $90\%/10\%$ as $D_{train}$ and $D_{test}$ equivalently. Then performing 10-fold stratified CV on $D_{train}$ which is further subdivided into $D_{learn}$ and $D_{valid}$ after every fold in order to get an estimate of model's generalisation performance and finally test on the untouched $D_{test}$ to get the final performance estimate.
After every fold $k$ the model is trained on $D_{learn}$ for 100 epochs and evaluated on $D_{valid}$. The average performance on $D_{valid}$ over the $k$ folds is 62% and 90% on $D_{learn}$. Finally, I evaluate the model's performance on the untouched test set $D_{test}$ to see if it agrees with the average performance on the $D_{valid}$ after the $k$ folds, and the results are pretty bad leading to 22% accuracy on $D_{test}$ and an average 62% accuracy on $D_{valid}$ which brings me to the following questions.
Q1) Is my approach valid?
Q2) I've read that sometimes is appropriate to just split the dataset into train/validation/test if the dataset is sufficiently large. What does sufficiently large mean and how do we define it or understand that our dataset falls under this scenario?
Q3) Is it normal to account such divergence between $D_{learn}$ and $D_{valid}$ during the folds?
Q4) Could the divergence in performance between average accuracy on the 10 folds and final test set ($D_{valid}$ vs $D_{test}$) be because I don't perform stratified cross validation on $D_{test}$?
Q5) When and under which condition it is necessary and sufficient to perform cross validation on the test set as well as on the train set?
Thanks!