Programcılar için 10 Matematik Kavramı - KDnuggets

Programcılar için 10 Matematik Kavramı – KDnuggets

Kaynak Düğüm: 2874651

Programcılar için 10 Matematik Kavramı
Yazara göre resim
 

Programcılara olan talep arttıkça arz da doğal olarak her gün daha fazla insanın sektöre girmesiyle karşılanacaktır. Ancak rekabetçi bir sektör. Kendinizi sürekli geliştirmek, becerilerinizi geliştirmek ve maaşınızı artırmak için yetkin bir programcı olduğunuzu kanıtlamanız gerekir. Bunu yapmanın bir yolu, insanların genellikle bilmediği şeyleri öğrenmektir. 

Pek çok insan, programlama endüstrisinin arkasındaki matematiği bilmenize gerek olmadığı varsayımıyla programlama sektörüne giriyor. Bu bir bakıma doğru olsa da, programlamanın ardındaki mantıksal matematik kavramını anlayabilmek sizi daha yetkin bir programcı yapacaktır. 

Bu nasıl? Ne yaptığınızı ve neler olduğunu anlayarak. Bu nasıl.

O halde hemen konuya geçelim. Programcılar için en iyi 10 matematik kavramı nelerdir?

Boole cebiri cebirden kaynaklanır. Sanırım bu açıktı. Bir programcıysanız veya programcı olma arayışı içindeyseniz, muhtemelen Boolean'ın ne olduğunu zaten biliyorsunuzdur. Değilse, hızlı bir şekilde tanımlayacağım. 

Boolean, iki olası değerden birine sahip olan bir veri türü/ikili değişkendir; örneğin 0 (yanlış) veya 1 (doğru). Boolean veri türü, değişkenin değerlerinin doğruluk değerleri (doğru ve yanlış) olarak bilindiği boolean cebiri tarafından desteklenir. Boole cebiriyle çalışırken kullanabileceğiniz üç operatör vardır: 

  • Bağlaç veya VE işlemi
  • Ayırma veya VEYA işlemi
  • Olumsuzlama veya Değil işlemi

Bunlar, çıktıyı daha iyi anlamanızı sağlamak için görsel olarak venn diyagramları olarak temsil edilebilir. Boole cebiri 6 yasadan oluşur:

  • Değişmeli kanun
  • Federal hukuk
  • Dağıtım kanunu
  • VE hukuk
  • VEYA hukuk
  • Ters çevirme yasası

Bilgisayarlar sayıları anlar ve bu yüzden bir sayı sistemine ihtiyaç duyarlar. Sayı sistemi, sayıları ifade etmek için kullanılan bir yazı sistemi olarak bilinir. Örneğin, en yaygın dört sayı sistemi türüne sahipsiniz:

  1. Ondalık sayı sistemi (Taban-10)
  2. İkili sayı sistemi (Taban-2)
  3. Sekizli sayı sistemi (Taban-8)
  4. Onaltılık sayı sistemi (Taban-16)

Bilgisayarlar, olası rakamların 2 ve 0 olduğu Base-1 sayı sistemiyle çalışır. Base64 ayrıca ikili verileri dize biçiminde kodlamak için kullanılır.

Sayılar hakkında daha fazla bilgi edinmek için kayan noktamız var. Kayan nokta, gerçek sayıları yaklaşık olarak temsil eden değişken bir veri türüdür. Kayan noktalı sayı, ondalık noktanın konumunun sabit bir konumda olmak yerine hareket edebildiği veya "değişebildiği" bir sayıdır. Bu, geliştiricilerin menzil ve hassasiyet arasında bir denge kurmasına olanak tanır.

Peki neden bir yaklaşım? Bilgisayarlarda yalnızca sınırlı miktarda alan bulunur; 32 bit (tek duyarlıklı) veya 64 bit (çift duyarlıklı). Python ve JavaScript gibi programlama dilleri için varsayılan değer 64 bittir. Kayan noktalı sayılara örnek olarak 1.29, 87.565 ve 9038724.2 verilebilir. Ondalık noktalı pozitif veya negatif bir tam sayı olabilir. 

