27 Eylül 2014 Cumartesi

WATSON : DÜŞÜNEBİLEN TEKNOLOJİ!


 Bu yazımda sizlerle insan gibi düşünebilen ve öğrenebilen  bunların yanında birçok yeteneklere sahip muazzam bir makineden bahsetmek istiyorum. Watson..
Watson IBM tarafından geliştirilen bilişsel alanda yeni bir dönemin başlangıcı olan bir teknolojidir.
İsmini IBM in kurucusu olan ve 42 yıldır yöneticiliğini yapan Thomas J. Watson’dan almıştır.
->Watson çoğunlukla bizim gibi düşünebilir ve yaptıklarımızın çoğunu yapabilir.
->Watson doğal dili okuyabilir ve anlayabilir.Yapılandırılmamış verileri analiz edebilir.
->Watson’a bir soru sorulduğunda Watson hızla ilgili delilleri ayrıştırır ve farklı veri yanıtlarını değerlendirir.
->Tekrarlanan kullanımlar sayesinde Watson kullanıcılardan gelen geri bildirimleri değerlendirir ve başarılarından ve başarısızlıklarından ders çıkararak daha zeki bir hale gelir.
Kısacası Watson bir insan beyninin yapabileceği bir çok işlevi yerine getirebilir.
Watson doğal dil işleme, hipotez geliştirme ve değerlendirme ve dinamik öğrenme özelliği sayesinde bugünün eşsiz bir teknolojisidir.
Bu teknoloji sayesinde klavye tabanlı araştırmalar yerine sezgisel ve konuşmaya dayalı araştırmalar yapmamız mümkündür.
Şubat 2011 de Watson The Jeopardy! Challenge(Türkiyede yayınlanan adıyla Büyük Risk) adlı bilgi yarışmasına katıldı.Watson sözcük oyunlarının olduğu eş ve benzer anlamlı kelimelerin yer aldığı bir doğal dil tarafından yöneltilen soruları cevaplamak zorundaydı.Yarışma sırasında Watson internete bağlı değildi. Yıllar boyunca birikmiş ve yapılandırılmamış büyük bir veri setini kullanarak soruları cevapladı. Soruları cevaplarken makine öğrenmesi, doğal dil işleme ve istatistiksel analiz gibi yöntemler kullandı.Kendisine yöneltilen tüm soruları yaklaşık 3 saniye içerisinde cevapladı ve kendisiyle birlikte yarışan iki yarışmacıya rağmen yarışmayı kazandı.
Watson’ın  birçok alan için büyük bir yardımcı olacağı düşünülüyor.Bu alanlar;
Tıp Dünyası
Yapılan araştırmalarda var olan tedavi yöntemlerinde ve hastaları iyileştirmede var olan bilginin sadece yüzde 20si kullanılabiliyor. Çünkü uzmanların tüm yenilikleri ve bilgileri takip etmek okumak ve analiz etmek için zamanları yok.
Watson bir araya gelen yapılandırılmamış veriyi analiz edebilme ve anlamlandırabilme yeteneğine sahip olduğu için bu bağlamda tıp dünyasında yeni tedavi yöntemlerine ışık yakabilecek bir teknolojik donanıma sahip olduğunu görebiliriz.
Finans
Watson finans sektöründe de büyük bir yardımcı olarak görülebilir.Finansal yatırım ve planlamalarda büyük başarılar elde edebilecek donanıma sahiptir.Ürün bilgileri, müşteri profilleri ve araştırma raporları gibi alanlardaki önemli miktara sahip veriyi analiz edip anlamlandırarak en iyi şartlara karar verebilme yeteneğine sahiptir. Kısacası Watson finans sektöründe kullanılabilecek muazzam bir zekadır.
Satış/Pazarlama Sektörü
Bugünün en önemli sektörlerinden biri olan satış sektörüne de Watson’ın yapacağı katkı inanılmazdır.Karar verme ve analiz etme özelliğiyle fiyatlandırma ve satın alma durumlarına en iyi seçeneği sunacak ve çözümler getirebilecek bir kapasiteye sahiptir.
Devlet- Halk İlişkisi
Yine büyük veriyi analiz etme ve öğrenme özelliği sayesinde devletin halkın ihtiyaç ve istekleriyle ilgili politikasını düzenlemesine ve geliştirmesine katkıda bulunur.Watson halkın önceliklerini öğrenir ve devlet de bu önceliklere göre düzenlemelerini daha kolay yapar.



