การบิดงอเวลาแบบพลวัต (อังกฤษ: dynamic time warping : DTW) เป็นขั้นตอนวิธีสำหรับการเปรียบเทียบความคล้ายของลำดับที่มีความแตกต่างกันในด้านเวลาหรือความเร็ว เช่น รูปแบบการเดินของคนๆหนึ่งจะถูกนับว่ามีความคล้าย ไม่ว่าคนๆนั้นจะเดินอย่างรวดเร็ว เดินอย่างเชื่องช้า หรือแม้แต่เดินด้วยความเร่ง เมื่อพิจารณาจากผู้สังเกตเดียวกัน ซึ่งการบิดงอเวลาแบบพลวัตสามารถนำไปประยุกต์ได้กับวิดีโอ เสียง และ ภาพ รวมไปถึงข้อมูลต่างๆที่สามารถแปลงให้อยู่ในรูปของข้อมูลเชิงเส้นได้ ตัวอย่างหนึ่งของการประยุกต์ขั้นตอนวิธีนี้ไปใช้คือ การรู้จำคำพูด โดยใช้การบิดงอเวลาแบบพลวัต เพื่อจัดการกับคำพูดที่มีความเร็วไม่เท่ากัน แม้จะสื่อความหมายเดียวกัน
แนวคิดเบื้องต้น
โดยทั่วไปการบิดงอเวลาแบบพลวัตเป็นวิธีที่ทำให้คอมพิวเตอร์สามารถหาการจับคู่ที่เหมาะสมของลำดับสองชุดได้ภายใต้ข้อจำกัด ลำดับเหล่านั้นจะถูกบิดเบือนแบบไม่คงที่ในหน่วยของเวลา เพื่อที่จะพิจารณาความคล้ายจากการกระจายแบบไม่คงที่ในหน่วยของเวลา โดยจะให้ผลลัพธ์ออกมาเป็นระยะทางและวิถีการปรับแนว (alignment) ที่ดี่สุด ซึ่งวิธีการพิจารณาลำดับเช่นนี้พบได้บ่อยครั้งในแบบจำลองมาร์คอฟซ่อนเร้น
ขั้นตอนวิธี
เป้าหมายของการบิดงอเวลาแบบพลวัต คือ เพื่อเปรียบเทียบลำดับที่ขึ้นอยู่กับเวลาสองชุด
- ด้วยความยาว ซึ่งเป็นจำนวนเต็ม
- ด้วยความยาว ซึ่งเป็นจำนวนเต็ม
โดยลำดับเหล่านี้อาจจะเป็นสัญญาณที่ไม่ต่อเนื่อง () หรือ ลำดับของลักษณะเฉพาะ (feature) ที่ถูกสร้างขึ้นตามช่วงเวลา กำหนดให้ปริภูมิของลักษณะเฉพาะแทนด้วย ดังนั้น สำหรับ และ เพื่อที่จะเปรียบเทียบลักษณะเฉพาะ จึงจำเป็นที่จะต้องคำนวณต้นทุนเฉพาะส่วน (local cost measure) หรือเรียกอีกอย่างได้ว่า การคำนวณระยะทางเฉพาะส่วน (local distance measure) ซึ่งนิยามได้เป็นฟังก์ชัน ซึ่งโดยทั่วไป จะมีค่าน้อย ถ้า และ มีความคล้ายกันมาก ซึ่งสำหรับแต่ละคู่ของลำดับทั้งสอง นำไปสร้าง เมทริกซ์ต้นทุน (cost matrix) นิยามด้วย ดังรูป
โดยเป้าหมายต่อไปคือการหาวิถีการปรับแนวระหว่าง และ ที่มีต้นทุนรวมน้อยที่สุด โดยปกติแล้ว วิถีการปรับแนว จะวิ่งไปตามทางที่ต้นทุนต่ำภายในเมทริกซ์ต้นทุน ด้วยรูปแบบดังนี้
เส้นทางบิดเบือน เป็นลำดับ และ สำหรับ จะสนใจเงื่อนไขดังต่อไปนี้
- เงื่อนไขขอบเขต (Boundary condition) : และ
- เงื่อนไขทางเดียว (Monotonicity condition) : และ
- เงื่อนไขขนาดการเดิน (step size condition) : สำหรับ
ซึ่งจะได้ตัวอย่างของเส้นทางบิดเบือนแบบต่าง ๆ ภายใต้เงื่อนไขดังรูป
โดยต้นทุนทั้งหมดของเส้นทางบิดเบือน ระหว่าง และ ซึ่งเกี่ยวเนื่องกับการวัดต้นทุนเฉพาะส่วน จะถูกนิยามด้วย
สำหรับ เส้นทางบิดเบือนที่เหมาะสมระหว่าง และ คือระยะทางบิดเบือน ซึ่งมีต้นทุกต่ำที่สุดเมื่อเทียบกับเส้นทางบิดเบือนทั้งหมดที่เป็นไปได้ ระยะทางการบิดงอเวลาแบบพลวัต ระหว่าง และ จะถูกนิยามเป็นต้นทุนทั้งหมดของ โดย
เป็นเส้นทางบิดเบือน |
ซึ่งสุดท้ายแล้วจะได้ระยะทางบิดเบือนที่เหมาะสมดังรูป
ความซับซ้อนเชิงเวลา
ขั้นตอนวิธีการบิดงอเวลาแบบพลวัตแบบทั่วไปจะมีอัตราการเติบโตแบบชี้กำลัง แต่เมื่อใช้กำหนดการพลวัตในการแก้ปัญหาจะมีความซับซ้อนเชิงเวลาเป็น เมื่อ และ แทนความยาวของข้อมูลในแต่ละลำดับ
การประยุกต์ใช้และโอเพนซอร์สที่เกี่ยวข้อง
- lbimproved ไลบรารีภาษา ได้นำเอาขั้นตอนวิธี มาใช้ภายใต้การบิดงอเวลาแบบพลวัต (GPL) อีกทั้งยังได้จัดเตรียมการบิดงอเวลาแบบพลวัตไว้ให้ใช้ด้วยภาษา
- R package dtw ได้นำเอาขั้นตอนวิธีในตระกูลการบิดงอเวลาแบบพลวัตหลากหลายรูปแบบมาใช้งาน รวมไปถึงกฎการเรียกซ้ำ และการจับคู่
- mlpy เก็บถาวร 2011-09-19 ที่ เวย์แบ็กแมชชีน ไลบรารี ภาษา Python ซึ่งได้นำเอาขั้นตอนวิธีการบิดงอเวลาแบบพลวัตมาใช้
- kinectdtw เก็บถาวร 2011-09-25 ที่ เวย์แบ็กแมชชีน โอเพนซอร์ซ เกี่ยวกับการรู้จำท่าทางที่ได้นำเอาขั้นตอนวิธีการบิดงอเวลาแบบพลวัตมาใช้
- Chula Engineering Newsletter เก็บถาวร 2016-03-05 ที่ เวย์แบ็กแมชชีน วารสารทางวิชาการของคณะวิศวกรรมศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย ซึ่งได้กล่าวถึงการนำการบิดงอเวลาแบบพลวัตไปประยุกต์ใช้ในด้านต่างๆ เช่น ค้นหาฐานข้อมูล การรู้จำเสียงพูด วิเคราะห์ข้อมูลทางสถิติ
ดูเพิ่ม
อ้างอิง
- Sakoe, H. and Chiba, S., Dynamic programming algorithm optimization for spoken word recognition, IEEE Transactions on Acoustics, Speech and Signal Processing, 26 (1) pp. 43- 49, 1978, ISSN: 0096-3518
- C. S. Myers and L. R. Rabiner.
A comparative study of several dynamic time-warping algorithms for connected word recognition.
The Bell System Technical Journal, 60 (7) :1389-1409, September 1981. - L. R. Rabiner and B. Juang.
Fundamentals of speech recognition.
Prentice-Hall, Inc., 1993 (Chapter 4) - Müller, Meinard, Information Retrieval for Music and Motion, 2007 (Chapter 4)
- เทคนิคการใช้การบิดงอเวลาแบบพลวัตในการทำเหมืองข้อมูลอนุกรมเวลา Time Series Mining using Dynamic Time Warping Technique, Chula Engineering Newsletter เก็บถาวร 2016-03-05 ที่ เวย์แบ็กแมชชีน
wikipedia, แบบไทย, วิกิพีเดีย, วิกิ หนังสือ, หนังสือ, ห้องสมุด, บทความ, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม, มือถือ, โทรศัพท์, Android, iOS, Apple, โทรศัพท์โมบิล, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, พีซี, web, เว็บ, คอมพิวเตอร์
karbidngxewlaaebbphlwt xngkvs dynamic time warping DTW epnkhntxnwithisahrbkarepriybethiybkhwamkhlaykhxngladbthimikhwamaetktangknindanewlahruxkhwamerw echn rupaebbkaredinkhxngkhnhnungcathuknbwamikhwamkhlay imwakhnnncaedinxyangrwderw edinxyangechuxngcha hruxaemaetedindwykhwamerng emuxphicarnacakphusngektediywkn sungkarbidngxewlaaebbphlwtsamarthnaipprayuktidkbwidiox esiyng aela phaph rwmipthungkhxmultangthisamarthaeplngihxyuinrupkhxngkhxmulechingesnid twxyanghnungkhxngkarprayuktkhntxnwithiniipichkhux karrucakhaphud odyichkarbidngxewlaaebbphlwt ephuxcdkarkbkhaphudthimikhwamerwimethakn aemcasuxkhwamhmayediywknrupaebbkhxngkarcbkhuladbkhxng DTW aela Euclideanaenwkhidebuxngtnodythwipkarbidngxewlaaebbphlwtepnwithithithaihkhxmphiwetxrsamarthhakarcbkhuthiehmaasmkhxngladbsxngchudidphayitkhxcakd ladbehlanncathukbidebuxnaebbimkhngthiinhnwykhxngewla ephuxthicaphicarnakhwamkhlaycakkarkracayaebbimkhngthiinhnwykhxngewla odycaihphllphthxxkmaepnrayathangaelawithikarprbaenw alignment thidisud sungwithikarphicarnaladbechnniphbidbxykhrnginaebbcalxngmarkhxfsxnernkhntxnwithiepahmaykhxngkarbidngxewlaaebbphlwt khux ephuxepriybethiybladbthikhunxyukbewlasxngchud X x1 x2 xN displaystyle X x 1 x 2 x N dwykhwamyaw N displaystyle N sungepncanwnetmY y1 y2 yM displaystyle Y y 1 y 2 y M dwykhwamyaw M displaystyle M sungepncanwnetm odyladbehlanixaccaepnsyyanthiimtxenuxng hrux ladbkhxnglksnaechphaa feature thithuksrangkhuntamchwngewla kahndihpriphumikhxnglksnaechphaaaethndwy F displaystyle F dngnn xn ym F displaystyle x n y m in F sahrb n 1 N displaystyle n in 1 N aela m 1 M displaystyle m in 1 M ephuxthicaepriybethiyblksnaechphaa x y F displaystyle x y in F cungcaepnthicatxngkhanwntnthunechphaaswn local cost measure hruxeriykxikxyangidwa karkhanwnrayathangechphaaswn local distance measure sungniyamidepnfngkchn c F F R 0 displaystyle c F times F rightarrow R geqslant 0 sungodythwip c x y displaystyle c x y camikhanxy tha x displaystyle x aela y displaystyle y mikhwamkhlayknmak sungsahrbaetlakhukhxngladbthngsxng naipsrang emthrikstnthun cost matrix C RN M displaystyle C in R N times M niyamdwy C n m c xn ym displaystyle C n m c x n y m dngrup emthrikstnthunkhxngladb X displaystyle X aela Y displaystyle Y briewnsiekhminemthriksaesdngthungswnthimitnthunta aelabriewnsixxnaesdngthungswnthimitnthunsung odyepahmaytxipkhuxkarhawithikarprbaenwrahwang X displaystyle X aela Y displaystyle Y thimitnthunrwmnxythisud odypktiaelw withikarprbaenw cawingiptamthangthitnthuntaphayinemthrikstnthun dwyrupaebbdngni esnthangbidebuxn N M displaystyle N M epnladb p p1 pL displaystyle p p 1 p L aela pl nl ml 1 N 1 M displaystyle p l n l m l in 1 N times 1 M sahrb l 1 L displaystyle l in 1 L casnicenguxnikhdngtxipni enguxnikhkhxbekht Boundary condition p1 1 1 displaystyle p 1 1 1 aela pL N M displaystyle p L N M enguxnikhthangediyw Monotonicity condition n1 n2 nL displaystyle n 1 leqslant n 2 leqslant leqslant n L aela m1 m2 mL displaystyle m 1 geqslant m 2 geqslant geqslant m L enguxnikhkhnadkaredin step size condition pl 1 pl 1 0 0 1 1 1 displaystyle p l 1 p l in 1 0 0 1 1 1 sahrb l 1 L 1 displaystyle l in 1 L 1 sungcaidtwxyangkhxngesnthangbidebuxnaebbtang phayitenguxnikhdngrup esnthangkarbidebuxnphayitenguxnikhaebbtangodytnthunthnghmdkhxngesnthangbidebuxn p displaystyle p rahwang X displaystyle X aela Y displaystyle Y sungekiywenuxngkbkarwdtnthunechphaaswn c displaystyle c cathukniyamdwy cp X Y l 1Lc xnl ynl displaystyle c p X Y sum l 1 L c x n l y n l sahrb esnthangbidebuxnthiehmaasmrahwang X displaystyle X aela Y displaystyle Y khuxrayathangbidebuxn p displaystyle p sungmitnthuktathisudemuxethiybkbesnthangbidebuxnthnghmdthiepnipid rayathangkarbidngxewlaaebbphlwt DTW X Y displaystyle DTW X Y rahwang X displaystyle X aela Y displaystyle Y cathukniyamepntnthunthnghmdkhxng p displaystyle p ody DTW X Y displaystyle DTW X Y cp X Y displaystyle c p X Y min cp X Y p displaystyle min c p X Y p epnesnthangbidebuxn N M displaystyle N M sungsudthayaelwcaidrayathangbidebuxnthiehmaasmdngrup esnsikhawinrupaesdngthungesnthangkarbidngxewlaaebbphlwtbnemthrikstnthunkhwamsbsxnechingewlakhntxnwithikarbidngxewlaaebbphlwtaebbthwipcamixtrakaretibotaebbchikalng aetemuxichkahndkarphlwtinkaraekpyhacamikhwamsbsxnechingewlaepn O MN displaystyle O MN emux M displaystyle M aela N displaystyle N aethnkhwamyawkhxngkhxmulinaetlaladbkarprayuktichaelaoxephnsxrsthiekiywkhxnglbimproved ilbrariphasa C idnaexakhntxnwithi maichphayitkarbidngxewlaaebbphlwt GPL xikthngyngidcdetriymkarbidngxewlaaebbphlwtiwihichdwyphasa C R package dtw idnaexakhntxnwithiintrakulkarbidngxewlaaebbphlwthlakhlayrupaebbmaichngan rwmipthungkdkareriyksa aelakarcbkhu mlpy ekbthawr 2011 09 19 thi ewyaebkaemchchin ilbrari phasa Python sungidnaexakhntxnwithikarbidngxewlaaebbphlwtmaich kinectdtw ekbthawr 2011 09 25 thi ewyaebkaemchchin oxephnsxrs ekiywkbkarrucathathangthiidnaexakhntxnwithikarbidngxewlaaebbphlwtmaich Chula Engineering Newsletter ekbthawr 2016 03 05 thi ewyaebkaemchchin warsarthangwichakarkhxngkhnawiswkrrmsastr culalngkrnmhawithyaly sungidklawthungkarnakarbidngxewlaaebbphlwtipprayuktichindantang echn khnhathankhxmul karrucaesiyngphud wiekhraahkhxmulthangsthitiduephimaebbcalxngmarkhxfsxnern karrucakhaphudxangxingSakoe H and Chiba S Dynamic programming algorithm optimization for spoken word recognition IEEE Transactions on Acoustics Speech and Signal Processing 26 1 pp 43 49 1978 ISSN 0096 3518 C S Myers and L R Rabiner A comparative study of several dynamic time warping algorithms for connected word recognition The Bell System Technical Journal 60 7 1389 1409 September 1981 L R Rabiner and B Juang Fundamentals of speech recognition Prentice Hall Inc 1993 Chapter 4 Muller Meinard Information Retrieval for Music and Motion 2007 Chapter 4 ethkhnikhkarichkarbidngxewlaaebbphlwtinkarthaehmuxngkhxmulxnukrmewla Time Series Mining using Dynamic Time Warping Technique Chula Engineering Newsletter ekbthawr 2016 03 05 thi ewyaebkaemchchin