Python Data Science Libraries 2 – Numpy Methodology

One of the most important and fundamental libraries in Python is undoubtedly the numpy library. In the continuation of this series, I will first continue with numpy from the pandas library now. In general, its functional structure with library-based features is based on a more robust infrastructure than other libraries. Therefore, it can perform the mathematical operations to be done quickly and in a healthy way. Its expansion is already known as Numerical (num) python (py) in python. As it can be understood from here, it is a library with strong mathematical aspect and possible to reach desired results quickly and easily. It is one of the indispensable building block libraries in Machine Learning and Deep Learning. Basically, it plays a role in the background of every transaction. What is mentioned here is the matrices in the form of arrays and the operations between them according to their states, the calculation of their outputs and the use of matrices in the basis of the work done as a project is the most necessary condition. Although we often see this frequently in Image Processing operations, people who will work in this field must have numpy knowledge in their transactions.

This library, which is used as a whole, offers you mathematical structures suitable for the models you will use. In this way, descriptive explanations of your transactions will also make more sense. As I mentioned in the upper paragraph, matrix operations are the most important event in mathematics. This spreads to the whole of the transactions you are currently doing and numpy provides you convenience in layer-based transaction processes. When we actively process images, we can see the most important layer operations visibly. Even if the OpenCV library carries the necessary load during the operations, operations that are not done through the array structure of any numpy library will not be sustainable. The numpy library is an indispensable value of these works, as there will be matrices and products of matrices behind many operations. It is a fully user-friendly library in line with the possibilities of its functional structure. It is among the top 5 most useful libraries among Python libraries, according to tests conducted by people working in this field worldwide. Usage areas are increasing in direct proportion to this.

Deep learning and Machine Learning topics do not only mean writing long lines of code contrary to popular belief. For this reason, most of the people start writing code or even making a career in this field without knowing the events that are going on in their background. Behind these events lies an extensive knowledge of mathematics and statistics, the best example of which is Image Processing. Because on the back of it is all mathematics, these operations are matrices and there are numpy in the libraries used. This is the biggest proof that this library is active almost everywhere. There is no library in python that is multifunctional in this way. Because there are two libraries that must be found in every field. These are the numpy and pandas libraries. While these provide convenience in both processing the data and performing numerical operations on the data, they show us the differences in the data perspective. This is a proof of the importance of libraries in Python, especially libraries on data processing and data analysis.

I can clearly say that the Numpy library makes a great difference in data shaping and preparation. It has functions that we would call useful in many ways such as reshape, array, exp, std, min, sum in the numpy library. This is actually the most basic level that distinguishes it from other libraries. For those who want to reach the necessary details of this, I will leave information about them in the resources section. From here, you can use the numpy library and what kind of features you can take advantage of, or what kind of convenience you can get in numerical transactions, you can find them yourself from the cheat sheet or numpy’s own website.

Thank you for reading and following my articles until this time, I wish you a good day.

References:

-https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Numpy_Python_Cheat_Sheet.pdf

-https://numpy.org/

-https://cs231n.github.io/python-numpy-tutorial/

-https://www.w3schools.com/python/numpy_intro.asp

-https://globalaihub.com/python-veri-bilimi-kutuphaneleri-1-pandas-metodoloji/

-https://globalaihub.com/python-data-science-libraries-1-pandas-methodology/

Python Veri Bilimi Kütüphaneleri 2 – Numpy Metodoloji

Python içerisinde en önemli ve temel olarak bakılan kütüphanelerden birisi de şüphesiz numpy kütüphanesidir. Bu serinin devamında öncelikle pandas kütüphanesinden şimdi de numpy ile devam edeceğim. Genelde sahip olduğu kütüphane bazlı özelliklerde fonksiyonel yapısı, diğer kütüphanelere göre daha sağlam bir altyapıya dayanmaktadır. Bundan ötürü, yapılacak olan matematiksel işlemleri de hızlıca ve sağlıklı bir şekilde yapabilmektedir. Açılımı zaten python içerisinde Numerical (num) python (py) olarak bilinmektedir. Buradan da anlaşıldığı üzere, matematiksel yönü kuvvetli, istenen sonuçlara hızlı ve kolay şekilde ulaşması mümkün bir kütüphanedir. Makine Öğrenmesi ve Derin Öğrenme konularında vazgeçilmez yapı taşı kütüphanelerinden birisidir. Temel anlamda yapılan her işlemin arka planında kendisi rol oynar. Burada bahsedilen şey array halde bulunan matrisler ve onların durumlarına göre kendi aralarındaki işlemler, çıktılarının hesaplanması ve proje olarak yapılan iş esasında matrisleri kullanmak en gerekli koşuldur. Genellikle bunu Image Processing işlemlerinde sıkça görsek bile, bu alanda çalışacak olan kişilerin yapacağı işlemlerde numpy bilgisi mutlaka olmalıdır.

Başlı başına bir bütün olarak kullanılan bu kütüphane, sizlere kullanacağınız modeller için uygun matematiksel yapılar sunar. Bu sayede, yapacağınız işlemlerin betimsel anlamda açıklamaları da aynı şekilde daha mantıklı olur. Üst paragrafta da bahsettiğim gibi matris işlemleri matematik tabanında en mühim olaydır. Bu halihazırda sizin yapacak olduğunuz işlemler bütününe yayılır ve katman bazlı olarak işlem süreçlerinde numpy size kolaylık sağlar. En önemli katman işlemlerini, resimleri aktif olarak işlediğimiz zaman gözle görülebilir bir şekilde fark edebiliriz. OpenCV kütüphanesi işlemler boyunca gerekli yükü sırtlasa bile, herhangi bir numpy kütüphanesinin array yapısı aracılığı ile yapılmamış işlemler sürdürülebilir bir halde olmaz. Yapılacak birçok işlem arkasında, matrisler ve matrislerin çarpımları olacağı için numpy kütüphanesi bu işlerin vazgeçilmez değeridir. Fonksiyonel yapısının verdiği imkanlar doğrultusunda tam anlamıyla kullanıcı dostu bir kütüphanedir. Dünya çapında bu alanda çalışan kişilere yapılan testlere göre, Python kütüphaneleri içerisinde en kullanışlı ilk 5 kütüphane içerisindedir. Kullanım alanları da bununla doğru orantılı olarak artmaktadır.

Derin öğrenme ve Makine Öğrenmesi konuları, sanılanın aksine sadece uzun satırlar süren kodları yazmak demek değildir. Bu sebepten insanların çoğu, arka planında dönen olayları bilmeden kod yazmaya hatta bu alanda kariyer yapmaya başlıyorlar. Bu olayların arka tarafında yoğun bir matematik ve istatistik bilgisi yatmaktadır ki buna en iyi örnek, Image Processing işlemleridir. Çünkü arka tarafında tamamen matematik yatmaktadır ki bu işlemler matrisler ve kullanılan kütüphaneler içerisinde numpy vardır. Bu da bu kütüphanenin hemen hemen her yerde aktif görev aldığının en büyük kanıtıdır. Bu şekilde çok fonksiyonlu olan python içerisinde kütüphane yoktur. Çünkü her alanda mutlaka bulunması gereken iki kütüphane vardır. Bunlar numpy ve pandas kütüphaneleridir. Bunlar hem veriyi işleme hem veri üzerinde sayısal işlemleri yapma konusunda kolaylık sağlarken bizlere veriye bakış açısında oluşan farklılıkları gösterir. Bu da Python bünyesinde bulunan kütüphanelerin özellikle veri işleme ve veri analizleri üzerine olan kütüphanelerin ne derece mühim olduğunun bir kanıtıdır.

Numpy kütüphanesinin veri şekillendirme ve hazırlama konusunda büyük ölçüde fark yarattığını net bir şekilde söyleyebilirim. Numpy kütüphanesi içerisinde bulunan reshape, array, exp, std, min, sum gibi birçok anlamda kullanışlı diyeceğimiz fonksiyonlara sahiptir. Diğer kütüphanelerden ayırt eden en temel seviyesi aslında budur. Bunun gerekli detaylarına ulaşmak isteyenler için kaynaklar kısmında bunlara dair bilgiler bırakacağım. Buradan siz de numpy kütüphanesini kullanırken ne gibi özelliklerden faydalanabilirsiniz ya da sayısal işlemlerde ne tarz kolaylıklar yakalayabilirsiniz bunları kendiniz de cheat sheet veya numpy’ın kendine ait olan internet sitesinden bulabilirsiniz.

Bu zaman kadar okuduğunuz ve yazılarımı takip ettiğiniz için teşekkür eder, iyi günler dilerim.

References:

-https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Numpy_Python_Cheat_Sheet.pdf

-https://numpy.org/

-https://cs231n.github.io/python-numpy-tutorial/

-https://www.w3schools.com/python/numpy_intro.asp

-https://globalaihub.com/python-veri-bilimi-kutuphaneleri-1-pandas-metodoloji/

-https://globalaihub.com/python-data-science-libraries-1-pandas-methodology/

