Düzenle

Aracılığıyla paylaş


Metne özel konuşma uygulama

Azure AI services
Azure AI Konuşma
Azure Machine Learning

Bu iki bölümden oluşan kılavuzda, yüksek kaliteli konuşma kullanan uygulamaları verimli bir şekilde uygulamaya yönelik çeşitli yaklaşımlar açıklanmaktadır. AI Konuşma Tanıma hizmeti tarafından sağlanan konuşmanın temel modelini metin işlevselliğine genişletmeye ve özelleştirmeye odaklanır.

Bu makalede çözümünüzü tasarlamaya yönelik sorun alanı ve karar alma süreci açıklanmaktadır. İkinci makale olan Metin çözümüne özel konuşma dağıtma makalesi, bu yönergeleri ve önerilen uygulamaları uygulamak için bir kullanım örneği sağlar.

Önceden oluşturulmuş ve özel yapay zeka spektrumu

Önceden oluşturulmuş ve özel yapay zeka spektrumu, kullanıma hazır önceden oluşturulmuş modellerden tam olarak özelleştirilmiş yapay zeka çözümlerine kadar birçok yapay zeka modeli özelleştirme ve geliştirme çalışma katmanını temsil eder.

Özelleştirme katmanlarının spektrumunu gösteren diyagram.

Spektrumun sol tarafında, Azure AI hizmetleri önceden eğitilmiş modeller aracılığıyla uygulamalara yapay zeka özelliklerinin hızlı ve düşük sürtünmeli bir şekilde uygulanmasını sağlar. Microsoft, bu temel modelleri eğitmek ve oluşturmak için kapsamlı veri kümeleri sunar. Sonuç olarak, ek eğitim verileri olmadan temel modelleri kullanabilirsiniz. Bunlar gelişmiş güvenlik programlı API çağrıları aracılığıyla kullanılır.

Azure AI hizmetleri şunları içerir:

  • Konuşma. Konuşmayı metne dönüştürme, metin okuma, konuşma çevirisi ve Konuşmacı Tanıma
  • Dil. Varlık tanıma, yaklaşım analizi, soru yanıtlama, konuşma dilini anlama ve çevirmen
  • Görüş. Görüntü İşleme ve Yüz Tanıma API'si
  • Karar. Anomali Algılayıcısı, Content Moderator ve Kişiselleştirme
  • OpenAI Hizmeti. Gelişmiş dil modelleri

Önceden oluşturulmuş temel modeller verileriniz üzerinde yeterince doğru performans göstermediğinde, sorun etki alanına göre eğitim verileri ekleyerek bunları özelleştirebilirsiniz. Bu özelleştirme, kabul edilebilir bir modeli eğitmek ve değerlendirmek için yeterli veri toplamaya ek çaba gerektirir. Özelleştirilebilir Azure yapay zeka hizmetleri arasında Özel Görüntü İşleme, Özel Çeviri, Özel Konuşma ve CLU bulunur. Önceden oluşturulmuş Azure AI hizmetleri modellerinin genişletilmesi, spektrumun merkezinde yer alır. Bu makalenin çoğu bu merkezi alana odaklanmıştır.

Alternatif olarak, modeller ve eğitim verileri belirli bir senaryoya odaklandığında ve özel bir eğitim veri kümesi gerektirdiğinde, Azure Machine Learning tamamen özel modeller oluşturmayı desteklemek için özel çözüm kaynakları, araçlar, işlem ve iş akışı kılavuzu sağlar. Bu senaryo, spektrumun sağ tarafında görünür. Bu modeller sıfırdan oluşturulur. Azure Machine Learning kullanarak model geliştirme genellikle AutoML gibi görsel araçları kullanmaktan not defterlerini kullanarak program aracılığıyla modeli geliştirmeye kadar değişir.

Azure Konuşma hizmeti

Azure Konuşma tanıma hizmeti , konuşmayı metne dönüştürme, metin okuma, konuşma çevirisi, sesli yardımcı ve Konuşmacı Tanıma işlevlerini Azure AI hizmetlerini temel alan tek bir abonelikte birleştirir. Kullanımı kolay SDK'lar ve API'ler aracılığıyla Konuşma hizmetiyle tümleştirerek bir uygulamayı konuşma için etkinleştirebilirsiniz.