30 Nisan 2013 Salı

PHP VE MYSQL TÜRKÇE KARAKTER SORUNU VE ÇÖZÜMÜ


Php ve mysql de sıkça karşılaşılan sorunlardan biri de türkçe karakterlerin veritabanında,kodun içerisinde veya oluşturduğumuz sitede gözükmemesi,ya da farklı karakterler şeklinde gözükmesidir.

Yaptığım projede karşılaştığım bir problem olduğu için sizlerle de paylaşmak istedim.

Bu durumdan kurtulmak için bazı çözüm yöntemleri mevcuttur.

1-phpMyAdmin de tüm tablolar için işlemler->karşılaştırma bölümünden utf8_unicode_ci ' yi seçmelisiniz.

2-Html kısmına 


<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
kodunu yapıştırmalısınız.

3-mysql bağlantısı yaptığınız yerde mysql_select_db() fonksiyonunda sonra

mysql_query("SET NAMES 'UTF8'");
mysql_query("SET character_set_connection = 'UTF8'");
mysql_query("SET character_set_client = 'UTF8'");
mysql_query("SET character_set_results = 'UTF8'");

kodlarını eklemelisiniz.

4-php dosyanızı Notepad'te açarak üstteki menülerden Kodlama bölümünden UTF-8 Bomsuz Kodlaması seçeneğini seçmelisiniz.

Bu değişikliklerden sonra önceden yazmış olduğunuz türkçe karakterler elle düzelttiğiniz takdirde doğru görünecektir.Değişiklikten sonra yazdığınız harflerde böyle bir sıkıntı kalmayacak, düzenleme yapmaya gerek kalmadan harfler doğru görünecektir.

7 Ekim 2012 Pazar

OpenGL ye Giriş

OpenGL Nedir ? 

OpenGL 2 veya 3 boyutlu grafikler çizmek için kullanılan bir kitaplıktır. OpenGL kitaplığı Linux,Mac OS,Windows gibi birçok işletim sistemine standart olarak gelir.
Ada,C,C++,C#,Pyhton,Perl,java gibi diller kullanılarak OpenGL kitaplığından faydalanılabilir.


Şimdi visual studio 2010 için OpenGL yi kuralım. OpenGL kullanırken ekrana pencere çizdirmek,kullanıcıdan veri almak gibi işlemleri gerçekleştirebilmek için GLUT kütüphanesine ihtiyacımız vardır.Bu kütüphaneyi buradan indirebilirsiniz.

Glutu indirdikten sonra, visual studio nun kurulu olduğu dizine giderek VC klasörünü bularak içindeki include klasörünün içine GL diye bir klasör oluşturalım.İndirdiğimiz dosya içindeki glut.h dosyasını bu klasör içine atalım.

Sonra yine VC içindeki lib klasörüne glut32.lib dosyasını atıyoruz.

Daha sonra glut32.dll dosyasını da Windows/System32 klasörü içine atıyoruz.(Eğer işletim sisteminiz 64 bit ise C:/Windows/SysWOW64/    klasörü içine atmanız gerekmektedir.)

Şimdi bir pencere yaparak içine bir üçgen çizdirelim..
Öncelikle Visual Studio 2010 u açarak File->New-> Project ile proje penceresini açarak Empty Project i seçiyoruz ve projemize bir isim veriyoruz.

Projemizi oluşturduktan sonra source files klasörüne sağ tıklayarak->New Item seçeneğini seçiyoruz ve açılan pencerede c++ File.cpp yi seçiyoruz.Ve bir isim vererek kapatıyoruz.


Daha sonra ekranımıza aşağıdaki kodları yapıştırıyoruz.

#include <C:\Program Files\Microsoft Visual Studio 10.0\VC\include\GL\glut.h>  // glut.h ın bilgisayarınızda bulunduğu dizini göstermelisiniz.

#include <stdio.h>  // so we can do some output to the console

