
Trigonometri, açıların uzunluklarla, yönlerle ve tekrar eden hareketlerle ilişkisini inceler. Bir binanın yüksekliğini uzaktan hesaplamak veya bir görüntüyü döndürmek için bu ilişkilerden yararlanırız. Günün saatini bir yapay zekâ modeline doğru biçimde anlatırken ve iki metin vektörünün yönlerini karşılaştırırken de trigonometri karşımıza çıkar. Bu yazıda sinüs, kosinüs ve tanjantı ayrı ayrı ezberlenecek formüller olarak ele almak yerine, aynı fikrin farklı görünümleri olarak adım adım inceleyeceğiz.
Trigonometri Neyi Anlatır?
Bir dönme dolabın kabini hareket ederken bazen yükselir, bazen alçalır ve bir tam turun ardından başladığı yere döner. Saatin akrebi de sürekli yön değiştirir; fakat on iki saatte bir aynı yönü yeniden gösterir. Mevsimler, gelgitler, titreşimler ve ses dalgaları da farklı biçimlerde tekrar eden davranışlar sergiler.
Bu hareketlerde açı değişir, yön döner ve bazı konumlar yeniden karşımıza çıkar. Trigonometriyle ne kadar döndüğümüzü, hangi yöne baktığımızı ve yatay ya da dikey yönde ne kadar ilerlediğimizi hesaplayabiliriz.
Trigonometriye dik üçgendeki kenar oranlarıyla başlayacağız. Bu oranları birim çembere taşıdığımızda dar açıların ötesine geçip dönüşleri, yönleri ve tekrar eden hareketleri de inceleyebileceğiz.
Önce Açıyı Tanıyalım
Açı, aynı noktadan çıkan iki ışın arasındaki açıklığı ölçer. Bu ortak noktaya köşe denir. Açıyı çoğunlukla Yunan alfabesindeki teta harfiyle, yani \(\theta\) ile gösteririz. Bu sembolü “teta” diye okuyabiliriz.
Bir tam dönüşü 360 eş parçaya ayırdığımızda her parçaya bir derece deriz ve \(1^\circ\) biçiminde yazarız. Buna göre çeyrek dönüş \(90^\circ\), yarım dönüş \(180^\circ\), tam dönüş ise \(360^\circ\) olur.
Açılarından biri \(90^\circ\) olan dik üçgende, dik açının karşısındaki en uzun kenara hipotenüs denir. Diğer iki kenarı adlandırmak için önce hangi açıya baktığımızı seçmeliyiz.
Şekilde \(\theta\) açısının karşısındaki kenara karşı kenar, açıya değen ve hipotenüs olmayan kenara komşu kenar deriz. Başka bir dar açı seçersek bu iki ad yer değiştirir. Hipotenüs her durumda dik açının karşısındadır.
Üç Temel Oran: Sinüs, Kosinüs ve Tanjant
Aynı dar açıya sahip dik üçgenlerin boyutları farklı olabilir. Bir üçgeni büyüttüğümüzde bütün kenarlar aynı katsayıyla uzar; karşı kenarın hipotenüse, komşu kenarın hipotenüse ve karşı kenarın komşu kenara oranı sabit kalır. Bu oranların adları sinüs, kosinüs ve tanjanttır.
\(\sin\) ifadesini “sinüs”, \(\cos\) ifadesini “kosinüs”, \(\tan\) ifadesini ise “tanjant” diye okuruz. Bu üçü birer fonksiyondur: Girdi olarak bir açı alır ve çıktı olarak bir sayı verir. Fonksiyonlar yazısında gördüğümüz girdi–çıktı fikri burada da aynen geçerlidir.
Bu tanımları küçük bir örnekle somutlaştıralım. Kenar uzunlukları 3, 4 ve 5 birim olan bir dik üçgen düşünelim. \(\theta\) açısının karşısındaki kenar 3, komşusundaki kenar 4 ve hipotenüs 5 olsun.
\(\sin(\theta)=0{,}6\), karşı kenarın hipotenüsün yüzde 60'ı uzunluğunda olduğunu söyler. \(\tan(\theta)=0{,}75\) ise yatay yönde her 4 birim ilerlediğimizde dikey yönde 3 birim yükseldiğimizi anlatır.
Tanjantın sinüs ve kosinüsle ilişkisini de bu tanımlardan çıkarabiliriz. Sinüsü kosinüse bölelim:
Pay ve paydadaki hipotenüsler sadeleşir; geriye karşı kenarın komşu kenara oranı, yani tanjant kalır.
Ulaşamadığımız Bir Yüksekliği Ölçmek
Bir ağacın tepesine çıkmadan yüksekliğini ölçmek istediğimizi düşünelim. Ağacın gövdesinden 10 metre uzakta duruyoruz ve bulunduğumuz noktadan ağacın tepesine baktığımızda yerle bakış doğrultumuz arasındaki açıyı \(30^\circ\) ölçüyoruz. Şimdilik göz hizamızın yerde olduğunu varsayalım.
Aradığımız yükseklik karşı kenar, bildiğimiz 10 metre ise komşu kenardır. Dolayısıyla tanjantı kullanırız:
Gerçek bir ölçümde gözümüz yerden örneğin 1,70 metre yüksekteyse bu değeri sonuca ekleriz. Ağacın yaklaşık yüksekliği \(5{,}77+1{,}70=7{,}47\) metre olur. Ölçtüğümüz yüksekliğin nereden başladığını belirtmezsek sonucu eksik hesaplarız.
Dik Üçgenden Birim Çembere
Dik üçgen tanımları \(0^\circ\) ile \(90^\circ\) arasındaki açılarda çok kullanışlıdır. Fakat bir nesne \(120^\circ\), \(270^\circ\) veya birden fazla tur dönebilir. Trigonometriyi bütün bu açılara genişletmek için yarıçapı 1 birim olan bir çemberden yararlanırız. Buna birim çember denir.
Birim çemberin merkezini analitik düzlemin başlangıç noktasına yerleştirelim. Açıyı pozitif \(x\) ekseninden başlayarak saat yönünün tersine ölçelim. Açının çember üzerinde ulaştığı noktanın koordinatları şu olur:
Noktanın yatay koordinatı kosinüs, dikey koordinatı sinüstür. Böylece kosinüsle sağa veya sola, sinüsle yukarı veya aşağı ne kadar ilerlediğimizi okuyabiliriz.
Örneğin açı \(0^\circ\) iken nokta \((1,0)\) konumundadır. Bu nedenle \(\cos(0^\circ)=1\) ve \(\sin(0^\circ)=0\) olur. Açı \(90^\circ\) olduğunda nokta \((0,1)\) konumuna gelir; bu kez \(\cos(90^\circ)=0\) ve \(\sin(90^\circ)=1\) olur.
| Açı | \(\sin(\theta)\) | \(\cos(\theta)\) | \(\tan(\theta)\) |
|---|---|---|---|
| \(0^\circ\) | \(0\) | \(1\) | \(0\) |
| \(30^\circ\) | \(\frac{1}{2}\) | \(\frac{\sqrt{3}}{2}\) | \(\frac{1}{\sqrt{3}}\) |
| \(45^\circ\) | \(\frac{\sqrt{2}}{2}\) | \(\frac{\sqrt{2}}{2}\) | \(1\) |
| \(60^\circ\) | \(\frac{\sqrt{3}}{2}\) | \(\frac{1}{2}\) | \(\sqrt{3}\) |
| \(90^\circ\) | \(1\) | \(0\) | Tanımsız |
Birim çemberde noktanın konumuna bakarak değerlerin işaretini bulabiliriz. Nokta sağ yarıdaysa kosinüs pozitif, sol yarıdaysa negatiftir. Üst yarıda sinüs pozitif, alt yarıda negatiftir. Temel değerleri de çember üzerindeki noktalardan yeniden çıkarabiliriz.
- Birinci bölge: Sinüs ve kosinüs pozitiftir.
- İkinci bölge: Sinüs pozitif, kosinüs negatiftir.
- Üçüncü bölge: Sinüs ve kosinüs negatiftir.
- Dördüncü bölge: Sinüs negatif, kosinüs pozitiftir.
Tanjant \(\sin(\theta)/\cos(\theta)\) olduğundan iki değerin işareti aynıysa pozitif, farklıysa negatif olur. Kosinüs sıfır olduğunda ise sıfıra bölme yapılamayacağı için tanjant tanımsızdır. Bu durum \(90^\circ\), \(270^\circ\) ve bunlara tam tur eklenerek ulaşılan açılarda görülür.
Birim Çemberden Gelen Temel Özdeşlik
Birim çember üzerindeki her \((x,y)\) noktası \(x^2+y^2=1\) eşitliğini sağlar. Çünkü noktanın merkeze uzaklığı, yani çemberin yarıçapı 1'dir. Birim çemberde \(x=\cos(\theta)\) ve \(y=\sin(\theta)\) olduğuna göre bu değerleri çember denkleminde yerlerine yazabiliriz:
Buradaki \(\sin^2(\theta)\) ifadesi, \(\sin(\theta)\) sonucunun karesi demektir. Yani \(\sin(\sin(\theta))\) anlamına gelmez. Eşitliği genellikle şu sırayla görürüz:
3–4–5 üçgenindeki değerleri deneyelim: \(0{,}6^2+0{,}8^2=0{,}36+0{,}64=1\). Bu özdeşlik, sinüs ve kosinüsün birbirinden bağımsız iki rastgele sayı olmadığını gösterir. Biri bilindiğinde, işaretin hangi bölgede olduğuna da bakarak diğerini bulabiliriz.
Dereceden Daha Doğal Bir Ölçü: Radyan
Derece günlük kullanımda oldukça pratiktir. Matematikte ve bilgisayar programlarında ise açıları çoğu zaman radyan ile ölçeriz. Radyan ilk bakışta yeni bir birim gibi görünse de doğrudan çemberin geometrisinden gelir.
Bir çemberin üzerinde yürüdüğümüzü düşünelim. Gittiğimiz yay uzunluğu \(s\), çemberin yarıçapı \(r\) olsun. Merkezde oluşan açının radyan cinsinden değeri şöyledir:
Yay uzunluğu yarıçapa eşitse, yani \(s=r\) ise açı 1 radyandır. Bir çemberin çevresi \(2\pi r\) olduğundan tam turdaki açı da \((2\pi r)/r=2\pi\) radyan olur. Böylece derece ile radyan arasındaki temel ilişkiye ulaşırız:
Dereceyi radyana çevirmek için \(\pi/180\) ile, radyanı dereceye çevirmek için \(180/\pi\) ile çarparız.
Programlama dillerinde sık kullanılan radyan, açıyı yay uzunluğunun yarıçapa oranı olarak ölçer. Bu tanım çemberin geometrisiyle doğrudan uyumludur. Bir sonraki konu olan limitte ve daha sonra türevde trigonometrik ifadeleri radyanla yazdığımızda formüller sadeleşir.
Sinüs ve Kosinüsün Dalgaları
Birim çember üzerindeki bir nokta sabit hızla dönerken yatay ve dikey koordinatlarını zamana karşı çizdiğimizi düşünelim. Dikey koordinat sinüs dalgasını, yatay koordinat ise kosinüs dalgasını oluşturur. Aşağıdaki grafik bu iki fonksiyonun düzenli biçimde yükselip alçalmasını gösterir.
Sinüs ve kosinüsün alabileceği değerler \(-1\) ile \(1\) arasındadır. Bunun nedeni birim çemberdeki yatay ve dikey koordinatların bu sınırların dışına çıkamamasıdır.
Bir tam turun ardından aynı noktaya döndüğümüz için sinüs ve kosinüs değerleri de tekrar eder:
Bir fonksiyonun aynı davranışı belirli aralıklarla tekrarlamasına periyodiklik, tekrarın gerçekleştiği en kısa pozitif aralığa da periyot denir. Sinüs ve kosinüsün temel periyodu \(2\pi\), yani \(360^\circ\)'dir. Tanjantın periyodu ise \(\pi\), yani \(180^\circ\)'dir. Çünkü hem sinüsün hem kosinüsün işareti yarım turda değişir ve bu iki eksi işareti bölümde birbirini götürür.
Sinüs ve kosinüs aynı biçimde salınır, ancak farklı noktalardan başlar. Kosinüs, sinüse göre çeyrek tur öndedir:
Bu kaymaya faz farkı denir. Sinüs \(0\)'dan başlarken kosinüs \(1\)'den başlar; fakat ikisi de aynı biçimde ve aynı periyotla salınır.
Bir Dalgayı Büyütmek, Sıkıştırmak ve Kaydırmak
Gerçek hayattaki dalgaların hepsi \(-1\) ile \(1\) arasında ve \(2\pi\) aralıklarla hareket etmez. Genel bir sinüs dalgasını şu biçimde yazabiliriz:
Formüldeki her harf dalganın başka bir özelliğini belirler:
- \(|A|\), dalganın orta çizgisinden en yüksek veya en düşük noktaya uzaklığını belirler. Buna genlik denir.
- \(B\), dalganın yatay yönde ne kadar hızlı tekrar edeceğini belirler. Periyot \(2\pi/|B|\) olur.
- \(C\), dalgayı sağa veya sola kaydırır. Bu, faz kaymasıdır.
- \(D\), dalganın orta çizgisini yukarı veya aşağı taşır.
Periyot formülünde \(B\neq0\) olduğunu varsayarız. \(B=0\) olursa sinüsün girdisi \(x\)'e bağlı kalmaz; grafik dalga yerine sabit bir yatay çizgiye dönüşür.
Örneğin bir gün içindeki sıcaklığı çok basitleştirilmiş bir modelle şöyle gösterdiğimizi düşünelim:
Burada orta sıcaklık \(10^\circ\), genlik \(2^\circ\)'dir. Yani model \(8^\circ\) ile \(12^\circ\) arasında değişir. \(B=\pi/12\) olduğuna göre periyot:
olur. Model 24 saatte bir tekrar eder. Gerçek hava sıcaklığı tam bir sinüs dalgası izlemez; burada düzenli tekrarları yaklaşık olarak göstermek için basit bir model kurduk.
Yapay Zekâya Döngüsel Bilgiyi Doğru Anlatmak
Bir yapay zekâ modeline günün saatini yalnızca 0 ile 23 arasında bir sayı olarak verdiğimizi düşünelim. Sayı doğrusunda 23 ile 0 birbirinden çok uzaktadır. Oysa gerçek hayatta saat 23.00 ile 00.00 yan yanadır. Benzer bir sorun haftanın günlerinde, yılın aylarında ve pusula yönlerinde de görülür.
Döngüsel bir değeri çember üzerindeki bir noktaya dönüştürerek bu komşuluğu koruyabiliriz. Saat \(h\) için şu iki özelliği üretelim:
| Saat | \(x_{\text{sin}}\) | \(x_{\text{cos}}\) | Çemberdeki konum |
|---|---|---|---|
| 00.00 | \(0\) | \(1\) | Sağ uç |
| 06.00 | \(1\) | \(0\) | Üst uç |
| 12.00 | \(0\) | \(-1\) | Sol uç |
| 18.00 | \(-1\) | \(0\) | Alt uç |
| 23.00 | \(\approx -0{,}259\) | \(\approx 0{,}966\) | Sağ uca yakın |
Saat 23.00'ün değerleri, 00.00'ın \((0,1)\) noktasına yakındır. Böylece model günün sonunda tekrar günün başına yaklaştığımızı görebilir. Yalnızca sinüs kullanmak yeterli olmazdı; çünkü 00.00 ve 12.00 için sinüs değeri aynı, yani sıfırdır. Sinüs ve kosinüsü birlikte kullanmak çember üzerindeki konumu ayırt etmemizi sağlar.
Veri gerçekten döngüselse bu iki özellik saatler arasındaki komşuluğu korur. Modelin başarısı yine veriye ve göreve bağlıdır; dönüşüm tek başına daha iyi sonuç garantilemez.
Açıları Birleştirmek: Toplam Formülleri
Bir nesneyi önce \(\alpha\), ardından \(\beta\) kadar döndürürsek toplam dönüş \(\alpha+\beta\) olur. Bu birleşik dönüşün yatay ve dikey bileşenleri aşağıdaki özdeşliklerle hesaplanır:
İkinci dönüşten sonraki yatay ve dikey konum, ilk dönüşün iki bileşenine bağlıdır. Birazdan göreceğimiz döndürme matrislerini art arda uyguladığımızda da aynı ilişkileri elde ederiz.
\(\alpha=\beta=\theta\) seçersek çift açı formüllerine ulaşırız:
Çift açı formüllerini gerektiğinde toplam formüllerinde \(\alpha=\beta=\theta\) yazarak yeniden bulabiliriz.
Orandan Açıya Dönmek: Ters Trigonometrik Fonksiyonlar
Şimdiye kadar açıdan oranı bulduk. Oran verilip açı sorulduğunda ters trigonometrik fonksiyonları kullanırız:
- \(\arcsin(x)\), sinüsü \(x\) olan temel açıyı verir.
- \(\arccos(x)\), kosinüsü \(x\) olan temel açıyı verir.
- \(\arctan(x)\), tanjantı \(x\) olan temel açıyı verir.
3–4–5 üçgenimize geri dönelim. Karşı kenar 3, komşu kenar 4 olduğunda \(\tan(\theta)=3/4=0{,}75\) idi. Açıyı bulmak için:
Sinüs, kosinüs ve tanjant tekrar ettiği için aynı oranı veren sonsuz sayıda açı vardır. Örneğin \(\sin(30^\circ)=\sin(150^\circ)=0{,}5\). Ters fonksiyonun tek bir sonuç vermesi için açılardan belirli bir aralık seçilir.
| Fonksiyon | Kabul ettiği değerler | Temel sonuç aralığı |
|---|---|---|
| \(\arcsin(x)\) | \(-1\leq x\leq1\) | \(-\frac{\pi}{2}\leq\theta\leq\frac{\pi}{2}\) |
| \(\arccos(x)\) | \(-1\leq x\leq1\) | \(0\leq\theta\leq\pi\) |
| \(\arctan(x)\) | Tüm gerçek sayılar | \(-\frac{\pi}{2}<\theta<\frac{\pi}{2}\) |
Hesap makinesinde \(\sin^{-1}\) gibi bir gösterim de görebiliriz. Bu gösterim burada “sinüsün tersi” anlamındadır; \(1/\sin(\theta)\) anlamına gelmez. Karışıklığı önlemek için bu yazıda \(\arcsin\), \(\arccos\) ve \(\arctan\) gösterimlerini kullanıyoruz.
Doğru Bölgeyi Bulmak: atan2
Bir noktanın veya vektörün yönünü bulmak istediğimizde yalnızca \(\arctan(y/x)\) kullanmak bazen yanlış sonuç verir. Çünkü \((3,3)\) ve \((-3,-3)\) noktalarında \(y/x=1\) olur. Oysa birinci nokta \(45^\circ\), ikinci nokta \(225^\circ\) yönündedir.
Programlama dillerinde bu sorun için genellikle iki girdili atan2 fonksiyonu kullanılır:
Fonksiyon hem \(y\) hem \(x\) işaretini gördüğü için noktanın hangi bölgede bulunduğunu ayırt edebilir. Ayrıca \(x=0\) olduğunda \(y/x\) bölümünü hesaplamaya çalışmadan dikey yönleri de ele alır. Çoğu uygulamada sonucu \(-\pi\) ile \(\pi\) arasında verir; ancak uç noktalar ve parametre sırası kullanılan yazılıma göre kontrol edilmelidir.
\(-135^\circ\) ile \(225^\circ\) arasında bir tam tur vardır; bu yüzden aynı yönü gösterirler.
Trigonometrinin Matrislerle Buluşması: Döndürme
Bir görüntüyü, robot kolunu veya oyun karakterini döndürmek istediğimizde trigonometrik oranlar ile matrisler birlikte çalışır. Matrisler yazısında gördüğümüz iki boyutlu döndürme matrisi şöyledir:
Bu matrisi \((x,y)\) noktasına uyguladığımızda yeni koordinatlar şu şekilde oluşur:
Örneğin \((1,0)\) noktasını \(90^\circ\) döndürelim. \(\cos(90^\circ)=0\) ve \(\sin(90^\circ)=1\) olduğundan:
Nokta \((1,0)\)'dan \((0,1)\)'e taşındı: Saat yönünün tersine çeyrek tur döndü. Görüntü işlemede döndürme ve veri artırma, robotikte yön tayini, bilgisayar grafiklerinde kamera ve nesne hareketleri bu dönüş hesabından yararlanır.
Vektörler Arasındaki Açı: Kosinüs Benzerliği
Vektörler yazısında, verileri sayı listeleriyle temsil edebildiğimizi ve iki vektörün nokta çarpımını görmüştük. Trigonometri, nokta çarpımına geometrik bir anlam kazandırır:
Buradaki \(\theta\), iki vektör arasındaki açıdır. Eşitliği kosinüs için düzenlediğimizde kosinüs benzerliği formülüne ulaşırız:
\(\mathbf{a}=[4,3]\) ve \(\mathbf{b}=[3,4]\) vektörlerini karşılaştıralım. Önce nokta çarpımını ve uzunlukları bulalım:
Şimdi formülde yerlerine yazalım:
Sonuç 1'e yakın; vektörler de benzer yönlere bakıyor. Aralarındaki açıyı hesaplayalım:
| Kosinüs benzerliği | Geometrik yorum |
|---|---|
| \(1\) | Aynı yön |
| \(0\) | Dik yönler |
| \(-1\) | Tam zıt yönler |
Metin, görüntü veya başka veriler bir gömme modeliyle vektörlere dönüştürüldüğünde kosinüs benzerliği, vektörlerin yönlerini karşılaştırmak için kullanılabilir.
Ses ve Görüntülerde Dalgalar
Ses, havadaki basıncın zamanla değişmesidir. Saf ve düzenli bir tonu sinüs dalgasıyla gösterebiliriz. Konuşma sesi ise farklı frekans ve genliklerdeki birçok bileşeni içerir.
Bir dalganın bir saniyede kaç kez tekrar ettiğine frekans denir ve hertz ile ölçülür. Örneğin 440 hertzlik bir bileşen saniyede 440 kez tekrar eder. Açısal frekans \(\omega=2\pi f\) olarak yazılırsa basit bir dalga şu biçimi alır:
Burada \(A\) genlik, \(f\) frekans, \(t\) zaman, \(\varphi\) ise başlangıçtaki fazdır. Ses tanıma sistemlerinde ham ses çoğu zaman doğrudan bu tek formülle işlenmez. Sinyalin farklı zaman aralıklarında hangi frekansları ne kadar içerdiğini gösteren temsiller oluşturulabilir. Böylece model yalnızca sesin o andaki değerini değil, frekans içeriğini de inceleyebilir.
Görüntüde yavaş renk değişimleri düşük, sık tekrarlanan ince ayrıntılar yüksek frekanslarla ilişkilendirilebilir. Ses ve görüntü gibi karmaşık sinyalleri daha basit, tekrar eden bileşenler açısından incelemek için trigonometrik dalgalardan yararlanırız. Bu yaklaşımın matematiği olan Fourier dönüşümünü ileride ayrı bir konuda ele almak gerekir.
Sinir Ağlarında Bir Ön İzleme: Hiperbolik Tanjant
Yapay sinir ağlarında karşımıza çıkan hiperbolik tanjant, adı tanjanta benzese de birim çemberdeki \(\tan(\theta)\) fonksiyonuyla aynı değildir. \(\tanh(x)\) biçiminde yazılır ve daha önce öğrendiğimiz üstel fonksiyonlardan oluşturulur:
\(\tanh(0)=0\)'dır ve fonksiyonun çıktıları \(-1\) ile \(1\) arasında kalır. Pozitif büyük girdilerde sonuç 1'e, negatif büyük girdilerde \(-1\)'e yaklaşır. Grafik başlangıç noktasına göre simetriktir; yani \(\tanh(-x)=-\tanh(x)\) olur.
Bu özellikler nedeniyle hiperbolik tanjant bazı sinir ağı yapılarında aktivasyon fonksiyonu olarak kullanılmaktadır. Ancak “çıktıları sıfırın iki yanında bulunur” demek, belirli bir veri kümesindeki çıktıların ortalamasının mutlaka sıfır olacağı anlamına gelmez. Ayrıca büyük mutlak girdilerde eğri yataylaşır; bu bölgelerde öğrenme sırasında kullanılan değişim bilgisi küçülebilir. Bu nedenle hangi aktivasyonun uygun olduğu, ağın yapısına ve probleme göre değerlendirilir.
Dil Modellerinde Bir Örnek: Konum Bilgisi
Bir cümlede sözcüklerin sırası anlamı değiştirebilir. “Kedi köpeği kovaladı” ile “Köpek kediyi kovaladı” aynı sözcüklerden oluşsa da aynı şeyi anlatmaz. Bu yüzden bir dil modelinin yalnızca hangi sözcüklerin bulunduğunu değil, bunların hangi sırada yer aldığını da bilmesi gerekir.
2017'de tanıtılan özgün Transformer mimarisi, dizideki konum bilgisini girdilere eklemek için farklı frekanslardaki sinüs ve kosinüslerden yararlanan sabit bir konumsal kodlama kullandı. Basitleştirilmiş fikir şudur: Her konum, tek bir sıra numarası yerine farklı hızlarda değişen birden fazla dalganın değerleriyle temsil edilir.
Burada \(pos\) sözcüğün dizideki konumunu, \(i\) temsilin hangi bileşenine baktığımızı, \(d\) ise temsilin toplam boyutunu belirtir. Farklı hızlarda değişen sinüs ve kosinüs değerleri her konuma ayırt edilebilir bir desen verir.
Sonraki çalışmalarda öğrenilen konum temsilleri ve dönmeye dayalı başka yöntemler de geliştirildi. Sinüs ve kosinüsle yapılan kodlama, özgün Transformer'da trigonometrinin konum bilgisini temsil etmek için nasıl kullanıldığını gösterir; bütün güncel dil modellerinin aynı formülü kullandığı anlamına gelmez.
Sık Karşılaşılan Hatalar
- Karşı ve komşu kenarı açıyı seçmeden adlandırmak: Bu iki kenar, baktığımız açı değiştiğinde yer değiştirir.
- Hipotenüsü yanlış seçmek: Hipotenüs her zaman dik açının karşısındadır ve dik üçgenin en uzun kenarıdır.
- Derece ile radyanı karıştırmak: Formül veya yazılım radyan beklerken derece girmek çok farklı bir sonuç üretir.
- Tanjantı her açıda tanımlı sanmak: \(\cos(\theta)=0\) olduğunda tanjantın paydası sıfır olur ve sonuç tanımsızdır.
- Ters fonksiyonun tek olası açıyı verdiğini sanmak: Trigonometrik değerler tekrar eder. Ters fonksiyon yalnızca seçilmiş temel aralıktaki sonucu döndürür.
- Yön bulurken yalnızca \(\arctan(y/x)\) kullanmak: Bu oran bölge bilgisini kaybedebilir. Uygun durumlarda \(\operatorname{atan2}(y,x)\) kullanılmalıdır.
- Kosinüs benzerliğini kesin anlam eşitliği saymak: Ölçüm vektör yönünü karşılaştırır; yorum, temsili üreten modele ve probleme bağlıdır.
- Her tekrar eden verinin kusursuz sinüs dalgası olduğunu düşünmek: Sinüs çoğu zaman yararlı bir yaklaşım sağlar; gerçek veride gürültü, düzensizlik ve birden fazla periyot bulunabilir.
Üçgenden Dalgaya
Dik üçgende sinüs karşı kenarı hipotenüse, kosinüs komşu kenarı hipotenüse, tanjant ise karşı kenarı komşu kenara oranlar. Birim çemberde bu oranlar koordinatlara dönüşür: Kosinüs yatay, sinüs dikey konumu verir. Böylece dar açıların ötesindeki dönüşleri de hesaplayabiliriz.
Birim çemberden \(\sin^2(\theta)+\cos^2(\theta)=1\) özdeşliği çıkar; noktanın bulunduğu bölge işaretleri, tam tur ise tekrarın nedenini açıklar. Açıyı yay uzunluğuyla ilişkilendirince radyana ulaşırız. Genlik, periyot, faz ve dikey kaydırma da bir dalganın görünümünü belirler.
Yapay zekâ örneklerinde sinüs ve kosinüs saat gibi döngüsel verilerin komşuluğunu korudu. Döndürme matrisini görüntü ve vektör dönüşleriyle ilişkilendirdik; kosinüs benzerliğiyle iki vektörün yönünü karşılaştırdık. Ses sinyalleri, hiperbolik tanjant ve özgün Transformer'ın konumsal kodlaması da trigonometrik fikirlerin farklı kullanımlarını gösterdi.
\(\theta\) sıfıra yaklaştığında \(\sin(\theta)\)'nın nasıl davrandığını sormak, bizi sıradaki konuya götürür: Bir fonksiyonun değerleri belirli bir noktaya yaklaşırken nereye gider? Bir sonraki yazıda limit kavramını incelerken birim çemberi, radyanı ve trigonometrik fonksiyonları yeniden kullanacağız.
Yazar: Levent KARAGÖL

