Florence-2: Microsoft'un en yeni görsel dil modeli
Microsoft'un geliştirilmiş nesne algılama, segmentasyon ve harika verimlilikle sıfır vuruş (zero-shot) performansı sunan görsel dil modeli Florence-2 ile tanış.

In June 2024, Microsoft introduced Florence-2, a multi-modal visual language model (VLM) that is designed to handle a wide range of tasks including object detection, segmentation, image captioning, and grounding. Florence-2 sets a new benchmark for zero-shot performance, meaning it can perform tasks without prior specific training, and boasts a smaller model size than other state-of-the-art vision-language models.
Sadece bir başka modelden fazlası olan Florence-2'nin çok yönlülüğü ve geliştirilmiş performansı, doğruluğu artırarak ve kapsamlı eğitim ihtiyacını azaltarak çeşitli sektörleri önemli ölçüde etkileme potansiyeline sahip. Bu makalede, Florence-2'nin yenilikçi özelliklerini keşfedecek, performansını diğer VLM'lerle karşılaştıracak ve potansiyel uygulamalarını tartışacağız.
Link to this sectionFlorence-2 nedir?#
Florence-2, tek bir birleşik çerçeve içinde çeşitli görevleri yerine getirebilir. Modelin etkileyici yetenekleri, kısmen FLD-5B adlı devasa eğitim veri setine borçludur. FLD-5B, 126 milyon görüntüde 5,4 milyar açıklama içerir. Bu kapsamlı veri seti, Florence-2'ye çok çeşitli görsel görevleri yüksek doğruluk ve verimlilikle yerine getirmek için gereken yetenekleri kazandırmak amacıyla özel olarak oluşturulmuştur.
İşte Florence-2'nin desteklediği görevlere daha yakından bir bakış:
- Object Detection: Görüntüler içindeki nesneleri yüksek hassasiyetle tanımlayabilir ve konumlandırabilir.
- Segmentation: Bu görev, daha kolay analiz ve yorumlama için bir görüntüyü anlamlı bölümlere ayırmayı içerir.
- Görüntü Alt Yazısı Oluşturma: Florence-2, görüntüler için bağlam ve ayrıntı sağlayan açıklayıcı alt yazılar oluşturabilir.
- Görsel Temellendirme: Model, bir alt yazıdaki belirli ifadeleri veya kelimeleri görüntüdeki karşılık gelen bölgelerle ilişkilendirebilir.
- Sıfır-Atış (Zero-shot) Performansı: Özel bir eğitim olmadan görevleri yerine getirebilir.

Şekil 1. Florence-2'nin Nasıl Eğitildiğini Anlamak.
Model hem metin tabanlı hem de bölge tabanlı görevleri destekler. Görüntünün belirli bölgelerini içeren görevler için modelin sözlüğüne özel konum belirteçleri eklenir. Bu belirteçler modelin, nesnelerin etrafındaki dikdörtgenler (kutu gösterimi), dört kenarlı şekiller (dörtlü kutu gösterimi) ve çok kenarlı şekiller (poligon gösterimi) gibi farklı şekilleri anlamasına yardımcı olur. Model, tahminlerini doğru cevaplarla karşılaştırıp iç parametrelerini buna göre ayarlayarak öğrenmesine yardımcı olan çapraz entropi kaybı (cross-entropy loss) adı verilen bir yöntem kullanılarak eğitilir.
Link to this sectionFLD-5B veri setini oluşturma#
FLD-5B veri seti farklı türde açıklamalar içerir: metin açıklamaları, bölge ve metin çiftleri ve metin, ifade ve bölgelerin kombinasyonları. Data collection and annotation sürecini içeren iki aşamalı bir yöntemle oluşturulmuştur. Görüntüler ImageNet-22k, Object 365, Open Images, Conceptual Captions ve LAION gibi popüler veri setlerinden alınmıştır. FLD-5B veri setindeki açıklamalar çoğunlukla sentetiktir; yani manuel olarak etiketlenmek yerine otomatik olarak oluşturulmuşlardır.

Şekil 2. FLD-5B Veri Setini Oluşturma.
Başlangıçta, nesne algılama veya segmentasyon gibi belirli görevlerde uzmanlaşmış modeller bu açıklamaları oluşturdu. Daha sonra, açıklamaların ayrıntılı ve doğru olduğundan emin olmak için bir filtreleme ve geliştirme süreci kullanıldı. Gürültü giderildikten sonra, veri seti, Florence-2'nin çıktılarının açıklamaları sürekli olarak güncellemek ve iyileştirmek için kullanıldığı yinelemeli bir iyileştirmeden geçti.
Link to this sectionFlorence-2'nin model mimarisini anlama#
Florence-2'nin model mimarisi, diziden diziye (sequence-to-sequence) öğrenme yaklaşımını izler. Bu, modelin bir girdi dizisini (metin istemi içeren bir görüntü gibi) işlediği ve bir çıktı dizisini (bir açıklama veya etiket gibi) adım adım oluşturduğu anlamına gelir. Diziden diziye çerçevesinde, her görev bir çeviri problemi olarak ele alınır: model bir girdi görüntüsü ve göreve özel bir istem alır ve ilgili çıktıyı üretir.