Azure metin tanıma hizmeti, sesli konuşmayı gerçek zamanlı olarak veya zaman uyumsuz olarak analiz eder ve konuşulan sözcüğü metne ayırır. İlk olarak, Azure konuşmayı metne dönüştürme, yaygın olarak kullanılan konuşulan dili yansıtan bir taban çizgisi olarak Evrensel Dil Modeli kullanır. Bu temel model, çeşitli ortak etki alanlarını temsil eden diyalektler ve fonetiklerle önceden eğitilir. Sonuç olarak, temel modelin tüketilmesi fazladan yapılandırma gerektirmez ve çoğu senaryoda düzgün çalışır.

Ancak, ses ortam gürültüsü içeriyorsa veya çok fazla sektör ve etki alanına özgü jargon içeriyorsa taban çizgisi modelinin yeterli olmayabileceğini unutmayın. Bu gibi durumlarda özel konuşma modeli oluşturmak mantıklıdır. Bunu, belirli bir etki alanıyla ilişkili ek verilerle eğiterek yaparsınız.

Özel etki alanının boyutuna bağlı olarak, birden çok modeli eğitmek ve tek bir uygulama için modeli bölümlere ayırmak da mantıklı olabilir. Örneğin, Olimpiyat yorumcuları her biri kendi jargonu olan çeşitli sporları rapor eder. Her sporun diğerlerinden önemli ölçüde farklı bir kelime dağarcığı olduğundan, bir spora özgü özel model oluşturmak, söz konusu sporla ilgili konuşma verilerini sınırlayarak doğruluğu artırır. Sonuç olarak model, kesin ve hedeflenen bir veri kümesinden bilgi edinebilir.

Bu nedenle, Azure konuşmayı metne dönüştürmenin üç yaklaşımı vardır:

  • Ses ortam gürültüsünden temizlendiğinde ve dökümü yapılan konuşma yaygın olarak konuşulan dilden oluştuğunda taban çizgisi modeli uygundur.
  • Özel model, temel modeli özel etki alanının tüm alanlarında paylaşılan etki alanına özgü sözcük dağarcığını içerecek şekilde genişletmektedir.
  • Özel etki alanında her birinin belirli bir kelime dağarcığına sahip çok sayıda alanı olduğunda birden çok özel model mantıklıdır.

Azure konuşmayı metne dönüştürmeye yönelik üç yaklaşımı özetleyen diyagram.

Olası kullanım örnekleri

Metinle özel konuşmanın yararlı olduğu bazı genel senaryolar ve kullanım örnekleri aşağıdadır:

  • Tıbbi transkripsiyon veya çağrı merkezi transkripsiyonu gibi belirli bir etki alanı için konuşma transkripsiyonu
  • Bir uygulamada olduğu gibi canlı transkripsiyon veya canlı video akışı için açıklamalı alt yazılar sağlamak için

Microsoft SDK'ları ve açık kaynak araçları

Konuşmayı metne dönüştürme ile çalışırken şu kaynakları yararlı bulabilirsiniz:

Tasarımla ilgili dikkat edilecek noktalar

Bu bölümde, konuşma tabanlı uygulama oluşturmaya yönelik bazı tasarım konuları açıklanmaktadır.

Temel model ile özel model karşılaştırması

Azure Konuşma, çeşitli dilleri destekleyen temel modeller içerir. Bu modeller çok miktarda kelime dağarcığı ve etki alanı ile önceden eğitilir. Ancak, tanınması gereken özel bir kelime dağarcığınız olabilir. Bu gibi durumlarda temel modeller kısa düşebilir. Temel modelin yeterli olup olmayacağını belirlemenin en iyi yolu, temel modelden üretilen transkripsiyonu analiz etmek ve aynı ses için insan tarafından oluşturulan transkriptle karşılaştırmaktır. Bu kılavuzdaki dağıtım makalesinde, transkriptleri karşılaştırmak ve sözcük hata oranı (WER) puanı almak için Speech Studio'nun kullanılması açıklanmaktadır. Sonuçlarda birden çok yanlış sözcük değişimi varsa, bu sözcükleri tanımak için özel bir model eğitmenizi öneririz.

Bir ve birçok özel model karşılaştırması

Senaryonuz özel bir modelden yararlanacaksa, bir sonraki adımda kaç model derleneceğini belirlemeniz gerekir. Konuşmalar bir alan veya etki alanıyla yakından ilişkiliyse bir model genellikle yeterlidir. Ancak, kelime dağarcığı etki alanı alanları arasında önemli ölçüde farklıysa, birden çok model en iyisidir. Bu senaryoda, çeşitli eğitim verilerine de ihtiyacınız vardır.

