Hash2Vec 1.1.0-beta

This is a prerelease version of Hash2Vec.
dotnet add package Hash2Vec --version 1.1.0-beta                
NuGet\Install-Package Hash2Vec -Version 1.1.0-beta                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Hash2Vec" Version="1.1.0-beta" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Hash2Vec --version 1.1.0-beta                
#r "nuget: Hash2Vec, 1.1.0-beta"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Hash2Vec as a Cake Addin
#addin nuget:?package=Hash2Vec&version=1.1.0-beta&prerelease

// Install Hash2Vec as a Cake Tool
#tool nuget:?package=Hash2Vec&version=1.1.0-beta&prerelease                

Quick start in Hash2Vec

Hash2Vec tool for vectorizing text to numerical vector.

The basis of this algorithm is the principle of obtaining a vector based on the morphological structure of the word and coding this basis of the word into a numerical vector.

Hash2Vec can be used in two operating modes: in fuzzy search mode and in machine learning mode for solving classification problems.

Hash2Vec supports several languages for vectorizing text:

  • Russian
  • English
  • French
  • Russian & English

Hash2Vec Documentation:

Example vectorization text

#!c#
var hash2vecBuild = new Hash2VecBuild(inputFile, outputFile) { WithBinary = binary };
 hash2VecBuild.BuildNormalizationVector(new Hash2VecToRussian()); // Vectorization vector Russian
 hash2VecBuild.BuildNormalizationVector(new Hash2VecToEnglish()); // Vectorization vector English
 hash2VecBuild.BuildNormalizationVector(new Hash2VecToFrench());  // Vectorization vector French
 hash2VecBuild.BuildNormalizationVector(new Core.Hash2Vec(size:75)); // Vectorization vector Russian & English (default length 75)
 
 //There is no default vector normalization in the initialization Build
 hash2VecBuild.Build(size:75) // Vectorization vector Russian & English (default length 75)

Example normalization vector

#!c#
 var normalizationVectors = new NormalizationVectors();
 var vectors = normalizationVectors.LoadVectors("InputFile"); // Loading vectors to normalization
 normalizationVectors.NormalizationVector(ref vectors); // Normalization vectors
 normalizationVectors.CheckHashVector(ref vectors);  // Vector hash check

Example test distance vector

#!c#
var vocabulary = new Hash2VecBinaryReader().Read("inputFile"); // InputFile vectorization vectors
var distanceList = vocabulary.Distance("milks", 50,0).ToList();
         
    distanceList.ForEach(dis =>
       Console.WriteLine("{0}\t\t ||{1,10:F6}", dis.Representation.WordOrNull, dis.DistanceValue));

Example test Fuzzy Search in Hash2Vec

#!c#
var input = "молоко домик в деревне";
var name = "молоко в деревне";
var distHash2Vec = input.Hash2VecDistanceCorrect(name);
 if (distHash2Vec > 0.55) //Result greater than 55 good result
      Console.WriteLine("\t{0:###,###.00000} against {1}", distHash2Vec, name);
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.1.0-beta 159 7/13/2022
1.0.3-alpha 175 4/15/2021
1.0.2-alpha 234 11/23/2020
1.0.1-alpha 305 10/17/2020

Preview version Hash2Vec