← Portfolio
04Portfolio / Key projects and research

Field data, shipped as services

Three projects where messy, incomplete field data became services that operators and growers use every day, each told through the problems it hit and how they were solved, followed by four key papers.

  1. 01 Anomaly detection · water supply Finding leaks in flow data Accuracy 90% · F1 score 0.63
  2. 02 Forecasting · smart farming Forecasting the greenhouse climate R² 92% · MAE (℃) 1.1
  3. 03 LLM agents · smart farming AI consulting reports written by LLM agents report per farm Weekly · always-on advice 24/7
01

Anomaly detection · water supply·Municipal waterworks · at the AI startup

Finding leaks in flow data

A detection model and dashboard that flags suspected leak blocks from water-network flow data in real time. It started by redefining field records, which never logged when a leak began, into something a model could learn from.

PythonXGBoostEMAFeature engineeringREST API

90%
Accuracy+19%p
0.63
F1 score+0.32
20+
engineered features
water-leak-detection / dashboard
Live flow monitoring · AI detection2 suspected leaks
0h6121824

FlowEMA baselineSuspected leak

TimeBlockStatusConf.
03:20A-12Leak92%
04:15B-05Leak88%
05:30C-09Watch65%
Redrawn example of the service screen
  1. EMA baseline on the chart

    A moving baseline drawn over the flow so field staff can judge anomalies at a glance

  2. AI alert list

    Suspected leak blocks arrive as live alerts, replacing manual watching

  3. REST API

    Results served over an API and wired into the existing control system

Delivered as a service the operators could use the same day, not as a report
  1. Problem 1Defining a leak

    Turning vague field records into training data

    Problem

    No record of when leaks began

    • Only "repair finished" was logged, never the start of the leak
    • Labelling by repair date would teach the model that a leak in progress is normal

    Solution

    Back-traced labels

    Windows
    The day before a repair is abnormal; a week after the repair onward is normal
    Context
    Season, weekday and pressure joined in to keep only real leak patterns

    Missing data became an analysis problem: incomplete records redefined as a learnable dataset

  2. Problem 2The alarm line

    From a hand-drawn straight line to a data-driven curve

    Problem

    A fixed straight threshold

    • The minimum-night-flow (MNF) limit was a straight line set from experience
    • It ignored seasons and changing use, so normal flow was often flagged as a leak

    Solution

    A moving EMA baseline

    EMA
    An exponential moving average that weights recent data and follows the trend
    Seasonality
    A baseline that follows the flow instead of a fixed line cut false alarms sharply
    Fixed lineNormal summer flow → false alarmReal leak caughtEMA baseline

    A rule of thumb replaced by a statistical baseline, so alarms could be trusted

  3. Problem 3Model upgrade

    A classifier that sees non-linear interactions

    Problem

    Limits of a single baseline

    • Leaks show up through non-linear mixes of weekday, season, hour and pressure, not flow alone
    • A one-variable threshold misses small leaks and shifting patterns

    Solution

    A machine-learning classifier

    Feature engineering
    20+ features: hour, weekday, season, moving-average gaps, pressure volatility
    XGBoost
    A boosted-tree ensemble for non-linear patterns
    Threshold tuning
    Cut-off tuned on the precision-recall trade-off to keep false alarms down

    Accuracy

    Before 71%
    After 90%

    F1 score

    Before 0.31
    After 0.63

    Accuracy 71% → 90%, F1 0.31 → 0.63

02

Forecasting · smart farming·2025 · smart-farm company

Forecasting the greenhouse climate

A model inside the greenhouse management software that forecasts the next 24 hours of temperature and climate, then simulates when vents and heaters should run. The multivariate mix of climate, control and weather-forecast data was redesigned from the input structure up.

PyTorchPatchTSTMulti-stream embeddingTrend decomposition

92%
R²stable
1.1
MAE (℃)stable
1/3
input features
smart-greenhouse / control-simulation
Climate forecast · simulation (temperature)AI control ON
10:0013:0016:0020:00now25℃20℃

MeasuredAI forecast