Şekil 3. Florence-2'nin Görsel-Dil Model Mimarisi.
Model mimarisinin merkezinde, bir görüntü kodlayıcı ile çok modlu bir kodlayıcı-kod çözücü (encoder-decoder) birleştiren çok modlu bir kodlayıcı-kod çözücü Transformer yer alır. DaViT (Data-efficient Vision Transformer) adlı görüntü kodlayıcı, girdi görüntülerini görsel belirteç yerleştirmelerine (visual token embeddings) dönüştürerek işler - bunlar, görüntünün hem uzamsal (şeylerin nerede olduğu) hem de anlamsal (şeylerin ne olduğu) bilgilerini yakalayan kompakt temsillerdir. Bu görsel belirteçler daha sonra metin yerleştirmeleriyle (metnin temsilleri) birleştirilerek modelin metinsel ve görsel verileri sorunsuz bir şekilde birleştirmesine olanak tanır.
Link to this sectionFlorence-2'yi diğer VLM'lerle karşılaştırma#
Florence-2, etkileyici sıfır-atış yetenekleri sayesinde diğer görsel dil modellerinden ayrılır. Çeşitli görevlere uyum sağlamak için kapsamlı ince ayara (fine-tuning) dayanan PaliGemma gibi modellerin aksine, Florence-2 kutudan çıktığı gibi iyi çalışır. Ayrıca Florence-2, genellikle çok daha fazla parametreye sahip olan ancak her zaman Florence-2'nin performansına ulaşamayan GPT-4V ve Flamingo gibi daha büyük modellerle rekabet edebilir. Örneğin Florence-2, Kosmos-2'nin parametre sayısının iki katından fazlasına sahip olmasına rağmen, Kosmos-2'den daha iyi sıfır-atış sonuçları elde eder.
Kıyaslama testlerinde Florence-2, COCO altyazısı ve referans ifade anlama gibi görevlerde dikkate değer bir performans sergilemiştir. COCO dataset üzerinde nesne algılama ve segmentasyon görevlerinde PolyFormer ve UNINEXT gibi modellerden daha iyi performans göstermiştir. Hem performansın hem de kaynak verimliliğinin kritik olduğu gerçek dünya uygulamaları için oldukça rekabetçi bir seçimdir.
Link to this sectionFlorence-2'nin uygulamaları#
Florence-2 entertainment, accessibility, education gibi birçok farklı sektörde kullanılabilir. Daha iyi anlamak için birkaç örneği inceleyelim.
Link to this sectionGörüntü alt yazısı oluşturmanın uygulamaları#
Bir yayın platformunda ne izleyeceğinize karar vermeye çalışırken, seçiminize yardımcı olması için bir filmin özetini okuyabilirsiniz. Peki ya platform aynı zamanda film posterinin ayrıntılı bir açıklamasını da sunabilseydi? Florence-2, görüntüler için açıklayıcı metinler oluşturan görüntü alt yazısı oluşturma özelliğiyle bunu mümkün kılabilir. Florence-2, film posterlerinin ayrıntılı açıklamalarını oluşturarak yayın platformlarını görme engelli kullanıcılar için daha kapsayıcı hale getirebilir. Karakterler, manzara ve metin gibi posterin görsel öğelerini analiz ederek, Florence-2 posterin içeriğini ve havasını yansıtan ayrıntılı açıklamalar oluşturabilir. Aşağıdaki görüntü, Florence-2'nin açıklamasında sağlayabileceği ayrıntı düzeyini göstermektedir.

