원문 캡처 · thedailywtf.com
원문 캡처 · thedailywtf.com

신경망 전문가 M.A.는 물 관리 시스템의 비효율적인 데이터 처리 작업에 신경망을 쓰자는 회사의 계획에 반대했지만, 경영진의 요구로 개발을 맡았다. 약 1년 뒤 완성된 시스템은 작동했지만 서버 클러스터와 막대한 메모리가 필요했고, 새 경영진은 결국 단일 서버에서 2분 안에 보고와 경보를 처리하는 전통적인 방식의 시스템을 도입했다.

지역 곳곳의 수질 측정 장비는 서로 다른 형식의 데이터를 중앙 서버로 보냈다. 기술자 7명은 매주 하루를 들여 CSV, 고정 폭, XML 등의 원자료를 읽고 정리해 데이터베이스에 입력했다. 경영진은 이 작업을 자동화하려 신경망을 원했다.

M.A.는 신경망이 이런 작업에 맞지 않고 학습에도 많은 시간이 들며, 알고리즘을 이용한 방식이 더 빨리 개발되고 더 잘 처리할 것이라고 설명했다. 경영진은 신경망 개발을 고집했다. 설계에는 장비 유형마다 별도의 신경망과 이를 관리하는 서버, 학습 프로그램, 학습 후 변화에 대응하도록 초기화할 수 있는 구조가 필요했다.

개발은 거의 1년이 걸렸다. 시스템은 분석에 서버 클러스터를 요구했고, 실행 중 느리고 복잡한 코드를 만들었으며, 메모리를 지나치게 많이 사용했다. 각 노드를 학습시키는 데 최소 일주일이 필요했지만 시스템은 작동했다. M.A.가 학계를 떠나기 전에도 신경망을 포기하자고 제안했으나 회사는 받아들이지 않았다.

3년 뒤 회사를 인수한 새 경영진의 CTO는 M.A.에게 기존 구현의 이유를 물었다. M.A.는 당시 상황을 설명하고 신경망 개발 전에 작성한 전통적인 방식의 제안서도 전달했다. 새 시스템은 단일 서버에서 작동하며, 측정소가 로그 파일을 갱신한 뒤 2분 안에 문제를 계산하고 경보와 보고서를 낼 수 있었다.

CTO는 수십만 달러가 든 신경망도 폐기하지 않고 다른 용도로 돌렸다. 개발자들은 문장 조각을 학습시켜 로그 줄 대신 문장을 출력하도록 재학습했다. 회사 소식지에 실린 생성 문장 중 하나는 다음과 같다.

돼지가 간다. 간다는 분수로 간다. 돼지가 발을 놓는다. 꿀꿀. 발은 어디에? 케첩. 비둘기가 난다. 난다는 하늘에 있다. 비둘기가 무언가를 떨어뜨린다. 그 무언가는 돼지 위에 있다. 돼지는 역겹다. 돼지가 덜거덕거린다. 비둘기와 덜거덕거린다. 비둘기는 화가 났다. 돼지가 떠난다. 비둘기가 만들어 낸다. 만들어 낸 것은 닭 날개다. 날개와 함께 짖는다. 꽥이 아니다.