Python Data Science Libraries 1 – Pandas Methodology

I am putting the topics I have been working on into a series that I will tell you one by one. For this reason, I will explain the methodology and usage aspects of almost all libraries that I am actively working on. I’ll start with pandas, which allows functional operations such as data preprocessing without reading data first. With this library, we can easily perform data pre-processing steps, which are vital steps for data science, such as observing missing data and extracting that data from the data set. In addition, you can bypass data types and the front part of numerical or categorical operations that you will do on them. This provides us with significant convenience before proceeding. Each library in Python has its own specialties, but speaking for pandas, it is responsible for all of the pre-part modifications to the data to form the basis of the data science steps. Data classification processes in Pandas can be designed and activated quickly with a few functional codes. This is the most critical point in the data preprocessing stage, in the previous steps of data modeling.

We can store the data as “dataframe” or “series” and perform operations on it. The fact that Pandas library performs every operation on data in a functional, easy and fast way reduces the workload in data science processes on behalf of data scientists. In this way, it can handle steps such as the beginning and most difficult part of the process, such as data preprocessing, and focus on the last steps of the job. By reading data such as .csv, .xlsx, .json, .txt prepared in different types, it takes the data that has been entered or collected through data mining into python to process. Pandas library, which has the dataframe method, is more logical and even sustainable than other libraries in terms of making the data more functional and scalable. Those who will work in this field should work on the methodology of pandas library, which has the basic and robust structure of the python programming language, not to write code directly. Because new assignments on the data, column names, grouping variables, removing empty observations from the data or filling empty observations in a specific way (mean, 0 or median assignment) can be performed.

Data cannot be processed or analyzed before the Pandas library is known. To be clear, the pandas library can be called the heart of data science. Specially designed functions such as apply (), drop (), iloc (), dtypes () and sort_values ​​() are the most important features that make this library exclusive. It is an indispensable library for these operations, even if it is not based here on the basis of its original starting point. In the steps to be taken, it has a structure with tremendous features and a more basic case in terms of syntax. It is possible to host the results from the loops in clusters and convert them into dataframe or series. The acceleration of the processes provides a great advantage in functional terms if the project that will emerge has a progressing process depending on time, which is generally the case. Looking at its other possibilities, it is one of the most efficient libraries among the python libraries. The fact that it is suitable for use in many areas can be considered as a great additional feature. Pandas is among the top 3 libraries in the voting among data processing libraries made by software developers using the python programming language. You can reach this situation, which I quoted with datarequest in the sources section.

The concept of “data science”, which has been developing since 2015, has brought the pandas library to the forefront and this library, which has been developing in silence for years, has come to light. After Pandas, I will explain numpy and talk about numerical and matrix operations. In general, Pandas is a library that has high-level features in basic data analysis and data processing. In addition, if you specify the topics you will talk about and the things you want me to mention, I will draw a more solid way in terms of efficiency. I hope these articles that I will publish in series will help people who will work in this field. In the future, I will add the cheatsheet style contents that I will prepare on github to the bibliography section. If you want to take advantage of such notes, I will put my github account in the resource section, and you can easily access there.

References:

https://www.dataquest.io/course/pandas-fundamentals/Python Data Science Libraries 1 – Pandas Methodology

Python Veri Bilimi Kütüphaneleri 1 – Pandas Metodoloji

Üzerinde çalıştığım konuları, sizlere de tek tek anlatacağım bir seri haline getiriyorum. Bu sebeple, aktif olarak üzerinde çalıştığım hemen hemen tüm kütüphanelerin metodolojisini ve kullanım yönlerini anlatacağım. Önceliği veri okumadan veri ön işleme gibi fonksiyonel işlemlere izin veren pandas ile başlayacağım. Eksik verilerin gözlenmesi ve o verilerin veri seti içerisinden çıkartma işlemi gibi veri bilimi için hayati önemi olan adımları, bu kütüphane sayesinde veri ön işleme adımlarını rahatlıkla gerçekleştirebiliriz. Ek olarak veri tiplerini ve onların üzerinde yapacağınız, sayısal ya da kategorik işlemlerin ön kısmını bu şekilde atlatabilirsiniz. Bu da yapılacak işlemlerin öncesinde bize önemli anlamda kolaylık sağlar. Python içerisinde bulunan her kütüphanenin kendine has özellikleri bulunmaktadır fakat pandas için konuşmak gerekirse, veri bilimi adımlarının temelini oluşturmak için verinin üzerinde yapılacak ön parça değişikliklerin tamamından sorumludur. Pandas içerisinde veriyi sınıflama işlemleri de birkaç fonksiyonel kod ile hızlıca tasarlanıp aktif hale getirilebilir. Bu da veri ön işleme aşamasında, veriyi modellemenin önceki adımlarında en kritik noktadır.

Veriyi, ‘dataframe’ ya da ‘series’ halde saklayabilir ve üzerinde işlemleri yapabiliriz. Pandas kütüphanesinin veri üzerinden yapılacak her işlem fonksiyonel, kolay ve hızlı bir şekilde yapması, veri bilimciler adına veri bilimi süreçlerinde iş yükünü azaltmaktadır. Bu sayede, sürecin başlangıç ve en zor kısmı olan veri ön işleme gibi adımları halledip işin son adımlarına odaklanabilir. Farklı türde hazırlanmış .csv, .xlsx, .json, .txt gibi verileri okuma işlemleri yaparak, girişi yapılmış ya da veri madenciliği sayesinde toplanmış verileri işlem yapmak için python bünyesine alır. Dataframe metoduna sahip olan pandas kütüphanesi, veriyi daha işlevsel ve ölçeklenebilir hale getirme konusunda diğer kütüphanelere göre daha mantıklı hatta sürdürülebilirdir. Bu alanda çalışacak kişiler, direkt olarak kod yazmak için değil bu gibi temel anlamda python programlama dilinin temel ve sağlam yapısına sahip pandas kütüphanesinin metodolojisi üzerine çalışmalıdır. Çünkü veri üzerinde yeni atamalar, kolon isimleri, değişkenleri gruplama, verideki boş gözlemleri veriden çıkarmak ya da boş gözlemleri belirli bir şekilde doldurma işlemleri (ortalama, 0 ya da medyan ataması) yapılabilir.

Pandas kütüphanesi bilinmeden verilerin üzerinde işlem ya da herhangi bir analiz yapılamaz. Açıkça belirtmek gerekirse, pandas kütüphanesi veri biliminin kalbi denilebilir. Özel olarak tasarlanmış apply(), drop(), iloc(), dtypes() ve sort_values() gibi fonksiyonlar, bu kütüphaneyi ayrıcalıklı kılan en mühim özelliktir. Asıl çıkış noktası temelinde buraya dayanmasa bile, bu işlemler için vazgeçilmez bir kütüphanedir. Yapılacak adımlarda, muazzam özelliklere sahip bir yapıya ve sözdizimi anlamında daha temel bir durumdadır. Döngülerden çıkan sonuçların da kümeler içinde barındırılıp onları dataframe ya da series haline dönüştürmeniz mümkündür. İşlemlerin hızlanması, ortaya çıkacak olan projenin zamana bağlı olarak ilerleyen bir süreci varsa ki genelde böyledir, fonksiyonel anlamda büyük avantaj sağlar. Diğer imkanlarına bakınca ise, python kütüphaneleri arasında verim seviyesi en yüksek kütüphanelerden birisidir. Birçok alanda kullanıma elverişli olması, müthiş bir ek özellik olarak değerlendirilebilir. Pandas, python programlama dilini kullanan yazılımcılar tarafından yapılan veri işleme kütüphaneleri arasındaki oylamada ilk 3 kütüphane arasındadır. Kaynaklar kısmında datarequest ile alıntıladığım bu duruma ulaşabilirsiniz.

2015 yılından bu yana gelişen ‘veri bilimi’ kavramı, pandas kütüphanesini de ön plana çıkarmaya ve yıllarca sessizlik içerisinde gelişimi sürdüren bu kütüphanenin gün yüzüne çıkmasına ön ayak oldu. Pandas sonrası, numpy anlatacağım ve onun hakkında yapılan numerik, matris işlemlerinden bahsedeceğim. Pandas genel anlamda bu şekilde temel anlamda veri analizi ve veri işleme konusunda üst düzey özelliklere sahip bir kütüphanedir. Ek olarak bahsedeceğiniz konular ve değinmemi istediğiniz şeyler varsa belirtirseniz verim anlamında daha sağlam bir yol çizmiş olurum. Seri halinde yayınlayacağım bu yazıların umarım bu alanda çalışacak kişilere yardımı dokunur. İlerleyen süreçlerde github üzerinden hazırlayacağım cheatsheet tarzı içerikleri de kaynakça kısmına ekleyeceğim. Eğer siz de bu gibi notlardan yararlanmak isterseniz, github hesabımı kaynak kısmına koyacağım oradan rahatlıkla ulaşabilirsiniz.

References:

Effects of Activation Functions

