0 / 0
Go back to the English version of the documentation
Managing feature groups with assetframe-lib for Python (beta)
Last updated: 12 Tem 2023
Managing feature groups with assetframe-lib for Python (beta)

assetframe-lib dosyasını, Watson Studio defterlerindeki veri varlıkları için özellik grubu bilgilerini oluşturmak, görüntülemek ve düzenlemek için kullanabilirsiniz.

Özellik grupları, veri varlıkınızın sütunlarında, aşağı akış Machine Learning görevlerinde kullanılabilecek ek meta verileri tanımlar. Kullanıcı arabiriminde özellik gruplarının kullanılmasıyla ilgili ek bilgi için Özellik gruplarının yönetilmesi başlıklı konuya bakın.

assetframe-lib ve ibm-watson-studio-lib kitaplıklarının ayarlanması

Python için assetframe-lib kitaplığı önceden kuruludur ve Watson Studio' ta doğrudan bir not defterine aktarılabilir. Ancak bu, ibm-watson-studio-lib kitaplığına dayanır. Aşağıdaki adımlarda her iki kitaplığın nasıl ayarlacağı açıklanmaktadır.

Proje simgesini not defterinize eklemek için:

  1. Not defteri araç çubuğunuzdaki Diğer simgesini ve daha sonra, Proje simgesi ekledüğmesini tıklatın.

    Bir proje simgesi varsa, not defterinize aşağıdaki bilgileri içeren bir hücre eklenir:

    from ibm_watson_studio_lib import access_project_or_space
    wslib = access_project_or_space({"token":"<ProjectToken>"})
    

    <ProjectToken> , proje simgesine ilişkin değerdir.

    Bir ileti belirtecinin var olmadığı bir iletide anlatıldıysa, projenin Erişim Denetimi sayfasına yeniden yönlendirilecek iletteki bağlantıyı tıklatarak proje belirteci yaratabilirsiniz. Bir proje belirteci yaratma hakkına sahip olmanız gerekir.

    Proje simgesi yaratmak için:

    1. Manage (Yönet) etiketinden Access Control (Erişim Denetimi) sayfasını seçin ve Access jets(Erişim simgeleri) altındaki New access token (Yeni erişim simgesi) seçeneğini
    2. Bir ad girin, proje için Düzenleyici rolünü seçin ve bir simge oluşturun.
    3. Defterinize geri dönün, not defteri araç çubuğundaki Diğer simgesini ve daha sonra, Proje simgesi ekledüğmesini tıklatın.
  2. assetframe-lib dosyasını içe aktarın ve yaratılan ibm-watson-studio-lib yönetim ortamıyla başlatın.

    from assetframe_lib import AssetFrame
    AssetFrame._wslib = wslib
    

assetframe-lib işlevleri ve yöntemleri

Assetframe-lib kitaplığı, aşağıdaki şekilde gruplanmış bir işlev ve yöntem kümesini gösterir:

Varlık çerçevesi yaratılması

An asset frame is used to define feature group metadata on an existing data asset or on a pandas DataFrame. Her varlık için tam olarak bir aksam grubunuz olabilir. If you create an asset frame on a pandas DataFrame, you can store the pandas DataFrame along with the feature group metadata as a data asset in your project.