TimeForecastVentHeater
14:0024.5℃Open 30%OFF
15:0023.8℃Open 10%OFF
16:0021.2℃ClosedON (stage 1)
Redrawn example of the service screen
  1. Inside the farm software

    The model runs inside the existing control system and shows the next 24 hours live

  2. Control simulation

    Simulated vent and heater timing for proactive crop management

  3. Production-grade accuracy

    MAE 1.1 and R² 92%, steady enough to guide control through season changes

Finished as a running service that helps growers decide
  1. Problem 1Many inputs

    Past the limits of RNNs with a transformer and stream embeddings

    Problem

    RNN and LSTM hit a ceiling

    • RNN-family models degrade as inputs grow in number and complexity
    • Climate, control and forecast variables were mixed with no sense of what each meant

    Solution

    A new architecture

    PatchTST
    Patches of the series capture long context and cut compute
    Multi-stream embedding
    Climate, control and weather groups enter as separate streams, keeping their character while learning how they interact
    ClimateControl settingsWeather forecast
    Multi-stream embeddingPatchTSTNext 24 hours

    Learning climate-control interactions by design raised forecast accuracy

  2. Problem 2Control data

    Reshaping tangled control settings for learning

    Problem

    Semi-structured data and too many columns

    • Settings per device and per time slot were tangled and awkward as model input
    • Flattening them exploded the feature count, slowing training and inviting overfitting

    Solution

    Domain-driven compression

    Period mapping
    Settings re-assigned to the 4–6 periods the greenhouse controller actually runs
    One-third the features
    Merging and restructuring kept the signal and cut dimensions sharply

    Domain knowledge built into the data structure itself

  3. Problem 3Robustness

    A forecast that holds up through seasons and new settings

    Problem

    Errors spike when conditions shift

    • A new season or new greenhouse settings shifted the data distribution and accuracy collapsed
    • Adapting meant collecting lots of new data and retraining every time

    Solution

    Trend decomposition

    Trend
    A moving average over the input window serves as the baseline and absorbs sudden shifts
    Residuals
    Predicting only the deviation instead of the full value makes learning easier
    Autoformer
    Its idea, applied here, improved accuracy by 80–100% under changing conditions

    R²

    Stable 92%
    Changing 84%

    MAE (℃)lower is better

    Stable 1.1
    Changing 1.7

    Under changing conditions: R² 84%, MAE 1.7, still within range

03

LLM agents · smart farming·2025 · smart-farm company

AI consulting reports written by LLM agents

A service that moves a consultant’s diagnosis into an LLM-agent workflow and writes each farm a weekly report with charts, tables and concrete actions. It ships to real strawberry growers as PDF and web links and keeps improving on their feedback.

LangGraphLLM AgentPythonAuto charts & tables

Weekly
report per farm
24/7
always-on advice
PDF · Web
shipped to growers
smart-farm-consulting / report.pdf
Weekly strawberry growth reportMarch, week 2

Weekly mean temperature

Mean temperature18.5℃ OK
Mean humidity82.0% Too humid
Action plan

Night humidity stays above 90% for long stretches, so grey-mould risk is high.

– Raise the night heating set point by 1℃
– Add 30 minutes of ventilation before sunrise

Redrawn example of the service screen
  1. Charts and tables

    Not a text reply: a full report with time-series charts and summary tables, fully automated

  2. Actionable advice

    Concrete steps such as "raise night heating by 1℃" or "add a ventilation slot"

  3. In growers’ hands

    Sent weekly to strawberry farms as PDF and web links, refined with their feedback

A service that extends the expert, not one that replaces them
  1. Problem 1Access to experts

    Scaling scarce expertise with AI

    Problem

    Not enough consultants

    • Smart farms are multiplying faster than consultants, and small farms can’t afford them
    • Advice only came with a visit, so nobody watched the data in between

    Solution

    Extending the expert

    Logic as a workflow
    A working consultant’s diagnosis process rebuilt as a LangGraph agent workflow
    Always on
    Advice for every farm, any time, anywhere
    Climate and growth dataConsultant’s diagnosis
    LangGraph agentsWeekly report

    AI carries the expert’s know-how further instead of replacing them

  2. Problem 2Flexible reports

    Reports that re-plan themselves instead of filling a template

    Problem

    A rigid template

    • Every farm got the same template, with no room for exceptions or surprises
    • Numbers were listed without explaining why things happened

    Solution

    Dynamic generation with agents

    Dynamic outline
    The outline and content are rebuilt for each farm’s data and situation
    Mixed media
    The agent decides which chart or table explains each point and places it

    A way of reporting that can follow qualitative criteria and requests