void myinit(void)
{
/* Set up attributes */
glClearColor(0.0, 0.0, 0.0, 0.0); /* black background */
/* set up viewing projection*/
/* 500 x 500 window with origin lower left */
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0.0, 500.0, 0.0, 500.0);
glMatrixMode(GL_MODELVIEW);
}
void display( void ) 
{
glClear(GL_COLOR_BUFFER_BIT);  //clear the window 
glColor3f(1.0, 0.0, 0.0); // draw in red
// Set up model/viewing transformation
glPointSize(5.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
// Draw whatever primitives are desired

glBegin(GL_POLYGON);
glVertex2f(250, 250); 
glVertex2f(100,100);
glVertex2f(375, 56);
  
glEnd();

printf("executing display"); /*just to show when display() is called*/

glFlush(); /* clear buffers */
 }

void main(int argc, char** argv)
{
    /* Standard GLUT initialization */
    glutInit(&argc,argv); //initialize GLUT
    glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB); /* default, not needed */
    glutInitWindowSize(500,500); /* 500 x 500 pixel window */
    glutInitWindowPosition(0,0); /* place window top left on display */
    glutCreateWindow("Hello World OpenGL Program"); /* window title */
    glutDisplayFunc(display); /* display callback invoked when window opened */
    myinit(); /* set attributes, viewing parameters */
    glutMainLoop(); /* enter event loop */
}



 
Şimdi kullandığımız fonksiyonları biraz açıklayalım : 

MyInit() -> Şeklin koordinatları,nokta büyüklükleri,arkaplan rengi ve çizgi rengi gibi özellikler bu fonksiyonda tutulur.

Display() -> Burada oluşturacağımız image tipi yaratılır.Yani nokta,doğru,çember,polygon gibi şekilleri bu fonksiyonu kullanarak çizebiliriz.

Main() -> Window un boyutu,pozisyonu ve ismi bu fonksiyon içinde belirlenir.

glVertex2f() -> Bu fonksiyon ise çizeceğimiz şeklin noktalarını belirler.Yani glBegin(GL_POLYGON); yerine glBegin(GL_POINTS); yazarsanız şeklin noktalarını görebilirsiniz.

Kodumuzu çalıştırdığımızda ise (ctrl+f5) çıktımız şu şekilde olacaktır : 







27 Temmuz 2012 Cuma

EASEUS PARTITION MANAGER Programı ile Yerel Diskleri Yeniden Boyutlandırma

Easeus Partition Manager yerel diskleri yeniden boyutlandırmaya yarayan ücretsiz olarak elde edebileceğiniz bir programdır.Bilgisayarınızda bulunan c,d veya diğer disklerin boyutunu azaltıp arttırabilirsiniz.

Easeus Partition Manager'ı buradan indirebilirsiniz.

İndirip bilgisayara kurduktan sonra go to main screen butonuna tıkladığınızda karşınıza şöyle bir ekran gelecektir:
Buradan boyutunu değiştirmek istediğiniz diski seçip, iki diskin arasına imleci getirip sağa yada sola sürükleyerek boyutu değiştirebilirsiniz.

Sonra Apply diyerek resize işlemini uygulamalasınız.Bilgisayarı restart ettikten sonra disklerinizin boyutları değişmiş olur..

12 Temmuz 2012 Perşembe

C++ .txt Dosyası Oluşturma

Aşağıda c++ da 1 den 100 e kadar yazılan sayıların txt dosyasına kaydetme örneği vardır..

#include <cstdlib>
#include <fstream>
#include <iostream>
using namespace std;



int main(int argc, char** argv) {
   
    ofstream file;
    file.open("myfile.txt");
           
   
    for(int i=1;i<=100;i++){
        cout<<i<<endl;
        file<<i<<endl;
       
    }
    file.close();
    return 0;
}

->txt dosyası proje klasörünün içinde oluşmuştur.
-> dosya uzantısını .cvs yaparak cvs uzantılı bir dosya da oluşturabilirsiniz..


    ofstream file;
    file.open("myfile.cvs");
 ->oluşturulan dosyayı excel e aktarmak istiyorsanız verilerin arasına ; koymalısınız.

file<<"sayı"<<";"<<i<<endl;


11 Temmuz 2012 Çarşamba

MySQL Kurulumunda Port 3306 Hatası ve Çözümü


MySQL 'i indirip kurmaya çalıştığınızda ;

