"Londra" dan başlayarak, doğal dil işleme (Python kodu) için 8 adım

Xinzhiyuan önerilir

Kaynak: Orta

Yazar: Adam Geitgey

Derleme: Bot, Üç Taş

Xin Zhiyuan Rehberi Doğal dil işleme, bilgisayarın anlaması için günlük iletişimde insanlar tarafından kullanılan yapılandırılmamış metin bilgilerinden yapılandırılmış verileri çıkaran bir AI alt alanıdır. Bu makale doğal dil işlemeyi basit ve anlaşılması kolay bir dilde tanıtır ve Python'da çok ilginç birkaç örnek uygular.

Doğal dil işleme (NLP), bilgisayarların insan dilini anlamasını ve işlemesini sağlamaya odaklanan bir yapay zeka alt alanıdır. Bu makale NLP çalışmasının temel mekanizmasını tanıtacak ve okuyucuların bundan ilham alacağını umacaktır.

Not: Bu makalede kullanılan örnek dil İngilizcedir.

Bilgisayarlar dili anlayabilir mi?

Bilgisayarın başlangıcından beri, programcılar dili anlayan programlar yazmaya çalışıyorlar. Nedeni basit - insanların bin yıldır dili kullanması, bilgisayarlar tüm verileri okuyup anlayabiliyorsa, büyük fayda sağlayacaktır.

Bilgisayarlar, insanlar gibi dilleri gerçekten anlayamasalar da, gerçekten çok ilerleme kaydetmişlerdir.Bazı alanlarda, NLP kullanmak şeylere sihirli değişiklikler getirebilir. NLP teknolojisini kendi projelerinize uygulayarak çok zaman kazanabilirsiniz.

Daha iyi haber şu ki, spaCy, textacy ve neuralcoref gibi açık kaynaklı Python kitaplıkları aracılığıyla NLP alanındaki en son başarılara artık kolayca erişebiliyoruz. Yalnızca birkaç satır kodla, harika sonuçlar anında elde edilebilir.

Metinden anlam çıkarmak zordur

Dili okumak ve anlamak çok karmaşık bir süreçtir - böyle bir anlayışın mantıklı ve tutarlı olup olmadığını bile yargılamayacaklardır. Örneğin, aşağıdaki haber başlığı ne anlama geliyor?

"Çevre düzenleyicileri, işletme sahibini kaçak kömür yangınları yüzünden ızgara yapıyor." Yasadışı kömür yangınları konusunda çevre düzenleyicileri, işletme sahiplerine ___. (Izgara: sor, kavur)

Düzenleyiciler, şirketlerde yasadışı kömür yakmanın varlığını mı sorguluyor yoksa işletme sahipleriyle mi yemek pişiriyorlar? Gördüğünüz gibi, dili ayrıştırmak için bir bilgisayar kullanmak sorunu karmaşıklaştırabilir.

Makine öğreniminde, karmaşık görevleri çözmek genellikle bir ardışık düzen oluşturmak anlamına gelir. Buradaki fikir, sorunu çok küçük parçalara ayırmak ve ardından bunları birer birer kırmak için makine öğrenimini kullanmaktır.Son olarak, bu makine öğrenimi modellerini birbirine ekleyerek karmaşık görevleri tamamlamak için kullanabiliriz.

Ve bu tam olarak NLP'de yaygın olarak kullandığımız stratejidir. Dil metnini anlama sürecini birkaç küçük parçaya böldük ve ardından bağımsız olarak özel anlama yöntemlerini ele alıyoruz.

Adım adım NLP Ardışık Düzeni oluşturun

Wikipedia'da "Londra" hakkında bir pasaj:

Londra, İngiltere ve Birleşik Krallık'ın başkenti ve en kalabalık şehridir. Büyük Britanya adasının güney doğusunda Thames Nehri üzerinde duran Londra, iki bin yıldır önemli bir yerleşim yeri olmuştur. Adını veren Romalılar tarafından kurulmuştur. Londinium Londra, İngiltere ve Birleşik Krallık'ın başkenti ve Birleşik Krallık'ın en kalabalık şehridir. Büyük Britanya'nın güneydoğu kesiminde Thames Nehri üzerinde yer almaktadır ve 2000 yılından beri bu bölgedeki ana yerleşim yerlerinden biri olmuştur. Londra aslen Romalılar tarafından kuruldu ve Lentinion olarak adlandırıldı.

