Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs - #3118

Merged
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco
Apr 2, 2019
Merged

Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIs#3118
codemzs merged 8 commits into
dotnet:masterfrom
codemzs:normalizerco

Conversation

@codemzs

@codemzscodemzs commented Mar 27, 2019

Copy link
Copy Markdown
Member

fixes#3109
fixes#3161

@eerhardt

eerhardt commented Mar 28, 2019

Copy link
Copy Markdown
Member

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads. #Resolved

@TomFinley

TomFinley commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Wonder what @artidoro thinks, should we add the multi-column mapping capability here? It seems more or less harmless to do so. #Resolved

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@artidoro

artidoro commented Mar 28, 2019

Copy link
Copy Markdown
Contributor

Regarding multi-column mapping, I am not opposed to it here. My only concern is that we will have a lot of overloads for the normalizers, especially if we add another one with an options class in the future. But since they are widely used it might be worth it to add them. They were on the list of transforms that @TomFinley and @glebuk identified as candidates for multi-column mapping with InputOutputColumnPair. #Resolved

@TomFinley

TomFinley commented Mar 29, 2019

Copy link
Copy Markdown
Contributor

Do we also want to get rid of this method?

publicstaticNormalizingEstimatorNormalize(thisTransformsCatalogcatalog,stringoutputColumnName,stringinputColumnName=null,NormalizingEstimator.NormalizationModemode=NormalizingEstimator.NormalizationMode.MinMax)=>newNormalizingEstimator(CatalogUtils.GetEnvironment(catalog),outputColumnName,inputColumnName??outputColumnName,mode);

Do we really need a public method that takes an enum (but doesn't allow you to specify the specific values) as well as other public methods that basically just extract that enum into individual overloads.

@eerhardt I'd totally get behind that... only trouble is that's definitely a breaking change, so wondering what @shauheen thinks. #Resolved

@eerhardt

eerhardt commented Mar 29, 2019

Copy link
Copy Markdown
Member

If we really think that it's the right thing to do, we have time to do it now.

The alternative is to live with this API forever. #Resolved

@codemzs

codemzs commented Apr 1, 2019

Copy link
Copy Markdown
MemberAuthor

@eric.erhardt@microsoft.com @tfinley@gmail.comThis PR removes such redundant methods, please review and leave your autograph here: #3116


In reply to: 478105437 [](ancestors = 478105437)

@TomFinley

Copy link
Copy Markdown
Contributor

As discussed elsewhere it is usually a bad idea to have PRs that leave the codebase in a suboptimal state until they're all checked in, this is usually a sign that they belonged together in the first place. Anyway, thanks for combining them.


In reply to: 478783520 [](ancestors = 478783520,478105437)

@Ivanidzo4ka

Ivanidzo4ka commented Apr 2, 2019

Copy link
Copy Markdown
Contributor

using Microsoft.ML.Experimental;

is this one still needed? #Resolved


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs Outdated
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codecov

codecovBot commented Apr 2, 2019

Copy link
Copy Markdown

Codecov Report

Merging #3118 into master will increase coverage by <.01%.
The diff coverage is 90.62%.

@@ Coverage Diff @@## master #3118 +/- ##
==========================================
+ Coverage 72.53% 72.54% +<.01% 
==========================================
Files 808 807 -1 Lines 144775 144774 -1 Branches 16209 16208 -1 ==========================================
+ Hits 105012 105020 +8 + Misses 35348 35341 -7 + Partials 4415 4413 -2
FlagCoverage Δ
#Debug72.54% <90.62%> (ø)⬆️
#production68.12% <75%> (ø)⬆️
#test88.82% <100%> (ø)⬆️
Impacted FilesCoverage Δ
src/Microsoft.ML.Data/Transforms/Normalizer.cs86.03% <ø> (ø)⬆️
...s/Scenarios/Api/CookbookSamples/CookbookSamples.cs99.49% <ø> (ø)⬆️
...c/Microsoft.ML.SamplesUtils/SamplesDatasetUtils.cs24.46% <0%> (ø)⬆️
...icrosoft.ML.Functional.Tests/DataTransformation.cs100% <100%> (ø)⬆️
...est/Microsoft.ML.Tests/FeatureContributionTests.cs98.55% <100%> (ø)⬆️
...ios/IrisPlantClassificationWithStringLabelTests.cs98.63% <100%> (ø)⬆️
test/Microsoft.ML.Tests/OnnxConversionTest.cs97.22% <100%> (ø)⬆️
...soft.ML.Tests/PermutationFeatureImportanceTests.cs100% <100%> (ø)⬆️
...irectInstantiation/IrisPlantClassificationTests.cs100% <100%> (ø)⬆️
test/Microsoft.ML.Functional.Tests/Training.cs100% <100%> (ø)⬆️
... and 10 more

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzs

Copy link
Copy Markdown
MemberAuthor

using Microsoft.ML.Experimental;

Yep for GetColumnPairs API...


In reply to: 478799620 [](ancestors = 478799620)


Refers to: test/Microsoft.ML.Tests/Transformers/NormalizerTests.cs:10 in d705dc2. [](commit_id = d705dc2, deletion_comment = False)

Comment threadsrc/Microsoft.ML.Transforms/NormalizerCatalog.cs
@codemzscodemzs changed the title Move Normalizer extension method from experimental to stable nuget.Move Normalizer extension method from experimental to stable nuget and remove Normalizer generic APIsApr 2, 2019
@codemzs

Copy link
Copy Markdown
MemberAuthor

Spoke offline. We will add it in a separate PR with its own issue and it needs to go through shiproom.


In reply to: 477744551 [](ancestors = 477744551)

@TomFinleyTomFinley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @codemzs !

@codemzs
codemzs merged commit fde1ab7 into dotnet:masterApr 2, 2019
shauheen pushed a commit to shauheen/machinelearning that referenced this pull request Apr 2, 2019
…d remove Normalizer generic APIs (dotnet#3118)
* Move Normalizer extension method from experimental to stable nuget.
* Cleanup unused method in Normalizer Estimator.
* remove normalizer estimator catalog methods that take enum as parameter.
* Remove Microsoft.ML.Experimental references in CS files.
* merge fix.
* cleanup.
* cleanup.
* PR feedback.
@ghostghost locked as resolved and limited conversation to collaborators Mar 23, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

6 participants

@codemzs@eerhardt@TomFinley@artidoro@Ivanidzo4ka@wschin