Share via


IMLFeatureProvider 인터페이스

정의

입력 또는 출력 기능을 정의하고 해당 값에 대한 액세스를 허용하는 인터페이스입니다.

[Foundation.Protocol(Name="MLFeatureProvider", WrapperType=typeof(CoreML.MLFeatureProviderWrapper))]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.WatchOS, 4, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.TvOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 13, ObjCRuntime.PlatformArchitecture.Arch64, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public interface IMLFeatureProvider : IDisposable, ObjCRuntime.INativeObject
type IMLFeatureProvider = interface
    interface INativeObject
    interface IDisposable
파생
특성
구현

설명

CoreML은 시스템 네이티브 데이터를 직접 읽고 쓰지 않습니다. 대신 이 클래스를 사용하여 문자열을 개체의 입력 및 출력 값에 MLModel 매핑합니다.

다음 예제에서는 3개의 입력 변수를 제공하는 T:Monotouch.CoreML.IMLFeatureProvider 를 보여 double줍니다.

public class MarsHabitatPricerInput : NSObject, IMLFeatureProvider
{
	public double SolarPanels { get; set; }
	public double Greenhouses { get; set; }
	public double Size { get; set; }

	public NSSet<NSString> FeatureNames => new NSSet<NSString>(new NSString("solarPanels"), new NSString("greenhouses"), new NSString("size"));

	public MLFeatureValue GetFeatureValue(string featureName)
	{
		switch (featureName)
		{
			case "solarPanels":
				return MLFeatureValue.Create(SolarPanels);
			case "greenhouses":
				return MLFeatureValue.Create(Greenhouses);
			case "size":
				return MLFeatureValue.Create(Size);
			default:
				return MLFeatureValue.Create(0);
		}
	}
}

속성

FeatureNames

에 정의된 기능의 이름입니다 MLModel.

Handle

관리되지 않는 개체 표현에 대한 핸들(포인터)입니다.

(다음에서 상속됨 INativeObject)

메서드

GetFeatureValue(String)

의 값을 검색합니다.

적용 대상