Bu metin pek çok yararlı bilgi içeriyor: Eğer bilgisayar "Londra bir şehirdir", "Londra İngiltere'de" ve "Londra Romalılar tarafından kurulmuştur" şeklinde okuyabiliyorsa işiniz bitmiş olacak. Ancak bu hedefe ulaşmak için önce bilgisayara yazı dilinin en temel kavramlarını öğretmeli ve sonra daha fazla gelişme aramalıyız.

İlk adım: cümle bölümleme (Cümle Bölümleme)

NLP boru hattının ilk adımı, metni aşağıda gösterildiği gibi ayrı cümlelere bölmektir:

  • Londra, İngiltere ve Birleşik Krallık'ın başkenti ve Birleşik Krallık'ın en kalabalık şehridir.

  • Büyük Britanya'nın güneydoğusundaki Thames Nehri üzerinde yer alır ve 2000 yılında bu bölgedeki ana yerleşim yerlerinden biri olmuştur.

  • Londra aslen Romalılar tarafından kuruldu ve Lentinion olarak adlandırıldı.

  • Buradaki her cümlenin bağımsız bir düşünceyi veya fikri temsil ettiğini varsayabiliriz, tek bir cümleyi anlamak için bir program yazmak, tüm paragrafı anlamaktan çok daha kolaydır.

    Cümle bölütleme modeli oluşturmaya gelince, bu zor bir iş değil, her bir cümleyi noktalama işaretine göre belirleyebiliriz. Tabii ki, modern NLP genellikle daha karmaşık teknikler kullanır, belgenin içeriği düzenli olmasa bile, tam cümleleri kabaca ayırt edebilir.

    Adım 2: Kelime Şifreleme

    Artık cümleleri birer birer böldüğümüze göre, onları tek tek işleyebiliriz. İlk cümleyle başlayalım:

    Londra, İngiltere ve Birleşik Krallık'ın başkenti ve en kalabalık şehridir.

    Bu adımın amacı, cümleyi ayrı kelimelere veya noktalama işaretlerine bölmektir. Segmentasyon tamamlandıktan sonra, tüm cümle şu şekilde olur:

    "Londra", "olan", "the", "başkent", "ve", "en çok", "kalabalık", "şehir", "of", "İngiltere", "ve", "the", "United "," Krallık ",". "

    İngilizcede doğal bir sınırlayıcı boşluk vardır, bu nedenle kelime örnekleri oluşturmak çok uygundur. İki örnek arasında boşluk olduğu sürece, onları doğrudan ayırabiliriz. Noktalama işaretleri de anlamlı olduğundan, bunları ayrı örnekler olarak ele almak istiyoruz.

    3. Adım: Konuşmanın bölümünü tahmin edin

    Sonra, kelime örneklerinin konuşma bölümlerine odaklanalım: isimler, fiiller, sıfatlar ... Her kelimenin bir cümle içindeki rolünü bilmek, cümlenin ne söylediğini anlamamıza yardımcı olur.

    Bunu başarmak için, konuşma sınıflandırma modelinin bir bölümünü önceden eğitebilir ve ardından konuşmanın bölümünü tahmin etmek için her kelimeyi ona girebiliriz:

    Bu model, başlangıçta milyonlarca İngilizce cümle üzerinde eğitildi ve her kelimenin konuşma kısmı veri setinde işaretlendi, böylece bu "tanım" sürecini öğrenebilir. Ancak bu modelin tamamen istatistiksel verilere dayandığına dikkat edin - aslında insanlar gibi kelimelerin anlamını anlayamaz, ancak yalnızca "bakılan" benzer cümlelere dayanarak tahmin edebilir.

    Cümlenin tamamını işledikten sonra şu sonucu alacağız:

    Bu bilgiyle donanmış olarak, çok temel anlamlar toplamaya başlayabiliriz.Örneğin, cümledeki isimler "Londra" ve "Başkent" i içeriyor, dolayısıyla bu cümlenin Londra'dan bahsetme olasılığı çok yüksek.

    Adım 4: Metin Lemmatizasyonu

    İngilizcede kelimeler aşağıdaki gibi farklı biçimlerde gelir:

  • Midillim vardı.

  • İki midillim vardı.

  • Her iki cümle de ad pony () içerir, ancak biri tekil formdadır ve diğeri çoğul formdadır. Bilgisayar metni işlerken, herhangi bir açıklama yoksa, "midilli" ve "midillileri" tamamen farklı nesneler olarak ele alır, bu nedenle her kelimenin temel biçimini anlamak yardımcı olur. Ancak bu şekilde bilgisayar iki cümlenin içinde olduğunu bilir. Aynı kavram hakkında konuşun.

    NLP'de, bu herhangi bir dil kelime dağarcığını genel bir forma geri getirme sürecini, bir cümledeki her kelimenin en temel biçimini bulabilen morfolojik restorasyon olarak adlandırıyoruz.

    Aynı şey İngilizce fiiller için de geçerlidir. Kelimenin kökünü bulmak için morfolojik onarımı kullanabiliriz. Bundan sonra, "İki midillim vardı", "Ben iki" olur.

    Lemmatizasyon, kelime oluşturma tablosunun alınmasıyla elde edilir ve ayrıca insanların daha önce hiç görmediği kelimeleri işleyebilecek bazı özel kurallara sahip olabilir.

    Aşağıdaki geri yüklenen bir örnektir. Yaptığımız tek değişiklik "" olmak "olarak değiştirmekti:

    Adım 5: Durdurulan Kelimeleri Tanımlayın

    Daha sonra cümledeki her kelimenin önemini ölçer. İngilizcede "ve", "the" ve "a" gibi sıklıkla görünen pek çok doldurucu kelime vardır. Metni sayarken, bu kelimeler sık sık geçtikleri için çok fazla gürültü çıkaracaktır. Bazı NLP ardışık düzenleri bunları durdurma sözcükleri olarak işaretler - yani, herhangi bir istatistiksel analiz gerçekleştirmeden önce bu sözcükleri filtrelemek isteyebiliriz.

    Aşağıda gri durdurma sözcükleriyle işaretlenmiş örnek bir cümle yer almaktadır:

    Durdurma kelimesi tespiti için önceden hazırlanmış bir liste de vardır, ancak bu, lematizasyondan farklıdır.Herhangi bir soruna uygun standart bir durdurma kelime listemiz yoktur, spesifik problemlerin spesifik analizini gerektirir. Örneğin, rock grupları için bir arama motoru inşa edeceksek, "The" kelimesi göz ardı edilmemelidir çünkü birçok grup adında yer alacaktır. 1980'lerde adında ünlü bir grup vardı " The ".

    Adım 6 (a): Bağımlılık Ayrıştırma

    Bir sonraki adım, cümledeki tüm kelimelerin birbiriyle nasıl ilişkili olduğunu, yani sözdizimsel analize dayanarak bulmaktır.

    Amacımız, ağacın kökündeki ana fiilin baskın fiil olduğu, ana kelime olarak anılan ve bağımlı kelimenin bağımlı konumda olduğu bir bağımlılık ağacı oluşturmaktır:

    Ama daha ileri gidebiliriz. Her kelimenin konusunu belirlemeye ek olarak, bu iki kelime arasındaki bağımlılık türünü de tahmin edebiliriz:

    Bu bağımlılık ağacı bize cümlenin konusunun "Londra" olduğunu ve "sermaye" ile "ol" ilişkisi olduğunu söylüyor. Buna dayanarak, yararlı bir bilgi elde ettik - Londra bir başkenttir. Bu temelde geriye bakmaya devam edersek, Londra'nın Birleşik Krallık'ın başkenti olduğunu görebiliriz.

    Daha önce konuşma bölümlerini tahmin etmek için makine öğrenimi modellerini kullandığımız gibi, bağımlılık ayrıştırma analizi de bir modelle uygulanabilir. Aradaki fark, kelime bağımlılıklarını çözmenin özellikle karmaşık olması ve makalenin tamamı ile birlikte ayrıntılı olarak açıklanması gerektiğidir. Eğer ilgileniyorsanız, Matthew Honnibal tarafından yazılan "İngilizceyi 500 Satır Python Koduyla Ayrıştırın" iyi bir eğitimdir.

    Yazar, 2015 yılında bu yöntemin bir standart haline geldiğini, ancak şimdi biraz modası geçmiş olduğunu ve birçok araştırmacı artık kullanmadığını belirtti. 2016'da Google, derin öğrenmeye dayanan ve performansta mevcut kıyaslamaları önemli ölçüde aşan Parsey McParseface adında yeni bir bağımlılık ayrıştırıcısı yayınladı, bu nedenle piyasaya sürüldüğünde geniş çapta yayıldı. Bir yıl sonra, ParseySaurus'un daha da geliştirilmiş bir güncel sürümünü yayınladılar. Kısacası, bağımlılık ayrıştırma hala aktif bir araştırma alanıdır ve sürekli değişmekte ve gelişmektedir.

    Ek olarak, birçok İngilizce cümlede, ayrıştırılması genellikle zor olan belirsizlik sorunu vardır. Bu durumlarda, model cümlenin her ayrıştırılmış versiyonuna göre en olası seçimi tahmin edecektir, ancak bu mükemmel değildir ve bazen model utanç verici hatalar yapacaktır. Ancak zamanla, NLP modelimiz yavaş yavaş makul hale gelecektir.

    Adım 6 (b): İsim cümlelerini bulun

    Şimdiye kadar cümledeki her kelimeyi ayrı bir varlık olarak ele aldık, ancak bazen tek bir fikri veya şeyi temsil eden bu kelimeler birlikte daha anlamlı hale geliyor. Bağımlılık ağaçlarını kullanarak bilgileri otomatik olarak entegre edebilir ve aynı şeyi birlikte tartışan kelimeleri gruplayabiliriz.

    Aşağıdaki şekil ile karşılaştırılmıştır:

    İsim cümlelerini oluşturmak için gruplayabiliriz:

    Bu adımı atıp atmamak nihai hedefimize bağlıdır. Bununla birlikte, hangi kelimelerin sıfat olduğu gibi cümlenin fazladan ayrıntılarını anlamamız gerekmiyorsa, ancak daha çok fikrin tamamını çıkarmaya odaklanıyorsak, bu genellikle cümleyi basitleştirmenin uygun bir yoludur.

    7. Adım: Adlandırılmış Varlık Tanıma (NER)

    Yukarıdaki adımları tamamladıktan sonra, temel dilbilgisinden kurtulabilir ve gerçekten anlam çıkarmaya başlayabiliriz.

    Örnek cümlede aşağıdaki isimler var:

    Bu isimler, haritada belirli bir coğrafi konumu belirtmek için "Londra", "İngiltere" ve "Birleşik Krallık" gibi gerçekte var olan bazı şeyleri içerir. Bu bilgilerle, belgede bahsedilen gerçek dünya konumlarının listesini otomatik olarak çıkarmak için NLP'yi kullanabiliriz.

    Adlandırılmış varlık tanımanın (NER) amacı, gerçek dünyadaki yiyecekleri temsil eden bu kelimeleri tespit etmek ve etiketlemektir. Aşağıdaki şekil, her bir kelime örneğini NER modeline girdikten sonra örnek cümlelerin nasıl değiştiğini gösterir:

    Sezgisel olarak görünür olmasa da, NER hiçbir şekilde basit bir sözlük araştırması ve etiketleme değildir.Kullanılan kelimenin hangi türden farklı kelimeleri temsil ettiğini tahmin edebilen, bağlamdaki bir kelimenin konumunun istatistiksel bir modelini içerir. Örneğin, iyi bir NER modeli, "Brooklyn" in Brooklyn Decker adını mı yoksa Brooklyn yer adını mı temsil ettiğini ayırt edebilir.

    Aşağıdakiler, tipik bir NER sisteminin işaretleyebileceği bazı nesnelerdir:

    • Kişinin adı

    • Şirket Adı

    • Coğrafi konum (coğrafi ve politik)

    • Ürün adı

    • Tarih ve saat

    • Miktar

    • Etkinlik ismi

    Metinden yapılandırılmış verileri kolayca elde edebildiği için NER'in birçok kullanımı vardır Bu, NLP işlem hattından değerli bilgileri hızlı bir şekilde elde etmenin en kolay yollarından biridir.

    Adım 8: Ortak referans çözünürlüğü

    Şimdiye kadar, cümlelerle ilgili birçok faydalı sunumumuz var. Her kelimenin konuşma kısmını, kelimeler arasındaki bağımlılıkları ve adlandırılmış varlıkları temsil eden kelimeleri biliyoruz.

    Ama yine de zor bir problemimiz var, yani İngilizce "o", "o" ve "o" gibi birçok zamir içeriyor. Bu kelimeler sıklıkla cümlelerde yer alıyor ve bir adın tekrar tekrar anılmasını önlemek için kullandığımız kısaltmalardır. İnsanlar bağlama göre bu zamirlerin anlamını anlayabilir, ancak NLP modeli anlayamaz, çünkü şimdiye kadar sadece cümle cümle test edildi.

    Örneğin üçüncü cümlesine bakalım:

    "Londinium adını veren Romalılar tarafından kuruldu."

    NLP boru hattına göre, modelimiz yalnızca "onun" Roma tarafından insan yapımı olduğunu biliyor ve "onun" ne olduğunu bilmiyoruz. Ama bu pasajı okuyabilen herkes için bu soru zor olmalı, buradaki "o" nun ilk cümlede "Londra" olduğunu biliyoruz.

    Aşağıdakiler, belgemizdeki "Londra" kelimesi için fikir birliği analizi çalıştırmanın sonucudur:

    Çekirdek referans çözümlemesini bağımlılık ağacı ve adlandırılmış varlık bilgisiyle birleştirerek, bu belgeden çok fazla bilgi çıkarabiliriz! Aslında, bu aynı zamanda mevcut NLP alanında büyük bir zorluktur Tek bir cümleyi çözümlemekten çok daha zordur. Son yıllarda derin öğrenmedeki en son gelişmelere dayalı olarak bazı atılımlar yapılmış olsa da, mükemmel değiller.

    Yukarıdakiler, NLP hakkında bazı temel bilgilerdir. Bu içerikle ilgileniyorsanız, gelecekte metin sınıflandırması, akıllı asistan ayrıştırma sorunları ve diğer özel uygulamalar gibi daha fazla NLP içeriğini tartışacağız.

    Python'da NLP Ardışık Düzenini Yazma

    Aşağıdaki şekil, NLP Boru Hattı'nın tam bir özetidir:

    Çekirdek referans çözünürlüğü isteğe bağlı bir adımdır

    Öncelikle, Python3'ü yüklediğinizi varsayarak, spaCy'yi kurmak için aşağıdaki koda basın:

    # SpaCy'yi yükleyin

    pip3 kurulum -U spacy

    # SpaCy için büyük İngilizce modeli indirin

    python3 -m spacy indir en_core_web_lg

    # Aynı zamanda yararlı olacak metinleri yükleyin

    pip3 kurulum -U metni

    Ardından NLP Ardışık Düzenini çalıştırmak için aşağıdaki kodu yazın:

    ithal boşluk

    # Büyük İngilizce NLP modelini yükleyin

    nlp = spacy.load ('en_core_web_lg')

    # İncelemek istediğimiz metin

    text = "" "Londra, İngiltere'nin başkenti ve en kalabalık şehridir ve

    Birleşik Krallık. Güney doğuda Thames Nehri üzerinde duruyor

    Büyük Britanya adasının en büyük yerleşim yeri olan Londra

    iki bin yıldır Londinium adını veren Romalılar tarafından kurulmuştur.

    "" "

    # Metni spaCy ile ayrıştırın. Bu, tüm ardışık düzeni çalıştırır.

    doc = nlp (metin)

    # 'doc' artık metnin ayrıştırılmış bir sürümünü içeriyor. İstediğimiz her şeyi yapmak için onu kullanabiliriz!

    # Örneğin, bu, tespit edilen tüm adlandırılmış varlıkları yazdıracaktır:

    doc.ents içindeki varlık için:

    baskı (f "{varlık.metin} ({varlık.etiket_})")

    Çalıştırdıktan sonra, belgeden tespit edilen adlandırılmış varlıkların ve varlık türlerinin bir listesini alacaksınız:

    Londra (GPE)

    İngiltere (GPE)

    Birleşik Krallık (GPE)

    Thames Nehri (FAC)

    İngiltere (GPE)

    Londra (GPE)

    iki bin yıl (DATE)

    Romalılar (NORP)

    Londinium (KİŞİ)

    "Londinium" da bir yer değil, bir kişinin adı olduğunu düşünerek bir hata olduğunu belirtmekte fayda var. Bunun nedeni eğitim veri setinde benzer hiçbir şeyin olmaması ve en iyi tahminini yapması olabilir. Adlandırılmış Varlık Algılama genellikle modelin bazı ince ayarını gerektirir.

    Burada, varlıkları algılamayı ve bir veri temizleyici oluşturmak için onları bükmeyi düşünelim. Binlerce belgenin adını elle düzenlemek birkaç yıl sürebilir, ancak NLP için bu çocuk oyuncağı. Aşağıdaki, algılanan tüm adları silebilen basit bir veri temizleyicidir:

    ithal boşluk

    # Büyük İngilizce NLP modelini yükleyin

    nlp = spacy.load ('en_core_web_lg')

    # Belirteci bir adsa "SÜREKLİ" ile değiştirin

    def replace_name_with_placeholder (token):

    token.ent_iob! = 0 ve token.ent_type_ == "KİŞİ" ise:

    dönüş ""

    Başka:

    token.string dönüş

    # Bir belgedeki tüm varlıklar arasında döngü yapın ve isim olup olmadığını kontrol edin

    def fırçalama (metin):

    doc = nlp (metin)

    doc.ents'teki ent için:

    ent.merge

    belirteçler = eşleme (replace_name_with_placeholder, doc)

    return "" .join (belirteçler)

    s = "" "

    1950'de Alan Turing, "Computing Machinery and Intelligence" adlı ünlü makalesini yayınladı. 1957'de Noam Chomskynin

    Sözdizimsel Yapılar, sözdizimsel yapıların kural tabanlı bir sistemi olan 'evrensel gramer' ile Dilbilimde devrim yarattı.

    "" "

    baskı (fırçalama (lar))

    Operasyonunun sonuçları aşağıdaki gibidir:

    1950'de "Hesaplama Makineleri ve İstihbarat" adlı ünlü makalesini yayınladı. 1957'de,

    Sözdizimsel Yapılar, sözdizimsel yapıların kural tabanlı bir sistemi olan 'evrensel gramer' ile Dilbilimde devrim yarattı.

    Gerçek çıkarma

    SpaCy temelinde birkaç ortak veri çıkarma algoritması uygulayan textacy adlı bir python kitaplığı vardır. Uyguladığı bir algoritmaya Yarı Yapılandırılmış İfade Çıkarma adı verilir. Bunu, öznenin "Londra" olduğu ve fiilin "olmanın" bir biçimi olduğu basit cümleler için ağaçları ayrıştırmak için kullanabiliriz. Bu, Londra hakkında gerçekleri bulmamıza yardımcı olur. Aşağıdaki gibi:

    ithal boşluk

    textacy.extract içe aktar

    # Büyük İngilizce NLP modelini yükleyin

    nlp = spacy.load ('en_core_web_lg')

    # İncelemek istediğimiz metin

    text = "" "Londra, İngiltere ve Birleşik Krallık'ın başkenti ve en kalabalık şehridir.

    Büyük Britanya adasının güneydoğusundaki Thames Nehri üzerinde dururken,

    Londra iki bin yıldır önemli bir yerleşim yeri olmuştur. Romalılar tarafından kurulmuştur,

    Londinium adını kim verdi.

    "" "

    # Belgeyi spaCy ile ayrıştırın

    doc = nlp (metin)

    # Yarı yapılandırılmış ifadeleri ayıklayın

    ifadeler = textacy.extract.semistructured_statements (doc, "Londra")

    # Sonuçları yazdırın

    print ("İşte Londra hakkında bildiklerim:")

    ifadelerdeki ifade için:

    konu, fiil, gerçek = ifade

    baskı (f "- {fact}")

    Operasyonunun sonuçları aşağıdaki gibidir:

    İşte Londra hakkında bildiğim şeyler:

    -İngiltere ve Birleşik Krallık'ın başkenti ve en kalabalık şehri.

    -iki bin yıllık büyük bir yerleşim.

    Bu basit görünebilir, ancak aynı kodu tüm Londra Wikipedia makale metninde çalıştırırsanız (yalnızca üç cümle yerine), aşağıda gösterildiği gibi etkileyici sonuçlar alırsınız:

    İşte Londra hakkında bildiğim şeyler:

    -İngiltere'nin ve Birleşik Krallık'ın başkenti ve en kalabalık şehri

    - iki bin yıllık büyük bir yerleşim yeri

    -1831'den 1925'e kadar dünyanın en kalabalık şehri

    -Bütün karşılaştırmanın ötesinde İngiltere'deki en büyük kasaba

    -Hala çok kompakt

    -yaklaşık 1831'den 1925'e kadar dünyanın en büyük şehri

    - Birleşik Krallık Hükümeti'nin merkezi

    Sele karşı savunmasız

    - Yüzde 40'tan fazla yeşil alan veya açık suya sahip "Dünyanın En Yeşil Şehirlerinden biri"

    -Avrupa Birliği'nin en kalabalık şehri ve metropol bölgesi ve Avrupa'nın en kalabalık ikinci şehri

    -dünyanın en büyük 19. şehri ve 18. büyük metropol bölgesi

    -Hristiyan ve özellikle Londra Şehri'nde çok sayıda kilisesi var

    - büyük ölçüde Müslüman, Hindu, Sih ve Yahudi topluluklarına da ev sahipliği yapıyor

    - 42 Hindu tapınağına da ev sahipliği yapmaktadır

    -dünya emlak dergisi (2015) raporuna göre son üç yıldır dünyanın en pahalı ofis pazarı

    -uluslararası finans için en önemli lokasyon olarak dünyanın önde gelen finans merkezlerinden biri

    - TripAdvisor kullanıcıları tarafından derecelendirilen dünyanın en iyi şehir destinasyonu

    - dünyanın en yoğun şehir hava sahasına sahip büyük bir uluslararası hava taşımacılığı merkezi

    - Demiryolu yolculuklarının yüzde 70'inin Londra'da başlayıp bittiği National Rail ağının merkezi

    - büyük bir küresel yüksek öğretim öğretim ve araştırma merkezi ve Avrupa'daki en büyük yüksek öğretim enstitüleri yoğunluğuna sahiptir

    - tasarımcılar Vivienne Westwood, Galliano, Stella McCartney, Manolo Blahnik ve Jimmy Choo'ya ev

    - birçok edebiyat eserinin bulunduğu ortam

    - BBC Television Center, The Fountain Studios ve The London Studios gibi stüdyoların bulunduğu büyük bir televizyon prodüksiyon merkezi

    - ayrıca şehir müziği merkezi

    - 35.000 dönümlük halka açık parkları, ormanları ve bahçeleri ile Avrupa'nın "en yeşil şehri"

    - İngiltere'nin başkenti değil, çünkü İngiltere'nin kendi hükümeti yok

    Başka ne yapılabilir?

    SpaCy dokümantasyonu ve textacy dokümantasyonu aracılığıyla, ayrıştırılmış metin kullanmanın birçok örneğini göreceksiniz. Başka bir örneğe bakalım: Bir web sitesi oluşturduğunuzu varsayalım. Web sitenizde bir arama bölümü varsa, aşağıdaki şekilde gösterildiği gibi, kesinlikle Google'ın yaptığı gibi yaygın arama sorgularını otomatik olarak tamamlayabilmek isteyebilirsiniz:

    Google, "Londra" kelimesi için metin sorgularını otomatik olarak tamamlar

    Bunu yapmak için, kullanıcılara öneriler sunacak bir listeye ihtiyacımız var. Bu verileri hızlı bir şekilde oluşturmak için NLP'yi kullanabilirsiniz. Belgelerden sıkça bahsedilen isim bloklarını çıkarmanın bir yolu:

    ithal boşluk

    textacy.extract içe aktar

    # Büyük İngilizce NLP modelini yükleyin

    nlp = spacy.load ('en_core_web_lg')

    # İncelemek istediğimiz metin

    text = "" "Londra" ""

    # Belgeyi spaCy ile ayrıştırın

    doc = nlp (metin)

    # Görünen isim parçalarını çıkarın

    noun_chunks = textacy.extract.noun_chunks (doc, min_freq = 3)

    # İsim parçalarını küçük harfli dizelere dönüştürme

    noun_chunks = harita (str, noun_chunks)

    noun_chunks = harita (str.lower, noun_chunks)

    # En az 2 kelime uzunluğundaki isimleri yazdırın

    sette noun_chunk için (noun_chunks):

    eğer len (noun_chunk.split ("")) > 1:

    baskı (noun_chunk)

    Bu kodu Londra'nın Wikipedia'sında çalıştırırsanız, aşağıdaki sonucu alırsınız:

    Westminster manastırı

    doğal Tarih Müzesi

    Batı ucu

    Doğu ucu

    St Paul Katedrali

    Kraliyet albert salonu

    Londra yeraltı

    Harika ateş

    ingiliz müzesi

    londra gözü

    .... vb ....

    Bu makalenin teorik kısmı, WeChat genel hesabı "Lunzhi" (ID: jqr_AI) 'den yeniden basılmaya yetkilidir.

    Xinzhiyuan AI WORLD 2018 Konferansı [Erken Kayıt Bileti]

    Satılık!

    Xinzhiyuan, AI WORLD 2018 konferansını 20 Eylül'de Pekin'deki Ulusal Kongre Merkezi'nde gerçekleştirecek ve makine öğrenimi vaftiz babası, CMU profesörü Tom Mitchell, Mikes Tekmark, Zhou Zhihua, Tao Dacheng, Chen Yiran ve diğer AI liderlerini makine zekasına dikkat etmeye davet edecek. Ve insan kaderi.

    Konferans resmi web sitesi:

    Şu andan 19 Ağustos'a kadar Xinzhiyuan, küresel yapay zeka liderleriyle iletişim kurmak ve küresel yapay zeka endüstrisinin sıçrama gelişimine tanık olmak için sınırlı sayıda erken kayıt bileti satacak.

    • Aktivite hattı bileti satın alma bağlantısı:

    • Aktivite satırı bilet alımı için QR kodu

    Kavun yiyen insanlar Geely'nin Proton'u edinmesini nasıl anlıyor?
    önceki
    Sert bir adamın görünüşü bir erkeğin kalbini ısıtır: 2018 ABD Odyssey'nin başkaları tarafından yapılan ilk testi
    Sonraki
    Belediye Sağlık ve Aile Planlaması Bürosunun Parti Grubu Teorik Öğrenim Merkezi (genişletilmiş) güvenlik bilgisi eğitimi veriyor
    DeepMind yeni modele cevap vermek için görsel sorular yöneltti, CLEVR doğruluk oranı% 98,8'e ulaştı
    Otelden çıkar çıkmaz ıslanıyorsun, Tayland'a böyle gitmek ister misin?
    86 Satmayı bırak, iyi bilmeden: eski gitti, yeni gelecek
    "Açık Kaynak" neden başarısız oldu: fakirlerin gittikçe daha fakir olmasını sağlayın ve zenginler zenginleşiyor!
    Fransız şarabıyla karşılaştığımda haysiyetsiz bir alkolik olduğumu itiraf ediyorum!
    Evlilikten boşanmaya sadece 3 dakika var! Tarihin en kısa evlilikleri insanları hazırlıksız yakalar
    4008 yarım yılda 20.000 düşecek, Peugeot 5008 oyunu nasıl bozmalı?
    Hanchuan'ın en kapsamlı otobüs güzergah haritası, yedekleme için kaydedin
    Cezalı! İnternet ünlüsü Pato, müşterilerin övgüsünü çekmek için ustaca krep ve meyveler yayan bir başka yeni becerinin kilidini açtı
    Bahar Şenliği Hikayesi Ön Cephe Polislerinin Bahar Şenliği İzleme Günlüğü
    Tandian Qijun / Explorer / CR-V, popüler SUV terminal indirim savaşı mı?
    To Top