ML example bad

This commit is contained in:
Mikhalkovich Stanislav 2023-01-03 12:47:46 +03:00
parent 88c9ac464a
commit 7f73d91024
43 changed files with 55882 additions and 0 deletions

Binary file not shown.

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -0,0 +1,686 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.ML.CpuMath</name>
</assembly>
<members>
<member name="T:Microsoft.ML.Internal.CpuMath.AlignedArray">
<summary>
This implements a logical array of floats that is automatically aligned for SSE/AVX operations.
To pin and force alignment, call the GetPin method, typically wrapped in a using (since it
returns a Pin struct that is IDisposable). From the pin, you can get the IntPtr to pass to
native code.
The ctor takes an alignment value, which must be a power of two at least sizeof(float).
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.AlignedArray.#ctor(System.Int32,System.Int32)">
<summary>
Allocate an aligned vector with the given alignment (in bytes).
The alignment must be a power of two and at least sizeof(Float).
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.CpuAlignedVector">
<summary>
This implements a logical array of Floats that is automatically aligned for SSE/AVX operations.
This is a thin wrapper around the AlignedArray type implemented in C++. This simply couples
the AlignedArray with a logical size, which does not include padding, while the AlignedArray
size does include padding.
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.ValueCount">
<summary>
The value count.
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.VectorSize">
<summary>
The logical size of the vector.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.#ctor(System.Int32,System.Int32)">
<summary>
Allocate an aligned vector with the given alignment (in bytes).
The alignment must be a power of two and at least sizeof(Float).
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.Items">
<summary>
The physical AligenedArray items.
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.CbAlign">
<summary>
The alignment.
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.Item(System.Int32)">
<summary>
Set and get the value of the vector at the given index.
</summary>
<param name="index">The index</param>
<returns>The value at the given index</returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.GetValue(System.Int32)">
<summary>
Get the value of the vector at the given index.
</summary>
<param name="i">The index</param>
<returns>The value at the given index</returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.Randomize(System.Func{System.Single})">
<summary>
Assign randomized values to the vector elements via the input function.
</summary>
<param name="rand">The input rand om function that takes no arguments and returns a float value</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.Zero">
<summary>
Assign zeros to the vector elements.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.CopyTo(System.Single[],System.Int32@)">
<summary>
Copy the values into dst, starting at slot ivDst and advancing ivDst.
</summary>
<param name="dst">The destination array</param>
<param name="ivDst">The starting index in the destination array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.CopyTo(System.Int32,System.Single[],System.Int32,System.Int32)">
<summary>
Copy the values from this vector starting at slot ivSrc into dst, starting at slot ivDst.
The number of values that are copied is determined by count.
</summary>
<param name="ivSrc">The staring index in this vector</param>
<param name="dst">The destination array</param>
<param name="ivDst">The starting index in the destination array</param>
<param name="count">The number of elements to be copied</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.CopyFrom(System.Single[],System.Int32@)">
<summary>
Copy the values from src, starting at slot index and advancing index, into this vector.
</summary>
<param name="src">The source array</param>
<param name="index">The starting index in the source array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.CopyFrom(System.Int32,System.Single[],System.Int32,System.Int32)">
<summary>
Copy the values from src, starting at slot index and advancing index, into this vector, starting at slot ivDst.
The number of values that are copied is determined by count.
</summary>
<param name="ivDst">The staring index in this vector</param>
<param name="src">The source array</param>
<param name="ivSrc">The starting index in the source array</param>
<param name="count">The number of elements to be copied</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.CopyFrom(Microsoft.ML.Internal.CpuMath.CpuAlignedVector)">
<summary>
Copy the values of src vector into this vector. The src vector must have the same size as this vector.
</summary>
<param name="src">The source vector</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedVector.GetEnumerator">
<summary>
Get the underlying AlignedArray as IEnumerator&lt;Float&gt;.
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase">
<summary>
This implements a logical matrix of Floats that is automatically aligned for SSE/AVX operations.
The ctor takes an alignment value, which must be a power of two at least sizeof(Float).
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.ValueCount">
<summary>
The logical number values in the matrix
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.RowCount">
<summary>
The logical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.ColCount">
<summary>
The logical number of columns
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.RowCountPhy">
<summary>
The physical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.ColCountPhy">
<summary>
The physical number of columns
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.#ctor(System.Int32,System.Int32,System.Int32)">
<summary>
Allocate an aligned matrix with the given alignment (in bytes).
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.Randomize(System.Func{System.Single})">
<summary>
Assign randomized values to the matrix elements via the input function.
</summary>
<param name="rand">The input rand om function that takes no arguments and returns a float value</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.Zero">
<summary>
Assign zeros to the matrix elements.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase.CopyFrom(Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixBase)">
<summary>
Copy the values of src matrix into this matrix. The src matrix must have the same physical and logical size as this matrix.
</summary>
<param name="src">The source matrix</param>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase">
<summary>
This implements a logical row-major matrix of Floats that is automatically aligned for SSE/AVX operations.
The ctor takes an alignment value, which must be a power of two at least sizeof(Float).
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase.RowCount">
<summary>
The logical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase.ColCount">
<summary>
The logical number of columns
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase.RowCountPhy">
<summary>
The physical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase.ColCountPhy">
<summary>
The physical number of columns
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase.CopyTo(System.Single[],System.Int32@)">
<summary>
Copy the values into dst, starting at slot ivDst and advancing ivDst.
</summary>
<param name="dst">The destination array</param>
<param name="ivDst">The starting index in the destination array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase.CopyFrom(System.Single[],System.Int32@)">
<summary>
Copy the values from src, starting at slot ivSrc and advancing ivSrc.
</summary>
<param name="src">The source array</param>
<param name="ivSrc">The starting index in the source array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRowBase.GetEnumerator">
<summary>
Get the underlying AlignedArray as IEnumerator&lt;Float&gt;.
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRow">
<summary>
This implements a row-major matrix of Floats that is automatically aligned for SSE/AVX operations.
The ctor takes an alignment value, which must be a power of two at least sizeof(Float).
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRow.RowCount">
<summary>
The logical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRow.ColCount">
<summary>
The logical number of columns
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRow.RowCountPhy">
<summary>
The physical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRow.ColCountPhy">
<summary>
The physical number of columns
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRow.CopyTo(System.Int32,System.Single[],System.Int32@)">
<summary>
Copy the values from this matrix, starting from the row into dst, starting at slot ivDst and advancing ivDst.
</summary>
<param name="row">The starting row in this matrix</param>
<param name="dst">The destination array</param>
<param name="ivDst">The starting index in the destination array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixRow.ZeroItems(System.Int32[])">
<summary>
Assign zeros to the values at the indices
</summary>
<param name="indices">The indices</param>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol">
<summary>
This implements a logical matrix of Floats that is automatically aligned for SSE/AVX operations.
The ctor takes an alignment value, which must be a power of two at least sizeof(Float).
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.#ctor(System.Int32,System.Int32,System.Int32)">
<summary>
Allocate an aligned matrix with the given alignment (in bytes).
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.RowCount">
<summary>
The logical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.ColCount">
<summary>
The logical number of columns
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.RowCountPhy">
<summary>
The physical number of rows
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.ColCountPhy">
<summary>
The physical number of columns
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.CopyTo(System.Single[],System.Int32@)">
<summary>
Copy the values into dst, starting at slot ivDst and advancing ivDst.
</summary>
<param name="dst">The destination array</param>
<param name="ivDst">The starting index in the destination array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.CopyTo(System.Int32,System.Single[],System.Int32@)">
<summary>
Copy the values from this matrix, starting from the row into dst, starting at slot ivDst and advancing ivDst.
</summary>
<param name="row">The starting row in this matrix</param>
<param name="dst">The destination array</param>
<param name="ivDst">The starting index in the destination array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.CopyFrom(System.Single[],System.Int32@)">
<summary>
Copy the values from src, starting at slot ivSrc and advancing ivSrc.
</summary>
<param name="src">The source array</param>
<param name="ivSrc">The starting index in the source array</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.ZeroItems(System.Int32[])">
<summary>
Assign zeros to the values at the indices
</summary>
<param name="indices">The indices</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAlignedMatrixCol.GetEnumerator">
<summary>
Get the underlying AlignedArray as IEnumerator&lt;Float&gt;.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAligenedMathUtils`1.AssertCompatible(Microsoft.ML.Internal.CpuMath.ICpuFullMatrix)">
<summary>
Assert the compatibility of the underlying AlignedArray for the input matrix in terms of alignment amount.
</summary>
<param name="values">The input matrix</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAligenedMathUtils`1.AssertCompatible(Microsoft.ML.Internal.CpuMath.ICpuVector)">
<summary>
Assert the compatibility of the underlying AlignedArray for the input vector in terms of alignment amount.
</summary>
<param name="values">The input vector</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAligenedMathUtils`1.AssertCompatible(Microsoft.ML.Internal.CpuMath.ICpuFullMatrix,Microsoft.ML.Internal.CpuMath.ICpuVector,Microsoft.ML.Internal.CpuMath.ICpuVector)">
<summary>
Asserts the following:
1. The compatibility of the underlying AlignedArray for mat in terms of alignment amount.
2. The compatibility of the underlying AlignedArray for src in terms of alignment amount.
3. The compatibility of the underlying AlignedArray for dst in terms of alignment amount.
4. The compatibility of the matrix-vector multiplication mat * src = dst.
</summary>
<param name="mat"></param>
<param name="src"></param>
<param name="dst"></param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAligenedMathUtils`1.MatTimesSrc(Microsoft.ML.Internal.CpuMath.ICpuFullMatrix,Microsoft.ML.Internal.CpuMath.ICpuVector,Microsoft.ML.Internal.CpuMath.ICpuVector)">
<summary>
Matrix multiplication:
dst = mat * src
</summary>
<param name="mat">The multiplier matrix</param>
<param name="src">The source vector</param>
<param name="dst">The destination vector</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuAligenedMathUtils`1.MatTranTimesSrc(Microsoft.ML.Internal.CpuMath.ICpuFullMatrix,Microsoft.ML.Internal.CpuMath.ICpuVector,Microsoft.ML.Internal.CpuMath.ICpuVector)">
<summary>
Matrix transpose multiplication:
dst = mat' * src
</summary>
<param name="mat">The multiplier matrix</param>
<param name="src">The source vector</param>
<param name="dst">The destination vector</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.GeneralUtils.CbitLowZero(System.UInt32)">
<summary>
Count the number of zero bits in the lonest string of zero's from the lowest significant bit of the input integer.
</summary>
<param name="u">The input integer</param>
<returns></returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuMathUtils.Compat(Microsoft.ML.Internal.CpuMath.AlignedArray)">
<summary>
if <paramref name="a"/>'s alignment is suitable to SSE instructions. Returns <see langword="true"/>
if <paramref name="a"/>'s alignment is ok and <see langword="false"/> otherwise.
</summary>
<param name="a">The vector being checked.</param>
<returns>Whether <paramref name="a"/> is aligned well.</returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.CpuMathUtils.MatrixTimesSource(System.Boolean,Microsoft.ML.Internal.CpuMath.AlignedArray,Microsoft.ML.Internal.CpuMath.AlignedArray,Microsoft.ML.Internal.CpuMath.AlignedArray,System.Int32)">
<summary>
Compute the product of matrix <paramref name="mat"/> (the matrix is flattened because its type is <see cref="T:Microsoft.ML.Internal.CpuMath.AlignedArray"/> instead of a matrix)
and a vector <paramref name="src"/>.
</summary>
<param name="tran">Whether to transpose <paramref name="mat"/> before doing any computation.</param>
<param name="mat">If <paramref name="tran"/> is <see langword="false"/>, <paramref name="mat"/> is a m-by-n matrix, and the value at the i-th row and the j-th column is indexed by i * n + j in <paramref name="mat"/>.
If <paramref name="tran"/> is <see langword="true"/>, <paramref name="mat"/> would be viewed a n-by-m matrix, and the value at the i-th row and the j-th column in the transposed matrix is indexed by j * m + i in the
original <paramref name="mat"/>.</param>
<param name="src">A n-by-1 matrix, which is also a vector.</param>
<param name="dst">A m-by-1 matrix, which is also a vector.</param>
<param name="crun">The truncation level of <paramref name="dst"/>. For example, if <paramref name="crun"/> is 2, <paramref name="dst"/>
will be considered as a 2-by-1 matrix and therefore elements after its 2nd element will be ignored. If no truncation should happen,
set <paramref name="crun"/> to the length of <paramref name="dst"/>.</param>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ICpuBuffer`1.Randomize(System.Func{`0})">
<summary>
Assign random values using the given random function.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ICpuBuffer`1.Zero">
<summary>
Set all values to zero.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ICpuBuffer`1.CopyTo(`0[],System.Int32@)">
<summary>
Copy the values into dst, starting at slot ivDst and advancing ivDst.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ICpuBuffer`1.CopyFrom(`0[],System.Int32@)">
<summary>
Copy values from the given src array into this buffer, starting at the given index in src,
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.ICpuVector">
<summary>
A logical math vector.
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.ICpuVector.VectorSize">
<summary>
The vector size
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ICpuVector.GetValue(System.Int32)">
<summary>
Get the i'th component of the vector.
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.ICpuMatrix.RowCount">
<summary>
The row count
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.ICpuMatrix.ColCount">
<summary>
the column count
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.ICpuFullMatrix">
<summary>
A 2-dimensional matrix.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ICpuFullMatrix.CopyTo(System.Int32,System.Single[],System.Int32@)">
<summary>
Copy the values for the given row into dst, starting at slot ivDst.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ICpuFullMatrix.ZeroItems(System.Int32[])">
<summary>
Zero out the items with the given indices.
The indices contain the logical indices to the vectorized representation of the matrix,
which can be different depending on whether the matrix is row-major or column-major.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.IntUtils.Add(System.UInt64@,System.UInt64@,System.UInt64)">
<summary>
Add src to the 128 bits contained in dst. Ignores overflow, that is, the addition is done modulo 2^128.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.IntUtils.Add(System.UInt64@,System.UInt64@,System.UInt64,System.UInt64)">
<summary>
Add src to dst. Ignores overflow, that is, the addition is done modulo 2^128.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.IntUtils.Sub(System.UInt64@,System.UInt64@,System.UInt64)">
<summary>
Subtract src from the 128 bits contained in dst. Ignores overflow, that is, the subtraction is
done modulo 2^128.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.IntUtils.Sub(System.UInt64@,System.UInt64@,System.UInt64,System.UInt64)">
<summary>
Subtract src from dst. Ignores overflow, that is, the subtraction is done modulo 2^128.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.IntUtils.LessThan(System.UInt64,System.UInt64,System.UInt64,System.UInt64)">
<summary>
Return true if a is less than b.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.IntUtils.Mul64(System.UInt64,System.UInt64,System.UInt64@)">
<summary>
Multiple the two 64-bit values to produce 128 bit result.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.IntUtils.CbitHighZero(System.UInt64)">
<summary>
Return the number of zero bits on the high end.
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.ProbabilityFunctions">
<summary>
Probability Functions.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ProbabilityFunctions.Erfc(System.Double)">
<summary>
The approximate complimentary error function (i.e., 1-erf).
</summary>
<param name="x">The input parameter, of infinite range.</param>
<returns>Evaluation of the function</returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ProbabilityFunctions.Erf(System.Double)">
<summary>
The approximate error function.
</summary>
<param name="x">The input parameter, of infinite range.</param>
<returns>Evaluation of the function</returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ProbabilityFunctions.Erfinv(System.Double)">
<summary>
The inverse error function.
</summary>
<param name="x">Parameter in the range 1 to -1.</param>
<returns>Evaluation of the function.</returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.ProbabilityFunctions.Probit(System.Double)">
<summary>
The probit function. This has many applications, the most familiar being perhaps
that this is the point "x" at which the standard normal CDF evaluates to the indicated
p value. It is used in establishing confidence intervals.
</summary>
<param name="p">The input p value, so in the range 0 to 1.</param>
<returns>One interpretation is, the value at which the standard normal CDF evaluates to p.</returns>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.Core.IExceptionContext">
<summary>
Interface for "processing" exceptions before they are thrown. This can
be used to add context to the exception, wrap the exception in another one,
totally replace the exception, etc. It is not legal to return null from
Process (unless null was passed in, which really shouldn't happen).
</summary>
</member>
<member name="P:Microsoft.ML.Internal.CpuMath.Core.IExceptionContext.ContextDescription">
<summary>
A string describing the context itself.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.Process``1(``0,Microsoft.ML.Internal.CpuMath.Core.IExceptionContext)">
<summary>
Does standard processing of an exception (typically called after construction
but before it is thrown).
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.Mark``1(``0)">
<summary>
Mark the exception by setting <see cref="F:Microsoft.ML.Internal.CpuMath.Core.Contracts.IsMarkedKey"/> in the exception
<see cref="P:System.Exception.Data"/> to 1.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.IsMarked(System.Exception)">
<summary>
Indicates whether the exception was "marked" the Contracts code.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.MarkSensitive``1(``0,Microsoft.ML.Internal.CpuMath.Core.MessageSensitivity)">
<summary>
Exceptions whose message communicates potentially sensitive information should be
marked using this method, before they are thrown. Note that if the exception already
had this flag set, the message will be flagged with the bitwise or of the existing
flag, alongside the passed in sensitivity.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.Sensitivity(System.Exception)">
<summary>
This is a convenience method to get the sensitivity of an exception,
as encoded with <see cref="F:Microsoft.ML.Internal.CpuMath.Core.Contracts.SensitivityKey"/>. If there is no key, then
the message is assumed to be of unknown sensitivity, i.e., it is assumed
that it might contain literally anything.
</summary>
<param name="ex">The exception to query</param>
<returns>The value encoded at the <see cref="F:Microsoft.ML.Internal.CpuMath.Core.Contracts.SensitivityKey"/>, if it is
a <see cref="T:Microsoft.ML.Internal.CpuMath.Core.MessageSensitivity"/> value. If neither of these conditions
hold then <see cref="F:Microsoft.ML.Internal.CpuMath.Core.MessageSensitivity.Unknown"/> is returned.</returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.SetAssertHandler(System.Action{System.String,Microsoft.ML.Internal.CpuMath.Core.IExceptionContext})">
<summary>
Sets the assert handler to the given function, returning the previous handler.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.Except">
<summary>
Default exception type (currently InvalidOperationException)
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptUserArg(System.String)">
<summary>
For signaling bad user input.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptParam(System.String)">
<summary>
For signaling bad function parameters.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptValue(System.String)">
<summary>
For signaling null function parameters.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptEmpty(System.String)">
<summary>
For signaling null or empty function parameters (strings, arrays, collections, etc).
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptWhiteSpace(System.String)">
<summary>
For signaling null, empty or white-space function parameters (strings, arrays, collections, etc).
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptDecode">
<summary>
For signaling errors in decoding information, whether while reading from a file,
parsing user input, etc.
</summary>
<returns></returns>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptIO">
<summary>
For signaling IO failures.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptNotImpl">
<summary>
For signaling functionality that is not YET implemented.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptNotSupp">
<summary>
For signaling functionality that is not implemented by design.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.ExceptSchemaMismatch(System.String,System.String,System.String)">
<summary>
For signaling schema validation issues.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.CheckUserArg(System.Boolean,System.String)">
<summary>
CheckUserArg / ExceptUserArg should be used when the validation of user-provided arguments failed.
Typically, this is shortly after the arguments are parsed using CmdParser.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.CheckValueOrNull``1(``0)">
<summary>
This documents that the parameter can legally be null.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.CheckValueOrNull``1(Microsoft.ML.Internal.CpuMath.Core.IExceptionContext,``0)">
<summary>
This documents that the parameter can legally be null.
</summary>
</member>
<member name="M:Microsoft.ML.Internal.CpuMath.Core.Contracts.AssertValueOrNull``1(``0)">
<summary>
This documents that the parameter can legally be null.
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.Core.BestFriendAttribute">
<summary>
Intended to be applied to types and members with internal scope to indicate that friend access of this
internal item is OK from another assembly. This restriction applies only to assemblies that declare the
<see cref="T:Microsoft.ML.Internal.CpuMath.Core.WantsToBeBestFriendsAttribute"/> assembly level attribute. Note that this attribute is not
transferable: an internal member with this attribute does not somehow make a containing internal type
accessible. Conversely, neither does marking an internal type make any unmarked internal members accessible.
</summary>
</member>
<member name="T:Microsoft.ML.Internal.CpuMath.Core.WantsToBeBestFriendsAttribute">
<summary>
This is an assembly level attribute to signal that friend accesses on this assembly should be checked
for usage of <see cref="T:Microsoft.ML.Internal.CpuMath.Core.BestFriendAttribute"/>. If this attribute is missing, normal access rules for
friends should apply.
</summary>
</member>
</members>
</doc>

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -0,0 +1,383 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.ML.KMeansClustering</name>
</assembly>
<members>
<member name="T:Microsoft.ML.KMeansClusteringExtensions">
<summary>
Collection of extension methods for the <see cref="T:Microsoft.ML.ClusteringCatalog.ClusteringTrainers"/> to create
instances of KMeans trainers.
</summary>
</member>
<member name="M:Microsoft.ML.KMeansClusteringExtensions.KMeans(Microsoft.ML.ClusteringCatalog.ClusteringTrainers,System.String,System.String,System.Int32)">
<summary>
Train a KMeans++ clustering algorithm using <see cref="T:Microsoft.ML.Trainers.KMeansTrainer"/>.
</summary>
<param name="catalog">The clustering catalog trainer object.</param>
<param name="featureColumnName">The name of the feature column.</param>
<param name="exampleWeightColumnName">The name of the example weight column (optional).</param>
<param name="numberOfClusters">The number of clusters to use for KMeans.</param>
<example>
<format type="text/markdown">
<![CDATA[
[!code-csharp[KMeans](~/../docs/samples/docs/samples/Microsoft.ML.Samples/Dynamic/Trainers/Clustering/KMeans.cs)]
]]></format>
</example>
</member>
<member name="M:Microsoft.ML.KMeansClusteringExtensions.KMeans(Microsoft.ML.ClusteringCatalog.ClusteringTrainers,Microsoft.ML.Trainers.KMeansTrainer.Options)">
<summary>
Train a KMeans++ clustering algorithm using <see cref="T:Microsoft.ML.Trainers.KMeansTrainer"/>.
</summary>
<param name="catalog">The clustering catalog trainer object.</param>
<param name="options">Algorithm advanced options.</param>
<example>
<format type="text/markdown">
<![CDATA[
[!code-csharp[KMeans](~/../docs/samples/docs/samples/Microsoft.ML.Samples/Dynamic/Trainers/Clustering/KMeansWithOptions.cs)]
]]></format>
</example>
</member>
<member name="T:Microsoft.ML.Trainers.KMeansModelParameters">
<example>
<format type="text/markdown">
<![CDATA[
[!code-csharp[KMeans](~/../docs/samples/docs/samples/Microsoft.ML.Samples/Dynamic/Trainers/Clustering/KMeans.cs)]
]]></format>
</example>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansModelParameters.GetVersionInfo">
<summary>
Version information to be saved in binary format
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansModelParameters.#ctor(Microsoft.ML.Runtime.IHostEnvironment,System.Int32,Microsoft.ML.Data.VBuffer{System.Single}[],System.Boolean)">
<summary>
Initialize predictor with a trained model.
</summary>
<param name="env">The host environment</param>
<param name="k">Number of centroids</param>
<param name="centroids">Coordinates of the centroids</param>
<param name="copyIn">If true then the <paramref name="centroids"/> vectors will be subject to
a deep copy, if false then this constructor will take ownership of the passed in centroid vectors.
If false then the caller must take care to not use or modify the input vectors once this object
is constructed, and should probably remove all references.</param>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansModelParameters.#ctor(Microsoft.ML.Runtime.IHostEnvironment,Microsoft.ML.ModelLoadContext)">
<summary>
Initialize predictor from a binary file.
</summary>
<param name="ctx">The load context</param>
<param name="env">The host environment</param>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansModelParameters.SaveCore(Microsoft.ML.ModelSaveContext)">
<summary>
Save the predictor in binary format.
</summary>
<param name="ctx">The context to save to</param>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansModelParameters.Create(Microsoft.ML.Runtime.IHostEnvironment,Microsoft.ML.ModelLoadContext)">
<summary>
This method is called by reflection to instantiate a predictor.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansModelParameters.InitPredictor">
<summary>
Initialize internal parameters: L2 norms of the _centroids.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansModelParameters.GetClusterCentroids(Microsoft.ML.Data.VBuffer{System.Single}[]@,System.Int32@)">
<summary>
Copies the centroids to a set of provided buffers.
</summary>
<param name="centroids">The buffer to which to copy. Will be extended to
an appropriate length, if necessary.</param>
<param name="k">The number of clusters, corresponding to the logical size of
<paramref name="centroids"/>.</param>
</member>
<member name="T:Microsoft.ML.Trainers.KMeansTrainer">
<summary>
The <see cref="T:Microsoft.ML.IEstimator`1"/> for training a KMeans clusterer
</summary>
<remarks>
<format type="text/markdown"><![CDATA[
To create this trainer, use [KMeans](xref:Microsoft.ML.KMeansClusteringExtensions.KMeans(Microsoft.ML.ClusteringCatalog.ClusteringTrainers,System.String,System.String,System.Int32))
or [Kmeans(Options)](xref:Microsoft.ML.KMeansClusteringExtensions.KMeans(Microsoft.ML.ClusteringCatalog.ClusteringTrainers,Microsoft.ML.Trainers.KMeansTrainer.Options)).
[!include[io](~/../docs/samples/docs/api-reference/io-columns-clustering.md)]
### Trainer Characteristics
| | |
| -- | -- |
| Machine learning task | Clustering |
| Is normalization required? | Yes |
| Is caching required? | Yes |
| Required NuGet in addition to Microsoft.ML | None |
| Exportable to ONNX | Yes |
### Training Algorithm Details
[K-means](https://en.wikipedia.org/wiki/K-means_clustering) is a popular clustering algorithm.
With K-means, the data is clustered into a specified number of clusters in order to minimize the within-cluster sum of squared distances.
This implementation follows the [Yinyang K-means method](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/ding15.pdf).
For choosing the initial cluster centeroids, one of three options can be used:
- Random initialization. This might lead to potentially bad approximations of the optimal clustering.
- The K-means++ method. This is an [improved initialization algorithm](https://en.wikipedia.org/wiki/K-means%2b%2b#Improved_initialization_algorithm)
introduced [here](http://ilpubs.stanford.edu:8090/778/1/2006-13.pdf) by Ding et al., that guarantees to find
a solution that is $O(log K)$ competitive to the optimal K-means solution.
- The K-means|| method. This method was introduced [here](https://theory.stanford.edu/~sergei/papers/vldb12-kmpar.pdf) by Bahmani et al., and uses
a parallel method that drastically reduces the number of passes needed to obtain a good initialization.
K-means|| is the default initialization method. The other methods can be specified in the [Options](xref:Microsoft.ML.Trainers.KMeansTrainer.Options)
when creating the trainer using
[KMeansTrainer(Options)](xref:Microsoft.ML.KMeansClusteringExtensions.KMeans(Microsoft.ML.ClusteringCatalog.ClusteringTrainers,Microsoft.ML.Trainers.KMeansTrainer.Options)).
### Scoring Function
The output Score column contains the square of the $L_2$-norm distance (i.e., [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance)) of the given input vector $\textbf{x}\in \mathbb{R}^n$ to each cluster's centroid.
Assume that the centriod of the $c$-th cluster is $\textbf{m}_c \in \mathbb{R}^n$.
The $c$-th value at the Score column would be $d_c = || \textbf{x} - \textbf{m}\_c ||\_2^2$.
The predicted label is the index with the smallest value in a $K$ dimensional vector $[d\_{0}, \dots, d\_{K-1}]$, where $K$ is the number of clusters.
For more information on K-means, and K-means++ see:
[K-means](https://en.wikipedia.org/wiki/K-means_clustering)
[K-means++](https://en.wikipedia.org/wiki/K-means%2b%2b)
Check the See Also section for links to usage examples.
]]>
</format>
</remarks>
<seealso cref="T:Microsoft.ML.Trainers.KMeansTrainer" />
</member>
<member name="F:Microsoft.ML.Trainers.KMeansTrainer.Defaults.NumberOfClusters">
<value>The number of clusters.</value>
</member>
<member name="T:Microsoft.ML.Trainers.KMeansTrainer.Options">
<summary>
Options for the <see cref="T:Microsoft.ML.Trainers.KMeansTrainer"/> as used in [KMeansTrainer(Options)](xref:Microsoft.ML.KMeansClusteringExtensions.KMeans(Microsoft.ML.ClusteringCatalog.ClusteringTrainers,Microsoft.ML.Trainers.KMeansTrainer.Options)).
</summary>
</member>
<member name="F:Microsoft.ML.Trainers.KMeansTrainer.Options.NumberOfClusters">
<summary>
The number of clusters.
</summary>
</member>
<member name="F:Microsoft.ML.Trainers.KMeansTrainer.Options.InitializationAlgorithm">
<summary>
Cluster initialization algorithm.
</summary>
</member>
<member name="F:Microsoft.ML.Trainers.KMeansTrainer.Options.OptimizationTolerance">
<summary>
Tolerance parameter for trainer convergence. Low = slower, more accurate.
</summary>
</member>
<member name="F:Microsoft.ML.Trainers.KMeansTrainer.Options.MaximumNumberOfIterations">
<summary>
Maximum number of iterations.
</summary>
</member>
<member name="F:Microsoft.ML.Trainers.KMeansTrainer.Options.AccelerationMemoryBudgetMb">
<summary>
Memory budget (in MBs) to use for KMeans acceleration.
</summary>
</member>
<member name="F:Microsoft.ML.Trainers.KMeansTrainer.Options.NumberOfThreads">
<summary>
Degree of lock-free parallelism. Defaults to automatic. Determinism not guaranteed.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansTrainer.#ctor(Microsoft.ML.Runtime.IHostEnvironment,Microsoft.ML.Trainers.KMeansTrainer.Options)">
<summary>
Initializes a new instance of <see cref="T:Microsoft.ML.Trainers.KMeansTrainer"/>
</summary>
<param name="env">The <see cref="T:Microsoft.ML.Runtime.IHostEnvironment"/> to use.</param>
<param name="options">The advanced options of the algorithm.</param>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansPlusPlusInit.Initialize(Microsoft.ML.Runtime.IHost,System.Int32,Microsoft.ML.Runtime.IChannel,Microsoft.ML.Trainers.FeatureFloatVectorCursor.Factory,System.Int32,System.Int32,Microsoft.ML.Data.VBuffer{System.Single}[],System.Int64@,System.Int64@,System.Boolean)">
<summary>
Initialize starting centroids via KMeans++ algorithm. This algorithm will always run single-threaded,
regardless of the value of <paramref name="numThreads" />.
</summary>
</member>
<member name="T:Microsoft.ML.Trainers.KMeansAcceleratedRowMap">
<summary>
An instance of this class is used by SharedStates in YinYangTrainer
and KMeansBarBarInitialization. It effectively bounds MaxInstancesToAccelerate and
initializes RowIndexGetter.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansAcceleratedRowMap.BuildParallelIndexLookup(Microsoft.ML.Trainers.FeatureFloatVectorCursor.Factory)">
<summary>
Initializes the parallel index lookup HashArray using a sequential RowCursor. We
preinitialize the HashArray so we can perform lock-free lookup operations during
the primary KMeans pass.
</summary>
</member>
<member name="T:Microsoft.ML.Trainers.KMeansBarBarInitialization.SharedState">
<summary>
Data for optimizing KMeans|| initialization. Very similar to SharedState class
For every instance, there is a space for the best weight and best cluster computed.
In this class, new clusters mean the clusters that were added to the cluster set
in the previous round of KMeans|| and old clusters are the rest of them (the ones
that were added in the rounds before the previous one).
In every round of KMeans||, numSamplesPerRound new clusters are added to the set of clusters.
There are 'numRounds' number of rounds. We compute and store the distance of each new
cluster from every round to all of the previous clusters and use it
to avoid unnecessary computation by applying the triangle inequality.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansBarBarInitialization.SharedState.SetInstanceCluster(System.Int32,System.Single,System.Int32)">
<summary>
When assigning an accelerated row to a cluster, we store away the weight
to its closest cluster, as well as the identity of the new
closest cluster. Note that bestWeight can be negative since it is
corresponding to the weight of a distance which does not have
the L2 norm of the point itself.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansBarBarInitialization.SharedState.SetClusterDistance(System.Int32,Microsoft.ML.Data.VBuffer{System.Single}@,System.Single,System.Int32,Microsoft.ML.Data.VBuffer{System.Single}@,System.Single)">
<summary>
Computes and stores the distance of a new cluster to an old cluster
<paramref name="newClusterFeatures"/> must be between 0..numSamplesPerRound-1.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansBarBarInitialization.SharedState.CanWeightComputationBeAvoided(System.Single,System.Int32,System.Int32)">
<summary>
This function is the key to use triangle inequality. Given an instance x distance to the best
old cluster, cOld, and distance of a new cluster, cNew, to cOld, this function evaluates whether
the distance computation of dist(x,cNew) can be avoided.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansBarBarInitialization.FindBestCluster(Microsoft.ML.Data.VBuffer{System.Single}@,System.Int32,Microsoft.ML.Trainers.KMeansBarBarInitialization.SharedState,System.Int32,System.Int32,Microsoft.ML.Data.VBuffer{System.Single}[],System.Single[],System.Boolean,System.Boolean,System.Single@,System.Int32@)">
<summary>
This function finds the best cluster and the best weight for an instance using
smart triangle inequality to avoid unnecessary weight computations.
Note that <paramref name="needToStoreWeight"/> is used to avoid the storing the new cluster in
final round. After the final round, best cluster information will be ignored.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansBarBarInitialization.ComputeAccelerationMemoryRequirement(System.Int64,System.Int32,System.Int32,System.Boolean,System.Int64@,System.Int64@)">
<summary>
This method computes the memory requirement for _clusterDistances in SharedState (clusterBytes) and
the maximum number of instances whose weight to the closest cluster can be memorized in order to avoid
recomputation later.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansBarBarInitialization.Initialize(Microsoft.ML.Runtime.IHost,System.Int32,Microsoft.ML.Runtime.IChannel,Microsoft.ML.Trainers.FeatureFloatVectorCursor.Factory,System.Int32,System.Int32,Microsoft.ML.Data.VBuffer{System.Single}[],System.Int64,System.Int64@,System.Int64@)">
<summary>
KMeans|| Implementation, see https://theory.stanford.edu/~sergei/papers/vldb12-kmpar.pdf
This algorithm will require:
- (k * overSampleFactor * rounds * dimensionality * 4) bytes for the final sampled clusters.
- (k * overSampleFactor * numThreads * dimensionality * 4) bytes for the per-round sampling.
Uses memory in initializationState to cache distances and avoids unnecessary distance computations
akin to YinYang-KMeans paper.
Everywhere in this function, weight of an instance x from a cluster c means weight(x,c) = dist(x,c)^2-norm(x)^2.
We store weight in most cases to avoid unnecessary computation of norm(x).
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansRandomInit.Initialize(Microsoft.ML.Runtime.IHost,System.Int32,Microsoft.ML.Runtime.IChannel,Microsoft.ML.Trainers.FeatureFloatVectorCursor.Factory,System.Int32,Microsoft.ML.Data.VBuffer{System.Single}[],System.Int64@,System.Int64@)">
<summary>
Initialize starting centroids via reservoir sampling.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.WorkChunkStateBase.Reduce(Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.WorkChunkState[],Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.ReducedWorkChunkState)">
<summary>
Reduces the array of work chunks into this chunk, coalescing the
results from multiple worker threads partitioned over a parallel cursor set and
clearing their values to prepare them for the next iteration.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.ReducedWorkChunkState.UpdateClusters(Microsoft.ML.Data.VBuffer{System.Single}[],System.Single[],System.Single[],System.Single@)">
<summary>
Updates all the passed in variables with the results of the most recent iteration
of cluster assignment. It is assumed that centroids will contain the previous results
of this call.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.SharedState.SetYinYangCluster(System.Int32,Microsoft.ML.Data.VBuffer{System.Single}@,System.Single,System.Int32,System.Single)">
<summary>
When assigning an accelerated row to a cluster, we store away the distance
to its closer and second closed cluster, as well as the identity of the new
closest cluster. This method returns the last known closest cluster.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.SharedState.UpdateYinYangBounds(System.Int32)">
<summary>
Updates the known YinYang bounds for the given row using the centroid position
deltas from the previous iteration.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.SharedState.IsYinYangGloballyBound(System.Int32)">
<summary>
Determines if the triangle distance inequality still applies to the given row,
allowing us to avoid per-cluster distance computation.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.ProcessChunk(Microsoft.ML.Trainers.FeatureFloatVectorCursor,Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.SharedState,Microsoft.ML.Trainers.KMeansLloydsYinYangTrain.WorkChunkStateBase,System.Int32,Microsoft.ML.Data.VBuffer{System.Single}[],System.Single[])">
<summary>
Performs the 'update' step of KMeans. This method is passed a WorkChunkState. In the parallel version
this chunk will be one of _numThreads chunks and the RowCursor will be part of a RowCursorSet. In the
unthreaded version, this chunk will be the final chunk and hold state for the entire data set.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansUtils.ParallelWeightedReservoirSample(Microsoft.ML.Runtime.IHost,System.Int32,System.Int32,Microsoft.ML.Trainers.FeatureFloatVectorCursor.Factory,Microsoft.ML.Trainers.KMeansUtils.WeightFunc,Microsoft.ML.Trainers.KMeansUtils.RowIndexGetter,Microsoft.ML.Data.VBuffer{System.Single}[]@,Microsoft.ML.Internal.Utilities.Heap{Microsoft.ML.Trainers.KMeansUtils.WeightedPoint}[]@)">
<summary>
Performs a multithreaded version of weighted reservoir sampling, returning
an array of numSamples, where each sample has been selected from the
data set with a probability of numSamples/N * weight/(sum(weight)). Buffer
is sized to the number of threads plus one and stores the minheaps needed to
perform the per-thread reservoir samples.
This method assumes that the numSamples is much smaller than the full dataset as
it expects to be able to sample numSamples * numThreads.
This is based on the 'A-Res' algorithm in 'Weighted Random Sampling', 2005; Efraimidis, Spirakis:
https://utopia.duth.gr/~pefraimi/research/data/2007EncOfAlg.pdf
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansUtils.ParallelMapReduce``2(System.Int32,Microsoft.ML.Runtime.IHost,Microsoft.ML.Trainers.FeatureFloatVectorCursor.Factory,Microsoft.ML.Trainers.KMeansUtils.RowIndexGetter,Microsoft.ML.Trainers.KMeansUtils.InitAction{``0},Microsoft.ML.Trainers.KMeansUtils.MapAction{``0},Microsoft.ML.Trainers.KMeansUtils.ReduceAction{``0,``1},``0[]@,``1@)">
<summary>
Takes a data cursor and perform an in-memory parallel aggregation operation on it. This
helper wraps some of the behavior common to parallel operations over a <see cref="T:Microsoft.ML.DataViewRowCursor"/> set,
including building the set, creating separate Random instances, and <see cref="T:Microsoft.ML.DataViewRowCursor"/> disposal.
</summary>
<typeparam name="TPartitionState">The type that each parallel cursor will be expected to aggregate to.</typeparam>
<typeparam name="TGlobalState">The type of the final output from combining each per-thread instance of TInterAgg.</typeparam>
<param name="numThreads"></param>
<param name="baseHost"></param>
<param name="factory"></param>
<param name="rowIndexGetter"></param>
<param name="initChunk">Initializes an instance of TInterAgg, or prepares/clears it if it is already allocated.</param>
<param name="mapper">Invoked for every row, should update TInterAgg using row cursor data.</param>
<param name="reducer">Invoked after all row cursors have completed, combines the entire array of TInterAgg instances into a final TAgg result.</param>
<param name="buffer">A reusable buffer array of TInterAgg.</param>
<param name="result">A reusable reference to the final result.</param>
<returns></returns>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansUtils.FindBestCluster(Microsoft.ML.Data.VBuffer{System.Single}@,Microsoft.ML.Data.VBuffer{System.Single}[],System.Single[],System.Int32,System.Boolean,System.Single@,System.Int32@,System.Single@,System.Int32@)">
<summary>
Given a point and a set of centroids this method will determine the closest centroid
using L2 distance. It will return a value equivalent to that distance, the index of the
closest cluster, and a value equivalent to the distance to the second-nearest cluster.
</summary>
<param name="features"></param>
<param name="centroids"></param>
<param name="centroidL2s">The L2 norms of the centroids. Used for efficiency and expected to be computed up front.</param>
<param name="centroidCount">The number of centroids. Must be less than or equal to the length of the centroid array.</param>
<param name="needRealDistance">Whether to return a real L2 distance, or a value missing the L2 norm of <paramref name="features"/>.</param>
<param name="minDistance">The distance between <paramref name="features"/> and the nearest centroid in <paramref name="centroids" />.</param>
<param name="cluster">The index of the nearest centroid.</param>
<param name="secMinDistance">The second nearest distance, or PosInf if <paramref name="centroids" /> only contains a single point.</param>
<param name="secCluster">The index of the second nearest centroid, or -1 if <paramref name="centroids" /> only contains a single point.</param>
</member>
<member name="M:Microsoft.ML.Trainers.KMeansUtils.VerifyModelConsistency(Microsoft.ML.Data.VBuffer{System.Single}[])">
<summary>
Checks that all coordinates of all centroids are finite, and throws otherwise
</summary>
</member>
</members>
</doc>

Binary file not shown.

View file

@ -0,0 +1,330 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.ML.PCA</name>
</assembly>
<members>
<member name="T:Microsoft.ML.PcaCatalog">
<summary>
Collection of extension methods used by the <see cref="T:Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers"/>,
and <see cref="T:Microsoft.ML.TransformsCatalog"/> catalogs to create instances of Principal Component Analysis (PCA) components.
</summary>
</member>
<member name="M:Microsoft.ML.PcaCatalog.ProjectToPrincipalComponents(Microsoft.ML.TransformsCatalog,System.String,System.String,System.String,System.Int32,System.Int32,System.Boolean,System.Nullable{System.Int32})">
<summary>Initializes a new instance of <see cref="T:Microsoft.ML.Transforms.PrincipalComponentAnalyzer"/>.</summary>
<param name="catalog">The transform's catalog.</param>
<param name="outputColumnName">Name of the column resulting from the transformation of <paramref name="inputColumnName"/>.</param>
<param name="inputColumnName">Name of column to transform. If set to <see langword="null"/>, the value of the <paramref name="outputColumnName"/> will be used as source.</param>
<param name="exampleWeightColumnName">The name of the example weight column (optional).</param>
<param name="rank">The number of principal components.</param>
<param name="overSampling">Oversampling parameter for randomized PrincipalComponentAnalysis training.</param>
<param name="ensureZeroMean">If enabled, data is centered to be zero mean.</param>
<param name="seed">The seed for random number generation.</param>
</member>
<member name="M:Microsoft.ML.PcaCatalog.ProjectToPrincipalComponents(Microsoft.ML.TransformsCatalog,Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions[])">
<summary>Initializes a new instance of <see cref="T:Microsoft.ML.Transforms.PrincipalComponentAnalyzer"/>.</summary>
<param name="catalog">The transform's catalog.</param>
<param name="columns">Input columns to apply PrincipalComponentAnalysis on.</param>
</member>
<member name="M:Microsoft.ML.PcaCatalog.RandomizedPca(Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers,System.String,System.String,System.Int32,System.Int32,System.Boolean,System.Nullable{System.Int32})">
<summary>
Create <see cref="T:Microsoft.ML.Trainers.RandomizedPcaTrainer"/>, which trains an approximate principal component analysis (PCA) model using randomized singular value decomposition (SVD) algorithm.
</summary>
<param name="catalog">The anomaly detection catalog trainer object.</param>
<param name="featureColumnName">The name of the feature column. The column data must be a known-sized vector of <see cref="T:System.Single"/>.</param>
<param name="exampleWeightColumnName">The name of the example weight column (optional). To use the weight column, the column data
must be of type <see cref="T:System.Single"/>.</param>
<param name="rank">The number of components in the PCA.</param>
<param name="oversampling">Oversampling parameter for randomized PCA training.</param>
<param name="ensureZeroMean">If enabled, data is centered to be zero mean.</param>
<param name="seed">The seed for random number generation.</param>
<remarks>
By default the threshold used to determine the label of a data point based on the predicted score is 0.5. Scores range from 0 to 1. A data point with predicted
score higher than 0.5 is considered an outlier. Use <see cref="M:Microsoft.ML.AnomalyDetectionCatalog.ChangeModelThreshold``1(Microsoft.ML.Data.AnomalyPredictionTransformer{``0},System.Single)"/> to change this threshold.
</remarks>
<example>
<format type="text/markdown">
<![CDATA[
[!code-csharp[RPCA](~/../docs/samples/docs/samples/Microsoft.ML.Samples/Dynamic/Trainers/AnomalyDetection/RandomizedPcaSample.cs)]
]]></format>
</example>
</member>
<member name="M:Microsoft.ML.PcaCatalog.RandomizedPca(Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers,Microsoft.ML.Trainers.RandomizedPcaTrainer.Options)">
<summary>
Create <see cref="T:Microsoft.ML.Trainers.RandomizedPcaTrainer"/> with advanced options, which trains an approximate principal component analysis (PCA) model using randomized singular value decomposition (SVD) algorithm.
</summary>
<param name="catalog">The anomaly detection catalog trainer object.</param>
<param name="options">Advanced options to the algorithm.</param>
<remarks>
By default the threshold used to determine the label of a data point based on the predicted score is 0.5. Scores range from 0 to 1. A data point with predicted
score higher than 0.5 is considered an outlier. Use <see cref="M:Microsoft.ML.AnomalyDetectionCatalog.ChangeModelThreshold``1(Microsoft.ML.Data.AnomalyPredictionTransformer{``0},System.Single)"/> to change this threshold.
</remarks>
<example>
<format type="text/markdown">
<![CDATA[
[!code-csharp[RPCA](~/../docs/samples/docs/samples/Microsoft.ML.Samples/Dynamic/Trainers/AnomalyDetection/RandomizedPcaSampleWithOptions.cs)]
]]></format>
</example>
</member>
<member name="T:Microsoft.ML.Trainers.RandomizedPcaTrainer">
<summary>
The <see cref="T:Microsoft.ML.IEstimator`1"/> for training an approximate PCA using Randomized SVD algorithm.
</summary>
<remarks>
<format type="text/markdown"><![CDATA[
To create this trainer, use [RandomizedPca](xref:Microsoft.ML.PcaCatalog.RandomizedPca(Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers,System.String,System.String,System.Int32,System.Int32,System.Boolean,System.Nullable{System.Int32}))
or [RandomizedPca(Options)](xref:Microsoft.ML.PcaCatalog.RandomizedPca(Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers,Microsoft.ML.Trainers.RandomizedPcaTrainer.Options)).
[!include[io](~/../docs/samples/docs/api-reference/io-columns-anomaly-detection.md)]
### Trainer Characteristics
| | |
| -- | -- |
| Machine learning task | Anomaly Detection |
| Is normalization required? | Yes |
| Is caching required? | No |
| Required NuGet in addition to Microsoft.ML | None |
| Exportable to ONNX | No |
### Training Algorithm Details
This trainer uses the top eigenvectors to approximate the subspace containing the normal class.
For each new instance, it computes the norm difference between the raw feature vector and the projected feature on that subspace.
If the error is close to 0, the instance is considered normal (non-anomaly).
More specifically, this trainer trains an approximate PCA using a randomized method for computing the singular value decomposition (SVD) of
the matrix whose rows are the input vectors.
The model generated by this trainer contains three parameters:
- A projection matrix $U$
- The mean vector in the original feature space $m$
- The mean vector in the projected feature space $p$
For an input feature vector $x$, the anomaly score is computed by comparing the $L_2$
norm of the original input vector, and the $L_2$ norm of the projected vector:
$\sqrt{\left(\|x-m\|_2^2 - \|Ux-p\|_2^2\right)\|x-m\|_2^2}$.
The method is described [here](https://web.stanford.edu/group/mmds/slides2010/Martinsson.pdf).
Note that the algorithm can be made into Kernel PCA by applying the <xref:Microsoft.ML.Transforms.ApproximatedKernelTransformer>
to the data before passing it to the trainer.
Check the See Also section for links to usage examples.
]]>
</format>
</remarks>
<seealso cref="M:Microsoft.ML.PcaCatalog.RandomizedPca(Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers,System.String,System.String,System.Int32,System.Int32,System.Boolean,System.Nullable{System.Int32})"/>
<seealso cref="M:Microsoft.ML.PcaCatalog.RandomizedPca(Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers,Microsoft.ML.Trainers.RandomizedPcaTrainer.Options)"/>
<seealso cref="T:Microsoft.ML.Trainers.RandomizedPcaTrainer.Options"/>
</member>
<member name="T:Microsoft.ML.Trainers.RandomizedPcaTrainer.Options">
<summary>
Options for the <see cref="T:Microsoft.ML.Trainers.RandomizedPcaTrainer"/> as used in
[RandomizedPca(Options)](xref:Microsoft.ML.PcaCatalog.RandomizedPca(Microsoft.ML.AnomalyDetectionCatalog.AnomalyDetectionTrainers,Microsoft.ML.Trainers.RandomizedPcaTrainer.Options)).
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.RandomizedPcaTrainer.#ctor(Microsoft.ML.Runtime.IHostEnvironment,System.String,System.String,System.Int32,System.Int32,System.Boolean,System.Nullable{System.Int32})">
<summary>
Initializes a new instance of <see cref="T:Microsoft.ML.Trainers.RandomizedPcaTrainer"/>.
</summary>
<param name="env">The local instance of the <see cref="T:Microsoft.ML.Runtime.IHostEnvironment"/>.</param>
<param name="featureColumnName">The name of the feature column.</param>
<param name="exampleWeightColumnName">The name of the weight column.</param>
<param name="rank">The number of components in the PCA.</param>
<param name="oversampling">Oversampling parameter for randomized PCA training.</param>
<param name="ensureZeroMean">If enabled, data is centered to be zero mean.</param>
<param name="seed">The seed for random number generation.</param>
</member>
<member name="M:Microsoft.ML.Trainers.RandomizedPcaTrainer.PostProcess(System.Single[][],System.Single[],System.Single[],System.Int32,System.Int32)">
<summary>
Modifies <paramref name="y"/> in place so it becomes <paramref name="y"/> * eigenvectors / eigenvalues.
</summary>
</member>
<member name="T:Microsoft.ML.Trainers.PcaModelParameters">
<summary>
Model parameters for <see cref="T:Microsoft.ML.Trainers.RandomizedPcaTrainer"/>.
</summary>
</member>
<member name="M:Microsoft.ML.Trainers.PcaModelParameters.#ctor(Microsoft.ML.Runtime.IHostEnvironment,System.Int32,System.Single[][],Microsoft.ML.Data.VBuffer{System.Single}@)">
<summary>
Instantiate new model parameters from trained model.
</summary>
<param name="env">The host environment.</param>
<param name="rank">The rank of the PCA approximation of the covariance matrix. This is the number of eigenvectors in the model.</param>
<param name="eigenVectors">Array of eigenvectors.</param>
<param name="mean">The mean vector of the training data.</param>
</member>
<member name="M:Microsoft.ML.Trainers.PcaModelParameters.GetEigenVectors(Microsoft.ML.Data.VBuffer{System.Single}[]@,System.Int32@)">
<summary>
Copies the top eigenvectors of the covariance matrix of the training data
into a set of buffers.
</summary>
<param name="vectors">A possibly reusable set of vectors, which will
be expanded as necessary to accommodate the data.</param>
<param name="rank">Set to the rank, which is also the logical length
of <paramref name="vectors"/>.</param>
</member>
<member name="M:Microsoft.ML.Trainers.PcaModelParameters.GetMean(Microsoft.ML.Data.VBuffer{System.Single}@)">
<summary>
Copies the mean vector of the training data.
</summary>
</member>
<member name="T:Microsoft.ML.Transforms.PrincipalComponentAnalysisTransformer">
<summary>
PCA is a dimensionality-reduction transform which computes the projection of the feature vector onto a low-rank subspace.
</summary><remarks>
<a href="https://en.wikipedia.org/wiki/Principal_component_analysis">Principle Component Analysis (PCA)</a> is a dimensionality-reduction algorithm which computes the projection of the feature vector to onto a low-rank subspace.
Its training is done using the technique described in the paper: <a href="https://arxiv.org/pdf/1310.6304v2.pdf">Combining Structured and Unstructured Randomness in Large Scale PCA</a>,
and the paper <a href="https://arxiv.org/pdf/0909.4061v2.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
<para>For more information, see also:</para>
<list type="bullet">
<item><description>
<a href="https://web.stanford.edu/group/mmds/slides2010/Martinsson.pdf">Randomized Methods for Computing the Singular Value Decomposition (SVD) of very large matrices</a>
</description></item>
<item><description>
<a href="https://arxiv.org/abs/0809.2274">A randomized algorithm for principal component analysis</a>
</description></item>
<item><description>
<a href="http://users.cms.caltech.edu/~jtropp/papers/HMT11-Finding-Structure-SIREV.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
</description></item>
</list>
</remarks>
</member>
<member name="T:Microsoft.ML.Transforms.PrincipalComponentAnalyzer">
<summary>
PCA is a dimensionality-reduction transform which computes the projection of the feature vector onto a low-rank subspace.
</summary><remarks>
<a href="https://en.wikipedia.org/wiki/Principal_component_analysis">Principle Component Analysis (PCA)</a> is a dimensionality-reduction algorithm which computes the projection of the feature vector to onto a low-rank subspace.
Its training is done using the technique described in the paper: <a href="https://arxiv.org/pdf/1310.6304v2.pdf">Combining Structured and Unstructured Randomness in Large Scale PCA</a>,
and the paper <a href="https://arxiv.org/pdf/0909.4061v2.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
<para>For more information, see also:</para>
<list type="bullet">
<item><description>
<a href="https://web.stanford.edu/group/mmds/slides2010/Martinsson.pdf">Randomized Methods for Computing the Singular Value Decomposition (SVD) of very large matrices</a>
</description></item>
<item><description>
<a href="https://arxiv.org/abs/0809.2274">A randomized algorithm for principal component analysis</a>
</description></item>
<item><description>
<a href="http://users.cms.caltech.edu/~jtropp/papers/HMT11-Finding-Structure-SIREV.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
</description></item>
</list>
</remarks>
</member>
<member name="T:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions">
<summary>
Describes how the transformer handles one column pair.
</summary>
</member>
<member name="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.Name">
<summary>
Name of the column resulting from the transformation of <see cref="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.InputColumnName"/>.
</summary>
</member>
<member name="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.InputColumnName">
<summary>
Name of column to transform.
</summary>
</member>
<member name="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.WeightColumn">
<summary>
The name of the weight column.
</summary>
</member>
<member name="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.Rank">
<summary>
The number of components in the PCA.
</summary>
</member>
<member name="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.Oversampling">
<summary>
Oversampling parameter for randomized PCA training.
</summary>
</member>
<member name="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.EnsureZeroMean">
<summary>
If enabled, data is centered to be zero mean.
</summary>
</member>
<member name="F:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.Seed">
<summary>
The seed for random number generation.
</summary>
</member>
<member name="M:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions.#ctor(System.String,System.String,System.String,System.Int32,System.Int32,System.Boolean,System.Nullable{System.Int32})">
<summary>
Describes how the transformer handles one column pair.
</summary>
<param name="name">Name of the column resulting from the transformation of <paramref name="inputColumnName"/>.</param>
<param name="inputColumnName">Name of column to transform.
If set to <see langword="null"/>, the value of the <paramref name="name"/> will be used as source.</param>
<param name="weightColumn">The name of the weight column.</param>
<param name="rank">The number of components in the PCA.</param>
<param name="overSampling">Oversampling parameter for randomized PCA training.</param>
<param name="ensureZeroMean">If enabled, data is centered to be zero mean.</param>
<param name="seed">The random seed. If unspecified random state will be instead derived from the <see cref="T:Microsoft.ML.MLContext"/>.</param>
</member>
<member name="M:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.#ctor(Microsoft.ML.Runtime.IHostEnvironment,System.String,System.String,System.String,System.Int32,System.Int32,System.Boolean,System.Nullable{System.Int32})">
<summary>
PCA is a dimensionality-reduction transform which computes the projection of the feature vector onto a low-rank subspace.
</summary><remarks>
<a href="https://en.wikipedia.org/wiki/Principal_component_analysis">Principle Component Analysis (PCA)</a> is a dimensionality-reduction algorithm which computes the projection of the feature vector to onto a low-rank subspace.
Its training is done using the technique described in the paper: <a href="https://arxiv.org/pdf/1310.6304v2.pdf">Combining Structured and Unstructured Randomness in Large Scale PCA</a>,
and the paper <a href="https://arxiv.org/pdf/0909.4061v2.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
<para>For more information, see also:</para>
<list type="bullet">
<item><description>
<a href="https://web.stanford.edu/group/mmds/slides2010/Martinsson.pdf">Randomized Methods for Computing the Singular Value Decomposition (SVD) of very large matrices</a>
</description></item>
<item><description>
<a href="https://arxiv.org/abs/0809.2274">A randomized algorithm for principal component analysis</a>
</description></item>
<item><description>
<a href="http://users.cms.caltech.edu/~jtropp/papers/HMT11-Finding-Structure-SIREV.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
</description></item>
</list>
</remarks>
<param name="env">The environment to use.</param>
<param name="outputColumnName">Name of the column resulting from the transformation of <paramref name="inputColumnName" />.</param>
<param name="inputColumnName">Name of the column to transform.
If set to <see langword="null" />, the value of the <paramref name="outputColumnName" /> will be used as source.</param>
<param name="weightColumn">The name of the weight column.</param>
<param name="rank">The number of components in the PCA.</param>
<param name="overSampling">Oversampling parameter for randomized PCA training.</param>
<param name="ensureZeroMean">If enabled, data is centered to be zero mean.</param>
<param name="seed">The seed for random number generation.</param>
</member>
<member name="M:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.#ctor(Microsoft.ML.Runtime.IHostEnvironment,Microsoft.ML.Transforms.PrincipalComponentAnalyzer.ColumnOptions[])">
<summary>
PCA is a dimensionality-reduction transform which computes the projection of the feature vector onto a low-rank subspace.
</summary><remarks>
<a href="https://en.wikipedia.org/wiki/Principal_component_analysis">Principle Component Analysis (PCA)</a> is a dimensionality-reduction algorithm which computes the projection of the feature vector to onto a low-rank subspace.
Its training is done using the technique described in the paper: <a href="https://arxiv.org/pdf/1310.6304v2.pdf">Combining Structured and Unstructured Randomness in Large Scale PCA</a>,
and the paper <a href="https://arxiv.org/pdf/0909.4061v2.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
<para>For more information, see also:</para>
<list type="bullet">
<item><description>
<a href="https://web.stanford.edu/group/mmds/slides2010/Martinsson.pdf">Randomized Methods for Computing the Singular Value Decomposition (SVD) of very large matrices</a>
</description></item>
<item><description>
<a href="https://arxiv.org/abs/0809.2274">A randomized algorithm for principal component analysis</a>
</description></item>
<item><description>
<a href="http://users.cms.caltech.edu/~jtropp/papers/HMT11-Finding-Structure-SIREV.pdf">Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions</a>
</description></item>
</list>
</remarks>
<param name="env">The environment to use.</param>
<param name="columns">The dataset columns to use, and their specific settings.</param>
</member>
<member name="M:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.Fit(Microsoft.ML.IDataView)">
<summary>
Trains and returns a <see cref="T:Microsoft.ML.Transforms.PrincipalComponentAnalysisTransformer"/>.
</summary>
</member>
<member name="M:Microsoft.ML.Transforms.PrincipalComponentAnalyzer.GetOutputSchema(Microsoft.ML.SchemaShape)">
<summary>
Returns the <see cref="T:Microsoft.ML.SchemaShape"/> of the schema which will be produced by the transformer.
Used for schema propagation and verification in a pipeline.
</summary>
</member>
</members>
</doc>

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -0,0 +1,8 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.ML</name>
</assembly>
<members>
</members>
</doc>

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?><span>
<doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="ArrayPool{T}"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="ArrayPool{T}"></see> class.</summary>
<returns>A new instance of the <see cref="ArrayPool{T}"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="ArrayPool{T}"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="ArrayPool{T}"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="Rent"></see> method on the same <see cref="ArrayPool{T}"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="Rent"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="bufferLength">bufferLength</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="Return"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="Rent"></see> method will not see the content of the previous caller. If <paramref name="bufferLength">bufferLength</paramref> is set to false or if the pool will release the buffer, the array's contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="ArrayPool{T}"></see> instance.</summary>
<returns>A shared <see cref="ArrayPool{T}"></see> instance.</returns>
</member>
</members>
</doc></span>

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -0,0 +1,355 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Memory</name>
</assembly>
<members>
<member name="T:System.Span`1">
<typeparam name="T"></typeparam>
</member>
<member name="M:System.Span`1.#ctor(`0[])">
<param name="array"></param>
</member>
<member name="M:System.Span`1.#ctor(System.Void*,System.Int32)">
<param name="pointer"></param>
<param name="length"></param>
</member>
<member name="M:System.Span`1.#ctor(`0[],System.Int32)">
<param name="array"></param>
<param name="start"></param>
</member>
<member name="M:System.Span`1.#ctor(`0[],System.Int32,System.Int32)">
<param name="array"></param>
<param name="start"></param>
<param name="length"></param>
</member>
<member name="M:System.Span`1.Clear">
</member>
<member name="M:System.Span`1.CopyTo(System.Span{`0})">
<param name="destination"></param>
</member>
<member name="M:System.Span`1.DangerousCreate(System.Object,`0@,System.Int32)">
<param name="obj"></param>
<param name="objectData"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.DangerousGetPinnableReference">
<returns></returns>
</member>
<member name="P:System.Span`1.Empty">
<returns></returns>
</member>
<member name="M:System.Span`1.Equals(System.Object)">
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Fill(`0)">
<param name="value"></param>
</member>
<member name="M:System.Span`1.GetHashCode">
<returns></returns>
</member>
<member name="P:System.Span`1.IsEmpty">
<returns></returns>
</member>
<member name="P:System.Span`1.Item(System.Int32)">
<param name="index"></param>
<returns></returns>
</member>
<member name="P:System.Span`1.Length">
<returns></returns>
</member>
<member name="M:System.Span`1.op_Equality(System.Span{`0},System.Span{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(System.ArraySegment{T})~System.Span{T}">
<param name="arraySegment"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(System.Span{T})~System.ReadOnlySpan{T}">
<param name="span"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(T[])~System.Span{T}">
<param name="array"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Inequality(System.Span{`0},System.Span{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Slice(System.Int32)">
<param name="start"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Slice(System.Int32,System.Int32)">
<param name="start"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.ToArray">
<returns></returns>
</member>
<member name="M:System.Span`1.TryCopyTo(System.Span{`0})">
<param name="destination"></param>
<returns></returns>
</member>
<member name="T:System.SpanExtensions">
</member>
<member name="M:System.SpanExtensions.AsBytes``1(System.ReadOnlySpan{``0})">
<param name="source"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsBytes``1(System.Span{``0})">
<param name="source"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan(System.String)">
<param name="text"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan``1(System.ArraySegment{``0})">
<param name="arraySegment"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan``1(``0[])">
<param name="array"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.CopyTo``1(``0[],System.Span{``0})">
<param name="array"></param>
<param name="destination"></param>
<typeparam name="T"></typeparam>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.Byte)">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.Byte)">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},``0)">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},``0)">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<param name="value2"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<param name="value2"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="values"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="values"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.NonPortableCast``2(System.ReadOnlySpan{``0})">
<param name="source"></param>
<typeparam name="TFrom"></typeparam>
<typeparam name="TTo"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.NonPortableCast``2(System.Span{``0})">
<param name="source"></param>
<typeparam name="TFrom"></typeparam>
<typeparam name="TTo"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="first"></param>
<param name="second"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="first"></param>
<param name="second"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="first"></param>
<param name="second"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="first"></param>
<param name="second"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="T:System.ReadOnlySpan`1">
<typeparam name="T"></typeparam>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[])">
<param name="array"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(System.Void*,System.Int32)">
<param name="pointer"></param>
<param name="length"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32)">
<param name="array"></param>
<param name="start"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32,System.Int32)">
<param name="array"></param>
<param name="start"></param>
<param name="length"></param>
</member>
<member name="M:System.ReadOnlySpan`1.CopyTo(System.Span{`0})">
<param name="destination"></param>
</member>
<member name="M:System.ReadOnlySpan`1.DangerousCreate(System.Object,`0@,System.Int32)">
<param name="obj"></param>
<param name="objectData"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.DangerousGetPinnableReference">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Empty">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Equals(System.Object)">
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.GetHashCode">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.IsEmpty">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Item(System.Int32)">
<param name="index"></param>
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Length">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Equality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Implicit(System.ArraySegment{T})~System.ReadOnlySpan{T}">
<param name="arraySegment"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Implicit(T[])~System.ReadOnlySpan{T}">
<param name="array"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Inequality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32)">
<param name="start"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32,System.Int32)">
<param name="start"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.ToArray">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.TryCopyTo(System.Span{`0})">
<param name="destination"></param>
<returns></returns>
</member>
</members>
</doc>

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,200 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Runtime.CompilerServices.Unsafe</name>
</assembly>
<members>
<member name="T:System.Runtime.CompilerServices.Unsafe">
<summary>Contains generic, low-level functionality for manipulating pointers.</summary>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.Int32)">
<summary>Adds an element offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.IntPtr)">
<summary>Adds an element offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.IntPtr)">
<summary>Adds a byte offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="byteOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AreSame``1(``0@,``0@)">
<summary>Determines whether the specified references point to the same location.</summary>
<param name="left">The first reference to compare.</param>
<param name="right">The second reference to compare.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>true if <paramref name="left">left</paramref> and <paramref name="right">right</paramref> point to the same location; otherwise, false.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)">
<summary>Casts the given object to the specified type.</summary>
<param name="o">The object to cast.</param>
<typeparam name="T">The type which the object will be cast to.</typeparam>
<returns>The original object, casted to the given type.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``2(``0@)">
<summary>Reinterprets the given reference as a reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</summary>
<param name="source">The reference to reinterpret.</param>
<typeparam name="TFrom">The type of reference to reinterpret..</typeparam>
<typeparam name="TTo">The desired type of the reference.</typeparam>
<returns>A reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsPointer``1(``0@)">
<summary>Returns a pointer to the given by-ref parameter.</summary>
<param name="value">The object whose pointer is obtained.</param>
<typeparam name="T">The type of object.</typeparam>
<returns>A pointer to the given value.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(System.Void*)">
<summary>Reinterprets the given location as a reference to a value of type <typeparamref name="T">T</typeparamref>.</summary>
<param name="source">The location of the value to reference.</param>
<typeparam name="T">The type of the interpreted location.</typeparam>
<returns>A reference to a value of type <typeparamref name="T">T</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ByteOffset``1(``0@,``0@)">
<summary>Determines the byte offset from origin to target from the given references.</summary>
<param name="origin">The reference to origin.</param>
<param name="target">The reference to target.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>Byte offset from origin to target i.e. <paramref name="target">target</paramref> - <paramref name="origin">origin</paramref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(System.Void*,``0@)">
<summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to copy to.</param>
<param name="source">A reference to the value to copy.</param>
<typeparam name="T">The type of value to copy.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(``0@,System.Void*)">
<summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to copy to.</param>
<param name="source">A pointer to the value to copy.</param>
<typeparam name="T">The type of value to copy.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Byte@,System.Byte@,System.UInt32)">
<summary>Copies bytes from the source address to the destination address.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Void*,System.Void*,System.UInt32)">
<summary>Copies bytes from the source address to the destination address.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Void*,System.Void*,System.UInt32)">
<summary>Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Byte@,System.Byte@,System.UInt32)">
<summary>Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Byte@,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Void*,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Byte@,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Void*,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Read``1(System.Void*)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Byte@)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Void*)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SizeOf``1">
<summary>Returns the size of an object of the given type parameter.</summary>
<typeparam name="T">The type of object whose size is retrieved.</typeparam>
<returns>The size of an object of type <typeparamref name="T">T</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.Int32)">
<summary>Subtracts an element offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.IntPtr)">
<summary>Subtracts an element offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.IntPtr)">
<summary>Subtracts a byte offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="byteOffset"></param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Write``1(System.Void*,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Byte@,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Void*,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
</members>
</doc>

Binary file not shown.

View file

@ -0,0 +1,217 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>System.Threading.Channels</name>
</assembly>
<members>
<member name="T:System.Threading.Channels.BoundedChannelFullMode">
<summary>Specifies the behavior to use when writing to a bounded channel that is already full.</summary>
</member>
<member name="F:System.Threading.Channels.BoundedChannelFullMode.DropNewest">
<summary>Removes and ignores the newest item in the channel in order to make room for the item being written.</summary>
</member>
<member name="F:System.Threading.Channels.BoundedChannelFullMode.DropOldest">
<summary>Removes and ignores the oldest item in the channel in order to make room for the item being written.</summary>
</member>
<member name="F:System.Threading.Channels.BoundedChannelFullMode.DropWrite">
<summary>Drops the item being written.</summary>
</member>
<member name="F:System.Threading.Channels.BoundedChannelFullMode.Wait">
<summary>Waits for space to be available in order to complete the write operation.</summary>
</member>
<member name="T:System.Threading.Channels.BoundedChannelOptions">
<summary>Provides options that control the behavior of bounded <see cref="T:System.Threading.Channels.Channel`1" /> instances.</summary>
</member>
<member name="M:System.Threading.Channels.BoundedChannelOptions.#ctor(System.Int32)">
<summary>Initializes the options.</summary>
<param name="capacity">The maximum number of items the bounded channel may store.</param>
</member>
<member name="P:System.Threading.Channels.BoundedChannelOptions.Capacity">
<summary>Gets or sets the maximum number of items the bounded channel may store.</summary>
</member>
<member name="P:System.Threading.Channels.BoundedChannelOptions.FullMode">
<summary>Gets or sets the behavior incurred by write operations when the channel is full.</summary>
</member>
<member name="T:System.Threading.Channels.Channel">
<summary>Provides static methods for creating channels.</summary>
</member>
<member name="M:System.Threading.Channels.Channel.CreateBounded``1(System.Int32)">
<summary>Creates a channel with the specified maximum capacity.</summary>
<param name="capacity">The maximum number of items the channel may store.</param>
<typeparam name="T">Specifies the type of data in the channel.</typeparam>
<returns>The created channel.</returns>
</member>
<member name="M:System.Threading.Channels.Channel.CreateBounded``1(System.Threading.Channels.BoundedChannelOptions)">
<summary>Creates a channel with the specified maximum capacity.</summary>
<param name="options">Options that guide the behavior of the channel.</param>
<typeparam name="T">Specifies the type of data in the channel.</typeparam>
<returns>The created channel.</returns>
</member>
<member name="M:System.Threading.Channels.Channel.CreateUnbounded``1">
<summary>Creates an unbounded channel usable by any number of readers and writers concurrently.</summary>
<typeparam name="T">The type of data in the channel.</typeparam>
<returns>The created channel.</returns>
</member>
<member name="M:System.Threading.Channels.Channel.CreateUnbounded``1(System.Threading.Channels.UnboundedChannelOptions)">
<summary>Creates an unbounded channel subject to the provided options.</summary>
<param name="options">Options that guide the behavior of the channel.</param>
<typeparam name="T">Specifies the type of data in the channel.</typeparam>
<returns>The created channel.</returns>
</member>
<member name="T:System.Threading.Channels.Channel`1">
<summary>Provides a base class for channels that support reading and writing elements of type <typeparamref name="T" />.</summary>
<typeparam name="T">Specifies the type of data readable and writable in the channel.</typeparam>
</member>
<member name="M:System.Threading.Channels.Channel`1.#ctor">
<summary>Initializes an instance of the <see cref="T:System.Threading.Channels.Channel`1" /> class.</summary>
</member>
<member name="T:System.Threading.Channels.Channel`2">
<summary>Provides a base class for channels that support reading elements of type <typeparamref name="TRead" /> and writing elements of type <typeparamref name="TWrite" />.</summary>
<typeparam name="TWrite">Specifies the type of data that may be written to the channel.</typeparam>
<typeparam name="TRead">Specifies the type of data that may be read from the channel.</typeparam>
</member>
<member name="M:System.Threading.Channels.Channel`2.#ctor">
<summary>Initializes an instance of the <see cref="T:System.Threading.Channels.Channel`2" /> class.</summary>
</member>
<member name="M:System.Threading.Channels.Channel`2.op_Implicit(System.Threading.Channels.Channel{`0,`1})~System.Threading.Channels.ChannelReader{`1}">
<summary>Implicit cast from a <see cref="T:System.Threading.Channels.Channel`2" /> to its readable half.</summary>
<param name="channel">The <see cref="T:System.Threading.Channels.Channel`2" /> being cast.</param>
<returns>The readable half.</returns>
</member>
<member name="M:System.Threading.Channels.Channel`2.op_Implicit(System.Threading.Channels.Channel{`0,`1})~System.Threading.Channels.ChannelWriter{`0}">
<summary>Implicit cast from a <see cref="T:System.Threading.Channels.Channel`2" /> to its writable half.</summary>
<param name="channel">The <see cref="T:System.Threading.Channels.Channel`2" /> being cast.</param>
<returns>The writable half.</returns>
</member>
<member name="P:System.Threading.Channels.Channel`2.Reader">
<summary>Gets the readable half of this channel.</summary>
</member>
<member name="P:System.Threading.Channels.Channel`2.Writer">
<summary>Gets the writable half of this channel.</summary>
</member>
<member name="T:System.Threading.Channels.ChannelClosedException">
<summary>Exception thrown when a channel is used after it's been closed.</summary>
</member>
<member name="M:System.Threading.Channels.ChannelClosedException.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Threading.Channels.ChannelClosedException" /> class.</summary>
</member>
<member name="M:System.Threading.Channels.ChannelClosedException.#ctor(System.Exception)">
<summary>Initializes a new instance of the <see cref="T:System.Threading.Channels.ChannelClosedException" /> class.</summary>
<param name="innerException">The exception that is the cause of this exception.</param>
</member>
<member name="M:System.Threading.Channels.ChannelClosedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>Initializes a new instance of the <see cref="T:System.Threading.Channels.ChannelClosedException" /> class with serialized data.</summary>
<param name="info">The object that holds the serialized object data.</param>
<param name="context">The contextual information about the source or destination.</param>
</member>
<member name="M:System.Threading.Channels.ChannelClosedException.#ctor(System.String)">
<summary>Initializes a new instance of the <see cref="T:System.Threading.Channels.ChannelClosedException" /> class.</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:System.Threading.Channels.ChannelClosedException.#ctor(System.String,System.Exception)">
<summary>Initializes a new instance of the <see cref="T:System.Threading.Channels.ChannelClosedException" /> class.</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of this exception.</param>
</member>
<member name="T:System.Threading.Channels.ChannelOptions">
<summary>Provides options that control the behavior of channel instances.</summary>
</member>
<member name="M:System.Threading.Channels.ChannelOptions.#ctor">
<summary>Initializes an instance of the <see cref="T:System.Threading.Channels.ChannelOptions" /> class.</summary>
</member>
<member name="P:System.Threading.Channels.ChannelOptions.AllowSynchronousContinuations">
<summary>
<see langword="true" /> if operations performed on a channel may synchronously invoke continuations subscribed to
notifications of pending async operations; <see langword="false" /> if all continuations should be invoked asynchronously.</summary>
</member>
<member name="P:System.Threading.Channels.ChannelOptions.SingleReader">
<summary>
<see langword="true" /> readers from the channel guarantee that there will only ever be at most one read operation at a time;
<see langword="false" /> if no such constraint is guaranteed.</summary>
</member>
<member name="P:System.Threading.Channels.ChannelOptions.SingleWriter">
<summary>
<see langword="true" /> if writers to the channel guarantee that there will only ever be at most one write operation
at a time; <see langword="false" /> if no such constraint is guaranteed.</summary>
</member>
<member name="T:System.Threading.Channels.ChannelReader`1">
<summary>Provides a base class for reading from a channel.</summary>
<typeparam name="T">Specifies the type of data that may be read from the channel.</typeparam>
</member>
<member name="M:System.Threading.Channels.ChannelReader`1.#ctor">
<summary>Initializes an instance of the <see cref="T:System.Threading.Channels.ChannelReader`1" /> class.</summary>
</member>
<member name="P:System.Threading.Channels.ChannelReader`1.Completion">
<summary>Gets a <see cref="T:System.Threading.Tasks.Task" /> that completes when no more data will ever
be available to be read from this channel.</summary>
</member>
<member name="M:System.Threading.Channels.ChannelReader`1.ReadAllAsync(System.Threading.CancellationToken)">
<summary>Creates an <see cref="T:System.Collections.Generic.IAsyncEnumerable`1" /> that enables reading all of the data from the channel.</summary>
<param name="cancellationToken">The cancellation token to use to cancel the enumeration.</param>
<returns>The created async enumerable.</returns>
</member>
<member name="M:System.Threading.Channels.ChannelReader`1.ReadAsync(System.Threading.CancellationToken)">
<summary>Asynchronously reads an item from the channel.</summary>
<param name="cancellationToken">A <see cref="T:System.Threading.CancellationToken" /> used to cancel the read operation.</param>
<returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that represents the asynchronous read operation.</returns>
</member>
<member name="M:System.Threading.Channels.ChannelReader`1.TryRead(`0@)">
<summary>Attempts to read an item from the channel.</summary>
<param name="item">The read item, or a default value if no item could be read.</param>
<returns>
<see langword="true" /> if an item was read; otherwise, <see langword="false" />.</returns>
</member>
<member name="M:System.Threading.Channels.ChannelReader`1.WaitToReadAsync(System.Threading.CancellationToken)">
<summary>Returns a <see cref="T:System.Threading.Tasks.ValueTask`1" /> that will complete when data is available to read.</summary>
<param name="cancellationToken">A <see cref="T:System.Threading.CancellationToken" /> used to cancel the wait operation.</param>
<returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that will complete with a <see langword="true" /> result when data is available to read
or with a <see langword="false" /> result when no further data will ever be available to be read due to the channel completing successfully.
If the channel completes with an exception, the task will also complete with an exception.
.</returns>
</member>
<member name="T:System.Threading.Channels.ChannelWriter`1">
<summary>Provides a base class for writing to a channel.</summary>
<typeparam name="T">Specifies the type of data that may be written to the channel.</typeparam>
</member>
<member name="M:System.Threading.Channels.ChannelWriter`1.#ctor">
<summary>Initializes an instance of the <see cref="T:System.Threading.Channels.ChannelWriter`1" /> class.</summary>
</member>
<member name="M:System.Threading.Channels.ChannelWriter`1.Complete(System.Exception)">
<summary>Mark the channel as being complete, meaning no more items will be written to it.</summary>
<param name="error">Optional Exception indicating a failure that's causing the channel to complete.</param>
<exception cref="T:System.InvalidOperationException">The channel has already been marked as complete.</exception>
</member>
<member name="M:System.Threading.Channels.ChannelWriter`1.TryComplete(System.Exception)">
<summary>Attempts to mark the channel as being completed, meaning no more data will be written to it.</summary>
<param name="error">An <see cref="T:System.Exception" /> indicating the failure causing no more data to be written, or null for success.</param>
<returns>
<see langword="true" /> if this operation successfully completes the channel; otherwise, <see langword="false" /> if the channel could not be marked for completion,
for example due to having already been marked as such, or due to not supporting completion.
.</returns>
</member>
<member name="M:System.Threading.Channels.ChannelWriter`1.TryWrite(`0)">
<summary>Attempts to write the specified item to the channel.</summary>
<param name="item">The item to write.</param>
<returns>
<see langword="true" /> if the item was written; otherwise, <see langword="false" />.</returns>
</member>
<member name="M:System.Threading.Channels.ChannelWriter`1.WaitToWriteAsync(System.Threading.CancellationToken)">
<summary>Returns a <see cref="T:System.Threading.Tasks.ValueTask`1" /> that will complete when space is available to write an item.</summary>
<param name="cancellationToken">A <see cref="T:System.Threading.CancellationToken" /> used to cancel the wait operation.</param>
<returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that will complete with a <see langword="true" /> result when space is available to write an item
or with a <see langword="false" /> result when no further writing will be permitted.</returns>
</member>
<member name="M:System.Threading.Channels.ChannelWriter`1.WriteAsync(`0,System.Threading.CancellationToken)">
<summary>Asynchronously writes an item to the channel.</summary>
<param name="item">The value to write to the channel.</param>
<param name="cancellationToken">A <see cref="T:System.Threading.CancellationToken" /> used to cancel the write operation.</param>
<returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous write operation.</returns>
</member>
<member name="T:System.Threading.Channels.UnboundedChannelOptions">
<summary>Provides options that control the behavior of unbounded <see cref="T:System.Threading.Channels.Channel`1" /> instances.</summary>
</member>
<member name="M:System.Threading.Channels.UnboundedChannelOptions.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Threading.Channels.UnboundedChannelOptions" /> class.</summary>
</member>
</members>
</doc>

Binary file not shown.

View file

@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Threading.Tasks.Extensions</name>
</assembly>
<members>
<member name="T:System.Runtime.CompilerServices.ValueTaskAwaiter`1">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.GetResult">
<returns></returns>
</member>
<member name="P:System.Runtime.CompilerServices.ValueTaskAwaiter`1.IsCompleted">
<returns></returns>
</member>
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.OnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.UnsafeOnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="T:System.Threading.Tasks.ValueTask`1">
<summary>Provides a value type that wraps a <see cref="Task{TResult}"></see> and a <typeparamref name="TResult">TResult</typeparamref>, only one of which is used.</summary>
<typeparam name="TResult">The result.</typeparam>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(System.Threading.Tasks.Task{`0})">
<summary>Initializes a new instance of the <see cref="ValueTask{TResult}"></see> class using the supplied task that represents the operation.</summary>
<param name="task">The task.</param>
<exception cref="T:System.ArgumentNullException">The <paramref name="task">task</paramref> argument is null.</exception>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(`0)">
<summary>Initializes a new instance of the <see cref="ValueTask{TResult}"></see> class using the supplied result of a successful operation.</summary>
<param name="result">The result.</param>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.AsTask">
<summary>Retrieves a <see cref="Task{TResult}"></see> object that represents this <see cref="ValueTask{TResult}"></see>.</summary>
<returns>The <see cref="Task{TResult}"></see> object that is wrapped in this <see cref="ValueTask{TResult}"></see> if one exists, or a new <see cref="Task{TResult}"></see> object that represents the result.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.ConfigureAwait(System.Boolean)">
<summary>Configures an awaiter for this value.</summary>
<param name="continueOnCapturedContext">true to attempt to marshal the continuation back to the captured context; otherwise, false.</param>
<returns>The configured awaiter.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.CreateAsyncMethodBuilder">
<summary>Creates a method builder for use with an async method.</summary>
<returns>The created builder.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.Equals(System.Object)">
<summary>Determines whether the specified object is equal to the current object.</summary>
<param name="obj">The object to compare with the current object.</param>
<returns>true if the specified object is equal to the current object; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.Equals(System.Threading.Tasks.ValueTask{`0})">
<summary>Determines whether the specified <see cref="ValueTask{TResult}"></see> object is equal to the current <see cref="ValueTask{TResult}"></see> object.</summary>
<param name="other">The object to compare with the current object.</param>
<returns>true if the specified object is equal to the current object; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.GetAwaiter">
<summary>Creates an awaiter for this value.</summary>
<returns>The awaiter.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.GetHashCode">
<summary>Returns the hash code for this instance.</summary>
<returns>The hash code for the current object.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsCanceled">
<summary>Gets a value that indicates whether this object represents a canceled operation.</summary>
<returns>true if this object represents a canceled operation; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsCompleted">
<summary>Gets a value that indicates whether this object represents a completed operation.</summary>
<returns>true if this object represents a completed operation; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsCompletedSuccessfully">
<summary>Gets a value that indicates whether this object represents a successfully completed operation.</summary>
<returns>true if this object represents a successfully completed operation; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsFaulted">
<summary>Gets a value that indicates whether this object represents a failed operation.</summary>
<returns>true if this object represents a failed operation; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.op_Equality(System.Threading.Tasks.ValueTask{`0},System.Threading.Tasks.ValueTask{`0})">
<summary>Compares two values for equality.</summary>
<param name="left">The first value to compare.</param>
<param name="right">The second value to compare.</param>
<returns>true if the two <see cref="ValueTask{TResult}"></see> values are equal; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.op_Inequality(System.Threading.Tasks.ValueTask{`0},System.Threading.Tasks.ValueTask{`0})">
<summary>Determines whether two <see cref="ValueTask{TResult}"></see> values are unequal.</summary>
<param name="left">The first value to compare.</param>
<param name="right">The seconed value to compare.</param>
<returns>true if the two <see cref="ValueTask{TResult}"></see> values are not equal; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.Result">
<summary>Gets the result.</summary>
<returns>The result.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.ToString">
<summary>Returns a string that represents the current object.</summary>
<returns>A string that represents the current object.</returns>
</member>
<member name="T:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute">
</member>
<member name="M:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute.#ctor(System.Type)">
<param name="builderType"></param>
</member>
<member name="P:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute.BuilderType">
<returns></returns>
</member>
<member name="T:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.AwaitOnCompleted``2(``0@,``1@)">
<param name="awaiter"></param>
<param name="stateMachine"></param>
<typeparam name="TAwaiter"></typeparam>
<typeparam name="TStateMachine"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.AwaitUnsafeOnCompleted``2(``0@,``1@)">
<param name="awaiter"></param>
<param name="stateMachine"></param>
<typeparam name="TAwaiter"></typeparam>
<typeparam name="TStateMachine"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Create">
<returns></returns>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetException(System.Exception)">
<param name="exception"></param>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetResult(`0)">
<param name="result"></param>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetStateMachine(System.Runtime.CompilerServices.IAsyncStateMachine)">
<param name="stateMachine"></param>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Start``1(``0@)">
<param name="stateMachine"></param>
<typeparam name="TStateMachine"></typeparam>
</member>
<member name="P:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Task">
<returns></returns>
</member>
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.GetResult">
<returns></returns>
</member>
<member name="P:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.IsCompleted">
<returns></returns>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.OnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.UnsafeOnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.GetAwaiter">
<returns></returns>
</member>
</members>
</doc>

39
W/Debug_Folder/a.pas Normal file
View file

@ -0,0 +1,39 @@
{$reference Microsoft.ML.Core.dll}
{$reference Microsoft.ML.Data.dll}
{$reference Microsoft.ML.KMeansClustering.dll}
uses Microsoft.ML;
uses Microsoft.ML.Data;
uses Microsoft.ML.Trainers;
uses Microsoft.ML.Transforms;
begin
var Context := new MLContext();
{var loader := Context.Data.CreateTextLoader(
Arr(
new TextLoader.Column('SentimentText', DataKind.String, 1),
new TextLoader.Column('Label', DataKind.Boolean, 0)
));}
var fullData := Context.Data.LoadFromTextFile('iris-full.txt',
Arr(
new TextLoader.Column('Label', DataKind.Single, 0),
new TextLoader.Column('SepalLength', DataKind.Single, 1),
new TextLoader.Column('SepalWidth', DataKind.Single, 2),
new TextLoader.Column('PetalLength', DataKind.Single, 3),
new TextLoader.Column('PetalWidth', DataKind.Single, 4)
),
#9, True
);
var trainTestData := Context.Data.TrainTestSplit(fullData, 0.2);
var trainingDataView := trainTestData.TrainSet;
var testingDataView := trainTestData.TestSet;
var dataProcessPipeline := Context.Transforms.Concatenate('Features',
'SepalLength', 'SepalWidth', 'PetalLength', 'PetalWidth');
//var trainer: KMeansTrainer := Context.Clustering.Trainers.KMeans('Features', nil, 3);
var trainer: IEstimator<ClusteringPredictionTransformer<KMeansModelParameters>>;
//trainer := Context.Clustering.Trainers.KMeans('Features', nil, 3);
//dataProcessPipeline.Append(new KMeansTrainer);
//var trainingPipeline := dataProcessPipeline.Append(trainer);
//var trainedModel := trainingPipeline.Fit(trainingDataView);
end.

11
W/Debug_Folder/a1.pas Normal file
View file

@ -0,0 +1,11 @@
{$reference Microsoft.ML.Core.dll}
{$reference Microsoft.ML.Data.dll}
{$reference Microsoft.ML.KMeansClustering.dll}
uses Microsoft.ML;
uses Microsoft.ML.Data;
uses Microsoft.ML.Trainers;
begin
var trainer: IEstimator<ClusteringPredictionTransformer<KMeansModelParameters>>;
end.

View file

@ -0,0 +1,152 @@
#Label Sepal length Sepal width Petal length Petal width
0 5.1 3.5 1.4 0.2
0 4.9 3.0 1.4 0.2
0 4.7 3.2 1.3 0.2
0 4.6 3.1 1.5 0.2
0 5.0 3.6 1.4 0.2
0 5.4 3.9 1.7 0.4
0 4.6 3.4 1.4 0.3
0 5.0 3.4 1.5 0.2
0 4.4 2.9 1.4 0.2
0 4.9 3.1 1.5 0.1
0 5.4 3.7 1.5 0.2
0 4.8 3.4 1.6 0.2
0 4.8 3.0 1.4 0.1
0 4.3 3.0 1.1 0.1
0 5.8 4.0 1.2 0.2
0 5.7 4.4 1.5 0.4
0 5.4 3.9 1.3 0.4
0 5.1 3.5 1.4 0.3
0 5.7 3.8 1.7 0.3
0 5.1 3.8 1.5 0.3
0 5.4 3.4 1.7 0.2
0 5.1 3.7 1.5 0.4
0 4.6 3.6 1.0 0.2
0 5.1 3.3 1.7 0.5
0 4.8 3.4 1.9 0.2
0 5.0 3.0 1.6 0.2
0 5.0 3.4 1.6 0.4
0 5.2 3.5 1.5 0.2
0 5.2 3.4 1.4 0.2
0 4.7 3.2 1.6 0.2
0 4.8 3.1 1.6 0.2
0 5.4 3.4 1.5 0.4
0 5.2 4.1 1.5 0.1
0 5.5 4.2 1.4 0.2
0 4.9 3.1 1.5 0.1
0 5.0 3.2 1.2 0.2
0 5.5 3.5 1.3 0.2
0 4.9 3.1 1.5 0.1
0 4.4 3.0 1.3 0.2
0 5.1 3.4 1.5 0.2
0 5.0 3.5 1.3 0.3
0 4.5 2.3 1.3 0.3
0 4.4 3.2 1.3 0.2
0 5.0 3.5 1.6 0.6
0 5.1 3.8 1.9 0.4
0 4.8 3.0 1.4 0.3
0 5.1 3.8 1.6 0.2
0 4.6 3.2 1.4 0.2
0 5.3 3.7 1.5 0.2
0 5.0 3.3 1.4 0.2
1 7.0 3.2 4.7 1.4
1 6.4 3.2 4.5 1.5
1 6.9 3.1 4.9 1.5
1 5.5 2.3 4.0 1.3
1 6.5 2.8 4.6 1.5
1 5.7 2.8 4.5 1.3
1 6.3 3.3 4.7 1.6
1 4.9 2.4 3.3 1.0
1 6.6 2.9 4.6 1.3
1 5.2 2.7 3.9 1.4
1 5.0 2.0 3.5 1.0
1 5.9 3.0 4.2 1.5
1 6.0 2.2 4.0 1.0
1 6.1 2.9 4.7 1.4
1 5.6 2.9 3.6 1.3
1 6.7 3.1 4.4 1.4
1 5.6 3.0 4.5 1.5
1 5.8 2.7 4.1 1.0
1 6.2 2.2 4.5 1.5
1 5.6 2.5 3.9 1.1
1 5.9 3.2 4.8 1.8
1 6.1 2.8 4.0 1.3
1 6.3 2.5 4.9 1.5
1 6.1 2.8 4.7 1.2
1 6.4 2.9 4.3 1.3
1 6.6 3.0 4.4 1.4
1 6.8 2.8 4.8 1.4
1 6.7 3.0 5.0 1.7
1 6.0 2.9 4.5 1.5
1 5.7 2.6 3.5 1.0
1 5.5 2.4 3.8 1.1
1 5.5 2.4 3.7 1.0
1 5.8 2.7 3.9 1.2
1 6.0 2.7 5.1 1.6
1 5.4 3.0 4.5 1.5
1 6.0 3.4 4.5 1.6
1 6.7 3.1 4.7 1.5
1 6.3 2.3 4.4 1.3
1 5.6 3.0 4.1 1.3
1 5.5 2.5 4.0 1.3
1 5.5 2.6 4.4 1.2
1 6.1 3.0 4.6 1.4
1 5.8 2.6 4.0 1.2
1 5.0 2.3 3.3 1.0
1 5.6 2.7 4.2 1.3
1 5.7 3.0 4.2 1.2
1 5.7 2.9 4.2 1.3
1 6.2 2.9 4.3 1.3
1 5.1 2.5 3.0 1.1
1 5.7 2.8 4.1 1.3
2 6.3 3.3 6.0 2.5
2 5.8 2.7 5.1 1.9
2 7.1 3.0 5.9 2.1
2 6.3 2.9 5.6 1.8
2 6.5 3.0 5.8 2.2
2 7.6 3.0 6.6 2.1
2 4.9 2.5 4.5 1.7
2 7.3 2.9 6.3 1.8
2 6.7 2.5 5.8 1.8
2 7.2 3.6 6.1 2.5
2 6.5 3.2 5.1 2.0
2 6.4 2.7 5.3 1.9
2 6.8 3.0 5.5 2.1
2 5.7 2.5 5.0 2.0
2 5.8 2.8 5.1 2.4
2 6.4 3.2 5.3 2.3
2 6.5 3.0 5.5 1.8
2 7.7 3.8 6.7 2.2
2 7.7 2.6 6.9 2.3
2 6.0 2.2 5.0 1.5
2 6.9 3.2 5.7 2.3
2 5.6 2.8 4.9 2.0
2 7.7 2.8 6.7 2.0
2 6.3 2.7 4.9 1.8
2 6.7 3.3 5.7 2.1
2 7.2 3.2 6.0 1.8
2 6.2 2.8 4.8 1.8
2 6.1 3.0 4.9 1.8
2 6.4 2.8 5.6 2.1
2 7.2 3.0 5.8 1.6
2 7.4 2.8 6.1 1.9
2 7.9 3.8 6.4 2.0
2 6.4 2.8 5.6 2.2
2 6.3 2.8 5.1 1.5
2 6.1 2.6 5.6 1.4
2 7.7 3.0 6.1 2.3
2 6.3 3.4 5.6 2.4
2 6.4 3.1 5.5 1.8
2 6.0 3.0 4.8 1.8
2 6.9 3.1 5.4 2.1
2 6.7 3.1 5.6 2.4
2 6.9 3.1 5.1 2.3
2 5.8 2.7 5.1 1.9
2 6.8 3.2 5.9 2.3
2 6.7 3.3 5.7 2.5
2 6.7 3.0 5.2 2.3
2 6.3 2.5 5.0 1.9
2 6.5 3.0 5.2 2.0
2 6.2 3.4 5.4 2.3
2 5.9 3.0 5.1 1.8