Şimdi Olimpiyatlar örneğine dönelim. Buz hokeyi, kayak, snowboard, alp disiplini ve daha fazlası dahil olmak üzere birden fazla spor için sesli yorumların dökümünü eklemeniz gerektiğini varsayalım. Her spor için özel konuşma modeli oluşturmak, her sporun benzersiz terminolojisi olduğundan doğruluğu artırır. Ancak her modelin farklı eğitim verileri olmalıdır. Her spor için her yorumcu için bir model oluşturmak çok kısıtlayıcı ve genişletilebilir. Daha pratik bir yaklaşım, her spor için tek bir model oluşturmak, ancak farklı aksanlı yorumcular, her iki cinsiyet ve çeşitli yaşlardan yorumcular içeren bir gruptan ses eklemektir. Farklı yorumcular tarafından yakalanan sporla ilgili tüm etki alanına özgü tümcecikler aynı modelde yer alır.

Ayrıca hangi dilleri ve yerel ayarları destekleyebileceğinizi de göz önünde bulundurmanız gerekir. Bu modelleri yerel ayara göre oluşturmak mantıklı olabilir.

Akustik ve dil modeli uyarlaması

Azure Konuşma, özel model eğitme için üç seçenek sunar:

Dil modeli uyarlaması en yaygın kullanılan özelleştirmedir. Dil modeli, belirli sözcüklerin belirli bir bağlamda veya belirli bir etki alanında birlikte nasıl kullanıldığını eğitmeye yardımcı olur. Dil modeli oluşturmak da nispeten kolay ve hızlıdır. İlk olarak, belirli bir etki alanı için çeşitli konuşmalar ve tümcecikler sağlayarak modeli eğitin. Örneğin, amaç alp kayağı için transkripsiyon oluşturmaksa, birden çok kayak olayının insan tarafından oluşturulan transkriptlerini toplayın. Yaklaşık 50 bin tümcecik ve cümle içeren bir eğitim veri dosyası oluşturmak için bunları temizleyin ve birleştirin. Özel dil modeli eğitimi için veri gereksinimleri hakkında daha fazla bilgi için bkz . Eğitim ve test veri kümeleri.

Söyleniş modeli özelleştirmesi de en yaygın kullanılan özelleştirmelerden biridir. Söyleniş modeli, özel modelin standart telaffuzu olmayan yaygın olmayan sözcükleri tanımasını sağlar. Örneğin, alp disiplinindeki terimlerden bazıları schuss ve mogul terimleri gibi diğer dillerden ödünç alınıyor. Bu sözcükler, söyleniş veri kümesiyle eğitim için mükemmel adaylardır. Telaffuz dosyası kullanarak tanımayı geliştirme hakkında daha fazla bilgi için bkz . Eğitim için söyleniş verileri. Speech Studio kullanarak özel model oluşturma hakkında ayrıntılı bilgi için bkz . Özel Konuşma nedir?.

Akustik model uyarlaması , Azure Konuşma'nın bunları düzgün tanıyabilmesi için belirli sözcüklerin söylenişi hakkında fonetik eğitim sağlar. Akustik model oluşturmak için ses örneklerine ve insan tarafından oluşturulan transkriptlere ihtiyacınız vardır. Tanıma dili en-US gibi ortak yerel ayarlarla eşleşiyorsa, geçerli temel modelin kullanılması yeterli olmalıdır. Temel modeller, anadili ve anadili olmayan İngilizce konuşanların seslerini kullanarak büyük miktarda İngilizce kelime dağarcığını kapsayan çeşitli eğitimlere sahiptir. Bu nedenle, en-US temel modelinde akustik model uyarlaması oluşturmak çok fazla iyileştirme sağlamayabilir. Özel bir akustik modelin eğitimi de biraz daha zaman alır. Özel akustik eğitimin veri gereksinimleri hakkında daha fazla bilgi için bkz . Eğitim ve test veri kümeleri.

Son özel model, bu bölümde açıklanan özelleştirmelerin üçünün birleşimini kullanan veri kümeleri içerebilir.

Özel model eğitma

