Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Kime: CyberCortex
İşin içine girdiğim için üzgünüm SanSanych.
Böylesi bir yüksek fikirlilik ve agresif profesyonellikten uzaklığı görmezden gelemezdim.
Yazarın uygulama programını tanımlarken kullandığı ifadeleri tek tek ele alalım
Alıntı: "CyberCortex'in mevcut benzerlerine kıyasla avantajları:
Kullanılan algoritma. Birçok yatırımcı için yapay zeka alanındaki teknolojiler, klasik sinir ağları gibi basmakalıp bir konuyla başlar ve biter. Ancak CyberCortex'te uygulanan bousting algoritması çok daha güçlü ve modern bir araçtır(?), çünkü: "
İtiraz ediyorum:
Birçok yatırımcının bu küçümseyici görkemli görüşü nereden geliyor? Genel olarak bu alana Makine Öğrenimi denir, Yapay Zeka biraz farklıdır. Eminim ki birçok tüccar, adını bile duymadığınız birçok sinir ağı türüne aşinadır (derin ağlar, evrişimli ağlar ve diğer modern ağlar). Sinir ağları konusu, kendilerini MLP çalışmakla sınırlayanlar için yıpranmıştır. Sizi hayal kırıklığına uğratmak için acele ediyorum, sinir ağları konusu derin öğrenme yöntemlerinin geliştirilmesinden sonra ikinci bir nefes aldı ve bunu bilenler ve yapabilenler için kapalı bir konu olmaktan çok uzak. Ayrıca, çok sayıda R dili paketinde uygulanan diğer birçok sınıflandırma algoritmasını biliyoruz.
Çeşitli modifikasyonlardaki bousting algoritması oldukça uzun bir süredir bilinmektedir (1996) ve hiçbir şekilde sinir ağı algoritmasından daha güçlü değildir. Bu arada, programınızın hangi algoritmayı kullandığını bize söylemelisiniz. R paketlerine hızlı bir bakışta -
"ADA"- uyarlanabilir stokastik bousting. favorilerimden biri, orijinal algoritmanın üç modifikasyonu uygulanmaktadır: Gentle-, Logit- ve Real AdaBoost
.
"adabag" - paket , Adaboost.M1 (Freund ve Schapire's), AdaBoost-SAMME (Zhu vd., 2009) ve Breiman'ın Bagging algoritması gibi çok sınıflı algoritmaları kullanır ;
"boost" - Wilcoxon test istatistiği kullanılarak özelliklerin (tahmin ediciler) ön seçimi ile desteklenen 'BagBoost', 'LogitBoost', 'AdaBoost' ve 'L2Boost' gibi bir dizi artırma yöntemi içerir ;
"pga" - AdaBoost ve Random Forest 'ı evrimsel bir algoritmaile birleştiren bir algoritmatopluluğu içerir.
Dünyada bilinmeyen orijinal bir algoritmanız varsa, lütfen en azından genel hatlarıylamevcut olanlardan farkını ve onlara göre avantajlarını açıklayınve açıklamaya bir bağlantı arzu edilir.
Gördüğünüz gibi seçenekler oldukça geniş.
Konuyla ilgisi olmayanlar için. "Busting" (amplifikasyon) - başlangıçta istatistiksel hesaplamalarda kullanmak için örneklerin (deney sonuçları) sayısının az olduğu , yenilerini çıkarmanın imkansız veya çok pahalı olduğu bilim alanlarındaki sorunları çözmek için önerilenbir yeniden örnekleme yöntemi. Yöntemin özü ,başlangıçtaki küçük kümeden rastgele oluşturulmuş daha küçük boyutlu bir örnekçıkarmaktır .Buprosedürbirçok kez tekrarlanır ve sonuç olarak istatistiksel hesaplamalarda kullanılmak üzere yeterince büyük bir toplam örneklem elde edilir.
Her şeyden önce. Forex piyasası bir "veri açığı" vakası değildir. Aksine, bu bir "veri bolluğu" durumudur.
İkinci olarak.Pratikte ve üniversitelerde bousting ve crossvalidationaraştırma ve uygulamalarına ilişkin uzundeneyimler, bu yöntemlerin eğitim sürecinde, yani içhatayagöre bir model seçerken kullanılmasının istenmeyen bir durum olduğunu göstermiştir. Ancak eğitilen modelin değerlendirme aşamasında, yani dış hatanın elde edilmesinde çok faydalıdır. Bu nedenle, "veri bolluğu" durumumuz için, eğitim sırasında eğit/geçerli kıl/test olarak bölmek idealdir. Veri seçimi ve ön eğitim sürecinde dikkate alınması gereken ve modelleme sonucunun büyük ölçüde bağlı olduğu başka birçok incelik vardır , ancak bu ayrı bir büyük konudur.
ADA ile yaptığım uzun deneyimlerime dayanarak şunu söyleyebilirim ki bazen mükemmel sonuçlar, bazen iğrenç = çok kararsız.
Alıntı: "Algoritma, girdi verilerinin boyutluluğunu azaltmayı ve hangi özelliklerin bilgilendirici olup hangilerinin olmadığını bulmayı gerektirmez. Aksine, ne kadar çok girdi verisi mevcutsa, doğru sınıflandırma olasılığı o kadar yüksek olur. Bilgilendirici olmayan özellikler otomatik olarak atılır."
Soru - bilgilendirici olmayan özelliklersihirli bir şekilde nasıl ayıklanır? Tahmin edicilerinöneminin belirlenmesi(değerlendirilmesi) her karar ağacı algoritmasında yer alır, ancak önemi belirlemek için kullanılan oldukça fazla kriter vardır ve bunların hepsi kesin sonuçlar vermez. Programda bunu nasıl çözüyorsunuz?
Alıntı: "Algoritma herhangi bir ön veri normalizasyonu veya herhangi bir ön manipülasyon gerektirmez. Tüm veriler otomatik olarak birim varyansa ve sıfır matematiksel beklentiye indirgenir."
Gerçekten herhangi bir ön işlem gerektirmeyen tek algoritmaRandomForest'tir. Diğerleri çeşitli ön işlemler gerektirir. Belli ki programınızın standartlaştırma işlemini (x eksi ortalama bölü standart sapma) kullanıcı için yaptığını söylemek istiyorsunuz? Bunun iyi bir çözüm olduğundan emin değilim, çünkü en az bir düzine farklıön işleme yöntemi varve her bir durum için hangisinin en iyi olduğunu belirlemeniz gerekiyor.
Alıntı: "Algoritma, sinir ağlarından farklı olarak, optimum sınıflandırma sonucunu elde etmek için eğitim parametrelerinin ayarlanmasını gerektirmez."
Bu doğru değil. Bilinen herhangi bir bousting algoritması, en iyi sonucu elde etmek için ayarlanması gereken en az iki parametreye sahiptir.
Alıntı:"Algoritma, aşırı antrenman eğilimine karşı neredeyse bağışıktır."
Yanlış ifade. Her makine öğrenimi algoritması bu aşırı öğrenme hastalığına karşı hassastır. Aşırı eğitilmiş bir model elde etme riskinin azaltılması, düzenlileştirme ile sağlanır. Günümüzde, bousting algoritmaları da dahil olmak üzere çeşitli düzenlileştirme yöntemleri bilinmekte ve başarıyla kullanılmaktadır.
Alıntı:"Algoritma, verileri herhangi bir sayıda sınıfa ayırmaya olanak tanır".
Bu, bu algoritmanın bir başarısı değildir. Bugün neredeyse tüm makine öğrenimi algoritmaları bunu yapıyor.
Alıntı:"Uygulanan algoritmanın özelliği, eğer verilerde örüntüler varsa bunların bulunacak olmasıdır. Aksine, eğer verilerde herhangi bir örüntü yoksa, programın tahminleri basit bir yazı turadan daha iyi olmayacaktır ki bu da mantıklıdır"
Sizi şaşırtabilirim ama tüm algoritmalar bu özelliğe sahiptir.
Sonuç: Para karşılığında sunduğunuz anlaşılmaz algoritma R dilinde şeffaf, basit ve çeşitli varyantlarda uygulanabilir ve tamamen ücretsiz, yani ücretsiz olduğunu unutmayın. Bu program 10-15 satır uzunluğunda olacaktır. Bu birincisi. R dilinin yadsınamaz ikinci avantajı , dünya bilim camiası (neredeyse dünyanın tüm üniversiteleri) ve şimdi de yazılım sektörünün devleri tarafından geliştirilmiş ve destekleniyorolmasıdır . Microsoft , "Azure Machine Learning Studio"ile modelin oluşturulması, eğitilmesi ve değerlendirilmesi aşamalarının tamamını bulutta yapmanızı ve sonrasında modelinize servise veri göndererek tahminler almanızı sağlayan bir bulut hizmeti "Azure" başlattı. Hizmet tamamen R diline dayanıyor ve süreci bir resim "çizmeye" indirgemenizi sağlayan grafiksel bir arayüze sahip (tabii ki basitleştiriyorum). Daha önce araştırma çevrelerinde fiili bir standart olan bu dil, şimdi uygulamalı ve endüstriyel alanda pratik olarak bu hale gelmiştir.
Son bir şey daha. Programda somutlaştırdığınız emeğinizden para kazanmanıza karşı değilim. Bu iyi bir şey. Reklam amacıyla ürüne var olmayan ya da abartılı nitelikler yüklemenize karşıyım. Profesyonelce görünmüyor.
Dikkatli olun. Bir klasiğin dediği gibi.
İyi şanslar
Merhaba!
"Genelde bu alana Makine Öğrenmesi deniyor, Yapay Zeka biraz daha farklı." - Makine öğrenimi yapay zekanın bir alt bölümüdür. Ama eminim siz bunu unutmuşsunuzdur. Olur böyle şeyler.
Yeni tür sinir ağları duydum:) Ve dikkat ettiyseniz, programımın açıklamasında"klasik sinir ağları" yazıyor, tüm ağlar değil. Klasik derken MLP, türevleri, Hopfield ağı, olasılıksal ağ ve diğerlerini kastediyorum.
"Birçok tüccarın bu küçümseyici görkemli görüşü nereden geliyor?" - Bu mega hiper-önemli görüş, zayıf yapay zeka teknolojilerini kullanmaya çalışan yatırımcıların büyük çoğunluğunun klasik sinir ağlarını kullanmasından kaynaklanıyor.
"Bu arada, programınızın hangi özel algoritma üzerinde çalıştığını dile getirmeniz gerekecektir." - Tek seviyeli karar ağaçlarının (kütüklerin) uyarlanabilir bousting'i. Orada yazıyor. Önümde herhangi bir rol model görmeden sıfırdan kendim uyguladığımdan ve internette normal bir açıklama olmadığından, geliştirirken bazı sezgisel yöntemlerimi uyguladım.
"Bilmeyenler için. "Boosting , ... tarafından önerilenbir yeniden örnekleme yöntemidir ." - Bunu nereden kopyaladığınızı bilmiyorum, ama bence bu tanımın anlattığı şey boosting değil, bootstrap:) Boosting basit sınıflandırıcıları güçlendirmektir. Bousting'de, küçük bir m örneğinden büyük bir N örneği elde etmezsiniz. Bousting'de, sonraki her basit sınıflandırıcı için, bir öncekinin yanlış sınıflandırdığı örnekler tercihli olarak örneklenir. Örnek sayısı her zaman orijinal örnek sayısına eşittir. Bundan sonra, sizin ciddiyetinizi okumak özellikle komik:"Döngünün dışında olanlar için." xD
"Her şeyden önce. Forex piyasası bir "veri kıtlığı" durumu değildir. Aksine, bu bir 'veri bolluğu' durumudur." - Bu hangi taraftan baktığınıza bağlı. Eğer forex fiyatlarını ve eski zamanlardan kalma kokan bir sürü "sözde matematiksel" göstergeyi ve bunların çeşitli türevlerini kastediyorsanız, evet, bir kıtlık yok. Ancak farklı bir yöne gittiğinizden, yanlışlıkla bousting ile bootstrap'ı karıştırdığınızdan, ne tür bir cevap beklediğiniz hakkında hiçbir fikrim olmadığından, özdeyişiniz dikkate alınmayacaktır.
"Pratikte ve üniversitelerdebousting ve crossvalidation'ınaraştırılması ve uygulanmasındaki uzundeneyimgöstermiştir ki..." - Gerçekten mi? Sıkıcı.
" ADA ile yaptığım uzun deneyimlerime dayanarak şunu söyleyebilirim: bazen harika sonuçlar, bazen iğrenç = çok kararsız. " " - Deneyiminiz bizim için bir aksiyom değil, belki de yukarıdaki karışıklığa benzer şekilde bazı düğmeleri karıştırdınız. Bilmiyorum.
"Bunu yazılımda nasıl çözüyorsunuz? " - Her basit sınıflandırıcı en az sınıflandırma hatası üreten özelliğe odaklanır. Eğer özellik bilgilendirici değilse, hata yüksek olur. İşin sihri de burada. Bu mantığa..... üniversitelerin nasıl olduğu hakkında biraz daha bilimsel saçmalıkla meydan okuyalım. Hayır, cidden, bir şeyler yazın.
" Bunun iyi bir çözüm olduğundan emin değilim" - sizce de biraz fazla kategorik davranmıyor musunuz? Bana öyle geliyor ki yazılım geliştiricisi, amaçlandığı gibi çalışması için nelerin eklenmesi gerektiği konusunda biraz daha seçici.
"Doğru değil. Bilinen tüm bousting algoritmalarında daha iyi bir sonuç elde etmek için ayarlanması gereken en az iki parametre vardır." - R'de ayarlanması gereken hangi parametreler var? Not alıyorum...
"Alıntı:"Algoritma aşırı eğitim eğilimine karşı neredeyse bağışıktır. "Yanlış ifade....""- İfadelerinizi çok seviyorum :). Her şeyden önce, "pratik olarak" diyor. Rusça'da "neredeyse" anlamına gelir. Ancak, örneğin araba plakası tanıma deneyinde olduğu gibi, verilerde sabit bir model varsa, evet, algoritma yeniden eğitilmez. Eğitim örneğinde hata sıfıra gider ve test örneğinde hata sabit kalır, yaklaşık %1. Sorular?
"Bu, bu algoritmanın başarısı değil. Günümüzde neredeyse tüm makine öğrenimi algoritmaları bunu yapıyor." - Bana bunun bir dezavantaj olduğunu söyleyebilirsiniz. İkili sınıflandırıcıya kıyasla bu bir avantaj. Yoksa siz öyle düşünmüyor musunuz?
"Sizi şaşırtabilirim ama tüm algoritmalar bu özelliğe sahiptir." - Dikkatli okuyun, "eğer verilerde örüntüler varsa, bunlar bulunacaktır." Bu benim vurgum. Makine öğrenimi algoritmalarındaki temel sorun, kaç tane örüntü bulunacağıdır. Benim programım bu konuda gayet iyi. Sizin mantığınıza göre, bir MLP'ye sahip olan insanların başka algoritmalar geliştirmemesi gerektiği ortaya çıkıyor, çünkü çok katmanlı perseptron bir makine öğrenme algoritmasıdır ve siz"tüm algoritmalar bu özelliğe sahiptir" diyorsunuz.
"Para karşılığında sunduğunuz belirsiz bir algoritma" - Ben bir algoritma değil, bir program sunuyorum. R diline karşı değilim. Ama meselenin ne olduğunu görüyorsunuz: herkes programlama dilinin mantığını ve sözdizimini anlayamaz, algoritmaların ayarlarını anlayamaz, bazı dosyaları dönüştüremez ve hesaplamaların sonucunu kullanmak için çeşitli koltuk değnekleri aracılığıyla terminale bağlanamaz. Eğer birisi tüm bunları yapabiliyorsa, onu tebrik ederim. Bazı insanlar sadece "kutudan çıktığı gibi" çalışmasına ihtiyaç duyuyor. Peşinizden koştuğumu ve sizi yazılımımızı satın almaya zorladığımı sanırsınız. R kullanın, sizi temin ederim beni üzmez.
"Sıkı çalışmanızı yazılımla paraya çevirmeniz benim için sorun değil." - Özür dilerim, bu konudaki fikrinizi sormayı unuttum. Ama sizin için sorun olmadığı sürece benim için de sorun yok.
"Reklam amacıyla bir ürüne var olmayan veya abartılı nitelikler yüklemenize itiraz ediyorum. " - Ben de hakkında hiçbir şey bilmediğiniz bir konuda yazmanıza itiraz ediyorum.
Teşekkür ederim. Benden bu kadar. Klasiğin dediği gibi.
Not: Sadece saldırganlığa cevap veriyorum. Alınmak yok. Barış.
P.P.S.: Ve evet, benimle tartışmaya başlamamalıydın :))
Я не понимаю содержание Скрежет обучение режим? В частности, о том, как использовать платформу использовать платформу MT4 MQL предварительной подгото ки?
Çocuklar, merhaba! Enerjiniz doğru yönde!
Tebrikler, stratejik bir hatanız var!
Makalenizin ilk satırından alıntı yapıyorum: "Başlangıçta, bir ticaret sistemi oluşturmanın amacı, bazı piyasa araçlarının, örneğin bir döviz çiftinin davranışını tahmin etmektir".
Makaleyi daha fazla okumadım bile. TÜM tahmin yöntemlerini incelemek daha iyidir!
Size bir sır vereceğim: Bir ticaret sistemi kurmanın amacı "(kendi) davranışınızın bir modelini oluşturmaktır".
Piyasanın (liderin) ne yapacağı önemli değildir, sizin ne yapacağınız önemlidir: VE, VEYA, DEĞİL.
Örneğin: VE - lideri takip etmek (liderin eylemlerini tekrarlamak).
Linux (Kubuntu) üzerinde rattle kurmayı denedim, işe yaramadı, kod derleme için çok fazla bağımlılık var.
Kurulum hatalarını analiz ederek, R'de rattle'ı kurmadan önce işletim sisteminin kendisinde yüklenmesi gereken paketlerin aşağıdaki listesini elde ettim:
console -
$ sudo apt-get install libxml2-dev unixodbc-dev libssl-dev libgtk2.0-dev
Ve sonra kurulumu R'nin kendisinde çalıştırabilirsiniz -
> install.packages("rattle", dependencies=TRUE)
Ve eğer rattle'ı kurmak için hala bazı *.h dosyalarınız eksikse, gerekli paketi şu şekilde bulabilirsiniz
$ sudo apt-get install apt-file
$ apt-file update
$ apt-file search /someheaderfile.h
Belki bu başka birine yardımcı olur :)
İşletim sistemini güncelledikten sonra rattle çalışmayı durdurdu, rattle() çağrısı bir hata veriyor
Error in method(obj, ...) : Invalid root element: 'requires'
Neredeyse yardımcı olan ilk yol, rattle'ı ek bir parametre ile çalıştırmaktı
Cran'dan yüklenen rattle sürümünün eski olduğu ortaya çıktı, yeni bir sürüm almak için geliştiricilerin deposunu belirterek rattle'ı yeniden yüklemeniz gerekiyor.rattle(useGtkBuilder = TRUE)
program penceresi açıldı, ancak düğmeler çalışmadı, yöntem sonuna kadar yardımcı olmadı.
install.packages("rattle", repos="https://rattle.togaware.com", type="source")
Ve bundan sonra her şey iyi çalıştı.