Access denied for user ‘root’@’localhost’ (using password:No) 

If a personal firewall is running on your machine, please make sure you have opened the TCP port 3306 for connection. Otherwise no client application can connect to the server. After you have opened the port please press (Retry) to apply the security settings. 

If you are reinstalling after just installed the MySQL please note the data directory was not removed automatically. 
Therefor the old password from your last installation is still needed to connect to the server. In this case please select skip now and rerun the configuration window from the start menu.

böyle bir hatayla karşılaştığınızda yapmanız gereken; 
önce mysql odbc connector ü indirip kurmak..

Normal kurulumu yaptıktan sonra, Denetim Masası > Sistem ve Güvenlik > Yönetimsel Araçlar dan Veri Kaynaklarını seçiyoruz.Gelen Pencerede  sağ taraftaki ekle butonuna tıklayarak kurduğumuz MySQL odbc yi seçerek son butonuna tıklıyoruz.


 Sonra gelen ekranda Data Source Name ,Description TCP/IP server,user ve password boşluklarını;




şekildeki gibi doldurarak Test butonunun yanındaki boşluğa da test yazıp Test butonuna tıkladığımızda SUCCESS yazısını görüyorsanız Mysql i artık sorunsuz bir şekilde kullanabilirsiniz.. 

28 Haziran 2012 Perşembe

Virtual Box

Virtual box, işletim sistemi içinde, bir veya birkaç işletim sistemi daha kurmaya yarayan bir programdır.Bilgisayar içerisinde sanal bir ortam oluşturarak farklı işletim sistemleriyle birlikte çalışmayı sağlar.Örneğin windows kullanıyorsanız virtual box un içine kuracağınız sanal bir makineyle bir linux işletim sistemini de kullanabilirsiniz.Ya da UNIX tabanlı bir işletim sistemi kullanıyorsanız yine UNIX tabanlı bir sanal işletim sistemi oluşturabilirsiniz.Mesela bilgisayarınızda Ubuntu varsa,sanal makinenin içine Pardus işletim sistemini kurabilirsiniz.
Virtual Box'ı
 https://www.virtualbox.org/wiki/Downloads


adresinden, işletim sisteminize uygun olanını sürümü, ücretsiz olarak bilgisayarınıza indirebilirsiniz.Sonra karşınıza gelecek arayüzle kuruluma başlayabilirsiniz.


 Next butonuyla devam ettiğinizde karşınıza çıkacak ekranda VirtualBox Application seçili olmalıdır.
 Next diyerek devam ettiğinizde masaüstüne kısayol ve Quick Launch Bar kısayolları oluşturmak istiyorsanız kutucukları işaretlereyerek devam edebilirsiniz.
 Karşınıza çıkacak ekranda kuruluma devam edebilmek için  Yes butonuna basmalısınız.
Device Software in kurulması için Install butonuna basarak devam etmelisiniz.
Sonra Finish diyerek programımızın kurulumunu bitiriyoruz.

 Program açıldığında karşımıza gelecek ekranda sol üstte bulunan New butonuyla yeni bir sanal makine oluşturabiliriz.
Sanal Makine oluşturma sihirbazında devam etmek için İleri diyoruz.
 Ve sanal makinemize vereceğimiz isim ile kuracağımız işletim sistemini seçiyoruz.
 Sanal Makine için kullanılacak olan RAM miktarını belirliyoruz.Belirlenecek RAM miktarını aynı zamanda makinenin çalışma hızını da etkileyeğini unutmamalıyız.
Creating new hard disk i işaretleyerek Sanal Makinemiz için yeni bir disk oluşturuyoruz.
Next butonlarıyla ilerlediğimizde karşımıza Sanal makinemizin konumunu ve boyutunu seçebileceğimiz bir ekranla karşılaşacağız.Tercihen kurulum sırasında belirtilen miktarda seçilmelidir.

 Son olarak da verilerimiz kontrol ederek sanal makinemizi oluşturmalıyız.
Makinemiz oluştuktan sonra içerisine seçtiğimiz işletim sistemini cd,dvd  ya da iso dosyasından kurabiliriz.Artık bilgisayarınızı kapatıp açmaya gerek kalmadan,bir pencere halinde farklı bir işletim sistemine sahip olabilirsiniz.