In Deep Learning, activation functions play a key role and have a direct impact on success rates. The main reason for this is that before reaching success values ​​in the output layers in neural networks, we can reach the change of success value with the change of determined coefficients and weights thanks to the activation function. Generally, the structure of functions varies between linear and nonlinear. This can be found by trying on models for structures such as clustering and regression, or you can access them through the links I have left in the resources section. There are different formulas for each activation function, and we must carefully create the code strings to be installed for them. The formula for neuron operations consists of weights and bias value. Statistical information is one of the most important points in these processes. Even if code writing seems like a critical role, and not considered much, what really matters is knowing what you’re doing. Knowledge of Mathematics and Statistics is an important issue that cannot be ignored. Mathematics and statistics play an important role in all of the Data Science, Deep Learning and Machine Learning processes.

As you can see in the above formula, the additional error parameter known as beta is actually bias. One of the most important structures taught during statistics education is the bias structure. In the neural networks we use and process, bias is an extremely valuable issue and cannot be ignored. The selection of activation functions is very important for the result in the exit and inlet parts effectively on neural networks. The appearance of these functions that contribute to learning varies per input and along the parameters, coefficients. The image I present below includes the situation that is considered as the inputs and outputs of the activation functions. I will leave it as a link at the last part for those who want to access these codes. Success criteria vary within each activation function itself. Softmax is mostly used in the output layer because it makes more sense and success. There are two commonly known names. Examples of these are softmax and sigmoid. Most people embarking on a career journey in this field often hear about these two activation functions. Data scientists working on neural networks are experimenting with ReLU as an initial step.

Activation functions vary according to success parameters along the x and y axes. The main target success rate is to coincide with the peak as data increases along the y-axis. To achieve this, both the parameter values, the coefficient adjustment and the activation function selected during the operations are effective. Back propagation – forward propagation through the coefficients are re-determined and kept at the optimum level, which has an incredible place throughout neural networks. These operations are completely related to mathematics. You should have knowledge of derivatives and if you are working in this field, the important thing is not to write code, but to know exactly what you are doing. You can observe as I left it at the bottom, we are always doing derivative operations for backward rotation. There are neural networks built on a mathematical background. After these processes, we can observe the success of the activation functions by finding the most suitable one in the exit section. Thus, we can easily find the optimum function for the model and see its usage cases on a project basis. As a result of these situations, success situations vary.

In the last part, I will explain the activation functions and briefly talk about what they do. Step Function, Linear Function, Sigmoid Function, Hyperbolic Tangent Function, ReLU Function, Leaky ReLU Function, Swish, Softmax Function can be given as examples for activation functions.

Step Function: Makes binary classification with threshold value.

Linear Function: It produces several activation values ​​but its derivative is constant.

Sigmoid Function: It is a function known by almost everyone and gives output in the range of [0,1].

Hyperbolic Tangent Function: It is a nonlinear function that outputs in the range of [-1,1].

ReLU Function: It is essentially a nonlinear function. The property of the ReLU function is that it takes value 0 for negative inputs and positive values ​​forever. [0, + ∞)

Leaky ReLU Function: Leaky ReLU distinctive feature is that it has transitioned with axes close to 0 but touches on the origin to 0 a and keeps the lost gradients in ReLU with the negative region.

Swish Function: This function produces the product of the inputs and the sigmoid function as an output.

Softmax Function: This function, which is used for multiple classification problems, produces outputs between [0,1] that show the probability that each given input belongs to a subclass.

I wrote the parts that I made use of the images I took and the definitions in the references section. If you liked my article, I would appreciate it if you could give feedback.

References :

-https://www.derinogrenme.com/2018/06/28/geri-yayilim-algoritmasina-matematiksel-yaklasim/

-https://medium.com/smlr-center/sinir-a%C4%9Flar%C4%B1-ve-derin-%C3%B6%C4%9Frenme-vi-hesaplama-grafi%C4%9Fi-1caf57ec03f9

-https://ayyucekizrak.medium.com/derin-%C3%B6%C4%9Frenme-i%C3%A7in-aktivasyon-fonksiyonlar%C4%B1n%C4%B1n-kar%C5%9F%C4%B1la%C5%9Ft%C4%B1r%C4%B1lmas%C4%B1-cee17fd1d9cd

-https://www.aliozcan.org/ai/aktivasyon-fonksiyonlari/

-https://globalaihub.com/degisken-secimi-hakkinda-temel-bilgiler/

Aktivasyon Fonksiyonlarının Etkileri

Derin Öğrenme içerisinde aktivasyon fonksiyonları, kilit bir rol oynayarak başarı oranlarına doğrudan etki ederler. Bunun temel nedeni, sinir ağları içerisindeki çıkış katmanlarında başarı değerlerine ulaşmadan önce, belirlenen katsayıların ve ağırlıkların değişimi ile başarı değerinin değişimine aktivasyon fonksiyonu sayesinde erişebiliriz. Genellikle fonksiyonların yapıları lineer ve lineer olmayan şeklinde değişiklik gösterir. Bu da kümeleme, regresyon gibi yapılar için hangisinin başarısının daha iyi olduğuna modeller üzerinde denenerek bulunabilir ya da halihazırda kaynaklar kısmına bıraktığım linkler aracılığıyla ulaşabilirsiniz. Her aktivasyon fonksiyonu için farklı şekilde formüller vardır ve bunlar için kurulacak olan kod dizinlerini dikkatli şekilde oluşturmalıyız. Nöron işlemleri için formül, ağırlıklar ve bias (yanlılık) değerinden meydana gelir. İstatistik bilgisi, bu işlemler bünyesinde en önemli noktalardan birisidir. Göz önünde çok bulundurulmayıp genelde kod yazım kritik rol gibi gözükse bile, asıl önemli olan şey ne yaptığını bilmektir. Matematik ve İstatistik bilgisi göz ardı edilemeyecek kadar mühim bir konudur. Veri Bilimi, Derin Öğrenme ve Makine Öğrenmesi süreçlerinin tamamında matematik ve istatistik önemli rol oynamaktadır.

Üstteki formülde de gördüğünüz gibi, beta olarak bilinen ek hata parametresi aslında bias yani yanlılıktır. İstatistik eğitimi boyunca öğretilen en önemli yapılardan birisi yanlılık yapısıdır. Kullandığımız ve işlediğimiz sinir ağları yapısında da yanlılık son derece değerli bir konudur ve göz ardı edilemez. Aktivasyon fonksiyonları, sinir ağları üzerinde etkin bir şekilde çıkış ve giriş kısımlarında sonuç için seçimi çok önemlidir. Öğrenme katkısı sağlayan bu fonksiyonların görüntüsü, girdi başına ve seçilen parametreler, katsayılar boyunca değişiklik göstermektedir. Alt tarafta sunduğum görüntü, aktivasyon fonksiyonlarının girdileri ve çıktıları olarak değerlendirilen durumu içermektedir. Bu kodlara erişmek isteyenler için son kısımda link olarak bırakacağım. Her aktivasyon fonksiyonun kendi içerisinde başarı kriterleri değişkenlik göstermektedir. Çıkış katmanında başarısı ve daha mantıklı geldiği için çoğunlukla Softmax kullanılmaktadır. Yaygın olarak bilinen iki isim vardır. Bunlar için örnek softmax ve sigmoid söylenebilir. Bu alanda kariyer yolculuğuna girişen çoğu insan, bu iki aktivasyon fonksiyonunu sık bir şekilde duymaktadır. Sinir ağları üzerine çalışan veri bilimciler, ilk başlangıç adımında ReLU ile denemeler yapmaktadır.

Aktivasyon fonksiyonları, x ve y eksenleri boyunca başarı parametrelerine göre değişiklik gösterir. Hedeflenen asıl başarı oranı, y ekseni boyunca veri arttıkça tepe noktasına denk gelmektir. Bunu sağlamak için hem parametre değerleri hem katsayı ayarlaması hem de yapılan işlemler boyunca seçilen aktivasyon fonksiyonu etkilidir. Back propagation – forward propagation olarak bilinen ileri ve geri yayılım sayesinde katsayıların tekrardan belirlenip optimum seviyede tutulması sinir ağları boyunca inanılmaz bir yeri vardır. Bu işlemler tamamen matematik ile bağlantılıdır. Türev konusunda bilgi sahibi olmalısınız ve bu alanda çalışıyorsanız önemli olan kod yazmak değil, tam olarak ne yaptığınızı bilerek yapmaktır. Alt tarafta bıraktığım şekilde gözlemleyebilirsiniz, zaten geriye doğru dönüş için sürekli türevsel işlemler yapıyoruz. Burada matematik altyapısı üzerine kurulan bir sinir ağları vardır. Bu işlemler sonrası aktivasyon fonksiyonları çıkış kısmında en uygun olanı bularak başarısını gözlemleyebiliriz. Böylece model için optimum fonksiyonu bulup onun kullanım durumlarını da proje bazlı denedikçe rahatlıkla görebiliriz. Bu durumlar sonucunda başarı durumları değişkenlik gösterir.

