Solving the issue of small number multiplied by small number gives a even smaller number
$begingroup$
So for my project I have certain scores associated with a food and I have to recommend a foodie a food based on the highest score:
For example: Ice-cream: 0.00004
Hot dogs: 0.00005
Fries: 0.00009
Based on this, foodie1 will get a recommendation of eating fries, then hot-dogs, and then icecream.
But, before I do that. I need to individualize the score based on the foodie's background. So for example foodie1 likes cold foods and therefore I want to multiply the score of ice-cream with the score of cold foods to give it just a slight bump based on the preference. But, the bump shouldn't be that overpowering that instead of recommending fries first it directly jumps to recommending ice cream (rather it should make the recommendation order: fries, ice cream, hot-dogs).
Issue is that the score for cold foods is also a small number like 0.1. Currently, I am using the process of multiplication. When I multiply 0.1*0.00004 it gives 0.0000004 which does exactly the opposite of what I want it to do (aka pushes ice cream to the bottom of the recommendation list). I can't use addition because then ice-cream overpowers the list.
Is there a work-around this like normalization for example?
normal-distribution
$endgroup$
add a comment |
$begingroup$
So for my project I have certain scores associated with a food and I have to recommend a foodie a food based on the highest score:
For example: Ice-cream: 0.00004
Hot dogs: 0.00005
Fries: 0.00009
Based on this, foodie1 will get a recommendation of eating fries, then hot-dogs, and then icecream.
But, before I do that. I need to individualize the score based on the foodie's background. So for example foodie1 likes cold foods and therefore I want to multiply the score of ice-cream with the score of cold foods to give it just a slight bump based on the preference. But, the bump shouldn't be that overpowering that instead of recommending fries first it directly jumps to recommending ice cream (rather it should make the recommendation order: fries, ice cream, hot-dogs).
Issue is that the score for cold foods is also a small number like 0.1. Currently, I am using the process of multiplication. When I multiply 0.1*0.00004 it gives 0.0000004 which does exactly the opposite of what I want it to do (aka pushes ice cream to the bottom of the recommendation list). I can't use addition because then ice-cream overpowers the list.
Is there a work-around this like normalization for example?
normal-distribution
$endgroup$
$begingroup$
multiply with $(1+score)$ to give the bump. It's like score% increase. So you'll multiple with 1.1 instead of 0.1
$endgroup$
– karakfa
Dec 5 '18 at 21:52
$begingroup$
The number $0.1$ means "only 10% as good." If your boss says "we'll pay you 10% of your old salary next year" then you are getting a very large pay cut. As karakfa wrote, if you want "10% better", use $1.1$.
$endgroup$
– David K
Dec 5 '18 at 21:55
$begingroup$
@karakfa You mean add 1 to both scores or just the multiplier score of cold foods?
$endgroup$
– Sabah Lala
Dec 6 '18 at 15:40
$begingroup$
you use the same term for both, it gets confusing. I'll use different words with larger numbers. Assume I got recommendation for A: 4, B: 5, C: 10. Based background you know that I value A more, so you want to raise it by 30%. Now my updated values will be A4:*1.3=5.2, B:5, C:10.
$endgroup$
– karakfa
Dec 6 '18 at 15:55
add a comment |
$begingroup$
So for my project I have certain scores associated with a food and I have to recommend a foodie a food based on the highest score:
For example: Ice-cream: 0.00004
Hot dogs: 0.00005
Fries: 0.00009
Based on this, foodie1 will get a recommendation of eating fries, then hot-dogs, and then icecream.
But, before I do that. I need to individualize the score based on the foodie's background. So for example foodie1 likes cold foods and therefore I want to multiply the score of ice-cream with the score of cold foods to give it just a slight bump based on the preference. But, the bump shouldn't be that overpowering that instead of recommending fries first it directly jumps to recommending ice cream (rather it should make the recommendation order: fries, ice cream, hot-dogs).
Issue is that the score for cold foods is also a small number like 0.1. Currently, I am using the process of multiplication. When I multiply 0.1*0.00004 it gives 0.0000004 which does exactly the opposite of what I want it to do (aka pushes ice cream to the bottom of the recommendation list). I can't use addition because then ice-cream overpowers the list.
Is there a work-around this like normalization for example?
normal-distribution
$endgroup$
So for my project I have certain scores associated with a food and I have to recommend a foodie a food based on the highest score:
For example: Ice-cream: 0.00004
Hot dogs: 0.00005
Fries: 0.00009
Based on this, foodie1 will get a recommendation of eating fries, then hot-dogs, and then icecream.
But, before I do that. I need to individualize the score based on the foodie's background. So for example foodie1 likes cold foods and therefore I want to multiply the score of ice-cream with the score of cold foods to give it just a slight bump based on the preference. But, the bump shouldn't be that overpowering that instead of recommending fries first it directly jumps to recommending ice cream (rather it should make the recommendation order: fries, ice cream, hot-dogs).
Issue is that the score for cold foods is also a small number like 0.1. Currently, I am using the process of multiplication. When I multiply 0.1*0.00004 it gives 0.0000004 which does exactly the opposite of what I want it to do (aka pushes ice cream to the bottom of the recommendation list). I can't use addition because then ice-cream overpowers the list.
Is there a work-around this like normalization for example?
normal-distribution
normal-distribution
asked Dec 5 '18 at 21:47
Sabah LalaSabah Lala
31
31
$begingroup$
multiply with $(1+score)$ to give the bump. It's like score% increase. So you'll multiple with 1.1 instead of 0.1
$endgroup$
– karakfa
Dec 5 '18 at 21:52
$begingroup$
The number $0.1$ means "only 10% as good." If your boss says "we'll pay you 10% of your old salary next year" then you are getting a very large pay cut. As karakfa wrote, if you want "10% better", use $1.1$.
$endgroup$
– David K
Dec 5 '18 at 21:55
$begingroup$
@karakfa You mean add 1 to both scores or just the multiplier score of cold foods?
$endgroup$
– Sabah Lala
Dec 6 '18 at 15:40
$begingroup$
you use the same term for both, it gets confusing. I'll use different words with larger numbers. Assume I got recommendation for A: 4, B: 5, C: 10. Based background you know that I value A more, so you want to raise it by 30%. Now my updated values will be A4:*1.3=5.2, B:5, C:10.
$endgroup$
– karakfa
Dec 6 '18 at 15:55
add a comment |
$begingroup$
multiply with $(1+score)$ to give the bump. It's like score% increase. So you'll multiple with 1.1 instead of 0.1
$endgroup$
– karakfa
Dec 5 '18 at 21:52
$begingroup$
The number $0.1$ means "only 10% as good." If your boss says "we'll pay you 10% of your old salary next year" then you are getting a very large pay cut. As karakfa wrote, if you want "10% better", use $1.1$.
$endgroup$
– David K
Dec 5 '18 at 21:55
$begingroup$
@karakfa You mean add 1 to both scores or just the multiplier score of cold foods?
$endgroup$
– Sabah Lala
Dec 6 '18 at 15:40
$begingroup$
you use the same term for both, it gets confusing. I'll use different words with larger numbers. Assume I got recommendation for A: 4, B: 5, C: 10. Based background you know that I value A more, so you want to raise it by 30%. Now my updated values will be A4:*1.3=5.2, B:5, C:10.
$endgroup$
– karakfa
Dec 6 '18 at 15:55
$begingroup$
multiply with $(1+score)$ to give the bump. It's like score% increase. So you'll multiple with 1.1 instead of 0.1
$endgroup$
– karakfa
Dec 5 '18 at 21:52
$begingroup$
multiply with $(1+score)$ to give the bump. It's like score% increase. So you'll multiple with 1.1 instead of 0.1
$endgroup$
– karakfa
Dec 5 '18 at 21:52
$begingroup$
The number $0.1$ means "only 10% as good." If your boss says "we'll pay you 10% of your old salary next year" then you are getting a very large pay cut. As karakfa wrote, if you want "10% better", use $1.1$.
$endgroup$
– David K
Dec 5 '18 at 21:55
$begingroup$
The number $0.1$ means "only 10% as good." If your boss says "we'll pay you 10% of your old salary next year" then you are getting a very large pay cut. As karakfa wrote, if you want "10% better", use $1.1$.
$endgroup$
– David K
Dec 5 '18 at 21:55
$begingroup$
@karakfa You mean add 1 to both scores or just the multiplier score of cold foods?
$endgroup$
– Sabah Lala
Dec 6 '18 at 15:40
$begingroup$
@karakfa You mean add 1 to both scores or just the multiplier score of cold foods?
$endgroup$
– Sabah Lala
Dec 6 '18 at 15:40
$begingroup$
you use the same term for both, it gets confusing. I'll use different words with larger numbers. Assume I got recommendation for A: 4, B: 5, C: 10. Based background you know that I value A more, so you want to raise it by 30%. Now my updated values will be A4:*1.3=5.2, B:5, C:10.
$endgroup$
– karakfa
Dec 6 '18 at 15:55
$begingroup$
you use the same term for both, it gets confusing. I'll use different words with larger numbers. Assume I got recommendation for A: 4, B: 5, C: 10. Based background you know that I value A more, so you want to raise it by 30%. Now my updated values will be A4:*1.3=5.2, B:5, C:10.
$endgroup$
– karakfa
Dec 6 '18 at 15:55
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
Make Ice Cream 1.00004, Hot dogs 1.00005, etc.
Multiplying them will now result in a larger number
If you want, you can subtract 1 at the end, but I think making it all in terms of 1.x is more helpful because they are positive-influence multipliers. A multiplier <1 means that it has a negative influence
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "69"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3027695%2fsolving-the-issue-of-small-number-multiplied-by-small-number-gives-a-even-smalle%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
Make Ice Cream 1.00004, Hot dogs 1.00005, etc.
Multiplying them will now result in a larger number
If you want, you can subtract 1 at the end, but I think making it all in terms of 1.x is more helpful because they are positive-influence multipliers. A multiplier <1 means that it has a negative influence
$endgroup$
add a comment |
$begingroup$
Make Ice Cream 1.00004, Hot dogs 1.00005, etc.
Multiplying them will now result in a larger number
If you want, you can subtract 1 at the end, but I think making it all in terms of 1.x is more helpful because they are positive-influence multipliers. A multiplier <1 means that it has a negative influence
$endgroup$
add a comment |
$begingroup$
Make Ice Cream 1.00004, Hot dogs 1.00005, etc.
Multiplying them will now result in a larger number
If you want, you can subtract 1 at the end, but I think making it all in terms of 1.x is more helpful because they are positive-influence multipliers. A multiplier <1 means that it has a negative influence
$endgroup$
Make Ice Cream 1.00004, Hot dogs 1.00005, etc.
Multiplying them will now result in a larger number
If you want, you can subtract 1 at the end, but I think making it all in terms of 1.x is more helpful because they are positive-influence multipliers. A multiplier <1 means that it has a negative influence
answered Dec 5 '18 at 23:17
zach274zach274
161
161
add a comment |
add a comment |
Thanks for contributing an answer to Mathematics Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3027695%2fsolving-the-issue-of-small-number-multiplied-by-small-number-gives-a-even-smalle%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
$begingroup$
multiply with $(1+score)$ to give the bump. It's like score% increase. So you'll multiple with 1.1 instead of 0.1
$endgroup$
– karakfa
Dec 5 '18 at 21:52
$begingroup$
The number $0.1$ means "only 10% as good." If your boss says "we'll pay you 10% of your old salary next year" then you are getting a very large pay cut. As karakfa wrote, if you want "10% better", use $1.1$.
$endgroup$
– David K
Dec 5 '18 at 21:55
$begingroup$
@karakfa You mean add 1 to both scores or just the multiplier score of cold foods?
$endgroup$
– Sabah Lala
Dec 6 '18 at 15:40
$begingroup$
you use the same term for both, it gets confusing. I'll use different words with larger numbers. Assume I got recommendation for A: 4, B: 5, C: 10. Based background you know that I value A more, so you want to raise it by 30%. Now my updated values will be A4:*1.3=5.2, B:5, C:10.
$endgroup$
– karakfa
Dec 6 '18 at 15:55