Bu sene staj deneyimi olarak Üniversitemizdeki bölümümüzden Yar. Doç. Dr. Mete ÇELİK ve Yar. Doç Dr. Filiz ÇELİK ile beraber akademik bir çalışma üzerine çalıştım. Akademik bir makalenin yazılmasında aktif olarak görev aldım.
Herkesin sorduğu soru özel sektör deneyimim varken neden üniversitede stajı seçtiğimdi. Bu zamana kadar hep özel sektörde deneyim yaşamıştım fakat herhangi bir akademik çalışmam ve akademik deneyimim olmamıştı. Bu staj tam da bu eksiğimi gidermek için mükemmel oldu. Gelecek sene için vereceğim bazı kararların netleşmesini sağladı.
Stajımı Verimadenciliği konusunda zaman serileri üzerine yaptım ve benim için gerçekten mükemmel bir deneyim oldu. Bu yazımda zaman serilerinden Dynamic Time Warping hakkında bilgi vereceğim.
Zaman serileri veri madenciliğinin temellerini oluşturan en önemli bileşenlerdir. Bu serilerin yorumlanması ile ortaya bir kural veya sonuç çıkarılmaya çalışılır. Tekrar etme, belli bir düzeyde azalarak devam etme veya belirli bir cycle ile devam etmesi sonuçları bu zaman serilerinin incelenmesi ile elde edilir.
Zaman Serilerinin incelenmesinde pek çok yöntem kullanılmaktadır. Bunlar durumlarına göre avantaj ve dezavantajlı konumda olabilir.
Araştırma konumuz boyunca Dynamic Time Warping methodunu kullandım. Bu method zaman axisinde bire bir eşleştirme değil, küçük toleranslar ve değişiklikler mevcutsa bunları yorumluyarak iki zaman serisinin birbirinin benzeri olup olmadığını belirlemek için kullanılır. Özellikle clasification (sınıflandırma) yaparken bu method çok kullanılır.
Dynamic Time Warping başta;
- imza doğrulama
- robotic
- ses işleme
- imalat
- biyoloji
- tıp sektöründe kullanılmaktadır.
Bu yöntem sayesinde zaman serileri üzerinde esneklik sağladı. Bire bir lineer olmayan durumların karşılaştırılıp eşleştirilmesi için bize güzel bir örnek sunuyor. Ayrıca bu yöntem O(n^2) karmaşıklığı ile de en iyi çözümlerden birisini sunmakta.
Ben de staj sürem boyunca bu tekniği Microsoft'un yeni teknolojilerinde kullandım, Belki de bu yeni teknolojilerle kullanılan da ilk projeydi bu açıdan:
Visual Studio 2010 & .NET 4.0 Beta
LINQ
C# 4.0
MS SQL Server 2008