Merge branch 'main' of https://huggingface.co/spaces/Manyue-DataScientist/manyue-portfolio
Browse files- .gitattributes +38 -0
- .gradio/certificate.pem +34 -0
- app.py +68 -15
- data/admission_predictor_model.pkl +3 -0
- data/knowledge_base.json +295 -0
.gitattributes
CHANGED
@@ -1 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
*.pdf filter=lfs diff=lfs merge=lfs -text
|
|
|
1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
5 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
6 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
7 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
8 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
9 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
10 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
11 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
12 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
13 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
14 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
15 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
16 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
17 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
18 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
19 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
20 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
21 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
22 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
23 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
24 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
25 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
26 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
27 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
28 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
29 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
30 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
31 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
32 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
33 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
+
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
36 |
+
data/DA_Intro.mp4 filter=lfs diff=lfs merge=lfs -text
|
37 |
+
data/DA_Resume.pdf filter=lfs diff=lfs merge=lfs -text
|
38 |
+
data/ML_CV_Resume.pdf filter=lfs diff=lfs merge=lfs -text
|
39 |
*.pdf filter=lfs diff=lfs merge=lfs -text
|
.gradio/certificate.pem
CHANGED
@@ -1,3 +1,4 @@
|
|
|
|
1 |
-----BEGIN CERTIFICATE-----
|
2 |
MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
|
3 |
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
|
@@ -29,3 +30,36 @@ oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq
|
|
29 |
mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
|
30 |
emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
|
31 |
-----END CERTIFICATE-----
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<<<<<<< HEAD
|
2 |
-----BEGIN CERTIFICATE-----
|
3 |
MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
|
4 |
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
|
|
|
30 |
mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
|
31 |
emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
|
32 |
-----END CERTIFICATE-----
|
33 |
+
=======
|
34 |
+
-----BEGIN CERTIFICATE-----
|
35 |
+
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
|
64 |
+
-----END CERTIFICATE-----
|
65 |
+
>>>>>>> 092634efb981b24dc0269843d5bac8786f3cc666
|
app.py
CHANGED
@@ -913,7 +913,6 @@ body {
|
|
913 |
font-weight: 600;
|
914 |
cursor: pointer;
|
915 |
transition: all var(--transition-med);
|
916 |
-
margin-top: 20px;
|
917 |
box-shadow: var(--shadow-sm);
|
918 |
display: inline-block;
|
919 |
text-decoration: none;
|
@@ -962,7 +961,6 @@ body {
|
|
962 |
.project-link svg {
|
963 |
width: 16px;
|
964 |
height: 16px;
|
965 |
-
margin-right: 5px;
|
966 |
}
|
967 |
.da-section .project-title-text { color: var(--primary-da); }
|
968 |
.ml-section .project-title-text { color: var(--primary-ml); }
|
@@ -1286,7 +1284,36 @@ button:active {
|
|
1286 |
transform: scale(0.95);
|
1287 |
transition: transform 0.1s ease;
|
1288 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1289 |
"""
|
|
|
1290 |
# Load all content from JSON files
|
1291 |
try:
|
1292 |
profile_data = load_json("profile")
|
@@ -1360,7 +1387,6 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1360 |
<div class="click-to-view da-click">Click to view</div>
|
1361 |
</div>
|
1362 |
</div>
|
1363 |
-
</div>
|
1364 |
''')
|
1365 |
|
1366 |
with gr.Column():
|
@@ -1378,7 +1404,6 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1378 |
<div class="click-to-view ml-click">Click to view</div>
|
1379 |
</div>
|
1380 |
</div>
|
1381 |
-
</div>
|
1382 |
''')
|
1383 |
|
1384 |
with gr.Column():
|
@@ -1396,7 +1421,6 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1396 |
<div class="click-to-view cv-click">Click to view</div>
|
1397 |
</div>
|
1398 |
</div>
|
1399 |
-
</div>
|
1400 |
''')
|
1401 |
|
1402 |
gr.HTML(f'''
|
@@ -1412,8 +1436,8 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1412 |
<div class="timeline-content">
|
1413 |
<div class="timeline-title">Bachelor's in Commerce (89%)</div>
|
1414 |
<div class="timeline-details">
|
1415 |
-
<p class="timeline-location">University
|
1416 |
-
<p>Graduated with honors focusing on
|
1417 |
</div>
|
1418 |
</div>
|
1419 |
</div>
|
@@ -1424,8 +1448,8 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1424 |
<div class="timeline-content">
|
1425 |
<div class="timeline-title">Junior Software Engineer at Cognizant</div>
|
1426 |
<div class="timeline-details">
|
1427 |
-
<p class="timeline-location">
|
1428 |
-
<p>Developed
|
1429 |
</div>
|
1430 |
</div>
|
1431 |
</div>
|
@@ -1436,8 +1460,8 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1436 |
<div class="timeline-content">
|
1437 |
<div class="timeline-title">Post-Graduation in AI/ML (97%)</div>
|
1438 |
<div class="timeline-details">
|
1439 |
-
<p class="timeline-location">
|
1440 |
-
<p>Advanced studies in
|
1441 |
</div>
|
1442 |
</div>
|
1443 |
</div>
|
@@ -1470,7 +1494,7 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1470 |
|
1471 |
// Remove active class from all nodes
|
1472 |
timelineNodes.forEach(n => n.classList.remove('active'));
|
1473 |
-
|
1474 |
// If node wasn't active before, make it active
|
1475 |
if (!isActive) {
|
1476 |
this.classList.add('active');
|
@@ -1485,10 +1509,10 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1485 |
});
|
1486 |
</script>
|
1487 |
""")
|
1488 |
-
|
1489 |
# Contact section
|
1490 |
gr.HTML(generate_contact_html())
|
1491 |
-
|
1492 |
# Add a Gradio File component to serve the resume file
|
1493 |
gr.File(value="data/resume.pdf", label="Resume", interactive=False, visible=False)
|
1494 |
|
@@ -1496,11 +1520,40 @@ with gr.Blocks(title=f"{profile_data.get('name', 'Portfolio')}", css=portfolio_c
|
|
1496 |
da_button.click(show_data_analytics, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1497 |
ml_button.click(show_machine_learning, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1498 |
cv_button.click(show_computer_vision, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1499 |
-
|
1500 |
back_from_da.click(go_home, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1501 |
back_from_ml.click(go_home, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1502 |
back_from_cv.click(go_home, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1503 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1504 |
# Launch the app
|
1505 |
if __name__ == "__main__":
|
1506 |
demo.launch()
|
|
|
913 |
font-weight: 600;
|
914 |
cursor: pointer;
|
915 |
transition: all var(--transition-med);
|
|
|
916 |
box-shadow: var(--shadow-sm);
|
917 |
display: inline-block;
|
918 |
text-decoration: none;
|
|
|
961 |
.project-link svg {
|
962 |
width: 16px;
|
963 |
height: 16px;
|
|
|
964 |
}
|
965 |
.da-section .project-title-text { color: var(--primary-da); }
|
966 |
.ml-section .project-title-text { color: var(--primary-ml); }
|
|
|
1284 |
transform: scale(0.95);
|
1285 |
transition: transform 0.1s ease;
|
1286 |
}
|
1287 |
+
|
1288 |
+
/* Scroll to Top Button */
|
1289 |
+
.scroll-to-top {
|
1290 |
+
position: fixed;
|
1291 |
+
bottom: 20px;
|
1292 |
+
right: 20px;
|
1293 |
+
background: linear-gradient(45deg, var(--primary-da), var(--primary-cv));
|
1294 |
+
color: white;
|
1295 |
+
border: none;
|
1296 |
+
border-radius: 50%;
|
1297 |
+
width: 50px;
|
1298 |
+
height: 50px;
|
1299 |
+
font-size: 1.5rem;
|
1300 |
+
font-weight: bold;
|
1301 |
+
cursor: pointer;
|
1302 |
+
box-shadow: var(--shadow-md);
|
1303 |
+
display: none; /* Initially hidden */
|
1304 |
+
align-items: center;
|
1305 |
+
justify-content: center;
|
1306 |
+
transition: all var(--transition-med);
|
1307 |
+
z-index: 1000;
|
1308 |
+
}
|
1309 |
+
|
1310 |
+
.scroll-to-top:hover {
|
1311 |
+
transform: translateY(-3px);
|
1312 |
+
box-shadow: var(--shadow-lg);
|
1313 |
+
filter: brightness(1.1);
|
1314 |
+
}
|
1315 |
"""
|
1316 |
+
|
1317 |
# Load all content from JSON files
|
1318 |
try:
|
1319 |
profile_data = load_json("profile")
|
|
|
1387 |
<div class="click-to-view da-click">Click to view</div>
|
1388 |
</div>
|
1389 |
</div>
|
|
|
1390 |
''')
|
1391 |
|
1392 |
with gr.Column():
|
|
|
1404 |
<div class="click-to-view ml-click">Click to view</div>
|
1405 |
</div>
|
1406 |
</div>
|
|
|
1407 |
''')
|
1408 |
|
1409 |
with gr.Column():
|
|
|
1421 |
<div class="click-to-view cv-click">Click to view</div>
|
1422 |
</div>
|
1423 |
</div>
|
|
|
1424 |
''')
|
1425 |
|
1426 |
gr.HTML(f'''
|
|
|
1436 |
<div class="timeline-content">
|
1437 |
<div class="timeline-title">Bachelor's in Commerce (89%)</div>
|
1438 |
<div class="timeline-details">
|
1439 |
+
<p class="timeline-location">SRM University Chennai</p>
|
1440 |
+
<p>Graduated with honors focusing on Business and Finance.</p>
|
1441 |
</div>
|
1442 |
</div>
|
1443 |
</div>
|
|
|
1448 |
<div class="timeline-content">
|
1449 |
<div class="timeline-title">Junior Software Engineer at Cognizant</div>
|
1450 |
<div class="timeline-details">
|
1451 |
+
<p class="timeline-location">Chennai India</p>
|
1452 |
+
<p>Developed and maintained enterprise-grade Java applications for the Insurance domain</p>
|
1453 |
</div>
|
1454 |
</div>
|
1455 |
</div>
|
|
|
1460 |
<div class="timeline-content">
|
1461 |
<div class="timeline-title">Post-Graduation in AI/ML (97%)</div>
|
1462 |
<div class="timeline-details">
|
1463 |
+
<p class="timeline-location">George Brown college,Canada</p>
|
1464 |
+
<p>Advanced studies in AI/ML and data science.</p>
|
1465 |
</div>
|
1466 |
</div>
|
1467 |
</div>
|
|
|
1494 |
|
1495 |
// Remove active class from all nodes
|
1496 |
timelineNodes.forEach(n => n.classList.remove('active'));
|
1497 |
+
|
1498 |
// If node wasn't active before, make it active
|
1499 |
if (!isActive) {
|
1500 |
this.classList.add('active');
|
|
|
1509 |
});
|
1510 |
</script>
|
1511 |
""")
|
1512 |
+
|
1513 |
# Contact section
|
1514 |
gr.HTML(generate_contact_html())
|
1515 |
+
|
1516 |
# Add a Gradio File component to serve the resume file
|
1517 |
gr.File(value="data/resume.pdf", label="Resume", interactive=False, visible=False)
|
1518 |
|
|
|
1520 |
da_button.click(show_data_analytics, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1521 |
ml_button.click(show_machine_learning, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1522 |
cv_button.click(show_computer_vision, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1523 |
+
|
1524 |
back_from_da.click(go_home, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1525 |
back_from_ml.click(go_home, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1526 |
back_from_cv.click(go_home, inputs=None, outputs=[landing_section, da_section, ml_section, cv_section])
|
1527 |
|
1528 |
+
# Scroll to Top Button
|
1529 |
+
gr.HTML("""
|
1530 |
+
<button id="scrollToTop" class="scroll-to-top" aria-label="Scroll to Top">
|
1531 |
+
↑
|
1532 |
+
</button>
|
1533 |
+
<script>
|
1534 |
+
document.addEventListener('DOMContentLoaded', function () {
|
1535 |
+
const scrollToTopButton = document.getElementById('scrollToTop');
|
1536 |
+
|
1537 |
+
// Show or hide the button based on scroll position
|
1538 |
+
window.addEventListener('scroll', function () {
|
1539 |
+
if (window.scrollY > 300) {
|
1540 |
+
scrollToTopButton.style.display = 'flex'; // Use 'flex' for proper alignment
|
1541 |
+
} else {
|
1542 |
+
scrollToTopButton.style.display = 'none';
|
1543 |
+
}
|
1544 |
+
});
|
1545 |
+
|
1546 |
+
// Scroll to top when the button is clicked
|
1547 |
+
scrollToTopButton.addEventListener('click', function () {
|
1548 |
+
window.scrollTo({
|
1549 |
+
top: 0,
|
1550 |
+
behavior: 'smooth'
|
1551 |
+
});
|
1552 |
+
});
|
1553 |
+
});
|
1554 |
+
</script>
|
1555 |
+
""")
|
1556 |
+
|
1557 |
# Launch the app
|
1558 |
if __name__ == "__main__":
|
1559 |
demo.launch()
|
data/admission_predictor_model.pkl
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:ce3b362f3e71df83333977efb040610f5cdcf915d33e0a07c2d9a7894e8c6f3e
|
3 |
+
size 1718
|
data/knowledge_base.json
ADDED
@@ -0,0 +1,295 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"personal_details": {
|
3 |
+
"full_name": "Manyue Javvadi",
|
4 |
+
"current_location": "Canada",
|
5 |
+
"nationality": "Indian",
|
6 |
+
"professional_summary": "I'm Manyue Javvadi, a Machine Learning enthusiast passionate about creating projects that push the limits of innovation. Guided by the belief that 'Imagination is more powerful than knowledge,' as Albert Einstein once said, I strive to develop solutions that enhance human potential, not replace it. Explore the ideas and creations that aren't just part of the present—they're shaping a future where technology and humanity thrive together.",
|
7 |
+
"online_presence": {
|
8 |
+
"personal_website": "https://manyuejavvadi.netlify.app/",
|
9 |
+
"linkedin": "https://www.linkedin.com/in/manyue-javvadi-datascientist/",
|
10 |
+
"portfolio": "https://manyue-datascientist-portfolio.streamlit.app/",
|
11 |
+
"blog_posts": [
|
12 |
+
{
|
13 |
+
"title": "The Questions That Kept Me Up All Night: My Sleepless Struggle to Understand NLP",
|
14 |
+
"focus": "Deep dive into Natural Language Processing challenges and insights"
|
15 |
+
},
|
16 |
+
{
|
17 |
+
"title": "Are We Headed Toward the Next Threat, Bigger Than a Nuclear Bomb?",
|
18 |
+
"focus": "Analysis of AI safety and ethical considerations"
|
19 |
+
},
|
20 |
+
{
|
21 |
+
"title": "How KNN Works: A Simple Explanation of Nearest Neighbors",
|
22 |
+
"link":"https://knn-algorithm-explained-by-manyue-javvadi.hashnode.dev/how-knn-works-a-simple-explanation-of-nearest-neighbors",
|
23 |
+
"focus": "Educational content breaking down ML algorithms"
|
24 |
+
}
|
25 |
+
]
|
26 |
+
},
|
27 |
+
"career_transition": {
|
28 |
+
"key_decision": "Transitioned from Java development at Cognizant to pursue ML/AI dream in Canada",
|
29 |
+
"motivation": "Combining technical expertise with innovation and commerce skills in ML/AI field",
|
30 |
+
"current_focus": "Building practical ML solutions while advancing education in Canada"
|
31 |
+
}
|
32 |
+
},
|
33 |
+
"education": {
|
34 |
+
"postgraduate": [
|
35 |
+
{
|
36 |
+
"course_name": "Big Data Analytics",
|
37 |
+
"institution": "Georgian College",
|
38 |
+
"graduation_year": "2024",
|
39 |
+
"gpa": "8.3/10",
|
40 |
+
"achievements": ["Dean's List Honoree"],
|
41 |
+
"key_courses": [
|
42 |
+
"Advanced Machine Learning",
|
43 |
+
"Big Data Processing",
|
44 |
+
"Statistical Analysis",
|
45 |
+
"Data Visualization"
|
46 |
+
]
|
47 |
+
},
|
48 |
+
{
|
49 |
+
"course_name": "Applied AI Solutions Development Program",
|
50 |
+
"institution": "George Brown College",
|
51 |
+
"graduation_year": "2025",
|
52 |
+
"gpa": "3.8/4.0",
|
53 |
+
"key_courses": [
|
54 |
+
"Deep Learning Applications",
|
55 |
+
"Natural Language Processing",
|
56 |
+
"Computer Vision",
|
57 |
+
"MLOps and Deployment"
|
58 |
+
]
|
59 |
+
}
|
60 |
+
],
|
61 |
+
"undergraduate": {
|
62 |
+
"course_name": "Bachelor of Commerce",
|
63 |
+
"institution": "SRM University Chennai",
|
64 |
+
"graduation_year": "2021",
|
65 |
+
"grade": "89%",
|
66 |
+
"relevance": "Strong foundation in business analytics and decision-making"
|
67 |
+
},
|
68 |
+
"ongoing_learning": {
|
69 |
+
"certifications_in_progress": ["MLOps Specialization"],
|
70 |
+
"areas_of_focus": [
|
71 |
+
"Model Deployment",
|
72 |
+
"CI/CD for ML",
|
73 |
+
"ML System Design"
|
74 |
+
]
|
75 |
+
}
|
76 |
+
},
|
77 |
+
"skills": {
|
78 |
+
"technical_skills": {
|
79 |
+
"machine_learning": {
|
80 |
+
"core": ["Supervised Learning", "Unsupervised Learning", "Neural Networks"],
|
81 |
+
"frameworks": ["scikit-learn", "TensorFlow", "PyTorch"],
|
82 |
+
"focus_areas": ["NLP", "Computer Vision", "Recommendation Systems"]
|
83 |
+
},
|
84 |
+
"programming": {
|
85 |
+
"primary": ["Python", "Java"],
|
86 |
+
"libraries": ["NumPy", "Pandas", "Matplotlib", "Seaborn"],
|
87 |
+
"tools": ["Git", "Docker"]
|
88 |
+
},
|
89 |
+
"data": {
|
90 |
+
"databases": ["SQL", "MongoDB"],
|
91 |
+
"visualization": ["Tableau", "PowerBI"],
|
92 |
+
"processing": ["PySpark", "Hadoop"]
|
93 |
+
},
|
94 |
+
"deployment": {
|
95 |
+
"web": ["Streamlit", "Flask"],
|
96 |
+
"mlops": ["MLflow", "DVC"],
|
97 |
+
"version_control": ["Git", "GitHub"]
|
98 |
+
}
|
99 |
+
},
|
100 |
+
"soft_skills": [
|
101 |
+
{
|
102 |
+
"skill": "Problem-solving",
|
103 |
+
"context": "Developed innovative solutions in ML projects"
|
104 |
+
},
|
105 |
+
{
|
106 |
+
"skill": "Communication",
|
107 |
+
"context": "Technical blog writing and project documentation"
|
108 |
+
},
|
109 |
+
{
|
110 |
+
"skill": "Adaptability",
|
111 |
+
"context": "Successfully transitioned from commerce to tech"
|
112 |
+
},
|
113 |
+
{
|
114 |
+
"skill": "Leadership",
|
115 |
+
"context": "Led project teams and initiatives"
|
116 |
+
}
|
117 |
+
]
|
118 |
+
},
|
119 |
+
"professional_experience": {
|
120 |
+
"work_experience": [
|
121 |
+
{
|
122 |
+
"position": "Junior Software Engineer",
|
123 |
+
"company": "Cognizant",
|
124 |
+
"duration": "June 2021 – September 2023",
|
125 |
+
"location": "Chennai, India",
|
126 |
+
"achievements": [
|
127 |
+
"Developed and maintained Java applications in insurance domain",
|
128 |
+
"Led migration from SVN to GitHub for improved development workflow",
|
129 |
+
"Collaborated with cross-functional teams for requirement analysis",
|
130 |
+
"Resolved version conflicts during application upgrades"
|
131 |
+
],
|
132 |
+
"technologies_used": [
|
133 |
+
"Java",
|
134 |
+
"Spring Framework",
|
135 |
+
"SQL",
|
136 |
+
"Git"
|
137 |
+
],
|
138 |
+
"impact": "Improved documentation process and streamlined backend storage"
|
139 |
+
}
|
140 |
+
]
|
141 |
+
},
|
142 |
+
"projects": {
|
143 |
+
|
144 |
+
"major_projects": [
|
145 |
+
{
|
146 |
+
"name": "AI-Powered POS System",
|
147 |
+
"description": "An innovative Point-of-Sale system that integrates cutting-edge AI technologies to revolutionize restaurant operations. The project involves proprietary algorithms and novel approaches that are currently under IP discussion with my institution.",
|
148 |
+
"impact": "Aims to transform how restaurants handle operations, inventory, and customer service using AI",
|
149 |
+
"skills_used": ["Python", "MLOps", "Deep Learning", "Computer Vision"],
|
150 |
+
"status": "Under active development - MVP phase",
|
151 |
+
"confidentiality_note": "Full details under IP review"
|
152 |
+
},
|
153 |
+
{
|
154 |
+
"name": "Innovative E-commerce Enhancement",
|
155 |
+
"description": "Developing a transformative feature for Shopify stores that leverages advanced NLP and ML techniques to significantly improve customer engagement and conversion rates.",
|
156 |
+
"impact": "Early testing shows promising results in customer interaction metrics",
|
157 |
+
"skills_used": ["Python", "Neural Networks", "NLP", "Deep Learning"],
|
158 |
+
"status": "In development - proprietary solution",
|
159 |
+
"confidentiality_note": "Details limited due to potential commercial application"
|
160 |
+
},
|
161 |
+
{
|
162 |
+
"name": "Smart Nutrition Recommendation System",
|
163 |
+
"description": "An innovative system that scans product barcodes and analyzes nutrition labels to provide personalized healthy alternatives based on user preferences and dietary requirements.",
|
164 |
+
"key_features": [
|
165 |
+
"Barcode scanning integration",
|
166 |
+
"Nutrition analysis engine",
|
167 |
+
"Personalized recommendation algorithm",
|
168 |
+
"Alternative product matching"
|
169 |
+
],
|
170 |
+
"technical_details": {
|
171 |
+
"data_processing": "Real-time nutrition label analysis",
|
172 |
+
"ml_models": "Custom recommendation engine using collaborative and content-based filtering",
|
173 |
+
"user_profiling": "Dynamic preference learning system"
|
174 |
+
},
|
175 |
+
"skills_used": ["Python", "Computer Vision", "Machine Learning", "Recommendation Systems"],
|
176 |
+
"status": "Prototype development",
|
177 |
+
"target_impact": "Making healthy food choices more accessible and personalized"
|
178 |
+
},
|
179 |
+
{
|
180 |
+
"name": "AI Portfolio Assistant",
|
181 |
+
"description": "A sophisticated chatbot leveraging LLM technology to provide dynamic, context-aware responses about my professional journey and projects.",
|
182 |
+
"key_features": [
|
183 |
+
"Natural language understanding",
|
184 |
+
"Context-aware responses",
|
185 |
+
"Dynamic job description analysis"
|
186 |
+
],
|
187 |
+
"skills_used": ["Python", "LLMs", "Streamlit", "NLP"],
|
188 |
+
"status": "Deployed and actively enhanced"
|
189 |
+
}
|
190 |
+
],
|
191 |
+
"algorithm_practice_projects": [
|
192 |
+
{
|
193 |
+
"name": "University Admission Predictor",
|
194 |
+
"type": "Linear Regression Implementation",
|
195 |
+
"description": "Built from scratch to understand core regression concepts, helping Jamboree predict admission chances for international students.",
|
196 |
+
"technical_focus": "Custom implementation of linear regression without using sklearn",
|
197 |
+
"skills_developed": ["Statistical Analysis", "Algorithm Implementation", "Feature Engineering"],
|
198 |
+
"accuracy": "81% on test data",
|
199 |
+
"status": "Completed"
|
200 |
+
},
|
201 |
+
{
|
202 |
+
"name": "LoanTap Credit Assessment",
|
203 |
+
"type": "Logistic Regression Implementation",
|
204 |
+
"description": "Custom-built logistic regression model for credit worthiness prediction",
|
205 |
+
"technical_focus": "Implementation of logistic regression from scratch",
|
206 |
+
"skills_developed": ["Credit Risk Modeling", "Binary Classification", "Model Evaluation"],
|
207 |
+
"status": "Completed"
|
208 |
+
},
|
209 |
+
{
|
210 |
+
"name": "OLA Driver Retention Analysis",
|
211 |
+
"type": "Ensemble Learning",
|
212 |
+
"description": "Predictive modeling for driver churn using various ensemble techniques",
|
213 |
+
"technical_focus": "Implementation of multiple base models and ensemble methods",
|
214 |
+
"skills_developed": ["Ensemble Methods", "Feature Selection", "Model Comparison"],
|
215 |
+
"status": "Completed"
|
216 |
+
},
|
217 |
+
{
|
218 |
+
"name": "AdEase View Prediction",
|
219 |
+
"type": "Time Series Analysis",
|
220 |
+
"description": "Forecasting Wikipedia page views for optimal ad placement",
|
221 |
+
"technical_focus": "Implementation of time series models and forecasting techniques",
|
222 |
+
"skills_developed": ["Time Series Analysis", "Forecasting", "Data Preprocessing"],
|
223 |
+
"status": "Completed"
|
224 |
+
}
|
225 |
+
]
|
226 |
+
},
|
227 |
+
|
228 |
+
"personal_journey": {
|
229 |
+
"dietary_changes": "I transitioned to a vegetarian diet in 2021 but resumed eating non-veg in 2023 to address nutritional deficiencies.",
|
230 |
+
"life_changes": [
|
231 |
+
{
|
232 |
+
"date": "December 2023",
|
233 |
+
"event": "I relocated to Canada for advanced education."
|
234 |
+
}
|
235 |
+
],
|
236 |
+
"mindset": "I am resilient, adaptable, and innovation-driven. I thrive on challenges and use setbacks as opportunities for growth.",
|
237 |
+
"motto_or_vision": "To leverage AI/ML to create solutions that enhance user experiences while retaining the human touch."
|
238 |
+
},
|
239 |
+
"goals_and_aspirations": {
|
240 |
+
"short_term": [
|
241 |
+
"I want to master advanced machine learning techniques.",
|
242 |
+
"I aim to expand my portfolio with impactful projects.",
|
243 |
+
"I seek to secure a role as an ML engineer in Canada."
|
244 |
+
],
|
245 |
+
"long_term": [
|
246 |
+
"I plan to develop AI solutions that redefine retail and hospitality experiences.",
|
247 |
+
"I aspire to establish a successful AI startup.",
|
248 |
+
"I want to mentor aspiring AI professionals."
|
249 |
+
]
|
250 |
+
},
|
251 |
+
"frequently_asked_questions": [
|
252 |
+
{
|
253 |
+
"question": "Why did you transition from commerce to AI/ML?",
|
254 |
+
"answer": "The transition from commerce to AI/ML was a result of an unexpected turn in my career journey. After completing my bachelor's degree in commerce, I was fortunate to land a job at Cognizant Technology Solutions as a Programmer Trainee. Despite having no prior experience in coding or programming, coming from a core commerce background, my eagerness to learn and quick adaptability caught the attention of my trainers. CTS gave me an opportunity, and during the initial 45-day training period and assessment, I performed exceptionally well in Java, which helped me secure a position in the development team. This was a remarkable achievement, as many computer science graduates typically end up in support roles. However, after working for a year, I realized that while I had developed a passion for programming, I still felt disconnected from my original interest in business and commerce. I knew I had to find a way to combine both my love for programming and my interest in business. That's when I discovered data science and machine learning, which seemed like the perfect intersection. With this newfound clarity, I embarked on a journey to master AI/ML, and now, I am truly enjoying the blend of technology and business that this field offers."
|
255 |
+
},
|
256 |
+
{
|
257 |
+
"question": "What unique qualities do you bring to the table?",
|
258 |
+
"answer": "I combine technical expertise with a fresh perspective, thanks to my diverse background. My adaptability and ability to think beyond conventional approaches are my biggest strengths."
|
259 |
+
},
|
260 |
+
{
|
261 |
+
"question": "What is your most innovative project?",
|
262 |
+
"answer": "The most innovative project is an AI-powered Point-of-Sale (POS) system designed to Reduce order time and order errors. I'm currently working with my college to secure intellectual property rights, so I can't disclose the full extent of its capabilities at this time. However, I'm confident that this project has the potential to significantly impact the restaurant industry."
|
263 |
+
}
|
264 |
+
],
|
265 |
+
"career_development": {
|
266 |
+
"short_term": [
|
267 |
+
"I aim to continue mastering ML concepts through projects and coursework.",
|
268 |
+
"I want to build a portfolio that highlights my ability to solve real-world problems.",
|
269 |
+
"I plan to secure an ML engineer role in retail or hospitality AI."
|
270 |
+
],
|
271 |
+
"long_term": [
|
272 |
+
"I intend to build AI tools that make a global impact in the retail sector.",
|
273 |
+
"I aspire to launch my own AI startup focused on innovative NLP applications.",
|
274 |
+
"I want to contribute to the AI/ML community by mentoring and sharing knowledge."
|
275 |
+
],
|
276 |
+
"perspectives": {
|
277 |
+
"market_outlook": {
|
278 |
+
"job_market": "I believe market conditions are less about timing and more about preparation. While the market may have its ups and downs, I focus on building strong skills and creating impactful projects. Quality efforts and continuous learning will always find opportunities.",
|
279 |
+
"value_proposition": "My unique combination of commerce background and technical skills allows me to understand both business needs and technical implementation, making me a valuable asset regardless of market conditions.",
|
280 |
+
"strategy": "I'm using this time to enhance my skills, build innovative projects, and stay ahead of industry trends. It's about creating value, not just seeking opportunities."
|
281 |
+
},
|
282 |
+
"learning_philosophy": "I believe in learning through practical implementation. Rather than just studying algorithms, I build projects from scratch to truly understand the concepts.",
|
283 |
+
"work_approach": "I focus on creating solutions that enhance human capabilities rather than replacing them. Every project I undertake aims to solve real-world problems.",
|
284 |
+
"career_perspective": "Success in tech isn't just about coding skills—it's about understanding business problems and creating meaningful solutions."
|
285 |
+
},
|
286 |
+
"common_queries": {
|
287 |
+
"weather": "I'm focused on ML/AI and career discussions. For weather information, I'd recommend checking local weather services.",
|
288 |
+
"market_conditions": "Rather than focusing on market conditions, I believe in creating value through continuous learning and practical projects. Would you like to know about my approach to standing out in any market?",
|
289 |
+
"general": "I'm Manyue's portfolio assistant, focused on discussing my professional journey, projects, and ML/AI expertise. For general queries, I'd encourage exploring more relevant resources."
|
290 |
+
}
|
291 |
+
}
|
292 |
+
|
293 |
+
}
|
294 |
+
|
295 |
+
|