🔧 Various fixes
This commit is contained in:
34
src/client/shared/utils/tradepaperback.utils.ts
Normal file
34
src/client/shared/utils/tradepaperback.utils.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import Classifier from "ml-classify-text";
|
||||
|
||||
export const detectTradePaperbacks = (deck: string): any => {
|
||||
const classifier = new Classifier({ nGramMin: 2, nGramMax: 2 });
|
||||
const positiveTPBIdentifiers = [
|
||||
"trade paperbacks",
|
||||
"TPB",
|
||||
"paperback",
|
||||
"hardcover",
|
||||
"collects the following issues",
|
||||
"collected issues",
|
||||
"collecting the issues",
|
||||
"collecting the following issues",
|
||||
"collected editions",
|
||||
];
|
||||
const negativeTPBIdentifiers = ["mini-series"];
|
||||
|
||||
classifier.train(positiveTPBIdentifiers, "Possibly a trade paperback");
|
||||
classifier.train(negativeTPBIdentifiers, "Not a trade paperback");
|
||||
if (deck) {
|
||||
|
||||
console.log("DEC", deck);
|
||||
const predictions = classifier.predict(deck);
|
||||
|
||||
if (predictions.length) {
|
||||
predictions.forEach((prediction) => {
|
||||
console.log(`${prediction.label} (${prediction.confidence})`);
|
||||
return prediction;
|
||||
});
|
||||
} else {
|
||||
console.log("No predictions returned.");
|
||||
}
|
||||
}
|
||||
};
|
||||
14
src/client/shared/utils/trainingData.json
Normal file
14
src/client/shared/utils/trainingData.json
Normal file
@@ -0,0 +1,14 @@
|
||||
[
|
||||
{"phrase": "Twelve issue mini-series.", "result": {"not_a_paperback": 1}},
|
||||
{"phrase": "Trade paperback collecting Jean Grey #7-11.", "result": {"paperback": 1}},
|
||||
{"phrase": "Trade paperback collecting Iron Fist #6-7 & 73-77", "result": {"paperback ": 1}},
|
||||
{"phrase": "Collected Editions", "result": {"paperback": 1}},
|
||||
{"phrase": "Six issue mini-series.", "result": {"not_a_paperback": 1}},
|
||||
{"phrase": "Four issue mini-series.", "result": {"not_a_paperback": 1}},
|
||||
{"phrase": "Seventy-two issue digital prequel to the Injustice 2 video game.", "result": {"not_a_paperback": 1}},
|
||||
{"phrase": "Total issues in this volume:50", "result": {"paperback": 1}},
|
||||
{"phrase": "Five issue mini-series.", "result": {"not_a_paperback": 1}},
|
||||
{"phrase": "Digital mini-series.", "result": {"not_a_paperback": 1}},
|
||||
{"phrase": "Six issue mini-series.", "result": {"not_a_paperback": 1}},
|
||||
{"phrase": "Six issue mini-series.", "result": {"not_a_paperback": 1}}
|
||||
]
|
||||
Reference in New Issue
Block a user