From a call earlier today with a Beijing based tea...
# support
r
From a call earlier today with a Beijing based team at Xiaoan Digital: http://xiaoandigital.com/ - IOT related anomaly detection use case. Checking who might be best to engage in this conversation and analysis. Word document below has more detail on situation. . Thanks! ****************
yang.jia@xiaoandigital.com
Hi Rick,
thanks for the PPT. I put our questions down here
1. what's the relationship between single variable and multivariate anomaly detection? From the example in online documation, It looks to me multivariate anomaly detection is based on simple summation of deviation of all single variables and their forcasts, greater than some threshold values and decide the false points. Otherwise, what's the mechanism? is there correlation factors in consideration? https://docs.nixtla.io/docs/capabilities-online-anomaly-detection-univariate_vs_multivariate_anomaly_detection
2. how to detect abormal temperature on a time patterned temperature curve (sinusodal shape due to day and night temperature difference) I attached an example for our sensor's curve in chemical plant, it didn't return the satisfactory results regardliess confidence level tuning. My teammate Yusheng adjusted stepsize and horizon, and didn't get better result either.
3. https://github.com/Nixtla/nixtla/issues/641 this is Yusheng's specific code questions
4. can you please provide license options? is there any pay-as-you-go billing option?
best regards
Yang jia
Sounds great and thank you @Han Wang! It is an OEM style solution where they will be providing this service / solution to chemical plant customers. Thanks for reviewing the material they shared. We can start with an email response if you like, or I can set a meeting. Jia explained their challenge well here: https://grain.com/share/recording/a5623774-973c-43fa-b5a9-dc340aae93ad/1OFKNfcEi2ngpNwuINgP2ZyalGhuMMgCzNXLHzB5 Key challenge is to get TimeGPT optimized.
h
this is a very good and typical AD case
we also need @Marco to take a look at this
r
I believe @Marco is on holiday this week then on European time for the next month. Hopefully we can get his assessment asynchronously, and then take call separately with them being in Beijing.
h
we can chat with them next week
🙌 1
meanwhile, if they want, I can have a brief chat with them this week
🙌 1
m
Hello! I can answer their question on the Github issue or we can set up a meeting, let me know what works best 🙂
r
Please confirm on Github. I'll also work to get a meeting set. Thanks @Marco and welcome back 🙂
👍 1
h
@Rick Vierra please also add me to the meeting
🙌 1
r
Xiaoan Digital: Input going towards the placeholder call for tomorrow. Thank you @Marco for the github responses already provided - and looking into the following topic raised. Hi Rick, thank you very much for your support and response on the github questions, we've been trying the tuning parameters. Sure we can have a second meeting arranged at you and your data scientist's convenience. We still have some issues on anomaly detection on the sinusodal shape temperature curve. If your scientist can provide some similar examples, that'll be great. And we can discuss the billing options too. 杨嘉 13391850385 常州晓安数智科技有限责任公司 www.xiaoandigital.com 北京市朝阳区北辰东路8号汇宾大厦A0910室
👍 1
Nixtla实验 (1).docx
👍 1
m
I just finished running some experiments for Xiaoan for their anomaly detection needs. My understanding is that whenever there's an anomaly, the current jumps to 2. Otherwise, it's 0. So, using only that series, I managed these scores:
Copy code
F1-score: 0.71
Precision: 0.99
Recall: 0.55
Basically, it means that when TimeGPT flags an anomaly, it's right 99% of the time, and it successfully identifies 55% of the anomalies. I calculated this based on whether the current is 0 or not. If 0, normal value, if greater than 0, I label it as an anomaly (ground truth). This is maybe wrong, but that's what I understand from their process. These results are obtained when sampling the data at every minute. So, there is a bit of a lag when detecting anomalies. but it's in the order of seconds. Here's the TimeGPT call with the anomaly detection method:
Copy code
current_anomalies_1T = client.detect_anomalies(df=clean_df, freq="1min", model="timegpt-1-long-horizon")
and plot:
Detecting on the "pressure" time series seems also reasonable, although I don't know exactly what is anomalous to have a reasonable ground truth and measure precision/recall.
The plot for PV is was done sampling the data every 15s. So, still a bit of a lag, but not as large as when sampling at every minute.
r
Thanks for this progress Marco! I'll see if they are available to discuss these results shortly!