Özel modeli eğitmek için iki yaklaşım vardır:

  • Etki alanından çok sayıda tümcecik ve konuşma örneğiyle eğitin. Örneğin, temizlenmiş ve normalleştirilmiş alp disiplini kayak olayının dökümlerini ve önceki olayların insan tarafından oluşturulan transkriptlerini ekleyin. Transkriptlerde alp disiplininde kullanılan terimlerin ve yorumcuların bunları nasıl telaffuz ettiğini gösteren birden çok örnek bulunduğundan emin olun. Bu işlemi izlerseniz, sonuçta elde edilen özel modelin etki alanına özgü sözcükleri ve tümcecikleri tanıyabilmesi gerekir.

  • Sorun alanlarına odaklanan belirli verilerle eğitin. Bu yaklaşım, örneğin alp disiplini etkinlikleri sırasında yeni argo terimler kullanılıyorsa ve modele dahil edilmesi gerekiyorsa çok fazla eğitim verisi olmadığında iyi çalışır. Bu eğitim türü aşağıdaki yaklaşımı kullanır:

    • Speech Studio'yu kullanarak transkripsiyon oluşturun ve bunu insan tarafından oluşturulan transkripsiyonlarla karşılaştırın.
    • Yorumcuların söylediklerindeki desenlerden sorun alanlarını belirleyin. Tanımlamak:
      • Sorun sözcüğünün veya konuşmanın uygulandığı bağlamlar.
      • Sözcüğün veya konuşmanın farklı çekimleri ve söylenişleri.
      • Sözcüğün veya konuşmanın tüm benzersiz yorumlayıcıya özgü uygulamaları.

Özel modelin belirli verilerle eğitilmesi zaman alabilir. Adımlar arasında transkripsiyon boşluklarını dikkatlice analiz etme, el ile eğitim tümcecikleri ekleme ve bu işlemi birden çok kez yineleme yer alır. Ancak sonunda, bu yaklaşım daha önce yanlış yazılmış sorun alanları için odaklanmış eğitim sağlar. Ayrıca, kritik alanlar üzerinde seçmeli olarak eğitim ve ardından önem sırasına göre listede ilerleyerek bu modeli yinelemeli olarak oluşturmak mümkündür. Bir diğer avantaj da veri kümesi boyutunun, eğitim verilerini oluşturmanın birçok yinelemesinden sonra bile birkaç bin yerine birkaç yüz konuşma içermesidir.

Modelinizi derledikten sonra

Modelinizi derledikten sonra aşağıdaki önerileri göz önünde bulundurun:

  • Sözcük temelli metin ve görüntüleme metni arasındaki farka dikkat edin. Speech Studio, sözcük temelli metne göre WER üretir. Ancak, kullanıcının gördüğü noktalama işaretleri, büyük harfe çevirme ve sayı olarak gösterilen sayısal sözcükler içeren görüntüleme metnidir. Aşağıda, sözcük temelli metin ve görüntüleme metni örneği verilmiştir.

    Sözcük temelli metin: Hız harika ve Almanca için daha da iyi elli yedi oh altı üç saniye

    Ekran metni: Hız harikadır. Ve bu zaman daha da iyi. Alman için 57063 saniye.

    Beklenen (örtük) şey: Hız harikadır. Ve bu zaman daha da iyi. Almanca için 57.063 saniye

    Özel modelin WER oranı düşüktür ancak bu, kullanıcı tarafından algılanan hata oranının (görünen metindeki hatalar) düşük olduğu anlamına gelmez. Bu sorun çoğunlukla alfasayısal girişte oluşur çünkü farklı uygulamaların girişi temsil etmek için alternatif yolları olabilir. Yalnızca WER'ye güvenmemelisiniz. Son tanıma sonucunu da gözden geçirmeniz gerekir.

    Görüntülenen metin yanlış gibi göründüğünde, SDK'dan alınan ve her şeyin yazıldığı sözcük temelli metin içeren ayrıntılı tanıma sonucunu gözden geçirin. Sözcük temelli metin doğruysa, tanıma doğrudur. Ardından, işleme sonrası kuralları ekleyerek görüntüleme metnindeki (tanınan son sonuç) yanlışlıkları çözebilirsiniz.

  • Veri kümelerini, modelleri ve sürümlerini yönetin. Speech Studio'da proje, veri kümesi ve model oluşturduğunuzda yalnızca iki alan vardır: ad ve açıklama. Veri kümelerini ve modelleri yinelemeli olarak oluştururken, bir veri kümesinin içeriğini ve hangi modelin veri kümesinin hangi sürümünü yansıtdığını belirlemeyi kolaylaştırmak için iyi bir adlandırma ve sürüm oluşturma düzenini izlemeniz gerekir. Bu öneri hakkında daha fazla ayrıntı için bkz . Metin çözümüne özel konuşma dağıtma.

Katkıda Bulunanlar

Bu makale Microsoft tarafından yönetilir. Başlangıçta aşağıdaki katkıda bulunanlar tarafından yazılmıştır.

Asıl yazar:

Diğer katkıda bulunanlar:

Genel olmayan LinkedIn profillerini görmek için LinkedIn'de oturum açın.

Sonraki adımlar