Bilinen Sorunlar

Yeni projeler için YDF'yi tercih edin

YDF , Google'ın Karar Ormanlarını eğitmeye yönelik yeni kütüphanesidir.

YDF, yeni özellikler, basitleştirilmiş bir API, daha hızlı eğitim süreleri, güncellenmiş belgeler ve popüler makine öğrenimi kitaplıklarıyla gelişmiş uyumluluk sunarak TF-DF'nin gücünü genişletir.

Aşağıda belirtilen sorunlardan bazıları YDF'de giderilmiştir.

Windows Pip paketi mevcut değil

TensorFlow Decision Forests henüz Windows Pip paketi olarak mevcut değil.

Geçici çözümler:

Keras 3 ile uyumsuzluk

Keras 3 ile uyumluluk henüz uygulanmamıştır. 2.16'dan önceki tf_keras veya TensorFlow sürümünü kullanın. Alternatif olarak ydf'yi kullanın.

Conda için test edilmedi

TF-DF, Conda ile çalışabilir ancak bu test edilmemiştir ve şu anda paketleri conda-forge üzerinde tutmuyoruz.

TensorFlow'un eski veya gecelik sürümleriyle uyumsuzluk

TensorFlow'un ABI'si sürümler arasında uyumlu değildir. TF-DF özel TensorFlow C++ işlemlerine dayandığından, TF-DF'nin her sürümü TensorFlow'un belirli bir sürümüne bağlıdır. TF-DF'nin son yayımlanan sürümü her zaman TensorFlow'un yayımlanan son sürümüne bağlıdır.

Bu nedenlerden dolayı, TF-DF'nin mevcut sürümü eski sürümlerle veya TensorFlow'un gecelik sürümüyle uyumlu olmayabilir.

TF ve TF-DF'nin uyumsuz sürümlerini kullanıyorsanız aşağıdaki gibi şifreli hatalar göreceksiniz:

tensorflow_decision_forests/tensorflow/ops/training/training.so: undefined symbol: _ZN10tensorflow11GetNodeAttrERKNS_9AttrSliceEN4absl14lts_2020_09_2311string_viewEPSs
  • TensorFlow sürümünüzle uyumlu TF-DF sürümünü kullanın.

Uyumluluk tablosu

Aşağıdaki tablo tensorflow_decision_forests ve bağımlılıkları arasındaki uyumluluğu gösterir:

tensorflow_decision_forests tensor akışı
1.11.0 2.18.0
1.10.0 2.17.0
1.9.2 2.16.2
1.9.1 2.16.1
1.9.0 2.16.1
1.8.0 - 1.8.1 2.15.0
1.6.0 - 1.7.0 2.14.0
1.5.0 2.13.0
1.3.0 - 1.4.0 2.12.0
1.1.0 - 1.2.0 2.11.0
1.0.0 - 1.0.1 2.10.0 - 2.10.1
0.2.6 - 0.2.7 2.9.1
0.2.5 2.9
0.2.4 2.8
0.2.1 - 0.2.3 2.7
0.1.9 - 0.2.0 2.6
0.1.1 - 0.1.8 2.5
0.1.0 2.4
  • Çözüm 2: Ön işleme fonksiyonunuzu, girdilerini sıkıştıran başka bir fonksiyona sarın.

Tüm modeller dağıtılmış eğitimi ve dağıtım stratejilerini desteklemez

Belirtilmediği sürece modeller tek bir makine üzerinde eğitilir ve dağıtım stratejileriyle uyumlu değildir. Örneğin GradientBoostedTreesModel dağıtılmış eğitimi desteklemezken DistributedGradientBoostedTreesModel destekler.

Geçici çözümler:

  • Dağıtım stratejilerini destekleyen bir model kullanın (örneğin DistributedGradientBoostedTreesModel ) veya veri kümenizi tek bir makineye sığacak şekilde alt örnekleyin.

GPU / TPU desteği yok.

TF-DF, GPU veya TPU eğitimini desteklemez. Ancak AVX talimatlarıyla derlemek sunumu hızlandırabilir.

model_to_estimator için destek yok

TF-DF, eğitimli/eğitimsiz bir modeli tahminci formatına dönüştürmek için gereken API'leri uygulamaz.

Yüklü modeller Python modellerinden farklı davranır.

Keras API tarafından soyutlanırken, Python'da başlatılan bir model (örneğin, tfdf.keras.RandomForestModel() ile) ve diskten yüklenen bir model (örneğin, tf_keras.models.load_model() ile) farklı davranabilir. Özellikle Python tarafından başlatılan bir model, gerekli tür dönüşümlerini otomatik olarak uygular. Örneğin, bir float32 özelliği bekleyen bir modele bir float64 özelliği beslenirse, bu dönüşüm örtülü olarak gerçekleştirilir. Ancak diskten yüklenen modeller için böyle bir dönüşüm mümkün değildir. Bu nedenle eğitim verilerinin ve çıkarım verilerinin her zaman tam olarak aynı türde olması önemlidir.

Tensorflow özellik adı temizliği

Tensorflow, özellik adlarını temizler ve örneğin bunları küçük harfe dönüştürebilir.