Wikipedia:Reference desk/Archives/Computing/2020 August 11

Computing desk
< August 10 << Jul | August | Sep >> August 12 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is a transcluded archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


August 11 edit

Windows 10 Apps no longer recognises Firefox edit

I use Windows 10 on my work computer. Earlier this week Firefox told me that it can't be automatically updated and I would have to download an up-to-date version myself, so I did that.

Now after I installed the updated version, Firefox runs all OK when launched from the Start menu or from the taskbar, but the Apps control panel on Windows 10 has stopped admitting Firefox exists. It is nowhere to be found in the entire panel. As a result, I am unable to set Firefox as my default browser. I can set Microsoft Edge, Internet Explorer, Opera or Chrome as my default browser, but I would want to have Firefox.

What has caused this and how can I fix it? JIP | Talk 20:32, 11 August 2020 (UTC)[reply]

I was able to fix this myself. Googling for the problem revealed that I should uninstall and reinstall the entire Firefox application. I did so, and now Windows Apps recognises Firefox as an app. However, I lost my entire Firefox profile, such as saved passwords. JIP | Talk 22:07, 12 August 2020 (UTC)[reply]
I was going to suggest that before I saw the reply. Generally the first step if there's something weird with a program is "check if it's up to date, and if it is uninstall and reinstall". Now, what you wanted to do was make a backup copy of your profile folder beforehand. You can try file recovery software if you really had things you wanted to save. Do a Web search for "firefox profile folder" to find out more.
You really should get into the practice of making regular backups if you don't already. Computer hardware can fail at any time, you can always absentmindedly delete things you didn't mean to (I have done this myself!), and there are plenty of other things that can happen. Ideally you want to make periodic backups to external storage and/or remote "cloud storage", to protect against your computer getting struck by lightning or whatever. --47.146.63.87 (talk) 05:05, 15 August 2020 (UTC)[reply]
This was on my work computer, where all the really important files are the software source code, which is under backed-up version control anyway. On my home computer I make regular backups of my personal files. JIP | Talk 22:05, 15 August 2020 (UTC)[reply]
Uninstalling and reinstalling Firefox should never touch the profile folder (which is in AppData\Roaming). I don't know what your Windows 10 did there. 93.136.64.98 (talk) 05:17, 18 August 2020 (UTC)[reply]
It may have been a switch from 32-bit to 64-bit and some kind of misunderstanding in the location of the profile folder. Your profile(s) are still there, intact and waiting to be discovered, if you can manage to rectify the location problem. Elizium23 (talk) 05:46, 18 August 2020 (UTC)[reply]

Python Scikit-Learn with complex classifications edit

I have the following problem: I have a number of complex logical riddles (in the 10000s). I have a number of strategies to solve riddles (in principle infinitely many, but in practice around a few hundred to a few thousand). Some riddles are solved by some strategies - some by many, some by all, some by none. I would like to predict which strategies can solve which riddles. Or more precisely: I want to learn an assignment from riddles to strategies so that (if it exists) each riddle is assigned a "winning" strategy. The problem I'm facing is that this is not a simple classification problem - for most riddles there are multiple correct answers. I could, of course, hack my own (e.g.) decision tree algorithm. But I know there are other smart people who have a lot more experience with machine learning than I have. So my question: Is this a problem for which scikit-learn (which I like) has a simple answer to? Or are there some good search terms to look for answers elsewhere? Thanks! --Stephan Schulz (talk) 21:00, 11 August 2020 (UTC)[reply]

Classification algorithms are not limited to objects that fit neatly into one and only one category. One way to view it is like a map. Imagine a big square map with four corners. Each corner is a category. You place an object on the map. Classification is not a matter of seeing which corner it sits on. It is on the map, not in a corner. Classification is a measure of the distance from each corner. You set a rule that says the shortest distance is the corner the object belongs to. If that makes sense to you, you can expand it to many dimensions. You define fake objects that are the centers of your categories. You measure the distance between an object and each category. The shortest distance defines which category the object belongs to. That can take a long time. So, you don't check every category. You check the most popular ones first and you set a cutoff for the distance. If your object is within a certain distance of a popular category, you place it in that category. It may also be within a certain distance of another category, but you already placed it in the more popular category. The key is in how you measure similarity or distance between objects. You can write your own algorithm. Most are rooted in some form of vector angle or some form of edit distance. It is also popular to throw out all ideas about classification and just use SVD, even though SVD is not a classification method. Once you have a measure of similarity or distance that you like, the rest of the work becomes rather trivial. 97.82.165.112 (talk) 11:15, 12 August 2020 (UTC)[reply]
All of that is quite right, and quite clear to me. My problem is that I would like to leverage the existing code base to address my particular problem. The easiest way would e.g. be if the learning algorithm does not work with a class label for training examples, but with a classification function that would return true or false (or 0/1), based on the predicted class. --Stephan Schulz (talk) 12:17, 12 August 2020 (UTC)[reply]