Varlık çerçevenizi yaratmak için aşağıdaki işlevlerden birini kullanabilirsiniz:

  • AssetFrame.from_data_asset(asset_name, create_default_features=False)

    Bu işlev, projenizdeki var olan bir veri varlığını aşağı sararak yeni bir varlık çerçevesi yaratır. Bu varlık için zaten bir özellik grubu varsa (örneğin, kullanıcı arabiriminde yaratılmış), varlık meta verilerinden okunur.

    Varlığın önceden tanımlanmış sütun açıklamaları ya da sütun etiketleri varsa (örneğin, Watson Knowledge Catalog' da), bu bilgiler oluşturulan özellikler için otomatik olarak kullanılabilir.

    Parametreler:

    • asset_name: (Zorunlu) Projenizdeki bir veri varlığının adı.
    • create_default_features: (İsteğe bağlı) Veri varlığında tüm sütunlara ilişkin özellikler oluşturur.
  • AssetFrame.from_pandas(name, dataframe, create_default_features=False)

    Bu işlev, bir pandaı DataFrameiçeren yeni bir varlık çerçevesini oluşturur.

    Parametreler:

    • name: (Zorunlu) Varlık çerçevesinin adı. Bu ad, özellik grubunuzu daha sonraki bir adımda projenizde saklıyorsa, veri varlığının adı olarak kullanılır.

    • dataframe: (Gerekli) Özellik grubu bilgileriyle birlikte saklamak istediğiniz bir pandalar DataFrame .

    • create_default_features: (İsteğe bağlı) Veri çerçevesindeki tüm sütunlar için özellikler oluşturun.

      Bir pandadan DataFramevarlık çerçevesini oluşturma örneği:

      # Create an asset frame from a pandas DataFrame and set
      # the name of the asset frame.
      af = AssetFrame.from_pandas(dataframe=credit_risk_df, name="Credit Risk Training Data")
      

Özellikler yaratılması, alınması ve kaldırılması

Bir özellik, aşağı akış Machine Learning görevleri tarafından kullanılabilecek meta verileri tanımlar. Veri kümenize sütun başına bir özellik oluşturabilirsiniz.

Varlık çerçevenizden kolon yaratmak, kolonları almak ya da kaldırmak için aşağıdaki işlevlerden birini kullanabilirsiniz:

  • add_feature(column_name, role='Input')

    Bu işlev, verili rolle varlık çerçevenize yeni bir özellik ekler.

    Parametreler:

    • column_name: (Gerekli) Bir özellik yaratmak için kolonun adı.

    • role: (İsteğe bağlı) Özelliğin rolü. Varsayılan değer olarak Giriş' dir.

      Geçerli roller şunlardır:

      • Giriş: Bir makine öğrenimi modeli için giriş
      • Hedef: Bir öngörü modelinin hedefi
      • Identifier(Tanıtıcı): Veri küğinizdeki bir satırın tanıtıcısı.
  • create_default_features()

    Bu işlev, veri küğinizdeki tüm sütunlar için özellikler yaratır. Özelliklerin rolleri varsayılan olarak Girişolarak ayarlanacaktır.

  • get_features()

    Bu işlev, varlık çerçevesinin tüm özelliklerini alır.

  • get_feature(column_name)

    Bu işlev, belirtilen kolon adına ilişkin özelliği alır.

    Parametreler:

    • column_name: (Zorunlu) Özelliğin yaratılacağı kolonun dizgi adı.
  • get_features_by_role(role)

    Bu işlev, verili rolle veri çerçevesinin tüm özelliklerini alır.

    Parametreler:

    • role: (Zorunlu) özelliklerin sahip olması gereken rol. Bu, Giriş, Hedef ya da Tanıtıcıolabilir.
  • remove_feature(feature_or_column_name)

    Bu işlev, özelliği varlık çerçevesinden kaldırır.

    Parametreler:

    • feature_or_column_name: (Zorunlu) Özelliğin kaldırılacağı bir özellik ya da sütunun adı.

Veri kümesindeki tüm kolonlar için özellik yaratma ve ek belirtimler için bu kolonlardan birini alma örneği.

# Create features for all columns in the data set and retrieve a column
# for further specifications.
af.create_default_features()
risk_feat = af.get_feature('Risk')

Özellik özniteliklerinin belirtilmesi

Özellikler, aşağı akış Machine Learning görevlerinde kullanılabilecek sütunlarda ek meta veriler belirtir.

Özelliğin tanımlı olduğu kolonu almak için aşağıdaki işlevi kullanabilirsiniz:

  • get_column_name()

    Bu işlev, özelliğin tanımlı olduğu kolon adını alır.

Görev

Rol, bir Machine Learning görevinde özelliğin amaçlanan kullanımını belirtir.

Geçerli roller şunlardır:

  • Input: Bu özellik, bir Machine Learning modeline giriş olarak kullanılabilir.
  • Identifier: Özellik, veri kümesindeki bir satırı benzersiz bir şekilde tanımlar.
  • Target: Özellik, öngörü algoritmasında bir hedef olarak kullanılabilir.

Şu anda, bir özelliğin tam olarak bir rolü olmalıdır.

Rolle çalışmak için aşağıdaki yöntemleri kullanabilirsiniz:

  • set_roles(roles)

    Bu yöntem, özelliğin rollerini ayarlar.

    Parametreler:

    • roles : (Zorunlu) Kullanılacak roller. Tek bir dize olarak ya da bir dizgi dizisi olarak.
  • get_roles()

    Bu yöntem, özelliğe ilişkin tüm rolleri döndürür.


Özelliği alma ve bir rol ayarlama gösteren örnek:
# Set the role of the feature 'Risk' to 'Target' to use it as a target in a prediction model.
risk_feat = af.get_feature('Risk')
risk_feat.set_roles('Target')

Açıklama

Özelliğe ilişkin isteğe bağlı bir açıklama. Varsayılan değer Nonedeğerine ayarlanır.Varlık önceden tanımlanmış sütun açıklamalarına sahipse (örneğin, Watson Knowledge Catalog' da), bu bilgiler özellik için otomatik olarak kullanılabilir.

Açıklamayla çalışmak için aşağıdaki yöntemleri kullanabilirsiniz.

  • set_description(description)

    Bu y " ntem, özelliğin tanmlamanini belirler.

    Parametreler:

    • description: (Gerekli) Tanımı kaldırmak için bir dizgi ya da None girin.
  • get_description()

    Bu yöntem, özelliğin tanımını döndürür.

Olumlu ve olumsuz sonuçlar için adalet bilgileri

Target rolüne sahip bir özellik için olumlu ve uygun olmayan etiketler belirtebilirsiniz.

Olumlu ya da olumsuz etiketleri ayarlamak ve almak için aşağıdaki yöntemleri kullanabilirsiniz.

Olumlu sonuçlar

Olumlu etiketler ayarlamak ve almak için aşağıdaki yöntemleri kullanabilirsiniz:

  • set_favorable_labels(labels)

    Bu yöntem, özelliğe ilişkin uygun etiketleri ayarlar.

    Parametreler:

    • labels: (Gerekli) Olumlu etiketlere sahip bir dizgi ya da dizgiler listesi.
  • get_favorable_labels()

    Bu yöntem, özelliğin olumlu etiketlerini döndürür.

Olumsuz sonuçlar

Uygun olmayan etiketleri ayarlamak ve almak için aşağıdaki yöntemleri kullanabilirsiniz:

  • set_unfavorable_labels(labels)

    Bu yöntem, özellik için uygun olmayan etiketleri ayarlar.

    Parametreler:

    • labels: (Gerekli) Kötü olmayan etiketlere sahip bir dizgi ya da dizgi listesi.
  • get_unfavorable_labels()

    Bu yöntem, özelliğin olumsuz etiketlerini alır.

Olumlu ve uygun olmayan etiketlerin belirlenmesini gösteren örnek:

# Set favorable and unfavorable labels for the target feature 'Risk'.
risk_feat = af.get_feature('Risk')
risk_feat.set_favorable_labels("No Risk")
risk_feat.set_unfavorable_labels("Risk")

İzlenen ve başvuru gruplarına ilişkin adalet bilgileri

Verilerinizdeki bazı sütunlar haksız önyargılara eğilimli olabilir. Machine Learning görevlerinde daha fazla kullanım için izlenen ve başvuru grupları belirtebilirsiniz. They can be specified for features with the role Input.

Tek bir değer ya da sayısal değer aralıklarını, kare parantez içeren bir dizgi olarak ya da bir başlangıç ve bitiş değeri olarak belirtebilirsiniz; örneğin, [0,15].

İzlenen ve başvuru gruplarını ayarlamak ve almak için aşağıdaki yöntemleri kullanabilirsiniz:

  • set_monitored_groups(groups)

    Bu yöntem, özelliğe ilişkin izlenen grupları belirler.

    Parametreler:

    • groups: (Gerekli) İzlenen gruplarla birlikte bir dizgi ya da dizgi listesi.
  • get_monitored_groups()

    Bu yöntem, özelliğe ilişkin izlenen grupları alır.

  • set_reference_groups(groups)

    Bu yöntem, özelliğe ilişkin başvuru gruplarını ayarlar.

    Parametreler:

    • groups: (Gerekli) Başvuru grupları olan bir dizgi ya da dizgiler listesi.
  • get_reference_groups()

    Bu yöntem, özelliğe ilişkin başvuru gruplarını alır.

İzlenen ve başvuru gruplarının ayarlanmasını gösteren örnek:

# Set monitored and reference groups for the features 'Sex' and 'Age'.
sex_feat = af.get_feature("Sex")
sex_feat.set_reference_groups("male")
sex_feat.set_monitored_groups("female")

age_feat = af.get_feature("Age")
age_feat.set_monitored_groups("[0,25]")
age_feat.set_reference_groups("[26,80]")

Değer açıklamaları

Verilerinizdeki sütun değerlerine ilişkin açıklamaları belirtmek için değer tanımlamalarını kullanabilirsiniz.

Açıklamaları ayarlamak ve almak için aşağıdaki yöntemleri kullanabilirsiniz:

  • set_value_descriptions(value_descriptions)

    Bu yöntem, özelliğe ilişkin değer tanımlamalarını ayarlar.

    Parametreler:

    • value_descriptions: (Gerekli) Bir Pyton sözlüğü ya da şu biçimdeki sözlükler listesi: {'value': '<value>', 'description': '<description>'}
  • get_value_descriptions()

    Bu yöntem, özelliğe ilişkin tüm değer tanımlamalarını döndürür.

  • get_value_description(value)

    Bu yöntem, verili değer için değer tanımlamasını döndürür.

    Parametreler:

    • value: (Zorunlu) Değer tanımlamasının alınabileceği değer.
  • add_value_description(value, description)

    Bu yöntem, özelliğe ilişkin değer tanımlamaları listesine, verili değer ve açıklamayla bir değer tanımlaması ekler.

    Parametreler:

    • value: (Zorunlu) Değer tanımlamasının dizgi değeri.
    • description: (Gerekli) Değer açıklamasının dizgi açıklaması.
  • remove_value_description(value)

    Bu y "ntem, belirlenen de§erle," nteminin de§er tanmlamalar listesinden kaldrmaniz.

    Parametreler:

    • value: (Zorunlu) Kaldırılacak değer tanımlamasının bir değeri.

Değer tanımlamalarının nasıl ayarlanacak gösterileceğini gösteren örnek:

plan_feat = af.get_feature("InstallmentPlans")
val_descriptions = [
    {'value': 'stores',
     'description': 'customer has additional business installment plan'},
    {'value': 'bank',
     'description': 'customer has additional personal installment plan'},
    {'value': 'none',
     'description': 'customer has no additional installment plan'}
]
plan_feat.set_value_descriptions(val_descriptions)

Yöntem

Bir özelliğin nasıl yaratıldığını (örneğin, bir formül ya da kod parçacığı) açıklamak için bu tarifeyi kullanabilirsiniz. Varsayılan değer Nonedeğerine ayarlanır.

tarifle çalışmak için aşağıdaki yöntemleri kullanabilirsiniz.

  • set_recipe(recipe)

    Bu yöntem, özelliğin tarifini ayarlar.

    Parametreler:

    • recipe: (Gerekli) Tarifi kaldırmak için bir dizgi ya da Hiçbiri.
  • get_recipe()

    Bu yöntem, özelliğin tarifini döndürür.

Etiketler

Aksamınıza ek etiketler ya da bilgi eklemek için etiketleri kullanabilirsiniz. Varlığın önceden tanımlanmış sütun açıklamaları varsa (örneğin, Watson Knowledge Catalog' da), bu bilgiler özellik için otomatik olarak kullanılabilir.

Etiketlerle çalışmak için aşağıdaki yöntemleri kullanabilirsiniz:

  • set_tags(tags)

    Bu yöntem, özelliğin etiketlerini ayarlar.

    Parametreler:

    • tags: (Zorunlu) Tek bir dizgi ya da dizgi dizisi olarak.
  • get_tags()

    Bu yöntem, özelliğin tüm etiketlerini döndürür.

veri önizleniyor

You can preview the data of your data asset or pandas DataFrame with additional information about your features like fairness information.

Veriler, özellik rolleri, açıklamalar ya da tarifler hakkında isteğe bağlı üstbilgi bilgisiyle bir pandalar DataFrame gibi görüntülenir. Adalet bilgileri, uygun ya da olumsuz etiketler, izlenen ve başvuru grupları için renklendirilmesiyle görüntülenir.

Bu sırada, bir veri varlığı için en fazla 100 satır örnek verileri alabilirsiniz.

Verileri önizlemek için aşağıdaki işlevi kullanın:

  • head(num_rows=5, display_options=['role'])

    Bu işlev, bir pandada DataFrameiçindeki veri kümesinin ilk num_rows satırlarını döndürür.

    Parametreler:

    • num_rows : (İsteğe bağlı) Alınalacak satır sayısı.

    • display_options: (İsteğe bağlı) Sütun üstbilgisi, veri küğinizdeki bir sütuna ilişkin ek bilgileri görüntüleyebilir.

      Özellik özniteliklerini görüntülemek için bu seçenekleri kullanın:

      • role: Bu sütuna ilişkin bir özelliğin rolünü görüntüler.
      • description: Bu kolona ilişkin bir özelliğin tanımını görüntüler.
      • recipe: Bu sütuna ilişkin bir özelliğin tarifini görüntüler.

Adalet bilgilerini alma

Varlık çerçevenizdeki tüm özelliklerin adillik bilgilerini Python sözlüğünüz olarak alabilirsiniz. Bu, korunan öznitelikler olarak izlenen ya da başvuru grupları (ya da her ikisi) içeren tüm özellikleri ve olumlu ya da olumsuz etiketleri olan hedef özelliği içerir.

Eşitlik bilgisi olan bir sütunun veri türü sayısalsa, etiketlerin ve grupların değerleri, mümkünse sayısal değerlere dönüştürülür.

Adalet bilgileri doğrudan AutoAI ya da AI Fairness 360içinde kullanılabilir.

Varlık çerçevenizin doğruluk bilgilerini almak için aşağıdaki işlevi kullanabilirsiniz:

  • get_fairness_info(target=None)

    Bu işlev, hedef kolonun uygun ve uygun olmayan etiketleriyle ve izlenen ve başvuru gruplarıyla korunan özniteliklere sahip bir Python sözlüğü döndürür.

    Parametreler:

    • hedef: (İsteğe bağlı) Hedef özellik. If there is only one feature with role Target, it will be used automatically.

      Adalet bilgilerinin nasıl alınacağını gösteren örnek:

      af.get_fairness_info()
      

      Adillik bilgileri gösteren çıktı:

      {
      'favorable_labels': ['No Risk'],
      'unfavorable_labels': ['Risk'],
      'protected_attributes': [
          {'feature': 'Sex',
          'monitored_group': ['female'],
          'reference_group': ['male']},
          {'feature': 'Age',
          'monitored_group': [[0.0, 25]],
          'reference_group': [[26, 80]]
          }]
      }
      

Özellik grubu bilgileri saklanıyor

Özelliklerinizi tam olarak belirttikten ya da güncelledikten sonra, tüm özellik grubu tanımlamasını veri varlıkınızın meta verileri olarak saklayabilirsiniz.

If you created the asset frame from a pandas DataFrame, a new data asset will be created in the project storage with the name of the asset frame.

Özellik grubu bilgilerinizi saklamak için aşağıdaki yöntemi kullanabilirsiniz:

  • to_data_asset(overwrite_data=False)

    Bu yöntem, özellik grubu bilgilerini varlıklara meta veriye kaydeder. Varlık çerçevesi bir pandadan DataFrameoluşturulduysa, yeni bir veri varlığı yaratır.

    Parametreler:

    • overwrite_data: (İsteğe bağlı) Ayrıca, varlık çerçevesinin verileri ile varlık içeriğinin üzerine yazılır. Varsayılan olarak Falsedeğerine ayarlanır.

Daha fazla bilgi

Galeri 'de Özellik deposu verileri oluşturma ve kullanma örnek projesine bakın.

Üst konu: Not defterine veri yüklenmesi ve not defterine erişilmesi

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more