Şekil 4. Florence-2 tarafından oluşturulan bir görüntü alt yazısı örneği.
Görüntü alt yazısı oluşturmanın yararlı olabileceği diğer bazı örnekler şunlardır:
- E-ticaret: Görüntü alt yazısı oluşturma, descriptions of product images sağlayarak müşterilerin ürün özelliklerini ve ayrıntılarını daha net anlamalarına yardımcı olabilir.
- Seyahat ve Turizm: Seyahat rehberlerinde ve uygulamalarında descriptions of landmarks and attractions sağlayabilir.
- Eğitim: Görüntü alt yazısı oluşturma, eğitici görselleri ve diyagramları etiketleyebilir ve tanımlayabilir, böylece öğretme ve öğrenmeye yardımcı olabilir.
- Gayrimenkul: Potansiyel alıcılar için özelliklerini ve olanaklarını vurgulayan ayrıntılı mülk görüntüsü açıklamaları sağlayabilir.
Link to this sectionYemek yaparken görsel temellendirmeyi kullanma#
Florence-2 ayrıca mutfak deneyimlerini zenginleştirmek için de kullanılabilir. Örneğin, çevrimiçi bir yemek kitabı, karmaşık bir tarif görüntüsünün bölümlerini görsel olarak temellendirmek ve etiketlemek için Florence-2'yi kullanabilir. Görsel temellendirme burada, görüntünün belirli kısımlarını ilgili açıklayıcı metinle ilişkilendirerek yardımcı olur. Her malzeme ve adım doğru bir şekilde etiketlenip açıklanabilir, bu da ev aşçılarının tarifi takip etmesini ve her bileşenin yemekteki rolünü anlamasını kolaylaştırır.

Şekil 5. Florence-2 kullanılarak yapılan görsel temellendirme örneği.
Link to this sectionFinansal belgeler için bölge tabanlı OCR#
Bir belge içindeki belirli alanlardan metin çıkarmaya odaklanan bölge tabanlı işleme sahip OCR, muhasebe gibi alanlarda işe yarayabilir. Finansal belgelerin belirlenmiş alanları, işlem ayrıntıları, hesap numaraları ve son ödeme tarihleri gibi önemli bilgileri otomatik olarak çıkarmak için analiz edilebilir. Manuel veri girişi ihtiyacını azaltarak hataları en aza indirir ve işlem sürelerini hızlandırır. Finansal kuruluşlar bunu fatura işleme, makbuz mutabakatı ve çek takası gibi görevleri düzene sokmak için kullanabilir, bu da daha hızlı işlemler ve daha iyi müşteri hizmeti sağlar.

Şekil 6. Florence-2 kullanarak bölge bazlı OCR çıkarma örneği.
Link to this sectionEndüstriyel uygulamalarda bölge tabanlı segmentasyon#
Odaklanmış analiz ve ayrıntılı inceleme için bir görüntüyü anlamlı parçalara ayırmayı içeren bölge tabanlı segmentasyon, çeşitli süreçlerde hassasiyeti ve verimliliği artıran industrial applications'ı destekleyebilir. Bir görüntü içindeki belirli alanlara odaklanan bu teknoloji, bileşenlerin ve ürünlerin ayrıntılı bir şekilde incelenmesine ve analiz edilmesine olanak tanır. Kalite kontrolü ile ilgili olarak, cracks veya hizasızlıklar gibi malzemelerdeki kusurları veya tutarsızlıkları belirleyebilir ve yalnızca en kaliteli ürünlerin pazara ulaşmasını sağlayabilir.

Şekil 7. Florence-2 kullanarak bölgelere dayalı segmentasyon örneği.
Ayrıca robotic kolları belirli parçalara yönlendirerek ve bileşenlerin yerleşimini ve montajını optimize ederek otomatik montaj hatlarını geliştirir. Benzer şekilde, inventory management'de malların durumunu ve konumunu takip etmeye ve izlemeye yardımcı olarak daha verimli lojistik ve daha az kesinti süresi sağlar. Genel olarak bölge tabanlı segmentasyon, doğruluğu ve üretkenliği artırarak endüstriyel ortamlarda maliyet tasarrufu ve daha yüksek ürün kalitesi sağlar.
Link to this sectionÖne çıkanlar#
AI modellerinin yüksek performansı korurken daha hafif hale geldiği bir eğilim görmeye başlıyoruz. Florence-2, görsel dil modelleri açısından büyük bir ileri adımı temsil ediyor. Nesne algılama, segmentasyon, görüntü alt yazısı oluşturma ve temellendirme gibi çeşitli görevleri etkileyici bir sıfır-atış performansıyla yerine getirebilir. Daha küçük boyutuna rağmen Florence-2 verimli ve çok işlevlidir, bu da onu farklı sektörlerdeki uygulamalar açısından son derece kullanışlı kılar. Florence-2 gibi modeller masaya daha fazla olanak getirerek AI inovasyonları için potansiyeli genişletiyor.
GitHub repository sayfamızı ziyaret ederek ve our community'e katılarak AI hakkında daha fazla bilgi edinin. manufacturing ve agriculture alanlarındaki AI uygulamaları hakkında okumak için çözümler sayfalarımıza göz atın. 🚀