Son kısımda aktivasyon fonksiyonlarını anlatıp ne işe yaradıklarından kısaca bahsedeceğim. Step Fonksiyonu, Doğrusal Fonksiyon, Sigmoid Fonksiyonu, Hiperbolik Tanjant Fonksiyonu, ReLU, Leaky ReLU, Swish, Softmax Fonksiyonu aktivasyon fonksiyonları için örnek verilebilir.

Step Fonksiyonu: Eşik değeri ile ikili sınıflandırma yapar.

Doğrusal Fonksiyon: Birkaç aktivasyon değeri üretir fakat türevi sabittir.

Sigmoid Fonksiyonu: Hemen herkesin bildiği fonksiyondur ve [0,1] aralığında çıktı verir.

Hiperbolik Tanjant Fonksiyonu: [-1,1] aralığında çıktı veren non-linear bir fonksiyondur.

ReLU Fonksiyonu: Esasında doğrusal olmayan bir fonksiyondur. ReLU fonksiyonun özelliği, negatif girdiler için 0 değeri ve pozitif değerleri sonsuza kadar alır. [0, + ∞ )

Leaky ReLU Fonksiyonu: Leaky ReLU ayırıcı özellik, 0 değerine yakın eksenler ile geçiş yapmış fakat 0 a orijin üzerinde temas etmesi ve ReLU’daki kaybolan gradyanları negatif bölge ile bünyesinde tutar.

Swish Fonksiyonu: Bu fonksiyon, girdiler ile sigmoid fonksiyonunun çarpımını çıktı olarak üretmektedir.

Softmax Fonksiyonu: Çoklu sınıflandırma problemleri için kullanılan bu fonksiyon, verilen her bir girdinin bir alt sınıfa ait olma olasılığını gösteren [0,1] arası çıktılar üretmektedir.

Aldığım görselleri ve tanımlarından faydalandığım kısımları references bölümünde yazdım. Yazımı sevdiyseniz geri bildirimde bulunursanız çok sevinirim.

References :

-https://www.derinogrenme.com/2018/06/28/geri-yayilim-algoritmasina-matematiksel-yaklasim/

-https://medium.com/smlr-center/sinir-a%C4%9Flar%C4%B1-ve-derin-%C3%B6%C4%9Frenme-vi-hesaplama-grafi%C4%9Fi-1caf57ec03f9

-https://ayyucekizrak.medium.com/derin-%C3%B6%C4%9Frenme-i%C3%A7in-aktivasyon-fonksiyonlar%C4%B1n%C4%B1n-kar%C5%9F%C4%B1la%C5%9Ft%C4%B1r%C4%B1lmas%C4%B1-cee17fd1d9cd

-https://www.aliozcan.org/ai/aktivasyon-fonksiyonlari/

-https://globalaihub.com/degisken-secimi-hakkinda-temel-bilgiler/

Değişken Seçimi Hakkında Temel Bilgiler

Hayatımızın artık her yerinde aktif olarak denk geldiğimiz yapay öğrenme, derin öğrenme ve yapay zeka konuları, herkesin üzerinde çalışmalar gerçekleştirdiği, yapılan tahminlerin başarı skoru ile ölçüldüğü bir durum söz konusudur. İş süreçleri içerisinde, yapay öğrenme konusu kritik bir öneme sahiptir. Hazır olarak elinizde bulunan ya da bizzat firma tarafından toplanılarak Değişken Mühendisliği evresine gelen veri, birçok konudan özenle incelenerek son duruma hazırlanıp Veri Bilimci olarak çalışan kişinin önüne götürülür. O da veriyi anlamlaştırarak firma için veriden çıkarsama yapabilir. Böylece geliştirilen ürün ya da hizmet müşteriye sunularak test edilir ve gerekli başarı parametrelerini sağlarsa, ürünün performansını sürdürülebilir kılabiliriz. Burada en önemli basamaklardan birisi, ortaya çıkartılan ürünün ölçeklenebilir olması ve iş süreçlerine adaptasyon evresinin hızlı şekilde ayarlanmasıdır. Bir diğer olay ise korelasyon ile belirlenen değişkenlerin önem derecelerini veri seti içerisinden elde etmek, bunu anlamlı hale getirip modelleme evresi öncesinde Değişken Mühendisi sayesinde belirlemektir. Değişken Mühendisleri, Veri Bilimci’nin iş sürecini hızlandırıp ona kolaylık sağlayan bir ek güç olarak düşünebiliriz.

İş arama durumunda sık sık karşımıza çıkabilen bir ‘Değişken Mühendis’ ilanı ile karşılaşılabilir. Veri içinden öğrendiğimiz kritik bilgileri, veri hazırlama aşamasında değişken seçimi işlemi sırasında elde edebiliriz. Özellik seçme yöntemlerinin, hedef değişkeni tahmin etmek için girdi değişkenlerinin sayısını bir model için en yararlı olduğuna inanılanlara indirmesi amaçlanır. Değişken seçim işlemleri, veri ön işleme süreçleri içerisinde bulunurken mantıklı bir şekilde belirlenmesi durumunda iş yükünü olabildiğince azaltarak, çalışanlara büyük oranda kolaylık sağlar. Bunun için özel bir iş alanı mevcut olduğunu belirtmiştim. Değişken seçim durumları, verinin modelleme konusundaki başarısını da etkileyerek tahmin edilecek değerlerin başarısının ne derece olacağına direkt olarak etki eder. Bundan ötürü, ilk veriyi ele aldığımızdan ürün aşamasına kadar geçen olayların içerisindeki en önemli kısım, burada çalışan insanın değişken seçimine doğru karar vermesinden geçer. Gidişatın olumlu geçmesi, ortaya çıkacak ürünün kısa süre ile hayata geçmesini sağlar. Veriden istatistiksel çıkarımlar yapmak, hangi verinin ne derece önemli olduğunu algoritmalar aracılığıyla belirlemek kadar önemlidir. İstatistik bilimi, genel olarak veri bilimi süreçlerinin bünyesinde rol almalıdır.

İstatistiksel filtre ile belirlenecek değişken seçim yöntemleri de vardır. Bunlara değişken seçimleri içerisinde farklılık gösteren ölçekleri örnek verebiliriz. Bu alanda çalışan insanların çoğu, istatistiksel önem düzeylerini maalesef yeterince önemsemiyorlar. Veri Bilimi ve Yapay Zeka üzerine çalışan bazı kişiler içerisinde de sadece kod yazmak, bu işin temeli olarak görülüyor. Veri seti için değişkenlere kategorik ve numerik değişken örneklerini verebilirim. Ek olarak, bu değişkenler de kendi bünyesinde ikiye ayrılmaktadır. Numerik olarak gördüğümüz değişken, integer ve float olarak biliniyorken, kategorik olarak gördüğümüz değişkenler; nominal, ordinal ve boolean olarak bilinmektedir. Bunu en temel olarak aşağıda koyduğum görselde bulabilirsiniz. Değişken seçimi için bu değişkenler, kelimenin tam anlamıyla hayati öneme sahiptirler. Yapılan işlemler doğrultusunda bu değişkenlere değerlendirme aşamasında bir İstatistikçi ile birlikte karar verilebilir ve seçilen değişkenlerin analizi sağlam temellere dayanan şekilde yapılmalıdır. Bu alanda çalışanların en gerekli özelliklerinden birisi yorumlayıp iyi bir şekilde analiz yeteneğine sahip olmalarıdır. Bu sayede, hazırladıkları verileri temelleri mantıkla eşleşen halde ürün şeklinde rahatlıkla sunabilirler.

Neredeyse tam olarak en doğru metot bulunmamaktadır. Her veri seti için değişken seçimi iyi bir analizle değerlendirilmektedir. Çünkü yapılan işlemler, her bir değişken için değişkenlik gösterebilir. Yani, bir veri seti çok fazla integer ya da float değer barındırırken, üzerine çalıştığınız bir diğer veri seti ise boolean olabilir. Bundan ötürü değişken seçimi yöntemleri her veri seti için farklılık gösterdiği durumlar olabilir. Önemli olan konu, hızlı bir şekilde adapte olup veri setinin bize ne sunduğu anlayarak ona göre çözümler üretmek olabilir. Bu yol ile birlikte, yapılan işlemler boyunca alınan kararların daha sağlıklı bir şekilde devam etmesi mümkün olur. Kategorik değişkenler, ki kare testi gibi yöntemlerle belirlenebilir hatta bu yöntem daha güçlüdür ve verim oranı haliyle daha yüksek noktalara erişebilir. Ürün veya hizmet geliştirme aşamaları boyunca değişken seçimi, bir modelin başarı kriterleri içerisinde katkı sağlayan en mühim aşamadır.

References:

Artificial learning, deep learning and artificial intelligence, which we actively come across in all parts of our lives, is a situation where everyone is working on it, and the predictions are measured with the success score. In business processes, the subject of artificial learning has a critical importance. The data that is in your hands or collected by the company personally and comes to the Feature Engineering phase, is carefully examined from many issues and prepared for the final situation and taken to the person working as a Data Scientist. He can make inferences for the firm by making sense of the data. Thus, if the product or service developed is tested by offering it to the customer and meets the necessary success parameters, we can make the performance of the product sustainable. One of the most important steps here is the scalability of the product produced and the rapid adjustment of the adaptation phase to business processes. Another event is to obtain the significance levels of the features determined by correlation from the data set, to make this meaningful and to determine by the Feature Engineer before the modeling phase. We can think of Feature Engineers as an additional power that accelerates and facilitates the Data Scientist’s business process.

In the case of job search, we may encounter a ‘Feature Engineer’ announcement, which may appear frequently. We can obtain the critical information we learn from the data during the feature selection process during the data preparation phase. Feature selection methods are intended to reduce the number of input variables to those believed to be most useful for a model to predict the target feature. Feature selection processes provide great convenience to employees by reducing the workload as much as possible, if they are determined logically while involved in data pre-processing processes. I mentioned that there is a special business area for this. Feature Selection situations affect the success of the data in modeling and directly affect the success of the values ​​to be predicted. For this reason, the most important part of the events from the first data to the product stage is the right decision of the working person to choose the feature. If the progress is positive, the product will come to life in a short time. Making statistical inferences from the data is as important as determining which data is and how important it is through algorithms. Statistics science should play a role in data science processes in general.

There are also feature selection methods to be determined by statistical filter. We can give examples of scales that differ in their choice of features. Unfortunately, most people working in this field do not care enough about statistical significance. Among some people working on Data Science and Artificial Intelligence, writing code is seen as the basis of this work. I can give examples of categorical and numerical variables for the data set. In addition, these variables are divided into two within themselves. While the feature we see numerically is known as integer and float, variables we see categorically are; known as nominal, ordinal and boolean. You can find this basically in the image I put below. These variables are literally vital to feature selection. In line with the operations performed, these variables can be decided with a statistician during the evaluation phase, and the analysis of the selected features should be made on a solid basis. One of the most necessary features of those working in this field is their ability to interpret and analyze well. In this way, they can easily present the data they prepare in the form of products, with the basics matching the logic.

There is almost no exact method available. Feature selection for each data set is evaluated with a good analysis. Because the operations performed may vary for each feature. That is, while one data set contains too many integers or float values, another data set you are working on may be boolean. Therefore, there may be cases where feature selection methods differ for each data set. The important issue may be to adapt quickly, understand what the data set offers us and produce solutions accordingly. With this method, it is possible for the decisions taken during the transactions to continue in a healthier way. Categorical variables can be determined by methods such as the chi-square test, even this method is more powerful and the rate of efficiency can reach higher points. The choice of features throughout the product or service development stages is the most important step that contributes to the success criteria of a model.

References:

WordCloud and Sentiment Analysis with Python

One of the most popular concepts of our day is the word cloud and the work done on it. People use the nltk library to experiment with the word cloud. The aim here is to process the processes before the natural language processing phases. Since the Python programming language reaches a wider audience every day, the variety of projects made with nltk is increasing. Beginners often analyze tweets posted on Twitter on any topic and make visualizations, analyzes and inferences from it. While creating a word cloud, one of the key points is the number of repetitions. The more the word repeats, the more prominent it becomes in the word cloud. I tried to explain your research with the image below. Here the part indicated with q is the part of the word or phrase you are looking for. To do this, you must first have a Twitter Developers account. In addition, you will be providing the link here as we will pull it from here. Through the link, you can pull tweets to your local workplace and take action on them.

As can be seen in the photo above, the most critical part of the job is to set up the def structure well and decide on which variables to label. You can save the token and key values ​​somewhere and withdraw from there. Here, I did not show the key values ​​due to privacy, but once you have a Twitter Developer account, you can access these values ​​yourself and make the necessary assignments. If you want to access specific values ​​while analyzing on Twitter, you can make custom searches. I will put the necessary documentation in the Resources section, you can review it according to your request and integrate it into your own code and analysis. If I need to give extra information, there are several methods in nltk we will use. One of the ones I use individually is “stopwords” and the other is “wordnet”. You can change the English option according to the language you want to work on. It is a comprehensive English language in terms of word strength and effectiveness. If you are working on your own language and have a great collection of words, you can specify it in the comments tab. Thus, we can keep the interaction high and increase the yield rate. You can observe the part I explained here in the image below.

I chose the word ‘samsung’ for the Word Cloud study. By entering the abbreviation of the language option in the Lang section, you can pull the hashtag data you have chosen to your work area. At first we add the necessary libraries, and then we can change the background color we will work with according to your personal wishes. In addition, if you set the plt.axis value to “on”, you can observe the frequency of repeating words. Since I did this with the highlighting method myself, I found it unnecessary to show the axes as extra. What I do here is to set up a basic wordcloud structure and to gain something even at your entry level. If you have a career planning for natural language processing, you can see it as a start and continue to improve by following the necessary notes. The word cloud structure is the bottom tab of these jobs. While I teach you as a junior, I also continue to work in this field myself. The natural language processing career is an area where you need to stay up-to-date on what others are doing, how they code, and what projects are done on platforms such as large-scale resource browsing and github.

I’ll show you an entry-level sentiment analysis, which I will mention in the last part. Before starting what I will explain here, when writing code in Python, you need to set up the def patterns well and feed your code into it here. Accelerating functional processes and writing an understandable, scalable code for people who will come after you while working in the future will benefit everyone. By writing clean code with def structures, you can easily transfer what you do there to the person who comes for you. Going back to the sentiment analysis, here we can already do this scoring work via the textblob library. TextBlob classifies it as a result of the content of tweets sent on Twitter and the positive – negative words of this content. After this classification, it gives you a ready-made column for analysis. You can analyze this according to your wishes and try different studies. For example, you can chart it, observe the number of repetitive words and take the differences with these values ​​and integrate the background into a picture you have edited yourself.

References:
-https://globalaihub.com/sentiment-analysis-with-naive-bayes/
-https://globalaihub.com/duygu-analizi-nedir/
-https://www.veribilimiokulu.com/
-https://amueller.github.io/word_cloud/
-https://www.datacamp.com/community/tutorials/wordcloud-python
-https://monkeylearn.com/sentiment-analysis/

Python ile Twitter Üzerinden Kelime Bulutu ve Sentiment Analizi Çalışması

Günümüzün en popüler kavramlarından birisi, kelime bulutu ve onun üzerinden yapılan çalışmalardır. İnsanlar kelime bulutu üzerine denemeler yaparken nltk kütüphanesini kullanırlar. Burada amaç doğal dil işleme evrelerinden öncesinde yapılan işlemlerdir. Python programlama dili, her geçen gün daha geniş kitlelere ulaştığı için nltk ile yapılan projelerin çeşitliliği artmaktadır. Başlangıç seviyesinde olan insanlar, genellikle Twitter üzerinde herhangi bir konu üzerine atılan tweetleri analiz eder ve onun üzerinden görselleştirmeler, analizler ve çıkarımlar yaparlar. Kelime bulutu oluşturacak olurken kilit noktalardan birisi de tekrar sayılarıdır. Kelime ne kadar tekrar ederse, kelime bulutu içerisinde kendisini belirgin etme durumu daha ön plana çıkar. Yapacağınız araştırmaları, aşağıdaki görsel ile anlatmaya çalıştım. Burada q ile belirtilen kısım, aratacağınız kelime ya da cümlenin olduğu kısımdır. Bunları yapabilmek için öncelikle Twitter Developers hesabınızın olması gerekmektedir. Ek olarak buradan çekeceğimiz için bağlantıyı buradan sağlıyor olacaksınız. Bağlantı aracılığıyla tweetleri kendi local çalışma yerinize çekerek üzerinde işlemler yapabilirsiniz.

Üst taraftaki fotoğrafta da görüldüğü gibi işin en kritik kısmı, def yapısını iyi bir şekilde kurmak ve hangi değişkenler üzerinde etiket yapacağınıza karar vermektir. Token ve key değerlerini bir yere kaydedip oradan çekebilirsiniz. Burada ben gizlilikten ötürü key değerlerini göstermedim fakat Twitter Developer hesabınız olunca, bu değerlere kendiniz erişebilir ve gerekli atamaları yapabilirsiniz. Twitter üzerinde analiz yaparken spesifik değerlere erişmek isterseniz, özel aramalar yapabilirsiniz. Kaynaklar kısmında gerekli dokümantasyonu bırakacağım oradan isteğinize göre inceleyip kendi kodunuza ve analizinize entegre edebilirsiniz. Ekstra bilgi vermem gerekirse, kullanacağız nltk içerisinden birkaç metot bulunmaktadır. Benim bireysel olarak kullandıklarımdan birisi ‘stopwords’ bir diğeri ise ‘wordnet’tir. İngilizce seçeneğini üzerine çalışacağınız dile göre dilediğiniz gibi değiştirebilirsiniz. Kelime sağlamlığı ve etkinliği bakımından geniş kapsamlı olan İngilizce dilidir. Kendi diliniz üzerinde çalışırken tam anlamıyla kaliteli bir sözcük topluluğu varsa, yorumlar sekmesinden belirtebilirsiniz. Böylece etkileşimi yüksek tutabilir ve alınacak verim oranını arttırabiliriz. Aşağıda olan görselde burada anlattığım kısmı gözlemleyebilirsiniz.