Log olarak da bilinen, soruyu yanıtlamak için üstel sayıların tersini kullanan matematiksel bir kavramdır. Peki logaritma programcılar için neden önemlidir? Çünkü karmaşık matematiksel hesaplamaları basitleştirir. Örneğin 1000 = 10^4, 4 = log101000 olarak da yazılabilir.

Taban sayısı kendisi ile çarpılması gereken matematiksel bir nesnedir. Üs, bir taban sayısının kendisiyle kaç kez çarpılması gerektiğini tanımlayan bir sayıdır. Bu nedenle logaritma, belirli bir sayıyı üretmek için tabanın hangi güce yükseltilmesi gerektiğini gösteren bir üstür.

Log, Taban-2 kullandığında ikili bir logaritmadır ve Taban-10 ise ortak bir logaritmadır. 

Küme, birbiriyle herhangi bir ilişkisi olması gerekmeyen, sırasız, benzersiz bir değerler topluluğudur. Yalnızca benzersiz öğeler içerebilirler ve aynı öğeyi iki veya daha fazla içeremezler.

Örneğin excel dosyaları veya bir veritabanı, bir dizi benzersiz satıra sahip tablolar içerir. Bu yapılar sonlu sayıda öğeye sahip olabileceğinden, bu bir tür ayrık matematiktir. Küme teorisinin amacı değerlerin toplamını ve birbirleri arasındaki ilişkileri anlamaktır. Bu genellikle veri analistleri, SQL uzmanları ve veri bilimcileri için kullanılır. 

Bunu kullanarak yapabilirsiniz:

  • İç birleştirme veya kesişme – Her iki kümede de bulunan öğeleri içeren bir kümeyi döndürür
  • Dış birleştirme veya birleştirme – Her iki kümedeki öğeleri döndürür
  • Tümünü birleştir - Dış birleştirme operatörüyle aynıdır, ancak tüm kopyaları içerecektir.
  • Hariç veya Eksi – A Eksi B, A kümesinden B kümesinin öğeleri olmayan öğeleri içeren bir kümedir 

Kombinatorik, sonuç elde etmek için nesneleri sayma ve sonlu yapıların belirli özelliklerini örüntüler aracılığıyla anlama sanatıdır. Programlama tamamen problem çözmekle ilgilidir ve kombinatorik, bu sonlu ayrık yapıları incelemek için nesneleri düzenleyebilmemizin yoludur.

Kombinatorik formülü Permütasyon ve Kombinasyonun bir kombinasyonudur.

  • Permütasyon, bir kümeyi belirli bir düzene veya sıraya göre düzenleme eylemidir
  • Kombinasyon, kümenin değerlerinin sıra dikkate alınmadan seçilmesidir.

Bildiğiniz gibi grafik, bir dizi değerin görsel temsilidir ve bu değerler birbirine bağlanabilir. Veriler söz konusu olduğunda bu değerler, grafik teorisinde bağlantılar olarak bilinen değişkenler nedeniyle birbirine bağlanır. 

Grafik Teorisi, bağlantılı nokta kümelerinin kenarları ve köşeleri arasındaki ilişkiye ilişkin grafiklerin incelenmesidir. Bu, çizgiler olarak bilinen kenarlarla bağlanan düğümler olarak da bilinen köşe noktalarını kullanan nesneler arasında ikili bir ilişki oluşturmamıza olanak tanır. Bir grafik bir G(V, E) çifti olarak temsil edilir; burada V sonlu küme köşelerini ve E sonlu küme kenarları temsil eder.

Karmaşıklık teorisi, bir algoritmanın giriş boyutunun bir fonksiyonu olarak çalışması için gereken zaman ve hafıza miktarının incelenmesidir. İki tür karmaşıklık vardır:

  • Uzay karmaşıklığı – bir algoritmanın çalıştırması gereken bellek miktarı.
  • Zaman karmaşıklığı – bir algoritmanın çalışması için gereken süre.