Real sampleOne page of an agent-written weekly report

Weekly above-ground chart: a week of inside temperature, humidity, CO2, VPD and PAR with flagged periods

Inside temperature, in detail

Daily charts and statistics

  • Daytime mean 18.27–20.36℃, daytime high 25.97–27.48℃
  • Night mean 9.94–12.54℃, with several nights down to 7.85–8.91℃
  • Mean up 1.27℃ on the previous week

Range advice

  • For late harvest, keep 16–24℃ by day and 10–14℃ by night
  • Repeated 8℃ nights slow fruit growth and colouring: insulate first, heat minimally

Related variables

  • By day RH fell to 44% as PAR rose, pushing VPD up to 1.8 kPa
  • At night RH stayed at 80–93% with VPD 0.11–0.28, so only condensation needs watching
R

Papers·2020–2024

Key research

Four papers that started from field problems. Sea temperature, dental 3D scans, construction contracts and hateful comments: different data, the same work of filling the gaps in real-world data.

4
key papers
3
KCI journals
1
industry collaboration

2024.11Conference

Sea temperature forecasts that use weather forecasts

Multi-group time-series AI for ocean forecasting: sea-temperature prediction combining weather forecasts and deep learning

R² 0.992MAE 0.383

Problem
Warming seas bring red tides and fishery losses, yet existing models overfit one area and need 1–2 years of data for a new one
Data
Ocean time series from several Korean sea areas, plus weather forecasts
Method
A multi-group GRU encoder-decoder that learns all areas together, with future weather forecasts fed to the decoder
Result
Best of the compared models at R² 0.9919 and MAE 0.3832

KMIS International ConferencePaper →

2024.12KCI

Segmenting real clinical 3D dental scans

Evaluating deep-learning models for segmenting real-world 3D dental scans: MeshSegNet and DilatedToothSegNet

MDSC 0.919upper jaw · lower 0.908

Problem
Earlier work trained only on complete mouths, so it struggled with crowns, implants and partial scans from real clinics
Data
910 clinical intraoral scans (475 upper, 435 lower) labelled into 15 classes: gum and 14 teeth
Method
MeshSegNet and DilatedToothSegNet trained under the same settings and compared after graph-cut refinement
Result
DilatedToothSegNet (16,000 cells) beat MeshSegNet by 2–3.5% on both DSC and mIoU

Smart Media Journal 13(12)Paper →

2023.11KCIWith Hyundai Engineering

Classifying clauses in EPC bid documents

Clause classification for risk management in EPC ITB documents: a deep-learning ensemble approach

Top-5 93%accuracy 76% · 57 clauses

Problem
Bid documents run to about 100 pages with little time to review, and detecting only risky clauses failed for lack of labelled data
Data
Pre-trained on 12 GB including 77 EPC contracts and public legal corpora; fine-tuned on 6,190 items from 23 contracts labelled with 57 FIDIC clauses
Method
An ensemble of our own ITB-ELECTRA and Legal-BERT, with back-translation through five languages and MLM augmentation
Result
Accuracy 76.38%, with the right clause among the top five 93.03% of the time

KIPS Trans. Software and Data Engineering 12(11)Paper →

2020.12KCI

Sorting hateful comments into seven types

Bias & Hate Speech Detection Using Deep Learning: Multi-channel CNN Modeling with Attention

F1 0.703Ko-BERT 0.684

Problem
Dictionary-based detection missed slang and context, and could not say which kind of hate or bias a comment showed
Data
2.03M entertainment-news comments for embeddings; 137,111 labelled as offensive, abuse, gender, politics, age, religion or race
Method
A three-channel CNN over embeddings, Bi-LSTM and attention, joined by a highway network
Result
Weighted F1 0.7032 against 0.6843 for Ko-BERT, with the widest gap on rare types such as race (0.610 vs 0.406)

J. KIICE 24(12)Paper →