Kelime Bulutu çalışması için ben ‘samsung’ kelimesini seçtim. Lang kısmında dil seçeneğinin kısaltmasını girerek seçtiğiniz hashtag verisini kendi çalışma alanınıza çekebilirsiniz. İlk başta gerekli kütüphaneleri ekliyoruz hemen sonrasında çalışacağımız arka plan rengini kişisel isteğinize göre değiştirebiliriz. Ek olarak plt.axis değerini ‘on’ hale getirirseniz tekrar eden kelimelerin frekansını gözlemleyebilirsiniz. Ben bunu kendim ön plana çıkarma metodu ile yaptığım için eksenlerini ekstra olarak göstermeyi gereksiz buldum. Burada yaptığım işlem temel bir wordcloud yapısı kurmak ve sizlerin giriş seviyesinde bile olsa bir şeyler kazandırmak. Doğal dil işleme için kariyer planlamanız varsa, bunu bir başlangıç olarak görüp gerekli notları takip ederek kendini geliştirmeye devam edebilirsiniz. Kelime bulutu yapısı bu işlerin en alt sekmesidir. Ben de bir junior olarak sizlere de öğretirken kendim de bu alanda çalışmaları sürdürüyorum. Doğal dil işleme kariyeri, geniş çaplı kaynak tarama ve github gibi platformlarda başkalarının neler yaptığını, nasıl kod yazdıklarını ve ne gibi projelerin yapıldığına dair her an takipte kalmanız gereken bir alandır.

Son kısımda da bahsedeceğimi söylediğim giriş seviyesi bir sentiment analizini göstereceğim. Burada anlatacaklarıma başlamadan önce, Python’da kod yazarken def kalıplarını iyi kurmanız ve kodunuzu burada içeriye iyice yedirmeniz gerekmektedir. Fonksiyonel işlemlerinin hızlandırılması ve ileri zamanlarda çalışırken sizden sonrasında yerinize gelecek kişilere anlaşılır, ölçeklenebilir bir kod yazmanız herkes açısından fayda sağlayacaktır. Bunu da def yapıları ile temiz kod yazarak sizin yerinize gelen kişiye kolay bir şekilde orada yaptıklarınızı aktarabilirsiniz. Sentiment analizine dönecek olursam, burada halihazırda textblob kütüphanesi aracılığıyla bu skorlama işini yapabiliriz. Twitter üzerinden atılan tweetlerin içeriği ve bu içeriğin olumlu – olumsuz kelimeler barındırılması sonucunda TextBlob bunu sınıflandırır. Bu sınıflandırma sonrası, sizlere üzerinde analiz yapılacak hazır hale gelmiş bir kolon verir. Bunu isteğinize göre analiz edebilir, farklı çalışmalar deneyebilirsiniz. Örnek olarak grafik haline dökebilir, tekrar eden kelimelerin sayısını gözlemleyebilir ve bu değerler sayesinde farklılıkları ele alarak, arka planını kendiniz düzenlediğiniz bir resme entegre edebilirsiniz.

References:
-https://globalaihub.com/sentiment-analysis-with-naive-bayes/
-https://globalaihub.com/duygu-analizi-nedir/
-https://www.veribilimiokulu.com/
-https://amueller.github.io/word_cloud/
-https://www.datacamp.com/community/tutorials/wordcloud-python
-https://monkeylearn.com/sentiment-analysis/

Buy Sell Algorithm with Moving Average

Data Scientists working in the field of finance usually make calculations such as portfolio optimization, trading transactions and portfolio return. This work is very important on the stock market. Because every decision made affects the amount of profit to be made. Therefore, it should be integrated into the system being worked on by choosing the steps carefully. There is a mechanism in the stock exchange that interacts with the world, and companies that can quickly adapt to its changes should quickly make a difference and become sustainable. In this way, while revealing their difference, they can change their marketing style and be active in the market. Companies that offer consultancy as a brand and have a high potential to adapt to changes can frequently mention their names. Machine learning and deep learning algorithms are deeply worked in the background of robot consultants. Every company that offers robot consultants has a solid infrastructure in its own right. Even if the coding part is a bit complicated, the moment we reach the conclusion part, we will see the whole success with our own eyes. Based on this, I put the output as an example in the bottom picture.

There are many different methods of technical analysis within the stock market. Here we will continue on the moving average entirely. The moving average method is one of the most common methods used in the stock market. Thanks to this method, there are many people who instantly follow the trading style transactions in the stock market. There are still technical analysis methods that we will add to these. Examples include RSI, Bolinger Band, MACD, and Fibonacci Correction Levels. The lines you see at the bottom are the moving average method that will make horse sell transactions for us with the window () function. The blue line in the image represents the actual prices. Apart from this, the intersection points of other lines turn to us as buy and sell and we can measure the return ourselves. Thanks to the function I named buy_sell, it takes the necessary actions for us. This makes the preparation for us. The functioning of this place for us indicates that all of the transactions are completed. Now only the necessary assignments have been made and the visual representation of the function is as I showed it at the beginning. To do this, the matplotlib library will help you.

The rest of this article will come as long as I improve myself and I am thinking of writing this in a series. I aim to explain to you the effects of the trading and technical analysis methods used in the stock exchange and help everyone who thinks about a career in this field. There are many start-ups in the stock market that trade through robot advisors. In addition, large companies on the basis of the sector continue to provide continuity while discovering new things in the market by investing in many small companies that will work in this field and are open to development. As it is known, the stock market can be affected by even the smallest things and change the profit and loss situations quickly. Large companies, who have information about what will happen before, preserve their profit margin by taking firm steps in the market by predicting such volatile environments. There are many technical analysis methods in the analysis systems used while creating them. The scalability of such processes can also guarantee how the system will react and that it will respond positively. I will continue to evaluate the share prices and process the technical analysis methods on the Python programming language. You can follow up and give feedback for this.

Hareketli Ortalama Algoritmasıyla Al – Sat Tavsiyeleri

Finans alanında çalışan Veri Bilimciler, genellikle portföy optimizasyonu, al – sat işlemleri ve portföy getirisi gibi hesapları yapar. Bu işin borsa üzerinde önemi çok üst seviyededir. Çünkü verilen her karar, yapılacak olan kâr miktarını etkiler. Bundan ötürü adımları dikkatli seçerek, üzerinde çalışılan sisteme entegre edilmelidir. Borsa içerisinde dünya ile etkileşim halinde olan mekanizma mevcut ve bunun değişimlerine hızlı şekilde adapte olabilen firmalar hızlıca fark yaratıp sürdürülebilir bir hal almalıdır. Bu sayede kendi farkını ortaya koyarken pazarlama şekillerini değiştirip piyasa içerisinde aktif olabilirler. Marka olarak danışmanlık sunan ve değişikliklere adapte olma potansiyeli yüksek olan firmalar, kendi isimlerinden sık bir şekilde bahsettirebilirler. Robot danışmanların arka planında yoğun bir şekilde makine öğrenmesi ve derin öğrenme algoritmaları yatmaktadır. Robot danışman sunan her şirket, kendi bünyesinde sağlam bir altyapıya sahiptir. Kodlama kısmı biraz karmaşık olsa bile sonuç kısmına vardığımız an, başarının tamamını kendi gözlerimizle göreceğimiz. Buna istinaden çıktıyı alt resimde örnek olması adına koyuyorum.

Aslında üstte gördüğünüz resim, projenin son halini temsil ediyor. Ulaşmak isteyenler için sizlere kaynaklar kısmında kod bütününü bırakacağım ve kendi sistemlerinize kolay bir şekilde adapte edebileceksiniz. Not olarak şunu belirtmeliyim. Ben Türkiye borsası içerisinde yer alan Aselsan şirketini kullanarak bu kodlamayı yaptım. Ek olarak burada gördüğünüz herhangi bir işlem yatırım tavsiyesi değildir. Bunları belirttikten sonra alt tarafta gördüğünüz şekilde kütüphaneleri ekleyip veri setimizi okuyoruz. Ardından veri hakkında istatistiksel çıktıları almak için describe() fonksiyonunu kodluyoruz. Burada ilgilendiğimiz değişken, borsanın kapanışını temsil eden ‘close’ değişkeni üzerine olacak. Veri setinin tarihlerini ben 1 Ocak 2017 itibari ile alarak kendi analizimi gerçekleştirdim. Siz istediğiniz herhangi bir zaman üzerinden analizinizi yapabilirsiniz fakat tek olması gereken şey, benim kullandığım şekilde kullanabilmeniz için hisse için tarihsel veri seti, gerekli kütüphaneler içerisinde bulunmalıdır. Aksi takdirde kodunuz çalışmayacak ve hata üretecektir. Github linkini koyduğum kodun detaylarını inceleyebilirsiniz. Herhangi bir sorunuz olursa mail adresimden bana ulaşabilirsiniz.