Bir algoritmanın hafızasını yeniden kullanabildiğimiz için daha fazla insan zamanın karmaşıklığı konusunda endişeleniyor. Zaman karmaşıklığı söz konusu olduğunda bunu ölçmenin en iyi yolu algoritmanın gerçekleştirdiği işlem sayısını dikkate almaktır. Algoritmalar if ifadeleri ve döngüler kullanılarak oluşturulur, bu nedenle harcanan zamanı azaltmak için mümkün olduğunca az if ifadesi ve döngü içeren kod kullanmak istersiniz.

Algoritmalar için karmaşıklık teorisi, bir algoritmanın sınırlayıcı davranışının daha iyi anlaşılmasına ve tanımlanmasına yardımcı olmak için büyük-o gösterimini kullanır. Algoritmaların giriş boyutundaki değişikliklere nasıl tepki verdiklerine göre sınıflandırılması için kullanılır.

Ahhh istatistikler. Yapay zekaya girmek istiyorsanız istatistikler hakkında bilgi sahibi olmanız gerekir. Yapay zeka ve makine öğrenimi istatistik için kullanılan güzel isimlerdir. İstatistiksel programlama, ChatGPT gibi veri ağırlıklı sorunları çözmek için kullanılır. ChatGPT'nin yanıtı tamamen kullanıcı tarafından sağlanan istemle eşleşme olasılığına bağlıdır. 

İstatistiksel programlama söz konusu olduğunda ortalama, medyan ve moddan daha fazlasını öğrenmeniz gerekecektir. Önyargı, kovaryans ve Bayes teoremi hakkında bilgi edinmeniz gerekecek. Bir programcı olarak size görevler verilecek ve bunun doğrusal bir regresyon problemi mi yoksa lojistik bir regresyon problemi mi olduğunu soracağınızı fark edeceksiniz. İkisi arasındaki farkı anlamak, elinizde ne tür bir görev olduğunu belirlemenize yardımcı olacaktır. 

Okulda doğrusal cebire bakmış olabilirsiniz veya bakmamış olabilirsiniz. Doğrusal cebir çok önemlidir ve bilgisayar grafikleri ve derin öğrenmede yaygın olarak kullanılır. Doğrusal cebiri kavramak için şu üç kelimeyi anlamanız gerekir:

  • Skaler – tek bir sayısal değer
  • Vektör - sayıların veya 1 boyutlu dizilerin listesi
  • Matris – bir ızgara veya 2 boyutlu dizi

Vektörler, 3 boyutlu bir uzaydaki noktaları ve yönleri temsil edebilirken, matrisler bu vektörlerin başına gelen dönüşümleri temsil edebilir. 

Bu makale, programlama kariyerinizi geliştirecek en iyi 10 matematik kavramına hızlı bir genel bakış sunmaktadır. Karmaşıklıkları öğrenmek yalnızca günlük görevlerinizi daha sorunsuz ve anlaşılır hale getirmekle kalmayacak, aynı zamanda işvereninize potansiyelinizi gösterebilecektir. 

Size yardımcı olacak ÜCRETSİZ bir kitap arıyorsanız, göz atın: Makine Öğrenimi için Matematik: Ücretsiz e-Kitap
 
 
Nişa Arya KDnuggets'ta bir Veri Bilimcisi, Serbest Teknik Yazar ve Topluluk Yöneticisidir. Veri Bilimi kariyer tavsiyesi veya eğitimleri ve Veri Bilimi hakkında teoriye dayalı bilgi sağlamakla özellikle ilgileniyor. Ayrıca, Yapay Zekanın insan yaşamının uzun ömürlülüğüne fayda sağladığı/sağlayabileceği farklı yolları keşfetmek istiyor. Başkalarına rehberlik ederken teknoloji bilgisini ve yazma becerilerini genişletmeye çalışan hevesli bir öğrenci.
 

Zaman Damgası:

Den fazla KDNuggets