File size: 10,615 Bytes
6d78783
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Hiper Feature Pipeline - Training Monitor</title>
    <script src="https://cdn.tailwindcss.com"></script>
    <link href="https://unpkg.com/[email protected]/dist/aos.css" rel="stylesheet">
    <script src="https://unpkg.com/[email protected]/dist/aos.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
    <script src="https://unpkg.com/feather-icons"></script>
    <style>
        .glass-effect {
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }
        .progress-bar {
            transition: width 0.5s ease-in-out;
        }
    </style>
</head>
<body class="bg-gray-900 text-white min-h-screen">
    <!-- Navigation -->
    <nav class="glass-effect fixed w-full z-50">
        <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
            <div class="flex justify-between h-16 items-center">
                <div class="flex items-center">
                    <i data-feather="cpu" class="h-8 w-8 text-blue-400"></i>
                    <span class="ml-2 text-xl font-bold">Hiper Feature Pipeline</span>
                </div>
                <div class="hidden md:block">
                    <div class="ml-10 flex items-baseline space-x-4">
                        <a href="index.html" class="px-3 py-2 rounded-md text-sm font-medium hover:bg-blue-600">Dashboard</a>
                        <a href="datasets.html" class="px-3 py-2 rounded-md text-sm font-medium hover:bg-blue-600">Datasets</a>
                        <a href="training.html" class="px-3 py-2 rounded-md text-sm font-medium bg-blue-700 text-white">Training</a>
                        <a href="models.html" class="px-3 py-2 rounded-md text-sm font-medium hover:bg-blue-600">Models</a>
                        <a href="system-health.html" class="px-3 py-2 rounded-md text-sm font-medium hover:bg-blue-600">System Health</a>
                    </div>
                </div>
            </div>
        </div>
    </nav>

    <!-- Main Content -->
    <main class="pt-20 pb-16">
        <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
            <!-- Header -->
            <div class="text-center py-12" data-aos="fade-down">
                <h1 class="text-4xl font-bold mb-4">Training Monitor</h1>
                <p class="text-xl text-gray-300">Seguimiento y gestión de sesiones de entrenamiento con CQRS</p>
            </div>

            <!-- Start Training Section -->
            <div class="glass-effect rounded-lg p-6 mb-12" data-aos="fade-up">
                <h2 class="text-2xl font-bold mb-6">Iniciar Nueva Sesión de Entrenamiento</h2>
                <div class="grid grid-cols-1 md:grid-cols-2 gap-6">
                    <div>
                        <label class="block text-sm font-medium mb-2">Model Architecture</label>
                        <select class="w-full bg-gray-800 border border-gray-700 rounded-lg p-3">
                            <option>LSTM Neural Network</option>
                            <option>Transformer Architecture</option>
                            <option>Temporal Convolution Network</option>
                            <option>GRU Network</option>
                        </select>
                    </div>
                    <div>
                        <label class="block text-sm font-medium mb-2">Dataset</label>
                        <select class="w-full bg-gray-800 border border-gray-700 rounded-lg p-3">
                            <option>SP500_2023</option>
                            <option>NASDAQ_Stocks</option>
                            <option>Crypto_Market</option>
                            <option>Forex_Major_Pairs</option>
                        </select>
                    </div>
                    <div>
                        <label class="block text-sm font-medium mb-2">Epochs</label>
                        <input type="number" class="w-full bg-gray-800 border border-gray-700 rounded-lg p-3" value="100">
                    </div>
                    <div>
                        <label class="block text-sm font-medium mb-2">Batch Size</label>
                        <input type="number" class="w-full bg-gray-800 border border-gray-700 rounded-lg p-3" value="32">
                    </div>
                </div>
                <button class="mt-6 w-full py-3 bg-green-600 hover:bg-green-700 rounded-lg font-medium">Iniciar Entrenamiento</button>
            </div>

            <!-- Active Training Sessions -->
            <h2 class="text-2xl font-bold mb-6" data-aos="fade-up">Sesiones Activas</h2>
            <div class="glass-effect rounded-lg p-6 mb-12" data-aos="fade-up">
                <div class="flex items-center justify-between mb-6">
                    <div>
                        <h3 class="font-bold text-lg">LSTM_SP500_Training</h3>
                        <p class="text-sm text-gray-400">Started 2 hours ago</p>
                    </div>
                    <span class="px-3 py-1 bg-yellow-500 rounded-full text-sm">Training</span>
                </div>
                
                <div class="mb-6">
                    <div class="flex justify-between mb-2">
                        <span>Progress</span>
                        <span>65%</span>
                    </div>
                    <div class="w-full bg-gray-700 rounded-full h-3">
                        <div class="bg-blue-500 h-3 rounded-full progress-bar" style="width: 65%"></div>
                    </div>
                </div>

                <div class="grid grid-cols-2 md:grid-cols-4 gap-4 mb-6">
                    <div class="text-center p-3 bg-gray-800 rounded-lg">
                        <div class="text-xl font-bold">32/100</div>
                        <div class="text-sm text-gray-400">Epochs</div>
                    </div>
                    <div class="text-center p-3 bg-gray-800 rounded-lg">
                        <div class="text-xl font-bold">0.0234</div>
                        <div class="text-sm text-gray-400">Training Loss</div>
                    </div>
                    <div class="text-center p-3 bg-gray-800 rounded-lg">
                        <div class="text-xl font-bold">0.0312</div>
                        <div class="text-sm text-gray-400">Validation Loss</div>
                    </div>
                    <div class="text-center p-3 bg-gray-800 rounded-lg">
                        <div class="text-xl font-bold">94.7%</div>
                        <div class="text-sm text-gray-400">Accuracy</div>
                    </div>
                </div>

                <div class="flex space-x-3">
                    <button class="flex-1 py-2 bg-blue-600 hover:bg-blue-700 rounded-lg">View Details</button>
                    <button class="flex-1 py-2 bg-yellow-600 hover:bg-yellow-700 rounded-lg">Pause</button>
                    <button class="flex-1 py-2 bg-red-600 hover:bg-red-700 rounded-lg">Stop</button>
                </div>
            </div>

            <!-- Training History -->
            <h2 class="text-2xl font-bold mb-6" data-aos="fade-up">Historial de Entrenamiento</h2>
            <div class="overflow-x-auto">
                <table class="w-full glass-effect rounded-lg" data-aos="fade-up">
                    <thead>
                        <tr class="border-b border-gray-700">
                            <th class="px-6 py-3 text-left">Model</th>
                            <th class="px-6 py-3 text-left">Dataset</th>
                            <th class="px-6 py-3 text-left">Status</th>
                            <th class="px-6 py-3 text-left">Accuracy</th>
                            <th class="px-6 py-3 text-left">Duration</th>
                            <th class="px-6 py-3 text-left">Actions</th>
                        </tr>
                    </thead>
                    <tbody class="divide-y divide-gray-700">
                        <tr>
                            <td class="px-6 py-4">Transformer_NASDAQ</td>
                            <td class="px-6 py-4">NASDAQ_Stocks</td>
                            <td class="px-6 py-4"><span class="px-2 py-1 bg-green-500 rounded-full text-xs">Completed</span></td>
                            <td class="px-6 py-4">96.2%</td>
                            <td class="px-6 py-4">4h 23m</td>
                            <td class="px-6 py-4">
                                <button class="text-blue-400 hover:text-blue-300">View</button>
                            </td>
                        </tr>
                        <tr>
                            <td class="px-6 py-4">TCN_Forex</td>
                            <td class="px-6 py-4">Forex_Major_Pairs</td>
                            <td class="px-6 py-4"><span class="px-2 py-1 bg-green-500 rounded-full text-xs">Completed</span></td>
                            <td class="px-6 py-4">92.8%</td>
                            <td class="px-6 py-4">3h 45m</td>
                            <td class="px-6 py-4">
                                <button class="text-blue-400 hover:text-blue-300">View</button>
                            </td>
                        </tr>
                        <tr>
                            <td class="px-6 py-4">GRU_Crypto</td>
                            <td class="px-6 py-4">Crypto_Market</td>
                            <td class="px-6 py-4"><span class="px-2 py-1 bg-red-500 rounded-full text-xs">Failed</span></td>
                            <td class="px-6 py-4">-</td>
                            <td class="px-6 py-4">1h 12m</td>
                            <td class="px-6 py-4">
                                <button class="text-blue-400 hover:text-blue-300">View</button>
                            </td>
                        </tr>
                    </tbody>
                </table>
            </div>
        </div>
    </main>

    <!-- Footer -->
    <footer class="glass-effect mt-12 py-6">
        <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
            <p class="text-gray-400">Hiper Feature Pipeline Store v6.0 - Training Monitor</p>
        </div>
    </footer>

    <script>
        // Initialize AOS
        AOS.init({
            duration: 800,
            easing: 'ease-in-out',
            once: true
        });

        // Initialize Feather Icons
        feather.replace();
    </script>
</body>
</html>