Borsa içerisinde birçok farklı şekilde teknik analiz yöntemi vardır. Biz burada tamamen hareketli ortalama üzerinden devam edeceğiz. Hareketli ortalama yöntemi, borsa içinde kullanılan en yaygın yöntemlerden birisidir. Bu yöntem sayesinde borsa içinde al sat tarzı işlemleri anlık olarak takip eden birçok insan vardır. Bunlara ekleyeceğimiz teknik analiz metotları halen mevcuttur. Örnek vermek gerekirse RSI, Bolinger Bandı, MACD ve Fibonacci Düzeltme Seviyeleri sayılabilir. Alt tarafta gördüğünüz çizgiler, bizim için window() fonksiyonu ile at sat işlemlerini yaptıracak, hareketli ortalama yöntemidir. Görselde mavi çizgi asıl fiyatları temsil etmektedir. Bunun haricinde diğer çizgilerin kesişim noktaları bize al sat olarak dönüyor ve getirisini kendimiz ölçebiliyoruz. Buy_sell adını verdiğim fonksiyon sayesinde bize gerekli işlemleri yapıyor. Bu da bizim için hazırlığı yapıyor. Bizim için buranın çalışması hali, işlemlerinin tamamının bittiğini gösterir. Artık geriye sadece gerekli atamaların yapılıp fonksiyonun görsel olarak en başta gösterdiğim şekilde sunumu kalmıştır. Bunu yapabilmek için matplotlib kütüphanesi size yardımcı olacaktır.

Bu yazının devamını kendimi geliştirdiğim sürece gelecek ve bunu bir seri halinde yazmayı düşünüyorum. Borsa içerisinde kullanılan al sat işlemleri ve teknik analiz metotlarının bunlara etkilerini sizlere açıklayıp bu alanda kariyer düşünen herkese yardımcı olmayı hedefliyorum. Borsa içerisinde robot danışman üzerinden işlem yapan birçok start-up bulunmaktadır. Bununla birlikte sektör bazında büyük firmalar, bu alanda çalışacak ve gelişime açık birçok ufak şirkete yatırım yaparak, piyasa içerisinde yeni şeyleri keşfederken sürekliliğini sağlamaya devam ediyor. Bilindiği üzere borsa en ufak şeylerden bile etkilenip kâr – zarar durumlarını hızlıca değiştirebiliyor. Önceden olacaklara karşı bilgi sahibi olan büyük firmalar, bu tarz değişken ortamlarını tahmin ederek piyasa içerisinde sağlam adımlar atarak kâr marjını koruyor. Bunları oluştururken kullandığı analiz sistemlerinde birçok teknik analiz metodu bulunmaktadır. Böyle işlemlerin ölçeklenebilir olması da sistemin ne tür tepki vereceğini ve verdiği tepkinin olumlu anlamda olacağının garantisini verebiliyor. Hisse fiyatlarını değerlendirip teknik analiz metotlarını Python programlama dili üzerinde işlemeye devam edeceğim. Bunun için takipte kalarak geri bildirimde bulunabilirsiniz.

Credit Scoring / Credit Analysis

There are certain start-ups that every company will invest in or help with financial development. As a result of certain analyzes, the investor company determines the company to invest and acquire. In this way, taking the development into account, the amount of contribution to be provided in direct proportion to the return is calculated in advance. This kind of analysis method has been developed in banks among their customers by data scientist . In short, credit scoring transactions are carried out between the bank and the customer in the loan application. The purpose of doing this is basically evaluated with tests to see if people actually pay or will be able to pay the loan they will receive. This is called credit scoring in machine learning. After the transactions, a positive or negative feedback is made to the person applying for the loan. There are many metrics that evaluate in this direction. As an example to these; There are many features that will be examined in more detail, such as the amount of wages people get, their career history, their previous loan status, and so on. As a result of their evaluation, 1 and 0 values ​​that will be formed give us positive or negative meaning.

Banks do extensive research on this subject, as in most subjects, and after analyzing the data they have, they put them into machine learning processes. As a result of these processes, the final model is prepared by performing a few optimization operations on the logic testing steps. Then these situations are accelerated and tested for people who apply for almost every loan. Values ​​0 and 1 are assigned as values. As a result of the transactions, the output of 0 does not suggest us to give credit to this person, and vice versa, when the output of 1 comes, it makes the customer segmentation process for us by saying “you can give credit to this person”.After the last step is completed thanks to the data science staff, the last step for us is to return this information to the required departments, finalize the applications of the individuals according to the results and return. The importance of analysis is critical for a bank. Because the smallest mistakes made can cause the loss of large amounts. For this reason, every credit scoring transaction should return to the bank positively.

Credit scoring transactions are of great importance for every bank. The amount of money out of the safe and the failure of the person to be loaned to fully fulfill its responsibility will cause major financial problems. Therefore, the data science team working at the back should be experts in this field and evaluate the measures according to every circumstance. In addition, people’s personal information should be analyzed thoroughly and a logical return to their application should be made. After arranging the data pre-processing steps and performing the operations on the necessary variables, the process is about getting a little more data ready. Another critical issue in credit scoring is the data pre-processing steps and the analysis steps to be taken afterwards. The Data Science team should do the engineering of variables themselves and analyze the effects of variables and their correlations correctly. After these processes, it will be inevitable that a logical result will occur. To minimize the margin of error, it is all about adjusting the data almost perfectly and evaluating the necessary parameters.

It is necessary to create the machine learning algorithm at the very beginning of the processes required to perform credit scoring and the variables should be checked once more before the model. Because the transactions are completely related to variables. Therefore, the effect of categorical or numerical variables on the model differs. Also, while setting up this model, it must be adjusted carefully. If the parameters we will use are specifically using the Python programming language, the parameters can be tested thanks to the GridSearchCV () method, and then the most suitable parameters are integrated into the model. Thus, it can proceed more successfully in credit scoring. This increases the level of service provided, so that people can meet their expectations and provide a personalized service to suit them. People with a high level of satisfaction develop their bond with the bank. Additionally, they feel more confident psychologically. The most basic feature of people is to feel belonging or connected somewhere. Providing this can increase the customer potential owned. If you want your own advertisement to be made, you can keep a good bond with your customers and increase their loyalty to you. One of the things that directly affects this is undoubtedly credit scoring.

References :
-https://globalaihub.com/examples-of-artificial-intelligence-in-life/
-https://globalaihub.com/machine-learning-makine-ogrenimi/
-https://www.cgap.org/sites/default/files/publications/2019_07_Technical_Guide_CreditScore.pdf
-https://www.moodysanalytics.com/solutions-overview/credit-origination/credit-assessment
-https://corporatefinanceinstitute.com/resources/knowledge/credit/credit-analysis-process/

Kredi Skorlama / Kredi Analizi

Her şirketin yatırım yapacağı ya da finans anlamında gelişim konusunda yardımcı olacağı belirli start-up’lar mevcuttur. Belirli analizler sonucu, yatırımcı firma yatırım yapacağı ve bünyesine alacağı firmayı belirler. Bu sayede gelişimi göz önüne alarak, getiri ile doğru orantılı olarak sağlayacağı katkı miktarı önceden hesaplanır. Bankalarda da müşterileri arasında bu tarz bir analiz yöntemi gelişmiştir. Kısaca banka ile müşteri arasında kredi başvurusunda kredi skorlama işlemleri yapılmaktadır. Bunun yapılma amacı temelde insanlar aslında alacağı krediyi öder mi ya da ödeyebilecek mi diye testler ile değerlendirilir. Buna makine öğrenmesi konusunda kredi skorlama denmektedir. Yapılan işlemler sonrası, krediye başvuran kişiye olumlu ya da olumsuz bir geri dönüş yapılmaktadır. Bu doğrultuda değerlendiren birçok metrik bulunmaktadır. Bunlara örnek olarak; insanların aldıkları maaş miktarı, kariyer geçmişi, daha öncesinde kredi alma durumları ve bunun gibi birçok daha detaylı olarak incelenecek olan özellikler bulunmaktadır. Bunların değerlendirilmesi sonucu, oluşacak olan 1 ve 0 değerleri bize olumlu ya da olumsuz anlam vermektedir.

