Application predicting class attendance based on weather » Historie » Verze 14
Zuzana Káčereková, 2021-03-19 14:44
1 | 1 | Alex Konig | h1. Application predicting class attendance based on weather |
---|---|---|---|
2 | |||
3 | h2. Data |
||
4 | |||
5 | 3 | Roman Kalivoda | The application uses datasets containing historical information about the weather on campus and attendance based on JIS card verifications and historical timetable information |
6 | 1 | Alex Konig | * JIS data http://opendata.zcu.cz/Snimace-JIS.html |
7 | * Timetable data http://opendata.zcu.cz/Obsazeni-mistnosti.html |
||
8 | * Weather data http://opendata.zcu.cz/Energeticky-dispecink.html |
||
9 | 4 | Zuzana Káčereková | * Authentication system http://opendata.zcu.cz/Autentizacni-system.html |
10 | 1 | Alex Konig | |
11 | 4 | Zuzana Káčereková | The timetable provides the baseline attendance, JIS card data can be used to find out the real attendance (and therefore fluctuation in attendance). The authentication data could be used to find out how many people have logged in during classes. |
12 | 1 | Alex Konig | |
13 | h3. Weather |
||
14 | |||
15 | 3 | Roman Kalivoda | Weather data for model training contains the following information: date, temperature, wind, rain, light in k lux |
16 | 1 | Alex Konig | |
17 | User can input weather values manually, by selecting options from a form |
||
18 | * values: temperature, wind, rain, sunny/overcast/partly cloudy |
||
19 | 4 | Zuzana Káčereková | There also is an option for data to be automatically downloaded from a server upon request from the user. |
20 | 1 | Alex Konig | |
21 | Current options for data sources |
||
22 | * RSS from yr.no http://www.kanonbra.com/rss/yr_forecast_rss.php?language=en_US&location=%C4%8Ceahkka/Plze%C5%88sk%C3%BD_Kraj/Plze%C5%88 |
||
23 | 3 | Roman Kalivoda | * JSON from wttr.in http://wttr.in/Plzen,czechia?format=j1 |
24 | 4 | Zuzana Káčereková | App provides the ability to ask for data from today or days in the future, and give hourly time specifics (this time will be then approximated into values morning, noon, afternoon, night) |
25 | 1 | Alex Konig | Again the app will use the following values: temperature, wind, rain, sunny/overcast/partly cloudy |
26 | |||
27 | Notes: |
||
28 | 3 | Roman Kalivoda | Values sunny/overcast/partly cloudy will be translated into lux values |
29 | 1 | Alex Konig | The temperature will be evaluated with certain tolerance (probably determined experimentally) |
30 | |||
31 | h3. Datasets |
||
32 | |||
33 | Datasets are updated every once in a while with new data. How often update? |
||
34 | -> has to trigger re-training the prediction model, probably do not want to update too often. |
||
35 | Detect when there's new data, check every day? every x days? |
||
36 | 4 | Zuzana Káčereková | |
37 | New OpenData is added monthly. How complex will be the training? Can it be done on the target device? Will there be a server from which a new model could be downloaded? |
||
38 | |||
39 | 3 | Roman Kalivoda | h2. Design |
40 | |||
41 | h3. The output of the Algorithm |
||
42 | |||
43 | We need to determine what should be the actual prediction: |
||
44 | 11 | Zuzana Káčereková | * A specific number of students in a class, |
45 | 3 | Roman Kalivoda | * information about relative occupancy rate. |
46 | |||
47 | 1 | Alex Konig | h2. Motivation |
48 | |||
49 | 8 | Zuzana Káčereková | Attendance prediction could be used to deliver crucial course info and material. The lecturers could use this information ahead of seeing the real attendance to adjust the material or schedule important events. Attendees could be motivated with bonus attendance points on slow days, announced whenever low attendance is expected. Alternatively, interesting connections regarding attendance could be discovered in the making of this project. |
50 | 1 | Alex Konig | |
51 | h2. Implementation |
||
52 | |||
53 | 3 | Roman Kalivoda | The application is a mobile app, possibly WebGL app |
54 | 1 | Alex Konig | It is developed in unity which provides more possibilities for export with modifications for given platforms |
55 | |||
56 | 9 | Zuzana Káčereková | * Mobile app |
57 | 6 | Zuzana Káčereková | Android support 5.0 and higher, use Unity UI tools to provide touch support. |
58 | Deliver an apk of the application to download outside of the Playstore or optionally, create a developer account (perhaps at a later date once the project is finished). |
||
59 | |||
60 | 9 | Zuzana Káčereková | * WebGL app |
61 | 6 | Zuzana Káčereková | Test options to embed a Unity Canvas app in a simple website. Possible issues with support in various browsers, but unlike the mobile app, the university could provide hosting. |
62 | |||
63 | h3. Prediction |
||
64 | |||
65 | 10 | Zuzana Káčereková | * Naive Bayes classifier |
66 | * Neural network |
||
67 | 6 | Zuzana Káčereková | |
68 | Could classify days into high-medium-low attendance days, or more granularly (very high, very low...). |
||
69 | |||
70 | Risks: |
||
71 | We have very little experience with neural networks. Bayesian classification might provide good results with much less effort. |
||
72 | 12 | Zuzana Káčereková | |
73 | Further research on technologies: |
||
74 | * https://docs.microsoft.com/en-us/archive/msdn-magazine/2017/august/test-run-deep-neural-network-io-using-csharp |
||
75 | 13 | Zuzana Káčereková | * https://nugetmusthaves.com/Tag/neural |
76 | 14 | Zuzana Káčereková | * https://www.codeproject.com/Articles/5286497/Starting-with-Keras-NET-in-Csharp-Train-Your-First |
77 | 12 | Zuzana Káčereková | |
78 | A neural network library could be used with C#, test integration with Unity. |