Fizik Bilgili Sinir Ağları Kan Akışını ve Duvar Kayma Gerilimini Sıfırdan Yeniden İnşa Ediyor: Navier-Stokes Ters Problemi İçin.
Fizik bilgili sinir ağı (PINN) adı verilen bir makine öğrenmesi yöntemi, damar içindeki saçaklı ve gürültülü hız ölçümlerini Navier-Stokes denklemleriyle...
Fizik bilgili sinir ağı (PINN) adı verilen bir makine öğrenmesi yöntemi, damar içindeki saçaklı ve gürültülü hız ölçümlerini Navier-Stokes denklemleriyle birleştirerek hem tüm akış alanını hem de kanın damar duvarına uyguladığı kayma gerilimini geri inşa edebiliyor. Yazar, bu yöntemi sıfırdan, DeepXDE gibi hazır kütüphaneleri kullanmadan düz PyTorch ile kodladı ve 2 boyutlu, daralmış (stenoz) bir arterde 40 hız okumasından akışın yeniden inşa edilmesini sağladı. Daralmanın arkasında oluşan geri dönüşlü akış bölgesi, sıfır viskozite gibi bilinmeyen bir parametrenin çıkarılması ve duvar kayma geriliminin referans hesaplamalarına yakın çıkması deneyin temel sonuçlarını oluşturuyor.
Bu çalışma, kan akışı için PINN’ler üzerine kurulan bir makale dizisinin ilk bölümü olarak öne çıkıyor. Temel konular olan Navier-Stokes artığı (residual), öğrenilebilir viskozite ve sonucun neyle değerlendirildiği bu yazıda işleniyor; geri kalan bölümlerde referans veriyi üreten CFD çözücüsü ve kalp atışını takip eden nabızlı akış ele alınacak.
Daralmalı Arter Üzerinde Deney Düzeni
Arter, yüksekliği H olan 2 boyutlu bir kanal olarak modelleniyor; alt duvarındaki pürüzsüz tümsek açıklığın yarısını kapatıyor, yani yüzde 50’lik stenoz oluşuyor. Akış, Reynolds sayısı 200 olan sıkıştırılamaz Navier-Stokes rejiminde ve uzunluklar kanal yüksekliğiyle, hızlar giriş hızıyla boyutsuzlaştırılmış şekilde ifade ediliyor. Bu yavaş bir akış olup, karotid arterde yaşananların en alt sınırında konumlanıyor; bu birimlerde kinematik viskozite 0.005 olarak veriliyor.
Makalede bilinçli biçimde hastanın izi yok. Bir yeniden inşa etme işinin puanlandırılabilmesi için doğru cevabın biliniyor olması gerektiğinden, yazar bu referans çözümü kendisi üretmiş; yazdığı bir Navier-Stokes çözücüsü (eşzamanlı ızgarada projeksiyon yöntemi) kararlı akışı hesaplıyor ve PINN’e yalnızca o çözümden alınan birkaç gürültülü ölçüm veriliyor. Gürültü giriş hızının yüzde 7’si kadar Gauss türünden. Çözücünün kendisinin daha sonraki bir makalede ele alınabileceğini belirtiyor.
Kanal Uzunluğunun Sürpriz Derecede Önemli Olması
Kanalın uzunluğu, yazarın beklediğinden çok daha kritik çıktı. İlk sürümü beş yükseklik kadar uzundu; tümseğin arkasında akış duvardan ayrılıyor ve geri dönüşlü akış bölgesi oluşuyordu. Beş yükseklikle bu bölge kapanmıyordu: çıkışta solver hâlâ geri yönde akan sıvı vardı ve çözücü oradan ayrıldığını varsayıyordu. Çıkış, fizikten oldukça etkilenerek referans çözümü şekillendirmişti. Kanal dokuz yüksekliğe uzatılınca sorun çözüldü; geri dönüşlü akış artık x = 5.8 civarında kapanıyor ve oradan sonrasının ileri yönde aktığını görmek mümkün.
Ölçümler, sıvının içindeki 40 nokta şeklinde; her biri bir hız vektörü artı gürültü içeriyor. Duvarda ya da basınçta hiçbir ölçüm yok. Noktalar kanala boyunca dört bant içine yerleştirilmiş ve daralma ile onun ardındaki (wake) bölgeye yakınlaşmaları için daha yoğunlaştırılmış; bu düzen ise pek fark yaratmamış, yazar bunu yazının sonunda tekrar ele alıyor.
Ağın Yapısı ve Fizik Artığının Hesaplanması
Ağ, 6 katmanlı, her biri 32 tanh ünitesinden oluşan sıradan bir çok katmanlı algılayıcıdan (MLP) oluşuyor; yaklaşık 5.500 ağırlık taşıyor. ReLU yerine tanh kullanılmasının nedeni, momentum denkleminin çıktının ikinci türevine ihtiyaç duyması ve ReLU’nun neredeyse her yerde sıfır olan ikinci türevinin bu hesaplamaya uygun olmaması.
PINN koordinatları fiziksel büyüklüklere eşliyor; burada (x, y) -> (u, v, p), yani iki hız bileşeni ve basınç. Kayıp fonksiyonu, sıradan bir regresyon gibi ölçümleri karşılayan bir terim ile denklemin artığından inşa edilen bir terim içeriyor; bu artık ağı’nın kendi çıktısının denklemleri ne kadar bozduğunu gösteriyor. Artık, ağı’nın girdilerine göre türev alınarak hesaplanıyor ve işte autograd burada devreye giriyor. Sıştırılamaz Navier-Stokes için üç tane var: süreklilik ve her hız bileşeni için bir momentum denklemi.
Kayma geriliminin hesaplanmasında kritik olan viskoz terim u_xx’i gerektiriyor; bu iki kez türev alınmasını istediği için autograd’ın ilk türevin grafiğini saklaması gerekiyor. create_graph=True tam olarak bunu yapıyor. Bu kaldırılırsa ikinci türev çağrısı ilk epoch’ta başarısız oluyor.
Makale yazarı
Kayıp üç gruptan oluşuyor ve her birinin ağırlığı var: veri terimi (100 ağırlığında, 40 ölçüme karşı kareler toplamı hata), pde terimi (10 ağırlığında, sıvının içinde yayılan 2.500 noktadaki üç artık) ve sınır koşulları (bc; 10 ağırlığında, her iki duvarda no-slip, giriş profili ve çıkış koşulu olan sıfır basınç ile çıkışta sıfır akış yönündegradyan).
pde ağırlığı, yazarın ilk başta yanlış yaptığı şeydi. 1’lik bir ağırlıkta fizik terimi her şeyi şekillendirmeye yetecek kadar küçük ve hız hatası 10’a göre iki katıdan fazla çıkıyordu. 50’lik bir ağırlık ise 10 ile yaklaşık aynı sonucu verdi. Kolokasyon noktaları her 200 epoch’ta yeniden örnekleniyor ve bunların yüzde 30’u şu anda artığın en büyük olduğu noktalardan seçiliyor. Eğitim, azalan öğrenme hızıyla 10.000 epoch boyunca Adam’la yapılıyor; ardından yaklaşık 35 dakika süren üç CPU iş parçacığında L-BFGS’nin 400 yinelemesi geliyor.
Viskoziteyi Öğrenilebilir Bir Parametre Yapmak
İleri (forward) bir probleminde fizigin tamamını biliyor ve alanı istiyorsunuz; burada viskozite bilinmediği için daha bir parametreye dönüşüyor ve ağırlıklarla birlikte optimize ediliyor. Yalnızca artıkta görünüyor, ikinci türev terimlerini çarpan sayı olarak. Logaritması saklanıyor çünkü pozitif kalmasını sağlıyor ve 0.005 gibi küçük bir sayı için Adam adımının makul olacağı bir ölçeğe yerleştiriyor.
Sona başlangıçta ne konmalı? Pratikte kan için literatür değeri kullanılır ve bu iyi bir başlangıç noktasıdır. Burada yazar cevabın sensörlerden geldiğini, parametrenin nereden başladığından değil olduğunu görmek istediği için çok uzaktan başladı. Bir koşuşturma doğru değerinin dört katıyla, diğeri ise yaklaşık üçte biriyle başladı; ikisi de doğru değere yaklaştı.
Bakılması gereken son eğri bu. Viskozite kayba yalnızca fizik terimi üzerinden ulaşıyor ve fizik teriminin anlam kazanması için hız alanının önce kabaca doğru olması gerekiyor; bu yüzden antrenmanın başında parametre düzensiz hareket ediyor, sonunda ise kararıyor. Sona nereye oturacağı, veri akışı ne kadar kısıtladığına bağlı.
Makale yazarı
20 sensörle her denemede yanlış değere gittiğini anlatıyor: öğrenme hızının ve kayıp ağırlıklarının her çeşidinde, kayıp eğrileri boyunca sağlıklı görünen ama çeyrek ile yarı arasında, bazen yüksek bazen düşük sapmalar. Okuması şuydu: yirmi gürültülü nokta “kalın sıvı, düzgün akış” ile “ince sıvı, keskin akış”ı ayırt edemiyor; bu yüzden ağ onlardan birini seçiyor.
40 sensörle ve her şey aynıyken viskozite doğru değere oturdu. Öğrenme hızını değiştirmek veri eklemekten çok daha az etki etti; bu da yazarın onu ayarlamaya başladığında beklediği cevap değildi.
Yeniden İnşa Sonuçları
Yeniden inşa edilen hız alanı CFD alanından birkaç yüzde içinde. Bu kadar gürültülü ölçümden bekleneceği gibi bir sonuç; yalnızca v bileşeni göreli olarak daha kötü görünüyor çünkü akış çoğunlukla eksenel ve aynı mutlak hata çok daha küçük bir sayıya bölünüyor.
Hız haritası doğru görünse de akış yapısı yanlış olabilir; bu yüzden yazar vortisiteyi, yani sıvının yerel dönüşünü de karşılaştırdı. Bu akışın ilginç yanı, hızlı jet ile yavaş geri dönüşlü bölge arasındaki güçlü kayma tabakası ve bunun aşağıda nasıl söndüğüdür.
Geri dönüşlü bölge de yeniden inşa ediliyor. CFD’de x = 2.2’de başlıyor ve yaklaşık x = 5.75’te kapanıyor; PINN aynı yerden başlıyor ve yaklaşık x = 5.6’dan kapanıyor. Duvarda hiçbir sensör olmadığı için bu, fizikle ölçümlerin birlikte çalışmasından çıkıyor.
Duvar kayma gerilimi, yani bu egzersizin asıl amacıydı; PINN’in eğrisi referansı takip ediyor. Her yerde doğru şekle sahip ve tepesi biraz düşük çıkıyor. Referansla ilgili bir not düşülüyor: solver’ın merdiven basamağı şeklindeki duvarı, duvar gradyanının ham finite-difference tahminini pürüzlü kılıyor; hem CFD alanı için hem de ağ için bunun yerine duvara kısa bir mesafede birkaç noktada duvardaki hızı sıfır olma özelliğini kullanarak onlar üzerinden gradyı uygun şekilde hesaplıyor. Her iki eğri de aynı şekilde okunuyor.
Farkı Yaratan Şey
Sensörler en kritik olduğundan, 40 sensörlü koşuşturma etrafında değiştirilen şeyler burada özetleniyor; bunların hepsi aynı ağ ve eğitimi kullandı. 20 sensör kullanıldığında viskozite çeyrek ile yarı arasında sapıyor ve hız hatası aynı ya da kötüleşiyor. 60 sensör neredeyse 40 ile aynı sonucu veriyor. 40 sensörü bantlar yerine düzgün yaymak vortisitede biraz daha kötü, viskozitede ise yaklaşık yüzde 8 içinde bir sonuç üretiyor. Çıkış koşulunu kaldırmak neredeyle aynı şeyi getiriyor; daha geniş ağ (4 katmanlı, 96 üniteli) ise daha iyi değil ve yaklaşık iki kat yavaş çalışıyor. pde ağırlığını 10 yerine 1 yapmak hız hatasını iki katıdan fazla büyütüyor.
Girdilerin ölçeklendirilmesi, öğrenme hızının azaltılması ve kolokasyon noktalarının artığa göre seçilmesi; ilk kanal üzerinde denenince hız hatasında pek fark yaratmadı. Yine de korundu çünkü neredeyse hiçbir maliyeti yok. Çıkış koşulu çok az değiştiği için, çıkışınızı ağa anlatmak istemiyorsanız bunu burada çıkarabilirsiniz.
Gelişimin çoğu veriden geldi: viskoziteyi oturtacak kadar yeterli sensör ve çıkışı yolun dışında tutacak kadar uzun bir kanal. Denenen mimari ve optimizer ayarları şeyleri çok daha az hareket ettirdi.
Bunun Nerede Durduğu
Akış 2 boyutlu ve kararlı, duvarlar rijit ve gürültü sıradan bir Gauss türünden; bu da demirleme açısını ya da speckle’ı modellemeden Doppler ölçümünü temsil ediyor. İstediğiniz nereye yerleştirilen kırk prob, gerçek bir muayeneye kıyasla cömert bir düzen. Sonuçlar tek geometride tek bir Reynolds numarasından geliyor.
Kan ayrıca kayma-çözülür (shear-thinning) özelliğine sahip; bu yüzden sabit viskozite, tam geri dönüşlü bölgenin üstündeki daralmanın arkasındaki yavaş, ayrılmış bölgede en az doğru. Ve duvar kayma gerilimi ile plak arasındaki bağlantı iyi çalışılmış olsa da hâlâ tartışılıyor.
Sonraki makale, referans veriyi üreten CFD çözücüsünü ve duvar kayma gerilimi referansındaki bir hatayı—iyi bir sonucun kötü görünmesine yol açan hatayı—ele alacak. Tüm kodlar, yapılandırmalar ve figürler repoda: link.
Bu platformda yer alan içerik ve haberlerin telif hakları saklı tutulmamakta olup kamuya ve halka açıktır; kaynak gösterilerek paylaşılabilir. Yayınlanan haberlerin önemli bir kısmı halka açık yerli ve yabancı basın/haber kaynaklarından derlenmektedir; bu kaynaklardan aktarılan içerik, veri ve iddiaların doğruluğuna ilişkin hukuki ve cezai sorumluluk kaynak kuruluşlara ait olup platformumuz tarafından herhangi bir sorumluluk üstlenilmemektedir. Üçüncü taraf görsel, logo ve açık lisanslı malzemeler kendi kaynak ve lisans koşullarına tabidir.
Sitemizde yayınlanmasını istediğiniz özgün haber, makale ve basın bültenlerinizi veya içerik bildirimlerinizi iletmek için bizimle iletişime geçebilirsiniz:
Söz sizde.
Deneyiminizi, sorularınızı ve katkılarınızı paylaşın. E-posta adresiniz yayımlanmaz.