Bankaların çoğu konuda olduğu gibi bu konuda da geniş çaplı araştırma yaparak, sahip oldukları verileri analiz ettikten sonra makine öğrenmesi işlemlerine sokmaktadır. Bu işlemler sonucunda, mantık sınaması adımları üzerinde duruma göre birkaç optimizasyon işlemleri yapıp son model hali hazırlanır. Ardından bu durumlar hızlanarak hemen her kredi başvurusu yapan insanlar için test edilir. Değer olarak ise 0 ve 1 değerleri atanır. İşlemler sonucunda 0 çıktısı bize, ‘bu kişiye kredi vermemizi önermez’ tam tersi yani 1 çıktısı geldiğinde ise ‘bu kişiye kredi verebilirsiniz’ diyerek bize müşteri segmentasyon işlemini de yapmış olur. Son adım da veri bilimi kadrosu sayesinde hallolduktan sonra, bizim için geriye kalan son adım ise bu bilgileri gerekli departmanlara ileterek, çıkan sonuçlara göre kişilerin başvurularını sonuçlandırarak, geri dönüş yapmak kalır. Analizlerin önemi, bir banka için kritik bir öneme sahiptir. Çünkü yapılan en ufak hatalar, yüklü miktarların kayıplarına sebep olabilmektedir. Bu sebeple yapılan her kredi skorlama işlemi, bankaya olumlu şekilde dönmelidir.

Kredi skorlama işlemleri, her banka için büyük önem taşımaktadır. Kasadan çıkan paranın miktarı ve kredi verilecek kişinin sorumluluğunu tamamen yerine getirmemesi, maddi anlamda büyük sorunlara yol açacaktır. Bundan ötürü arka tarafta çalışan veri bilimi ekibi, bu konuda uzman olmalı ve tedbirleri her koşula göre değerlendirmelidir. Buna ek olarak, insanların kişisel bilgilerini de iyice analiz edip başvurusuna mantıklı bir dönüş yapılmalıdır. Veri ön işleme adımlarını düzenleyip gerekli değişkenlerin üzerinden yapılan işlemler sonrası, süreç biraz daha verinin hazır hale getirilmesiyle alakalıdır. Kredi skorlama konusunda kritik derecede öneme sahip olan bir diğer mühim konu, veri ön işleme adımları ve sonrasında atılacak analiz adımlarıdır. Veri Bilimi ekibi, değişken mühendisliğini de kendileri yaparak değişken etkilerini ve onların korelasyonlarını aralarında oluşan bağları da doğru bir şekilde analiz etmelidir. Bu işlemler sonrasında ise, mantıklı bir sonucun ortaya çıkması kaçınılmaz olacaktır. Hata payını minimum yapmak, tamamen veriyi mükemmele yakın bir şekilde ayarlamak ve gerekli parametreleri değerlendirmektir.

Kredi skorlaması yapmak için gerekli işlemlerin en başında makine öğrenmesi algoritmasının oluşturulması ve model öncesi, değişkenlerin bir kere daha kontrol edilmesi gereklidir. Çünkü yapılan işlemlerin tamamen değişkenler ile bağlantısı vardır. Bundan dolayı, kategorik ya da numerik değişkenlerin modele etkisi farklılık göstermektedir. Ayrıca bu modeli kurarken de dikkatli şekilde ayarlanması gerekmektedir. Kullanacak olduğumuz parametrelerin özel olarak Python programlama dili kullanılıyorsa, içerisinde bulunan GridSearchCV() metodu sayesinde, parametreler denenebilir ve sonrasında en uygun parametreler modelin içerisine entegre edilir. Böylece kredi skorlama konusunda daha başarılı bir şekilde yol alabilir. Bu da verilen hizmetin seviyesini arttırır ve bu sayede insanların beklentilerini karşılayabilir, onlara uygun şekilde kişiye özel bir hizmet sağlanabilir. Memnuniyet seviyesi üst düzey olan kişiler, banka ile olan bağını geliştirir. Ek olarak, psikolojik olarak kendilerini daha güvende hissederler. İnsanların en temel özelliği ise bir yerlere ait ya da bağlı hissetmektir. Bunu sağlamak, sahip olunan müşteri potansiyelini arttırabilir. Kendi reklamınızın yapılmasını isterseniz, müşterileriniz ile aranızdaki bağı iyi derecede tutabilir ve onların size olan bağlılığını arttırmanız yeterli olacaktır. Buna direkt etki eden şeylerden birisi ise şüphesiz kredi skorlamasıdır.

References :
-https://globalaihub.com/examples-of-artificial-intelligence-in-life/
-https://globalaihub.com/machine-learning-makine-ogrenimi/
-https://www.cgap.org/sites/default/files/publications/2019_07_Technical_Guide_CreditScore.pdf
-https://www.moodysanalytics.com/solutions-overview/credit-origination/credit-assessment
-https://corporatefinanceinstitute.com/resources/knowledge/credit/credit-analysis-process/

Importance of Data Quality and Data Processing

The subject that the whole world talks about and is now seen as the most important thing in the new order is data. Data is processed in many different ways and is prepared to extract information from it. It is a structure that gives a different dimension that changes the direction of the world on its own. Today companies actually exist as much as the knowledge they have. The readily obtained data may be inferior to the data you have collected yourself, the details of which you know. Therefore, you can spend a lot of time on data processing and extend the project time. This can be a big disadvantage for you. It is entirely up to you to measure the quality of the incoming data and arrange them in a certain order. If the data quality is really bad, it can be integrated into the system after the final preparations are made by carefully applying the data processing steps above it.

The biggest mistake made by software developers who are at the beginning level is to process the data that is prepared cleanly. To level up, you can create a data set yourself and analyze it. While this gives you self-confidence, the solutions you find in the face of the difficulties you encounter are what will lead you to a great deal of progress, so that you will reach the ‘problem solving ability’ that many big companies care about. Dealing with the data you collect yourself will prepare you for real-life problems. People who want to pursue a career in Data Science should find a solution to a real problem by collecting their own data and adjusting this data so that they can finally go to the product stage. Thanks to the project phases it has developed, it can easily continue its career with a high level of experience in matters such as processing information, product development, and finding solutions to real life problems.

The most important issue for the Data Scientist is data. If there is no data, no solution can be found, and the people who have the data will hold the power in the new era. In the future world order, we can call the data that will give full direction to the world. There are data flowing live at every stage of life, and processing them and making logical inferences is an extremely important skill for the century we live in. Understanding the information obtained from the data well and finding solutions to the problems that may arise is another situation that will provide convenience in finding a job in the future. The most important issue opened to the subject of artificial intelligence is a project and the existence of quality data for that project. Data quality has full say in determining how long the project is to be formed and its maximum destination. There is no matter as important as data quality because if the data is of poor quality, there are many problems to occur.

Another issue, which is as important as data quality, is to perform data processing steps correctly. Data science, machine learning, artificial learning, deep learning or artificial intelligence, whatever you call it, all it takes for these jobs to become a product is data. In addition, the quality of this data and the fact that the data processing steps are prepared at a very good level directly affect the processes of the projects where these names are made. The most critical situation is to pass data processing steps, topics that will be presented as products. After you have overcome such vital points, you can quickly navigate by using mathematical, engineering or statistical information on the part of the work to become a product. This situation accelerates your project and motivates you. Thus, you can move to a different dimension by acting with the motivation you get and the pushing power you have.

The conditions of the world will continue to change continuously throughout the century we live in. It is the data itself that is determined to lead this change. The data, called the new oil, is literally petroleum for the new century. Processing them and obtaining logical results is the main goal of everyone. Persons working in this field must have strong numerical knowledge and have experience in data processing. It should benefit the units it works with by actively using its problem-solving intelligence from the first moment it takes the data. Data processing; It is a technique that has the power to change success scores in machine learning and deep learning. This technique, if used correctly, can easily achieve the achievable maximum score levels.

The thing that contributes to the development of smart systems and their full penetration into our lives has been created thanks to quality data. If you want to produce quality works for the project to be worked on, you must first collect the data you have on the basis of quality and solid foundations. If this is not the case, you can keep your project ready by performing a very good data processing phase and finishing before the project. Thus, it saves you both time and gives you confidence in the quality of the data you will deal with while getting to the job, and you will need to solve problems over data in a minimal way during the project steps. Data quality is the life source of projects. People who have had the opportunity to work with good data know exactly what I mean. Remember, good data means a good project, a good working order and good results.

I hope you like. If you like it, you can give me a return by stating it in the comments.

References:
-https://www.wired.com/insights/2014/07/data-new-oil-digital-economy/#:~:text=Like%20oil%2C%20for%20those%20who,the%20government%20to%20local%20companies.
-https://globalaihub.com/basic-statistics-information-series/
-https://globalaihub.com/python-ile-veri-on-isleme-data-preprocessing/
-https://searchdatamanagement.techtarget.com/definition/data-quality.

Kuaför Robot

Artık yeni gelişen dünyada saç kesimi yapan robotlar mevcut.

Robot Barber by Shane Wighton

There are now robots that do haircuts in the emerging world.

Robot Pet Always With You

Aibo continues to develop with Computer Vision and Object Recognition systems this year.

The Role of Artificial Intelligence in the Music

You can read my article, which I think will integrate artificial intelligence into the music world in the future and that many people will take a new role in this field.

Müzik Sektöründe Yapay Zekanın Rolü

Yapay zekanın müzik dünyasına gelecekte entegre edileceğini ve bu alanda birçok kişinin yeni bir rol alacağını düşündüğüm yazımı okuyabilirsiniz.